Deploy digital wallet
POST/v2/config/digital-wallet/openid
Deploys the OID4VC digital wallet for the organisation. The service registers the organisation with the OpenID wallet backend and returns the endpoints of the new deployment. Call this operation once, before you create a credential definition or a presentation definition. The deployment also makes the issuer, holder and verifier global configurations with their default values.
The organisation must have no deployment yet. If a deployment exists or a deployment request is open, the service answers with HTTP 400. There is no operation that removes a deployment, so you cannot deploy the wallet a second time.
Request
- application/json
Body
required
A JSON object. Send {} to make the deployment without a seed. An empty body or an unknown member gives HTTP 400.
Seed that the service uses for the key material of the wallet. This field is optional. The service uses the value only when it holds one character or more, and it sends no seed when you give an empty value or leave the field out. Treat this value as a secret: keep it out of logs and out of version control.
Responses
- 200
- 400
- 401
- 500
- 502
- 504
- 507
The service deployed the OpenID digital wallet and returned the deployment details.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
Base URL of the OID4VCI and OpenID4VP service of the organisation.
URL of the OID4VCI Credential Offer endpoint.
Software version of the deployed agent.
Possible values: [2]
Deployment status of the agent. A successful deploy always sets the status to Deployed, so this operation always gives 2.
Possible values: [Deployed]
Deployment status of the agent as text. This operation always gives Deployed.
Name of the distributed ledger that the agent uses for DID registration.
URL of the distributed ledger.
Identifier of the ledger network. The service does not set this field and always returns 0.
Infrastructure provider that hosts the agent.
Geographic region of the agent deployment.
When true, the organisation is a wallet provider and can issue Wallet Unit Attestations. A new deployment always returns false. Use the update operation on this path to enable the capability.
{
"agentServiceEndpoint": "https://api.igrant.io/v2/organisation/62d9e0b9e5b1a80001d0f8b1/service",
"credentialOfferEndpoint": "https://api.igrant.io/v2/organisation/62d9e0b9e5b1a80001d0f8b1/service/credential-offer",
"version": "1.0.0",
"status": 2,
"statusStr": "Deployed",
"ledgerName": "European Blockchain Services Infrastructure",
"ledgerURL": "https://hub.ebsi.eu/",
"ledgerID": 0,
"infrastructureProvider": "iGrant.io",
"deploymentRegion": "Europe: Frankfurt",
"isWalletProvider": false
}
The organisation is unknown, the organisation already has a deployment, a deployment request is already open, or the wallet refused the request. A refusal of the wallet keeps the status and the text of the wallet, after Failed to deploy the OpenID digital wallet for organisation ID <id>: , also for another status than 400.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
Unauthorized
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
Internal server error
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
The wallet cannot be reached: Failed to deploy the OpenID digital wallet for organisation ID <id>: The wallet cannot be reached.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
The wallet did not answer in time: Failed to deploy the OpenID digital wallet for organisation ID <id>: The wallet did not answer in time.
Response Headers
- application/json
- Schema
- Example (from schema)
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
Insufficient Storage: the HSM partition of the key store has no room for a new key. This is the partition of the installation HSM (the local key store in a hardware security module), or the DPoD partition of a key store of your organisation. The text is The HSM partition has no room for a new key. Remove unused key pairs (kms signer orphans list) or give the partition more room. A new try fails the same way: the answer has no Retry-After, so do not send the request again before room is free. For the installation HSM, the operator of the installation removes the unused key pairs or gives the partition more room. For a DPoD partition of your organisation, delete unused key pairs in the partition or give it more room. Some operations put the text after their own text: the test CA (Failed to make the test CA: The HSM partition has no room ...), the deploy of the organisation wallet (Failed to deploy the OpenID digital wallet for organisation ID <id>: ...) and the create of a sandbox organisation (Failed to deploy sandbox organisation: ...). A route that signs can also give this answer for an organisation that has no default key yet, because the wallet makes the default key the first time that it needs it.
Response Headers
- application/json
- Schema
- Example (from schema)
- Example
Schema
{
"errorCode": 400,
"errorDescription": "Bad input parameter"
}
{
"errorCode": 507,
"errorDescription": "The HSM partition has no room for a new key. Remove unused key pairs (kms signer orphans list) or give the partition more room."
}