---
id: config-update-digital-wallet-open-id-organisation-wallet-unit-credential-revocation-status
title: "Update organisation wallet unit issuance history revocation status"
description: "Changes the status of the Wallet Unit Attestations (WUAs) of one row of the wallet unit attestation issuance history of the organisation wallet units, on their status lists: every WUA of the row, or one WUA of a pool with `batchIndex`. `Revoked` or `Suspended` makes them invalid; `Operational` makes suspended or revoked WUAs valid again. The copies that the holder organisation keeps follow."
sidebar_label: "Update organisation wallet unit issuance history revocation status"
hide_title: true
hide_table_of_contents: true
api: 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
sidebar_class_name: "put 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"}>Update organisation wallet unit issuance history revocation status</h1>

<MethodEndpoint method={"put"} path={"/v4/config/ows/wallet-provider/organisation-wallet-unit-attestations/{attestationId}/revocation-status"}></MethodEndpoint>



Changes the status of the Wallet Unit Attestations (WUAs) of one row of the wallet unit attestation issuance history of the organisation wallet units, on their status lists: every WUA of the row, or one WUA of a pool with `batchIndex`. `Revoked` or `Suspended` makes them invalid; `Operational` makes suspended or revoked WUAs valid again. The copies that the holder organisation keeps follow.

The `attestationStatus` of the wallet unit follows: `revoked` when it holds no active WUA after the change, and `active` again after `Operational` when it holds one. The authorisation of the wallet unit does not change. To stop every WUA of a wallet unit at once, use [Update organisation wallet unit revocation status](/docs/openid4vc-api/config-update-digital-wallet-open-id-organisation-wallet-unit-revocation-status).

## Request

<details style={{"marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collapsed={false} open={true}><summary style={{}}><h3 className={"openapi-markdown__details-summary-header-params"}>Path Parameters</h3></summary><div><ul><ParamsItem className={"paramsItem"} param={{"description":"The `id` of a row of the wallet unit attestation issuance history, from the list or the read of that history. The routes of each kind read only the history of their kind: an `id` of the individual wallet units gives 404 on an organisation wallet unit route, and the other way round.","in":"path","name":"attestationId","required":true,"schema":{"type":"string","format":"uuid"}}}></ParamsItem></ul></div></details><MimeTabs className={"openapi-tabs__mime"}><TabItem label={"application/json"} value={"application/json-schema"}><details style={{}} className={"openapi-markdown__details mime"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-mime"}><h3 className={"openapi-markdown__details-summary-header-body"}>Body</h3><strong className={"openapi-schema__required"}>required</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}><div style={{"marginTop":"1rem","marginBottom":"1rem"}}>

The new status, and optionally the WUA of the pool to change.

</div></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"revocationStatus"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [`Operational`, `Revoked`, `Suspended`]"} schema={{"type":"string","description":"Required. `Revoked` or `Suspended` makes the WUAs invalid on their status lists. `Operational` makes them valid again.","enum":["Operational","Revoked","Suspended"],"example":"Revoked"}}></SchemaItem><SchemaItem collapsible={false} name={"batchIndex"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","minimum":0,"description":"Optional. The position of one WUA in `batchCredentials` (from `0`), to change only that WUA of a pool. Without it, the change covers every WUA of the row. A row without `batchCredentials` ignores it.","example":0}}></SchemaItem></ul></details></TabItem></MimeTabs><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

The row with its new status.

</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={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>walletUnitAttestationIssuanceHistory</strong><span className={"openapi-schema__name"}> object</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

One row of the wallet unit attestation issuance history of the organisation wallet units: one mint of Wallet Unit Attestations (WUAs) for an organisation wallet unit, usually a whole pool in `batchCredentials`. The members outside `batchCredentials` describe the first WUA of the mint. A refused mint makes no row. The service sends every member except `batchCredentials`; a member without a value is an empty string, `0`, `false` or `null`.

</div><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"uuid"} qualifierMessage={undefined} schema={{"type":"string","format":"uuid","description":"The id of the row: the `attestationId` of the read and of the revocation status change."}}></SchemaItem><SchemaItem collapsible={false} name={"credentialStatus"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Always `ready`: the wallet provider writes a row only for signed WUAs.","example":"ready"}}></SchemaItem><SchemaItem collapsible={false} name={"status"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Always `credential_accepted`: the wallet provider writes a row only for signed WUAs.","example":"credential_accepted"}}></SchemaItem><SchemaItem collapsible={false} name={"clientId"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The client id of the wallet unit: the `sub` of the WUAs."}}></SchemaItem><SchemaItem collapsible={false} name={"createdAt"} required={true} schemaName={"int64"} qualifierMessage={undefined} schema={{"type":"integer","format":"int64","description":"When the wallet provider signed the WUAs (Unix time in seconds)."}}></SchemaItem><SchemaItem collapsible={false} name={"updatedAt"} required={true} schemaName={"int64"} qualifierMessage={undefined} schema={{"type":"integer","format":"int64","description":"When the row last changed, for example with a revocation (Unix time in seconds)."}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>credential</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__nullable"}>nullable</span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The claims of the first WUA (`claims`: the wallet solution claims, `iss`, `sub`, `jti`, `iat`, `exp` and `cnf`) and its type (`vct`: `WalletUnitAttestation`).

