Skip to main content

Overview

With a credential template in hand, you can now create a specific credential offer by providing the template ID and the user’s actual data. The API returns URIs that can be used to deliver the credential to the user’s wallet.

Endpoint

POST https://test.didxtech.com/me-creds/api/credentials/issuance

Request

curl -X POST "https://test.didxtech.com/me-creds/api/credentials/issuance" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "credentialTemplateId": "tpl_6421a8905c17830c188e2e2f",
    "attributes": {
      "studentId": "STU2024001234",
      "fullName": "John Doe",
      "enrollmentDate": "2024-09-01",
      "degreeProgram": "Computer Science"
    }
  }'

Request Body

FieldTypeDescription
credentialTemplateIdstringThe id from the credential template created in Step 2
attributesobjectKey-value pairs matching the attributes defined in the template

Response

HTTP 201 Created
{
  "data": {
    "id": "iss_cm7d9cq5600pwk3zq3kmpg8uc",
    "status": "offered",
    "offerUri": "https://paradym.id/invitation?credential_offer_uri=...",
    "offerQrUri": "https://paradym.id/invitation?credential_offer_uri=...&qr=true",
    "exchange": "openid4vc",
    "format": "sd-jwt-vc"
  }
}

Key Response Fields

FieldDescription
idUnique issuance identifier
statusoffered — the credential is ready to be claimed
offerUriDirect link users can paste into their wallet to accept or reject the credential
offerQrUriQR-optimized version of the offer URI for wallet scanning
exchangeopenid4vc — ensures cross-wallet compatibility
formatsd-jwt-vc — enables selective disclosure of specific attributes
Save the offerUri from the response — you’ll need it in Step 4: Send Credential Offer to Wallet.