---
title: "OIDC Batch Credential"
method: POST
path: "/oidc/batch_credential"
tags: ["oidc4ci"]
---

# OIDC Batch Credential

`POST /oidc/batch_credential`

The Batch Credential Endpoint issues multiple Credentials in one Batch Credential Response as approved by the End-User upon presentation of a valid Access Token representing this approval.

## Request body

- BatchCredentialRequest — Model for OIDC batch Credential request.
  - `credential_requests` CredentialRequest[], required
    - `format` string — Format of the credential being issued.
    - `credential_definition` CredentialDefinition — unresolved $ref
    - `credential_identifier` string — String that identifies a Credential that is being requested to be issued. When this parameter is used, the format parameter and any other Credential format specific parameters MUST NOT be present.
    - `proof` JWTProof
      - `proof_type` string, required — REQUIRED. JSON String denoting the proof type. Currently the only supported proof type is 'jwt'.
      - `jwt` string — REQUIRED if proof_type equals jwt. Signed JWT as proof of key possession.
      - `cwt` string — REQUIRED if proof_type equals cwt. Signed CWT as proof of key possession.
      - `ldp_vp` object, nullable — REQUIRED if proof_type equals ldp_vp. Linked Data Proof as proof of key possession.
    - `credential_response_encryption` CredentialResponseEncryption — Object containing information for encrypting the Credential Response.
      - `jwk` string, required — Object containing a single public key as a JWK used for encrypting the Credential Response.
      - `alg` string, required — JWE alg algorithm for encrypting the Credential Response.
      - `enc` string, required — JWE enc algorithm for encrypting the Credential Response.

## Response `200`

OK

- BatchCredentialResponse — Model for OIDC Batch Credential response.
  - `credential_responses` union[], required
    - union
      - string
      - object — Credential element Batch Credential Response.
        - `credential` union, required — Contains issued Credential.
          - string
          - object
        - `transaction_id` string — OPTIONAL. String identifying a Deferred Issuance transaction. This claim is contained in the response if the Credential Issuer was unable to immediately issue the Credential. The value is subsequently used to obtain the respective Credential with the Deferred Credential Endpoint.
        - `notification_id` string — String identifying an issued Credential that the Wallet includes in the acknowledgement request.
  - `c_nonce` string — JSON string containing a nonce to be used to create a proof of possession of key material when requesting a Credential.
  - `c_nonce_expires_in` integer — JSON integer denoting the lifetime in seconds of the c_nonce.

## Other responses

- `400` — Bad request

---

[API](https://skmtc.net/trustbloc/apis/verifiable-credential-service-vcs.md) · [All operations](https://skmtc.net/trustbloc/apis/verifiable-credential-service-vcs/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/trustbloc/verifiable-credential-service-vcs/revisions/9e21ad997121/schema)