</div><SchemaItem name={"property name*"} required={false} schemaName={"any"} qualifierMessage={undefined} schema={{"type":"object","nullable":true,"description":"The claims of the first WUA (`claims`: the wallet solution claims, `iss`, `sub`, `jti`, `iat`, `exp` and `cnf`) and its type (`vct`: `WalletUnitAttestation`).","additionalProperties":true}} collapsible={false} discriminator={false}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>holder</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The holder of the WUAs.

</div><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The client id of the wallet unit."}}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"credentialFormat"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The format that the wallet provider records for the WUAs: `dc+sd-jwt`.","example":"dc+sd-jwt"}}></SchemaItem><SchemaItem collapsible={false} name={"isRevocable"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","description":"Always `true`: each WUA has an entry on a status list of the wallet provider."}}></SchemaItem><SchemaItem collapsible={false} name={"revocationStatus"} required={true} schemaName={"string"} qualifierMessage={"**Possible values:** [``, `Operational`, `Revoked`, `Suspended`]"} schema={{"type":"string","description":"The status of the row: `Operational` while one WUA of the mint is operational, else the status of its WUAs (`Suspended` or `Revoked`). The status of each WUA is in `batchCredentials`.","enum":["","Operational","Revoked","Suspended"]}}></SchemaItem><SchemaItem collapsible={false} name={"credentialToken"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The first signed WUA of the mint (a JWT)."}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>cnf</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__nullable"}>nullable</span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The holder key that the first WUA binds (`cnf`, with a `jwk`).

</div><SchemaItem name={"property name*"} required={false} schemaName={"any"} qualifierMessage={undefined} schema={{"type":"object","nullable":true,"description":"The holder key that the first WUA binds (`cnf`, with a `jwk`).","additionalProperties":true}} collapsible={false} discriminator={false}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"jti"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The `jti` of the first WUA."}}></SchemaItem><SchemaItem collapsible={false} name={"issuanceDeniedReason"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"Always empty: a refused mint makes no row."}}></SchemaItem><SchemaItem collapsible={false} name={"organisationWalletUnitId"} required={true} schemaName={"uuid"} qualifierMessage={undefined} schema={{"type":"string","format":"uuid","description":"The `id` of the organisation wallet unit."}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>batchCredentials</strong><span className={"openapi-schema__name"}> object[]</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The WUAs of the mint, in pool order: element `n` is `batchIndex` `n` of the revocation status change. Each WUA binds a holder key of its own. Can be left out for a row of one WUA.

</div><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"credentialToken"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The signed WUA (a JWT)."}}></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>cnf</strong><span className={"openapi-schema__name"}> object</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__nullable"}>nullable</span></span></summary><div style={{"marginLeft":"1rem"}}><div style={{"marginTop":".5rem","marginBottom":".5rem"}}>

The holder key that the WUA binds.

</div><SchemaItem name={"property name*"} required={false} schemaName={"any"} qualifierMessage={undefined} schema={{"type":"object","nullable":true,"description":"The holder key that the WUA binds.","additionalProperties":true}} collapsible={false} discriminator={false}></SchemaItem></div></details></SchemaItem><SchemaItem collapsible={false} name={"jti"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The `jti` of the WUA."}}></SchemaItem><SchemaItem collapsible={false} name={"credentialRevocationStatusListId"} required={false} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","description":"The id of the status list that holds the status of the WUA."}}></SchemaItem><SchemaItem collapsible={false} name={"credentialRevocationStatusListIndex"} required={false} schemaName={"integer"} qualifierMessage={undefined} schema={{"type":"integer","description":"The index of the WUA in its status list."}}></SchemaItem><SchemaItem collapsible={false} name={"revocationStatus"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** [`Operational`, `Revoked`, `Suspended`]"} schema={{"type":"string","description":"The status of the WUA on its status list.","enum":["Operational","Revoked","Suspended"]}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n  \"walletUnitAttestationIssuanceHistory\": {\n    \"id\": \"3fa85f64-5717-4562-b3fc-2c963f66afa6\",\n    \"credentialStatus\": \"ready\",\n    \"status\": \"credential_accepted\",\n    \"clientId\": \"string\",\n    \"createdAt\": 0,\n    \"updatedAt\": 0,\n    \"credential\": {},\n    \"holder\": {\n      \"name\": \"string\"\n    },\n    \"credentialFormat\": \"dc+sd-jwt\",\n    \"isRevocable\": true,\n    \"revocationStatus\": \"\",\n    \"credentialToken\": \"string\",\n    \"cnf\": {},\n    \"jti\": \"string\",\n    \"issuanceDeniedReason\": \"string\",\n    \"organisationWalletUnitId\": \"3fa85f64-5717-4562-b3fc-2c963f66afa6\",\n    \"batchCredentials\": [\n      {\n        \"credentialToken\": \"string\",\n        \"cnf\": {},\n        \"jti\": \"string\",\n        \"credentialRevocationStatusListId\": \"string\",\n        \"credentialRevocationStatusListIndex\": 0,\n        \"revocationStatus\": \"Operational\"\n      }\n    ]\n  }\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"400"} value={"400"}><div>

The body is not valid (an unknown member, or a missing or unknown `revocationStatus`), `batchIndex` is out of range or names a WUA without a status list entry, a status list refused the change, or the organisation is not the wallet provider.

</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>

No row of the wallet unit attestation issuance history of the organisation wallet units has this id (also for the id of a row of the individual 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={"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>
      