---
id: config-read-digital-wallet-open-id-organisation-wallet-unit-global-configuration
title: "Read organisation wallet unit configuration"
description: "Returns the wallet provider configuration of the organisation wallet units: the key that signs their Wallet Unit Attestations (WUAs) and key attestations, the size of the WUA pool and the other rules of the attestations. There is one such configuration for each wallet provider, so the path has no id. The individual wallet units have their own configuration: [Read individual wallet unit configuration](/docs/openid4vc-api/config-read-digital-wallet-open-id-individual-wallet-unit-global-configuration)."
sidebar_label: "Read organisation wallet unit configuration"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "get api-method"
info_path: docs/openid4vc-api/igrant-io-api-documentation
custom_edit_url: null
---

> **Build this with an AI coding agent.** Install the iGrant.io Agent Skills, then ask your agent to build the integration:
>
> ```bash
> npx skills add L3-iGrant/skills
> ```


import ApiTabs from "@theme/ApiTabs";
import DiscriminatorTabs from "@theme/DiscriminatorTabs";
import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes";
import MimeTabs from "@theme/MimeTabs";
import ParamsItem from "@theme/ParamsItem";
import ResponseSamples from "@theme/ResponseSamples";
import SchemaItem from "@theme/SchemaItem";
import SchemaTabs from "@theme/SchemaTabs";
import Markdown from "@theme/Markdown";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";

<h1 className={"openapi__heading"}>Read organisation wallet unit configuration</h1>

<MethodEndpoint method={"get"} path={"/v4/config/ows/wallet-provider/organisation-wallet-unit-configuration"}></MethodEndpoint>



Returns the wallet provider configuration of the organisation wallet units: the key that signs their Wallet Unit Attestations (WUAs) and key attestations, the size of the WUA pool and the other rules of the attestations. There is one such configuration for each wallet provider, so the path has no id. The individual wallet units have their own configuration: [Read individual wallet unit configuration](/docs/openid4vc-api/config-read-digital-wallet-open-id-individual-wallet-unit-global-configuration).

<div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

The wallet provider configuration of the organisation wallet units.

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"signingKeyWarnings"} required={true} schemaName={"string[]"} qualifierMessage={undefined} schema={{"type":"array","description":"The warnings of the signing key, for a key whose certificate preset this use does not accept (also a key with no certificate preset): one text for each rule of this use that its certificate does not fit. Always present; an empty list when there is no warning. The save is not refused.","items":{"type":"string","description":"One warning."},"example":[]}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>globalConfiguration</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The wallet provider configuration of the organisation wallet units: the signing key and the rules of their Wallet Unit Attestations (WUAs; TS3 calls them Wallet Instance Attestations, WIA) and key attestations. It is apart from the configuration of the individual wallet units: a change of one does not change the other. The answer leaves out an optional setting that has no value.

</div><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The id of the configuration."}}></SchemaItem><SchemaItem collapsible={false} name={"walletUnitAttestationValidityDays"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"The lifetime of a WUA in days (default 30). A WUA is valid for at most 12 hours (TS3 section 2.2.1.1), so every value of 1 or more gives 12 hours.","example":30}}></SchemaItem><SchemaItem collapsible={false} name={"walletUnitAttestationRefreshIntervalSeconds"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"The refresh interval of the WUA pools in seconds (default 86400): a WUA that expires within this time no longer counts as usable, so the pool is filled again in time. The wallet provider uses at most half the WUA lifetime (6 hours).","example":86400}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>walletUnitAttestationSigningConfig</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The key that signs the WUAs and the key attestations of the organisation wallet units and their status lists. An empty object: no key yet, so the wallet provider cannot sign.

</div><SchemaItem collapsible={false} name={"cryptographicKeyIdentifier"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The `keyId` of a key of the organisation, from [List keys](/docs/openid4vc-api/config-digital-wallet-open-id-list-keys).","example":"3f2a91c47b8d4e6fa0c5d7e18b924f30"}}></SchemaItem><SchemaItem collapsible={false} name={"cryptographicKeyFormat"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`x509`]"} schema={{"type":"string","description":"The format of the key. The wallet provider signs only with `x509`: an X.509 certificate chain of the key goes in the `x5c` header of each attestation (TS3 section 2.6, HAIP 1.0).","enum":["x509"],"example":"x509"}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"keyStorageStatusIndexOption"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`type_shared`, `per_ka`]"} schema={{"type":"string","description":"How the key attestations get their status list entry (TS3 section 2.5.2): `type_shared` (default; one shared entry for each keystore type) or `per_ka` (an entry for each key attestation). It is fixed after the first key attestation of an organisation wallet unit.","enum":["type_shared","per_ka"]}}></SchemaItem><SchemaItem collapsible={false} name={"maxKeyAttestationBatchSize"} required={false} schemaName={"integer"} qualifierMessage={"**Possible values:** `>= 1` and `<= 100`"} schema={{"type":"integer","minimum":1,"maximum":100,"description":"The most keys that one key attestation request can attest. The key attestation requests of the individual wallet units apply it; those of the organisation wallet units do not.","example":10}}></SchemaItem><SchemaItem collapsible={false} name={"wiaPoolSize"} required={false} schemaName={"integer"} qualifierMessage={"**Possible values:** `>= 1` and `<= 10`"} schema={{"type":"integer","minimum":1,"maximum":10,"description":"The number of WUAs in the pool of each organisation wallet unit. Not set: 10. The organisation wallet presents each WUA of the pool to one issuer only, and the wallet provider fills the pool again when it runs low.","example":10}}></SchemaItem><SchemaItem collapsible={false} name={"isWiaPerIssuerReuseEnabled"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"`true`: a wallet unit uses the status list entry of its WUAs for one issuer again (TS3 section 2.5.1). The WUAs of a pool always get new entries, so this setting does not change the organisation wallet units. Default `false`."}}></SchemaItem><SchemaItem collapsible={false} name={"isKaPerIssuerReuseEnabled"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"`true`: a wallet unit uses the status list entry of its key attestations for one issuer again. Needs `keyStorageStatusIndexOption` `per_ka`. Default `false`."}}></SchemaItem><SchemaItem collapsible={false} name={"createdAt"} required={true} schemaName={"int64"} qualifierMessage={undefined} schema={{"type":"integer","format":"int64","description":"When the configuration was made (Unix time in seconds)."}}></SchemaItem><SchemaItem collapsible={false} name={"updatedAt"} required={true} schemaName={"int64"} qualifierMessage={undefined} schema={{"type":"integer","format":"int64","description":"When the configuration last changed (Unix time in seconds)."}}></SchemaItem></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"signingKeyWarnings\": [],\n  \"globalConfiguration\": {\n    \"id\": \"string\",\n    \"walletUnitAttestationValidityDays\": 30,\n    \"walletUnitAttestationRefreshIntervalSeconds\": 86400,\n    \"walletUnitAttestationSigningConfig\": {\n      \"cryptographicKeyIdentifier\": \"3f2a91c47b8d4e6fa0c5d7e18b924f30\",\n      \"cryptographicKeyFormat\": \"x509\"\n    },\n    \"keyStorageStatusIndexOption\": \"type_shared\",\n    \"maxKeyAttestationBatchSize\": 10,\n    \"wiaPoolSize\": 10,\n    \"isWiaPerIssuerReuseEnabled\": true,\n    \"isKaPerIssuerReuseEnabled\": true,\n    \"createdAt\": 0,\n    \"updatedAt\": 0\n  }\n}"} language={"json"}></ResponseSamples></TabItem><TabItem label={"Example"} value={"Example"}><ResponseSamples responseExample={"{\n  \"signingKeyWarnings\": [],\n  \"globalConfiguration\": {\n    \"id\": \"36943cea-b91d-4b0d-a697-595940ef43c6\",\n    \"walletUnitAttestationValidityDays\": 30,\n    \"walletUnitAttestationRefreshIntervalSeconds\": 86400,\n    \"walletUnitAttestationSigningConfig\": {\n      \"cryptographicKeyIdentifier\": \"c19e39f6bc6a40b399d9faf713c0422a\",\n      \"cryptographicKeyFormat\": \"x509\"\n    },\n    \"keyStorageStatusIndexOption\": \"type_shared\",\n    \"isWiaPerIssuerReuseEnabled\": false,\n    \"isKaPerIssuerReuseEnabled\": false,\n    \"createdAt\": 1793245044,\n    \"updatedAt\": 1794142506\n  }\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"400"} value={"400"}><div>

The organisation has no deployment, or it is not the wallet provider (`Invalid request, wallet provider not found`).

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"401"} value={"401"}><div>

