> For the complete documentation index, see [llms.txt](https://docs.indicio.tech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.indicio.tech/developer/indicio-proven-r/api-reference/oid4vci.md).

# Oid4vci

Endpoints for creating and managing Open ID for verifiable credential issuance

## Get credential supported record(s).

> This endpoint gets credential supported record(s).

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported":{"get":{"summary":"Get credential supported record(s).","description":"This endpoint gets credential supported record(s).","tags":["Oid4vci"],"parameters":[{"in":"query","name":"supported_cred_id","required":false,"schema":{"type":"string"},"description":"The supported_cred_id you would like to filter by"},{"in":"query","name":"format","required":false,"schema":{"type":"string"},"description":"The credential format you would like to filter by"},{"in":"query","name":"identifier","required":false,"schema":{"type":"string"},"description":"The credential identifier you would like to filter by"}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"created_at":{"type":"string"},"updated_at":{"type":"string"},"supported_cred_id":{"type":"string"},"format":{"type":"string"},"identifier":{"type":"string"},"format_data":{"type":"object"},"vc_additional_data":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"string"}}}}}}}},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## Create a credential supported record.

> This endpoint creates a credential supported record.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported":{"post":{"summary":"Create a credential supported record.","description":"This endpoint creates a credential supported record.","tags":["Oid4vci"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"format":{"type":"string"},"id":{"type":"string"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"object"}},"format_data":{"type":"object"},"vc_additional_data":{"type":"object"}}}}}},"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"object","properties":{"created_at":{"type":"string"},"updated_at":{"type":"string"},"supported_cred_id":{"type":"string"},"format":{"type":"string"},"identifier":{"type":null},"format_data":{"type":"object"},"vc_additional_data":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## Create a JWT-VC credential supported record.

> This endpoint creates a JWT-VC credential supported record.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported/jwt":{"post":{"summary":"Create a JWT-VC credential supported record.","description":"This endpoint creates a JWT-VC credential supported record.","tags":["Oid4vci"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"@context":{"type":"array","items":{"type":"object"}},"format":{"type":"string"},"id":{"type":"string"},"type":{"type":null},"credentialSubject":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"object"}},"order":{"type":"array","items":{"type":"string"}}}}}}},"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"object","properties":{"created_at":{"type":"string"},"updated_at":{"type":"string"},"supported_cred_id":{"type":"string"},"format":{"type":"string"},"identifier":{"type":"string"},"format_data":{"type":"object"},"vc_additional_data":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## Create a SD-JWT credential supported record.

> This endpoint creates SD-JWT a credential supported record.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported/sd-jwt":{"post":{"summary":"Create a SD-JWT credential supported record.","description":"This endpoint creates SD-JWT a credential supported record.","tags":["Oid4vci"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"format":{"type":"string"},"id":{"type":"string"},"claims":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"object"}},"order":{"type":"array","items":{"type":"string"}},"sd_list":{"type":"array","items":{"type":"string"}},"vct":{"type":"string"}}}}}},"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"object","properties":{"created_at":{"type":"string"},"updated_at":{"type":"string"},"supported_cred_id":{"type":"string"},"format":{"type":"string"},"identifier":{"type":"string"},"format_data":{"type":"object"},"vc_additional_data":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## Gets a credential supported record by supported\_cred\_id.

> This endpoint gets a credential supported record by supported\_cred\_id.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported/{supported_cred_id}":{"get":{"summary":"Gets a credential supported record by supported_cred_id.","description":"This endpoint gets a credential supported record by supported_cred_id.","tags":["Oid4vci"],"parameters":[{"in":"path","name":"supported_cred_id","required":true,"schema":{"type":"string"},"description":"The supported_cred_id you would like to get"}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"object","properties":{"created_at":{"type":"string"},"updated_at":{"type":"string"},"supported_cred_id":{"type":"string"},"format":{"type":"string"},"identifier":{"type":"string"},"format_data":{"type":"object"},"vc_additional_data":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"display":{"type":"array","items":{"type":"string"}}}}}}},"400":{"description":"Bad request"},"404":{"description":"Not Found"},"500":{"description":"Internal server error"}}}}}}
```

## Delete a credential supported record.

> This endpoint deletes a credential supported record.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported/{supported_cred_id}":{"delete":{"summary":"Delete a credential supported record.","description":"This endpoint deletes a credential supported record.","tags":["Oid4vci"],"parameters":[{"in":"path","name":"supported_cred_id","required":true,"schema":{"type":"string"},"description":"The supported_cred_id you would like to delete"}],"responses":{"200":{"description":"Ok"},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## GET /api/v1/oid4vci/credentials-supported/mdoc

> List registered mDoc credential types.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported/mdoc":{"get":{"summary":"List registered mDoc credential types.","tags":["Oid4vci"],"parameters":[{"name":"doctype","in":"query","schema":{"type":"string"}},{"name":"config_id","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"List of mDoc credential type configurations.","content":{"application/json":{"schema":{"type":"array","items":{"type":"object"}}}}},"400":{"description":"Bad request"},"401":{"description":"Missing or invalid API key"},"403":{"description":"API key lacks required scope"},"500":{"description":"Internal server error"}}}}}}
```

## POST /api/v1/oid4vci/credentials-supported/mdoc

> Register an mDoc credential type.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/credentials-supported/mdoc":{"post":{"summary":"Register an mDoc credential type.","tags":["Oid4vci"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["doctype"],"properties":{"doctype":{"type":"string"},"label":{"type":"string"},"description":{"type":"string"},"display":{"type":"array","items":{"type":"object"}},"verification_method":{"type":"string"},"issuer_id":{"type":"string"},"claims_schema":{"type":"object"},"vc_additional_data":{"type":"object"},"cryptographic_binding_methods_supported":{"type":"array","items":{"type":"string"}},"cryptographic_suites_supported":{"type":"array","items":{"type":"string"}},"proof_types_supported":{"type":"object"}}}}}},"responses":{"200":{"description":"mDoc type registered.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Bad request"},"401":{"description":"Missing or invalid API key"},"403":{"description":"API key lacks required scope"},"500":{"description":"Internal server error"}}}}}}
```

## Get credential exchange record(s).

> This endpoint gets credential exchange record(s).

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/exchanges":{"get":{"summary":"Get credential exchange record(s).","description":"This endpoint gets credential exchange record(s).","tags":["Oid4vci"],"parameters":[{"in":"query","name":"exchange_id","required":false,"schema":{"type":"string"},"description":"The exchange_id you would like to filter by"},{"in":"query","name":"state","required":false,"schema":{"type":"string"},"description":"The state you would like to filter by."},{"in":"query","name":"supported_cred_id","required":false,"schema":{"type":"string"},"description":"The supported_cred_id you would like to filter by"},{"in":"query","name":"doctype","required":false,"schema":{"type":"string"},"description":"Optional mDoc doctype filter."},{"in":"query","name":"connection_id","required":false,"schema":{"type":"string"},"description":"Optional mDoc connection_id filter."},{"in":"query","name":"config_id","required":false,"schema":{"type":"string"},"description":"Optional mDoc config_id filter."}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"exchange_id":{"type":"string"},"supported_cred_id":{"type":"string"},"config_id":{"type":"string"},"doctype":{"type":"string"},"state":{"type":"string"},"credential_subject":{"type":"object"},"verification_method":{"type":"string"},"issuer_id":{"type":"string"},"connection_id":{"type":"string"},"contact_id":{"type":"string"},"cbor_encoded":{"type":"string"},"label":{"type":"string"},"error":{"type":"string"},"code":{"type":"string"},"nonce":{"type":"string"},"token":{"type":"string"},"created_at":{"type":"string"},"updated_at":{"type":"string"}}}}}}},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## Get a credential exchange record by exchange\_id.

> This endpoint gets a credential exchange record by exchange\_id.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/exchanges/{exchange_id}":{"get":{"summary":"Get a credential exchange record by exchange_id.","description":"This endpoint gets a credential exchange record by exchange_id.","tags":["Oid4vci"],"parameters":[{"in":"path","name":"exchange_id","required":true,"schema":{"type":"string"},"description":"The exchange_id you would like to get"}],"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"object","properties":{"exchange_id":{"type":"string"},"supported_cred_id":{"type":"string"},"state":{"type":"string"},"credential_subject":{"type":"object"},"verification_method":{"type":"string"},"issuer_id":{"type":"string"},"code":{"type":"string"},"nonce":{"type":"string"},"token":{"type":"string"},"created_at":{"type":"string"},"updated_at":{"type":"string"}}}}}},"400":{"description":"Bad request"},"404":{"description":"Not Found"},"500":{"description":"Internal server error"}}}}}}
```

## Delete a credential exchange record.

> This endpoint deletes a credential exchange record.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/exchanges/{exchange_id}":{"delete":{"summary":"Delete a credential exchange record.","description":"This endpoint deletes a credential exchange record.","tags":["Oid4vci"],"parameters":[{"in":"path","name":"exchange_id","required":true,"schema":{"type":"string"},"description":"The exchange_id you would like to delete"}],"responses":{"200":{"description":"Ok"},"400":{"description":"Bad request"},"404":{"description":"Not found"},"500":{"description":"Internal server error"}}}}}}
```

## Creates a credential exchange, and gets an offer.

> This endpoint creates a credential exchange and gets an offer.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/issue":{"post":{"summary":"Creates a credential exchange, and gets an offer.","description":"This endpoint creates a credential exchange and gets an offer.","tags":["Oid4vci"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"credential_subject":{"type":"object"},"supported_cred_id":{"type":"string"},"did":{"type":"string"},"verification_method":{"type":"string"},"pin":{"type":"string"},"label":{"type":"string"},"connection_id":{"type":"string"}}}}}},"responses":{"200":{"description":"Ok","content":{"application/json":{"schema":{"type":"object","properties":{"offer":{"type":"object","properties":{"credential_issuer":{"type":"string"},"credentials":{"type":"array","items":{"type":"string"}},"grants":{"type":"object","properties":{"urn:ietf:params:oauth:grant-type:pre-authorized_code":{"type":"object","properties":{"pre-authorized_code":{"type":"string"},"user_pin_required":{"type":"boolean"}}}}}}},"credential_offer":{"type":"string","description":"A URL encoded OpenID credential offer URI (openid-credential-offer://)"},"exchange":{"type":"object","properties":{"state":{"type":"string"},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"},"exchange_id":{"type":"string"},"supported_cred_id":{"type":"string"},"credential_subject":{"type":"object"},"verification_method":{"type":"string"},"issuer_id":{"type":"string"}}}}}}}},"400":{"description":"Bad request"},"500":{"description":"Internal server error"}}}}}}
```

## POST /api/v1/oid4vci/setup/mdoc

> Provision mDoc issuer key material.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/setup/mdoc":{"post":{"summary":"Provision mDoc issuer key material.","tags":["Oid4vci"],"requestBody":{"required":false,"content":{"application/json":{"schema":{"type":"object","properties":{"force":{"type":"boolean"}}}}}},"responses":{"200":{"description":"mDoc issuer keys provisioned.","content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"Bad request"},"401":{"description":"Missing or invalid API key"},"403":{"description":"API key lacks required scope"},"500":{"description":"Internal server error"}}}}}}
```

## GET /api/v1/oid4vci/status/mdoc

> Fetch mDoc issuer readiness status.

```json
{"openapi":"3.0.0","info":{"title":"Proven API","version":"1.0.0"},"tags":[{"name":"Oid4vci","description":"Endpoints for creating and managing Open ID for verifiable credential issuance"}],"servers":[{"url":"https://proven-4-2-test.proven.indicio.tech"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key"}}},"paths":{"/api/v1/oid4vci/status/mdoc":{"get":{"summary":"Fetch mDoc issuer readiness status.","tags":["Oid4vci"],"responses":{"200":{"description":"mDoc issuer readiness status.","content":{"application/json":{"schema":{"type":"object"}}}},"401":{"description":"Missing or invalid API key"},"403":{"description":"API key lacks required scope"},"500":{"description":"Internal server error"}}}}}}
```
