openapi: 3.0.3 info: title: SpruceID DIDKit HTTP Credentials Status API description: DIDKit is SpruceID's cross-platform toolkit for working with W3C Decentralized Identifiers (DIDs) and Verifiable Credentials (VCs). The DIDKit HTTP server exposes REST endpoints for issuing, presenting, and verifying verifiable credentials and verifiable presentations using standard cryptographic proofs. It implements the W3C VC API specification and supports multiple DID methods including did:key, did:web, did:ethr, and did:tz. DIDKit HTTP does not include built-in authorization and should be deployed behind a reverse proxy in production. version: 1.0.0 contact: name: SpruceID Developer Support email: hello@spruceid.com url: https://spruceid.dev/docs/didkit/ license: name: Apache-2.0 url: https://www.apache.org/licenses/LICENSE-2.0 x-logo: url: https://spruceid.com/favicon.ico servers: - url: http://localhost:8080 description: Local DIDKit HTTP server instance tags: - name: Status description: Bitstring Status List credential endpoint for credential revocation status. paths: /statuslist: get: summary: Get Bitstring Status List Credential description: Returns a W3C Bitstring Status List verifiable credential that can be used to check the revocation status of credentials issued by this server. The status list encodes credential status as a compressed bitstring. Each credential references a position in this list via a BitstringStatusListEntry credentialStatus property. operationId: getStatusList tags: - Status responses: '200': description: Bitstring Status List Verifiable Credential content: application/json: schema: $ref: '#/components/schemas/BitstringStatusListCredential' '500': description: Internal server error - missing signing key or configuration error content: application/json: schema: $ref: '#/components/schemas/Error' components: schemas: DataIntegrityProof: type: object description: A W3C Data Integrity cryptographic proof properties: type: type: string description: Proof type (e.g. DataIntegrityProof, Ed25519Signature2020) example: DataIntegrityProof cryptosuite: type: string description: The cryptographic suite used example: eddsa-rdfc-2022 created: type: string format: date-time description: When the proof was created example: '2024-11-05T19:11:37Z' verificationMethod: type: string description: DID URL of the verification method example: did:key:z6MktKwz7Ge1Yxzr4JHavN33wiwa8y81QdcMRLXQsrH9T53b#z6MktKwz7Ge1Yxzr4JHavN33wiwa8y81QdcMRLXQsrH9T53b proofPurpose: type: string description: The purpose of this proof example: assertionMethod proofValue: type: string description: The base58-btc encoded proof value example: z4WrjAqrwg92y1RR8S63rav19ZmYWx6Vs1HBcPJgXnCiEfef4i1NqKG7jMyM2DtNdMXvACudKcra92VPxW9hfatbZ previousProof: type: string description: ID of a previous proof this proof covers (for multi-proof chaining) id: type: string description: Optional identifier for this proof (for multi-proof referencing) BitstringStatusListCredential: type: object description: A W3C Bitstring Status List verifiable credential for checking revocation status of other credentials. properties: '@context': type: array items: type: string example: - https://www.w3.org/2018/credentials/v1 - https://www.w3.org/ns/credentials/status/v1 id: type: string example: http://localhost:8080/statuslist type: type: array items: type: string example: - VerifiableCredential - BitstringStatusListCredential issuer: type: string example: did:key:z6MktKwz7Ge1Yxzr4JHavN33wiwa8y81QdcMRLXQsrH9T53b credentialSubject: type: object properties: id: type: string type: type: string example: BitstringStatusList statusPurpose: type: string enum: - revocation - suspension example: revocation encodedList: type: string description: Base64url-encoded compressed bitstring proof: $ref: '#/components/schemas/DataIntegrityProof' Error: type: object description: Error response properties: error: type: string description: Error message message: type: string description: Detailed error description externalDocs: description: SpruceID DIDKit Documentation url: https://spruceid.dev/docs/didkit/