The `Authorization` header is missing, or the API key or token is not valid.

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"403"} value={"403"}><div>

The API key or token does not allow this call. An API key without the scope of the operation gets the older body `{"Code", "Message"}`. An `X-SandboxOrgId` header that names another sandbox organisation than the one of the API key gets `{"errorCode", "errorDescription"}`. When a platform admin has turned off the feature of the operation for the organisation, the answer has `errorKey` `feature_disabled` and the member `feature` (the name of the feature).

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><div><span className={"badge badge--info"}>anyOf</span><SchemaTabs><TabItem label={"MOD1"} value={"0-item-properties"}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></TabItem><TabItem label={"Older error body"} value={"1-item-properties"}><SchemaItem collapsible={false} name={"Code"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"The HTTP status.","example":403}}></SchemaItem><SchemaItem collapsible={false} name={"Message"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"What went wrong.","example":"Unauthorized access;User doesn't have enough permissions;"}}></SchemaItem></TabItem></SchemaTabs></div></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{}"} language={"json"}></ResponseSamples></TabItem><TabItem label={"Example"} value={"Example"}><ResponseSamples responseExample={"{\n  \"Code\": 403,\n  \"Message\": \"Unauthorized access;User doesn't have enough permissions;\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"404"} value={"404"}><div>

The organisation has no wallet provider configuration of this kind. The wallet makes it when the organisation becomes the wallet provider, so this is not a normal case.

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"500"} value={"500"}><div>

Unexpected server error.

</div><details style={{"textAlign":"left","marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collaposed={true} open={false}><summary style={{}}><strong>Response Headers</strong></summary><ul style={{"marginLeft":"1rem"}}></ul></details><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"errorCode"} required={true} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","example":400}}></SchemaItem><SchemaItem collapsible={false} name={"errorDescription"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"Bad input parameter"}}></SchemaItem><SchemaItem collapsible={false} name={"errorKey"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"A text code of the refusal that does not change when the text changes. Only some refusals have it, for example `organisation_suspended`, `feature_disabled` or `purpose_exists`."}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"errorCode\": 400,\n  \"errorDescription\": \"Bad input parameter\",\n  \"errorKey\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem></ApiTabs></div></div>
      