1Kosmos Verifiable Credentials API

The Verifiable Credentials API from 1Kosmos — 5 operation(s) for verifiable credentials.

OpenAPI Specification

1kosmos-verifiable-credentials-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: 1Kosmos BlockID Platform Verifiable Credentials API
  version: '2026-08-05'
  description: 'REST surface of the 1Kosmos BlockID identity platform — identity verification (IDVerify), identity assurance level (IAL) lookup, one-time passcodes, user management, access codes, W3C Verifiable Credentials and Verifiable Presentations, IAL2 identity-proofing workflows, and the reporting/metrics APIs.


    DERIVED, NOT PUBLISHED BY THE PROVIDER. 1Kosmos publishes no OpenAPI. This document was mechanically derived by API Evangelist from the first-party public Postman collection "1Kosmos Postman Collection" (https://documenter.getpostman.com/view/50203634/2sB3dHWZ1n), saved verbatim in this repo at postman/1kosmos-postman-collection.json. Every path, method, header, example request body and example response below is carried over from that collection; nothing was invented. Request/response schemas are typed only as generic objects because the collection carries examples, not schemas. Each operation records the original collection URL template in x-postman-request.'
  contact:
    name: 1Kosmos Developer Support
    email: developers@1kosmos.com
    url: https://developer.1kosmos.com/devportal/docs/
  x-generated-by: API Evangelist enrichment pipeline (derived from Postman collection)
  x-source: postman/1kosmos-postman-collection.json
servers:
- url: https://{tenantDNS}
  description: Tenant-scoped BlockID host. Every 1Kosmos deployment is addressed by its own tenant DNS name; the microservice hosts the collection references as {{client_api}}, {{wf_api}} and {{reports}} are discovered at runtime from GET /caas/sd on the tenant host.
  variables:
    tenantDNS:
      default: blockid-trial.1kosmos.net
      description: Your BlockID tenant DNS name as shown in the BlockID developer dashboard. blockid-trial.1kosmos.net is the trial tenant used throughout the published docs.
security:
- licenseKey: []
  publicKey: []
tags:
- name: Verifiable Credentials
paths:
  /vcs/tenant/{tenantID}/community/{communityID}/vc/from/payload/{vcType}:
    post:
      operationId: verifiableCredentialsCreateVerifiableCredentialFromPayload
      summary: Create  Verifiable Credential From Payload
      description: "API Endpoint: Create Verifiable Credential\nThis endpoint allows you to create a Verifiable Credential (VC) for a specified tenant and community. It utilizes the HTTP POST method to submit a payload containing user information and related details.\n\nRequest\n\nMethod: POST\n\nEndpoint: {{client_api}}/vcs/tenant/:tenantID/community/:communityID/vc/from/payload/:vcType\n\nURL Parameters\n\ntenantID (string): The unique identifier for the tenant.\n\ncommunityID (string): The unique identifier for the community.\n\nvcType (string): The type of verifiable credential being created.\n\nRequest Body\nThe request body must be in JSON format and should contain the following keys:\n\nRequest Body Schema\n\nKey\nType\nRequired\nDescription\n\ninfo\nobject\nYes\nContains user and company information\n\n└── id\nstring\nYes\nUnique identifier\n\n└── firstName\nstring\nYes\nUser's first name\n\n└── lastName\nstring\nYes\nUser's last name\n\n└── companyName\nstring\nYes\nName of the company\n\n└── companyAddress\nstring\nYes\nCompany address\n\n└── department\nstring\nNo\nDepartment name\n\n└── title\nstring\nNo\nJob title\n\n└── doe\nstring\nYes\nDate of employment (format: yyyymmdd)\n\n└── xx\nstring / number / boolean\nNo\nFlexible field\n\ndid\nstring\nYes\nDecentralized Identifier\n\npublicKey\nstring\nYes\nPublic key associated with the DID\n\nissuer\nobject\nYes\nContains issuer details\n\n└── id\nstring\nYes\nIssuer ID\n\n└── xx\nstring\nNo\nOptional field\n\nuserURN\nstring\nNo\nUser's URN\n\nissueVP\nboolean\nYes\nWhether to issue a verifiable presentation\n\nvpRequest\nobject\nYes\nVerifiable Presentation request configuration\n\n└── attributes\narray of strings\nNo\nAttributes requested in VP\n\n└── ageToProve\nnumber\nNo\nMinimum age required\n\n└── createShareUrl\nboolean\nYes\nWhether to generate a shareable URL\n\nResponse\nOn a successful request, the API will return a response with the following structure:\n\nStatus Code: 200\n\nContent-Type: application/json\n\nError Response\n\nHTTP Status\nError Message\nDescription\n\n400\nThis userId or userPublicKey is mandatory\nRequest payload without user info\n\n400\nUnable to load tenant/community\nWrong community ID or tenant ID\n\n400\nInvalid Payload\nInvalid/Missing Payload\n\n401\nInvalid License Key\nEntered License is invalid\n\nResponse Body\nThe response will include the following keys:\n\nvc (object): The created Verifiable Credential.\n\n@context (array): Context information for the VC.\n\nid (string): Identifier for the VC.\n\ntype (array): Types associated with the VC.\n\nissuer (object): Issuer details.\n\nid (string): Issuer identifier.\n\ntenantId (string): Tenant identifier.\n\ncommunityId (string): Community identifier.\n\nissuanceDate (string): Date the VC was issued.\n\nexpirationDate (string): Expiration date of the VC.\n\ncredentialSubject (object): Subject information of the VC.\n\nid (string): Subject identifier.\n\nOther personal information fields as provided in the request.\n\nproof (object): Proof details for the VC.\n\ntype (string): Type of proof.\n\ncreated (string): Creation date of the proof.\n\nverificationMethod (string): Method used for verification.\n\nproofPurpose (string): Purpose of the proof.\n\nproofValue (string): Value of the proof.\n\nstatusUrl (string): URL to check the status of the VC.\n\nvcId (string): The unique identifier for the VC.\n\ndownload_url (string): URL to download the VC.\n\nExample Response\n{\n  \"vc\": {\n    \"@context\": [\"\"],\n    \"id\": \"\",\n    \"type\": [\"\"],\n    \"issuer\": {\n      \"id\": \"\",\n      \"tenantId\": \"\",\n      \"communityId\": \"\"\n    },\n    \"issuanceDate\": \"\",\n    \"expirationDate\": \"\",\n    \"credentialSubject\": {\n      \"id\": \"\",\n      \"firstName\": \"\",\n      \"lastName\": \"\",\n      \"companyName\": \"\",\n      \"companyAddress\": \"\",\n      \"department\": \"\",\n      \"title\": \"\",\n      \"doe\": \"\",\n      \"publicKey\": \"\"\n    },\n    \"proof\": {\n      \"type\": \"\",\n      \"created\": \"\",\n      \"verificationMethod\": \"\",\n      \"proofPurpose\": \"\",\n      \"proofValue\": \"\"\n    },\n    \"statusUrl\": \"\"\n  },\n  \"vcId\": \"\",\n  \"download_url\": \"\"\n}"
      tags:
      - Verifiable Credentials
      parameters:
      - name: tenantID
        in: path
        required: true
        schema:
          type: string
      - name: communityID
        in: path
        required: true
        schema:
          type: string
      - name: vcType
        in: path
        required: true
        schema:
          type: string
      - name: requestid
        in: header
        required: false
        schema:
          type: string
        description: JSON string which should contain "appid (string)", "uuid (string)" and "ts (number)" representing epoch timestamp in seconds - it should not be more or less than 60 seconds from now
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
            example:
              info:
                id: '1234'
                firstName: john
                lastName: doe
                companyName: 1kosmos
                companyAddress: Mumbai
                department: Mobile
                title: software engineer
                doe: '20260211'
              did: 17db22ab3fdfe09ce1656e193187227f0f3d4769
              publicKey: AdxCJp04PJk82Q0KKU+jzsnY/RKrFEM6AW8qH+M8xpMbUvJc/wuAu4aqLBbsY7RDzAO2Io7x4k/clkHuauYIpQ==
              issuer:
                id: https://1k-dev.1kosmos.net
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
              example:
                vc:
                  '@context':
                  - https://www.w3.org/2018/credentials/v1
                  - vc_EmploymentCredential: https://schema.org#vc_EmploymentCredential
                    firstName: https://schema.org#firstName
                    lastName: https://schema.org#lastName
                    companyName: https://schema.org#companyName
                    companyAddress: https://schema.org#companyAddress
                    department: https://schema.org#department
                    title: https://schema.org#title
                    doe: https://schema.org#doe
                    publicKey: https://schema.org#publicKey
                  - https://w3id.org/security/suites/ed25519-2020/v1
                  id: did:blockid:8d947e38-a497-4d28-bb90-3de7434d36de
                  type:
                  - VerifiableCredential
                  - vc_EmploymentCredential
                  issuer:
                    id: https://1k-dev.1kosmos.net
                    tenantId: 68418b2587942f1d3158a798
                    communityId: 68418b2587942f1d3158a799
                  issuanceDate: '2025-06-23T07:33:37.404Z'
                  expirationDate: '2026-02-11T00:00:00.000Z'
                  credentialSubject:
                    id: did:17db22ab3fdfe09ce1656e193187227f0f3d4769
                    firstName: john
                    lastName: doe
                    companyName: 1kosmos
                    companyAddress: Mumbai
                    department: Mobile
                    title: software engineer
                    doe: '20260211'
                    publicKey: AdxCJp04PJk82Q0KKU+jzsnY/RKrFEM6AW8qH+M8xpMbUvJc/wuAu4aqLBbsY7RDzAO2Io7x4k/clkHuauYIpQ==
                  proof:
                    type: Ed25519Signature2020
                    created: '2025-06-23T07:33:37Z'
                    verificationMethod: did:key:blockid:z6MkknnEYdzbBnLW3vQCfeVhwZYdNJ7e1DQECc21PHABWmLn
                    proofPurpose: assertionMethod
                    proofValue: z3EbDE9o1JMGddpRWTVmsF6cqtoESkn5XenSo4yi7D33diff8waQuN4bxWdGMe97bKiDnJAYXmvN144D1Pw2cRBVu
                  statusUrl: https://1k-dev.1kosmos.net/vcs/tenant/68418b2587942f1d3158a798/community/68418b2587942f1d3158a799/vc/did:blockid:8d947e38-a497-4d28-bb90-3de7434d36de/status
                vcId: did:blockid:8d947e38-a497-4d28-bb90-3de7434d36de
                download_url: https://1k-dev.1kosmos.net/vcs/vc/did:blockid:8d947e38-a497-4d28-bb90-3de7434d36de/download
        '400':
          description: 'Fail: Expired Payload'
          content:
            application/json:
              schema:
                type: object
              example:
                code: 400
                message: info failed custom validation because Expired payload
        '401':
          description: 'Failed: invalid/Missing License Key'
          content:
            application/json:
              schema:
                type: object
              example:
                code: 401
                message: Unauthorized
      x-postman-request: '{{client_api}}/vcs/tenant/:tenantID/community/:communityID/vc/from/payload/:vcType'
      x-postman-variants:
      - Create  Verifiable Credential From Payload
  /vcs/tenant/{tenantID}/community/{communityID}/vc/{vcID}/status:
    get:
      operationId: verifiableCredentialsGetVerifiableCredentialStatus
      summary: Get  Verifiable Credential Status
      description: "Endpoint Description\nThis endpoint retrieves the status of a specific verifiable credential (VC) within a community for a given tenant. It provides detailed information about the VC, including its subject, issuer, and proof details.\n\nRequest\nMethod: GET\nURL: {{client_api}}/vcs/tenant/:tenantID/community/:communityID/vc/:vcID/status\n\nPath Parameters\n\ntenantID (string, required): The unique identifier for the tenant.\n\ncommunityID (string, required): The unique identifier for the community.\n\nvcID (string, required): The unique identifier for the verifiable credential.\n\nHeaders\n\nAuthorization (string, optional): Bearer token for authentication (if required by your API).\n\nContent-Type (string, optional): Typically set to application/json.\n\nResponse\nThe response will return a JSON object containing the status of the requested verifiable credential.\n\nResponse Body Example\n{\n  \"result\": {\n    \"subject\": {\n      \"did\": \"\",\n      \"publicKey\": \"\"\n    },\n    \"type\": [\"\"],\n    \"_id\": \"\",\n    \"vcID\": \"\",\n    \"tenantId\": \"\",\n    \"communityId\": \"\",\n    \"proof\": {\n      \"type\": \"\",\n      \"created\": \"\",\n      \"verificationMethod\": \"\",\n      \"proofPurpose\": \"\",\n      \"proofValue\": \"\"\n    },\n    \"issueTS\": 0,\n    \"expiryTS\": 0,\n    \"status\": \"\",\n    \"issuer\": {\n      \"id\": \"\",\n      \"tenantId\": \"\",\n      \"communityId\": \"\"\n    }\n  }\n}\n\nResponse Fields\n\nresult: Contains the details of the verifiable credential.\n\nsubject: Information about the subject of the VC.\n\ndid: Decentralized Identifier of the subject.\n\npublicKey: Public key associated with the subject.\n\ntype: An array indicating the type of the VC.\n\n_id: Internal identifier for the VC.\n\nvcID: The unique identifier for the verifiable credential.\n\ntenantId: Identifier for the tenant.\n\ncommunityId: Identifier for the community.\n\nproof: Details about the proof of the VC.\n\ntype: Type of proof.\n\ncreated: Timestamp of when the proof was created.\n\nverificationMethod: Method used for verification.\n\nproofPurpose: Purpose of the proof.\n\nproofValue: Value of the proof.\n\nissueTS: Timestamp indicating when the VC was issued.\n\nexpiryTS: Timestamp indicating when the VC expires.\n\nstatus: Current status of the VC.\n\nissuer: Information about the issuer of the VC.\n\nid: Identifier for the issuer.\n\ntenantId: Identifier for the issuer's tenant.\n\ncommunityId: Identifier for the issuer's community.\n\nThis endpoint is essential for checking the validity and status of verifiable credentials within a community, ensuring that users can manage and verify their credentials effectively."
      tags:
      - Verifiable Credentials
      parameters:
      - name: tenantID
        in: path
        required: true
        schema:
          type: string
      - name: communityID
        in: path
        required: true
        schema:
          type: string
      - name: vcID
        in: path
        required: true
        schema:
          type: string
      - name: requestid
        in: header
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
              example:
                result:
                  subject:
                    did: did:17db22ab3fdfe09ce1656e193187227f0f3d4769
                    publicKey: AdxCJp04PJk82Q0KKU+jzsnY/RKrFEM6AW8qH+M8xpMbUvJc/wuAu4aqLBbsY7RDzAO2Io7x4k/clkHuauYIpQ==
                  type:
                  - VerifiableCredential
                  - vc_EmploymentCredential
                  _id: 68591e78dcdbc20b5f4549ee
                  vcID: did:blockid:670c5e8e-e87e-43ba-a843-9ed2240d57b6
                  tenantId: 68418b2587942f1d3158a798
                  communityId: 68418b2587942f1d3158a799
                  proof:
                    type: Ed25519Signature2020
                    created: '2025-06-23T09:29:28Z'
                    verificationMethod: did:key:blockid:z6MkknnEYdzbBnLW3vQCfeVhwZYdNJ7e1DQECc21PHABWmLn
                    proofPurpose: assertionMethod
                    proofValue: z48SnxMwZRAsw6wPnWHHqqUYTKDPft8K55dRYxYfUyZRYHCrCEoc9vNyNzoeZGZoTRwA3iu9w2GHqex2hfmb67FRU
                  issueTS: 1750670968
                  expiryTS: 1770768000
                  status: issued
                  issuer:
                    id: https://1k-dev.1kosmos.net
                    tenantId: 68418b2587942f1d3158a798
                    communityId: 68418b2587942f1d3158a799
        '404':
          description: 'Failed: VC Not Found'
          content:
            application/json:
              schema:
                type: object
              example:
                code: 404
                message: VC not found
        '401':
          description: 'Failed: Invalid/Missing License Key'
          content:
            application/json:
              schema:
                type: object
              example:
                code: 401
                message: Unauthorized
      x-postman-request: '{{client_api}}/vcs/tenant/:tenantID/community/:communityID/vc/:vcID/status'
      x-postman-variants:
      - Get  Verifiable Credential Status
  /vcs/tenant/{tenantID}/community/{communityID}/vc/verify:
    post:
      operationId: verifiableCredentialsVerifyVerifiableCredential
      summary: Verify Verifiable Credential
      description: "Verify Verifiable Credential\nThis endpoint is used to verify a verifiable credential (VC) for a specific community within a tenant. It checks the authenticity and validity of the provided VC data.\n\nRequest Format\n\nMethod: POST\n\nEndpoint: {{client_api}}/vcs/tenant/:tenantID/community/:communityID/vc/verify\n\nRequest Body: The request should include a JSON object containing the following structure:\n\n{\n  \"vc\": {\n    \"@context\": [\"string\"],\n    \"id\": \"string\",\n    \"type\": [\"string\"],\n    \"issuer\": {\n      \"id\": \"string\",\n      \"tenantId\": \"string\",\n      \"communityId\": \"string\"\n    },\n    \"issuanceDate\": \"string (ISO 8601 date)\",\n    \"expirationDate\": \"string (ISO 8601 date)\",\n    \"credentialSubject\": {\n      \"id\": \"string\",\n      \"firstName\": \"string\",\n      \"lastName\": \"string\",\n      \"companyName\": \"string\",\n      \"companyAddress\": \"string\",\n      \"department\": \"string\",\n      \"title\": \"string\",\n      \"doe\": \"string\",\n      \"publicKey\": \"string\"\n    },\n    \"proof\": {\n      \"type\": \"string\",\n      \"created\": \"string (ISO 8601 date)\",\n      \"verificationMethod\": \"string\",\n      \"proofPurpose\": \"string\",\n      \"proofValue\": \"string\"\n    },\n    \"statusUrl\": \"string\"\n  }\n}\n\nResponse Format\nThe response will return a JSON object indicating whether the VC was verified and providing the status of the verification. The structure of the response is as follows:\n\n{\n  \"verified\": \"boolean\",\n  \"status\": {\n    \"subject\": {\n      \"did\": \"string\",\n      \"publicKey\": \"string\"\n    },\n    \"type\": [\"string\"],\n    \"_id\": \"string\",\n    \"vcID\": \"string\",\n    \"tenantId\": \"string\",\n    \"communityId\": \"string\",\n    \"proof\": {\n      \"type\": \"string\",\n      \"created\": \"string\",\n      \"verificationMethod\": \"string\",\n      \"proofPurpose\": \"string\",\n      \"proofValue\": \"string\"\n    },\n    \"issueTS\": \"integer\",\n    \"expiryTS\": \"integer\",\n    \"status\": \"string\",\n    \"issuer\": {\n      \"id\": \"string\",\n      \"tenantId\": \"string\",\n      \"communityId\": \"string\"\n    }\n  }\n}\n\nNotes\n\nThe verified field indicates the success of the verification process.\n\nThe status object contains detailed information about the VC and its issuer."
      tags:
      - Verifiable Credentials
      parameters:
      - name: tenantID
        in: path
        required: true
        schema:
          type: string
      - name: communityID
        in: path
        required: true
        schema:
          type: string
      - name: requestid
        in: header
        required: false
        schema:
          type: string
        description: JSON string which should contain "appid (string)", "uuid (string)" and "ts (number)" representing epoch timestamp in seconds - it should not be more or less than 60 seconds from now
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
            example:
              vc:
                '@context':
                - https://www.w3.org/2018/credentials/v1
                - vc_EmploymentCredential: https://schema.org#vc_EmploymentCredential
                  firstName: https://schema.org#firstName
                  lastName: https://schema.org#lastName
                  companyName: https://schema.org#companyName
                  companyAddress: https://schema.org#companyAddress
                  department: https://schema.org#department
                  title: https://schema.org#title
                  doe: https://schema.org#doe
                  publicKey: https://schema.org#publicKey
                - https://w3id.org/security/suites/ed25519-2020/v1
                id: did:blockid:e309fbcf-79c0-4f6b-bf42-72f38d3dd0d1
                type:
                - VerifiableCredential
                - vc_EmploymentCredential
                issuer:
                  id: https://1k-dev.1kosmos.net
                  tenantId: 68418b2587942f1d3158a798
                  communityId: 68418b2587942f1d3158a799
                issuanceDate: '2025-06-23T08:18:31.898Z'
                expirationDate: '2026-02-11T00:00:00.000Z'
                credentialSubject:
                  id: did:17db22ab3fdfe09ce1656e193187227f0f3d4769
                  firstName: john
                  lastName: doe
                  companyName: 1kosmos
                  companyAddress: Mumbai
                  department: Mobile
                  title: software engineer
                  doe: '20260211'
                  publicKey: AdxCJp04PJk82Q0KKU+jzsnY/RKrFEM6AW8qH+M8xpMbUvJc/wuAu4aqLBbsY7RDzAO2Io7x4k/clkHuauYIpQ==
                proof:
                  type: Ed25519Signature2020
                  created: '2025-06-23T08:18:31Z'
                  verificationMethod: did:key:blockid:z6MkknnEYdzbBnLW3vQCfeVhwZYdNJ7e1DQECc21PHABWmLn
                  proofPurpose: assertionMethod
                  proofValue: zgvPhr6q63uPJkzvacSbrEa6kxcGHi3TZMdvCrKGsrCexQV2xtJkWLoB8nR4jtJxmVK7rpkd7NNQxajQnAZKh4Lt
                statusUrl: undefined/tenant/68418b2587942f1d3158a798/community/68418b2587942f1d3158a799/vc/did:blockid:e309fbcf-79c0-4f6b-bf42-72f38d3dd0d1/status
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
              example:
                verified: true
                status:
                  subject:
                    did: did:17db22ab3fdfe09ce1656e193187227f0f3d4769
                    publicKey: AdxCJp04PJk82Q0KKU+jzsnY/RKrFEM6AW8qH+M8xpMbUvJc/wuAu4aqLBbsY7RDzAO2Io7x4k/clkHuauYIpQ==
                  type:
                  - VerifiableCredential
                  - vc_EmploymentCredential
                  _id: 68590dd7dcdbc28d83454946
                  vcID: did:blockid:e309fbcf-79c0-4f6b-bf42-72f38d3dd0d1
                  tenantId: 68418b2587942f1d3158a798
                  communityId: 68418b2587942f1d3158a799
                  proof:
                    type: Ed25519Signature2020
                    created: '2025-06-23T08:18:31Z'
                    verificationMethod: did:key:blockid:z6MkknnEYdzbBnLW3vQCfeVhwZYdNJ7e1DQECc21PHABWmLn
                    proofPurpose: assertionMethod
                    proofValue: zgvPhr6q63uPJkzvacSbrEa6kxcGHi3TZMdvCrKGsrCexQV2xtJkWLoB8nR4jtJxmVK7rpkd7NNQxajQnAZKh4Lt
                  issueTS: 1750666711
                  expiryTS: 1770768000
                  status: issued
                  issuer:
                    id: https://1k-dev.1kosmos.net
                    tenantId: 68418b2587942f1d3158a798
                    communityId: 68418b2587942f1d3158a799
        '500':
          description: 'Failed: Server Error'
          content:
            application/json:
              schema:
                type: object
              example:
                code: 500
                message: Internal Server Error
        '401':
          description: 'Failed: invalid/Missing License Key'
          content:
            application/json:
              schema:
                type: object
              example:
                code: 401
                message: Unauthorized
      x-postman-request: '{{client_api}}/vcs/tenant/:tenantID/community/:communityID/vc/verify'
      x-postman-variants:
      - Verify Verifiable Credential
  /vcs/tenant/{tenantID}/community/{communityID}/vp/create:
    post:
      operationId: verifiableCredentialsIssueVerifiablePresentation
      summary: Issue Verifiable Presentation
      description: 'Create Verifiable Presentation

        This endpoint allows the creation of a Verifiable Presentation (VP) associated with a specific tenant and community. It is used to submit a verifiable credential to the system, which can then be processed and returned in a structured format.


        Request Parameters


        tenantID (path parameter): The unique identifier for the tenant.


        communityID (path parameter): The unique identifier for the community.


        Request Body

        The request body must be in JSON format and should include the following structure:


        vcs (array): A list of verifiable credentials to be included in the VP.


        vc (object): Contains the details of a verifiable credential.


        @context (array): Contexts for the credential.


        id (string): The unique identifier for the credential.


        type (array): The types of the credential (e.g., VerifiableCredential).


        issuer (object): Information about the issuer of the credential.


        id (string): The identifier of the issuer.


        tenantId (string): The tenant ID of the issuer.


        communityId (string): The community ID of the issuer.


        issuanceDate (string): The date when the credential was issued.


        expirationDate (string): The date when the credential expires.


        credentialSubject (object): The subject of the credential.


        id (string): The identifier of the subject.


        firstName (string): The first name of the subject.


        lastName (string): The last name of the subject.


        companyName (string): The name of the company the subject is associated with.


        companyAddress (string): The address of the company.


        department (string): The department of the subject.


        title (string): The job title of the subject.


        dob (string): The date of birth of the subject.


        doe (string): The date of expiry.


        publicKey (string): The public key associated with the subject.


        proof (object): Proof of the credential.


        type (string): The type of proof.


        created (string): The date when the proof was created.


        verificationMethod (string): The method used for verification.


        proofPurpose (string): The purpose of the proof.


        proofValue (string): The value of the proof.


        statusUrl (string): URL for the status of the credential.


        Expected Response

        Upon successful execution, the response will return a status code of 200 and a JSON object containing the following structure:


        vp (object): The Verifiable Presentation object.


        @context (array): Contexts for the VP.


        type (array): The types of the VP.


        verifiableCredential (array): An array containing the verifiable credentials included in the VP.


        Each credential will have similar fields as described in the request body.


        proof (object): Proof of the VP, structured similarly to the proof in the credential.


        Notes


        Ensure that all required fields are populated in the request body to avoid validation errors.


        The response will provide the structure of the created Verifiable Presentation, which can be used for further processing or verification.'
      tags:
      - Verifiable Credentials
      parameters:
      - name: tenantID
        in: path
        required: true
        schema:
          type: string
      - name: communityID
        in: path
        required: true
        schema:
          type: string
      - name: requestid
        in: header
        required: false
        schema:
          type: string
        description: JSON string which should contain "appid (string)", "uuid (string)" and "ts (number)" representing epoch timestamp in seconds - it should not be more or less than 60 seconds from now
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
            example:
              vcs:
              - vc:
                  '@context':
                  - https://www.w3.org/2018/credentials/v1
                  - vc_EmploymentCredential: https://schema.org#vc_EmploymentCredential
                    firstName: https://schema.org#firstName
                    lastName: https://schema.org#lastName
                    companyName: https://schema.org#companyName
                    companyAddress: https://schema.org#companyAddress
                    department: https://schema.org#department
                    title: https://schema.org#title
                    dob: https://schema.org#dob
                    doe: https://schema.org#doe
                    publicKey: https://schema.org#publicKey
                  - https://w3id.org/security/suites/ed25519-2020/v1
                  id: did:blockid:4bf67a8b-e89f-4ba1-a2b7-d57170d18072
                  type:
                  - VerifiableCredential
                  - vc_EmploymentCredential
                  issuer:
                    id: https://1k-dev.1kosmos.net
                    tenantId: 68418b2587942f1d3158a798
                    communityId: 68418b2587942f1d3158a799
                  issuanceDate: '2025-06-23T08:57:58.481Z'
                  expirationDate: '2026-02-11T00:00:00.000Z'
                  credentialSubject:
                    id: did:17db22ab3fdfe09ce1656e193187227f0f3d4769
                    firstName: john
                    lastName: doe
                    companyName: 1kosmos
                    companyAddress: Mumbai
                    department: Mobile
                    title: software engineer
                    dob: '20201226'
                    doe: '20260211'
                    publicKey: AdxCJp04PJk82Q0KKU+jzsnY/RKrFEM6AW8qH+M8xpMbUvJc/wuAu4aqLBbsY7RDzAO2Io7x4k/clkHuauYIpQ==
                  proof:
                    type: Ed25519Signature2020
                    created: '2025-06-23T08:57:58Z'
                    verificationMethod: did:key:blockid:z6MkknnEYdzbBnLW3vQCfeVhwZYdNJ7e1DQECc21PHABWmLn
                    proofPurpose: assertionMethod
                    proofValue: z4o8FzLBjGjoJqofnoMNWq6USCfcMSPZH4nfuwEyaCja81YeLE2tjN6oKpzfzaY9c7ykppEDWRtVWtXKTx8Sfj9h7
                  statusUrl: https:///1k-dev.1kosmos.net/vcs/tenant/68418b2587942f1d3158a798/community/68418b2587942f1d3158a799/vc/did:blockid:4bf67a8b-e89f-4ba1-a2b7-d57170d18072/status
                attributes:
                - firstName
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
              example:
                vp:
                  '@context':
                  - https://www.w3.org/2018/credentials/v1
                  - https://w3id.org/security/suites/ed25519-2020/v1
                  type:
                  - VerifiablePresentation
                  verifiableCredential:
                  - '@context':
                    - https://www.w3.org/2018/credentials/v1
                    - vc_EmploymentCredential: https://schema.org#vc_EmploymentCredential
                      publicKey: https://schema.org#publicKey
                      companyName: https://schema.org#companyName
                    id: did:blockid:4bf67a8b-e89f-4ba1-a2b7-d57170d18072
                    type:
                    - VerifiableCredential
                    - vc_EmploymentCredential
                    issuer:
                      id: https://1k-dev.1kosmos.net
                      tenantId: 68418b2587942f1d3158a798
                      communityId: 68418b2587942f1d3158a799
                    issuanceDate: '2025-06-23T08:57:58.481Z'
                    expirationDate: '2026-02-11T00:00:00.000Z'
                    credentialSubject:
                      companyName: 1kosmos
                      id

# --- truncated at 32 KB (42 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/1kosmos/refs/heads/main/openapi/1kosmos-verifiable-credentials-api-openapi.yml