> For the complete documentation index, see [llms.txt](https://docs.cheqd.io/product/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cheqd.io/product/sdk/understanding-sdks.md).

# Choosing the right SDK

Understand cheqd's SDK suite and choose the best fit for your project.

## Integrate with a cheqd supported SDK

cheqd has integrated into a suite of SDKs to enable third parties to create DIDs and DID-Linked Resources; and, issue and verify Verifiable Credentials, using cheqd DIDs.

## Start here: the cheqd SDK, cheqd Studio or an agent framework

There are three ways to build on cheqd. Pick the one that matches how much of the stack you want to own.

|                                              | [`@cheqd/sdk`](/product/advanced/sdk.md) (TypeScript)               | [cheqd Studio](/product/getting-started/studio.md) (REST API)                   | Credo, ACA-Py, Veramo, walt.id (below)                |
| -------------------------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ----------------------------------------------------- |
| **How you call cheqd**                       | A Node.js (22+) library that talks to the network directly          | HTTP requests from any language                                                 | The framework's own API                               |
| **Who holds the keys**                       | You: the DID keys and the fee-payer wallet                          | Studio custodies keys and signs for you                                         | The framework manages them                            |
| **Who pays network fees**                    | Your fee-payer wallet, in CHEQ (or IBC tokens)                      | Your Studio account's balance                                                   | The framework's configured fee payer                  |
| **Create DIDs and DID-Linked Resources**     | ✔️                                                                  | ✔️                                                                              | See the table below                                   |
| **Issue and verify credentials**             | ❌ (not part of the SDK; use a framework or Studio)                  | ✔️ VC-JWT and JSON-LD                                                           | See the table below                                   |
| **Status lists, trust registries, payments** | ❌                                                                   | ✔️                                                                              | See the table below                                   |
| **Best for**                                 | Custom integrations, minimal dependencies, full control of keys     | The fastest start, and backends that should not handle keys or blockchain code  | Wallet, agent and protocol flows (DIDComm, OpenID4VC) |
| **Start with**                               | [Setup the cheqd SDK](/product/advanced/sdk/setup-the-cheqd-sdk.md) | [Set up your Studio account](/product/getting-started/studio/set-up-account.md) | The SDK pages linked under "Get started"              |

If you are unsure, start with Studio to see results in a few API calls, and move to the SDK when you need to hold your own keys. Both can create the same `did:cheqd` DIDs and DID-Linked Resources, so you can use them side by side.

For testnet funding, see the [Testnet Faucet](/product/network/tools/testnet-faucet.md).

## Choose a software stack to suit your needs

cheqd is continually integrating into different software development kits to suit the needs of different partners and their clients.

Below is a comparison between our supported agent frameworks and SDKs: Credo, ACA-Py, Veramo SDK plugin and Walt.id's Community Stack. (For `@cheqd/sdk` and Studio, see the comparison above.)

|                                                                       Functionality                                                                      | Credo |   Veramo   |   ACA-Py   | Walt.id SSI Kit |
| :------------------------------------------------------------------------------------------------------------------------------------------------------: | ----- | :--------: | :--------: | :-------------: |
|                             **Create cheqd DIDs (**[**ADR**](/product/architecture/adr-list/adr-001-cheqd-did-method.md)**)**                            | ✔️    |     ✔️     |     ✔️     |        ✔️       |
|                                                               **cheqd Credential Payments**                                                              | ❌     |     ✔️     |      ❌     |        ❌        |
|                              **JSON based JWT Verifiable Credential (**[**spec**](https://www.w3.org/TR/vc-data-model/)**)**                             | ❌     |     ✔️     |     ✔️     |        ✔️       |
|                                 **JSON-LD Verifiable Credential (**[**spec**](https://www.w3.org/TR/vc-data-model/)**)**                                 | ✔️    |     ✔️     |     ✔️     |        ✔️       |
|                                       **AnonCreds (**[**spec**](https://hyperledger.github.io/anoncreds-spec/)**)**                                      | ✔️    |      ❌     |     ✔️     |        ❌        |
|           **Selective Disclosure-JWT Credential (**[**spec**](https://datatracker.ietf.org/doc/draft-ietf-oauth-selective-disclosure-jwt/)**)**          | ✔️    | ⌛(roadmap) |     ✔️     |        ✔️       |
|                        **Create on-ledger Schema (**[**ADR**](/product/architecture/adr-list/adr-002-did-linked-resources.md)**)**                       | ✔️    |     ✔️     |     ✔️     |        ❌        |
|                                     **Create Credential Definition (**[**spec**](/product/advanced/anoncreds.md)**)**                                    | ✔️    |      ❌     |     ✔️     |        ❌        |
|                                         **DIDComm v1.0 (**[**spec**](https://didcomm.org/basicmessage/1.0/)**)**                                         | ✔️    |     ✔️     |     ✔️     |        ❌        |
|                                  **DIDComm v2.0 (**[**spec**](https://identity.foundation/didcomm-messaging/spec/)**)**                                  | ✔️    |     ✔️     |     ✔️     |        ❌        |
|              **DID Exchange Protocol (**[**RFC 0023**](https://github.com/hyperledger/aries-rfcs/tree/main/features/0023-did-exchange)**)**              | ✔️    |      ❌     |     ✔️     |        ❌        |
|    **Agent Connection Protocol (**[**RFC 0160**](https://github.com/hyperledger/aries-rfcs/blob/main/features/0160-connection-protocol/README.md)**)**   | ✔️    |      ❌     |     ✔️     |        ❌        |
|           **Out of Band Protocol (**[**RFC 0434**](https://github.com/hyperledger/aries-rfcs/blob/main/features/0434-outofband/README.md)**)**           | ✔️    |      ❌     |     ✔️     |        ❌        |
|             **Self Issued OpenID Provider v2 (OIDC-SIOP) (**[**spec**](https://openid.net/specs/openid-connect-self-issued-v2-1_0.html)**)**             | ✔️    | ⌛(roadmap) |      ❌     |        ✔️       |
|         **OpenID for Verifiable Credential Issuance (**[**spec**](https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0.html)**)**        | ✔️    | ⌛(roadmap) |      ❌     |        ✔️       |
|         **OpenID for Verifiable Credential Presentations (**[**spec**](https://openid.net/specs/openid-4-verifiable-presentations-1_0.html)**)**         | ✔️    | ⌛(roadmap) |      ❌     |        ✔️       |
|                                **Bitstring Status List (**[**spec**](https://www.w3.org/TR/vc-bitstring-status-list/)**)**                               | ❌     |     ✔️     |     ✔️     |        ✔️       |
|                       **Token Status List (**[**spec**](https://www.ietf.org/archive/id/draft-ietf-oauth-status-list-02.html)**)**                       | ✔️    |      ❌     |     ✔️     |        ✔️       |
|      **AnonCreds Revocation Registry Definitions (**[**spec**](https://docs.cheqd.io/identity/guides/anoncreds/revocation-registry-definition)**)**      | ✔️    |      ❌     |     ✔️     |        ❌        |
|                **AnonCreds Status List Entries (**[**spec**](https://docs.cheqd.io/identity/guides/anoncreds/revocation-status-list)**)**                | ✔️    |      ❌     |     ✔️     |        ❌        |
|    **Issue Credential Protocol (**[**RFC 0036**](https://github.com/hyperledger/aries-rfcs/blob/master/features/0036-issue-credential/README.md)**)**    | ✔️    |      ❌     |     ✔️     |        ❌        |
| **Issue Credential Protocol V2 (**[**RFC 0453**](https://github.com/hyperledger/aries-rfcs/blob/master/features/0453-issue-credential-v2/README.md)**)** | ✔️    |      ❌     |     ✔️     |        ❌        |
|                            **DIF Presentation Exchange (**[**spec**](https://identity.foundation/presentation-exchange/)**)**                            | ✔️    |     ✔️     |     ✔️     |        ✔️       |
|        **Aries Present Proof 2.0 (**[**spec**](https://github.com/hyperledger/aries-rfcs/blob/main/features/0454-present-proof-v2/README.md)**)**        | ✔️    |      ❌     |     ✔️     |        ❌        |
|                                                              **DID-Linked Trust Registries**                                                             | ❌     | ⌛(roadmap) | ⌛(roadmap) |        ❌        |

## Get started

Choose one of our SDKs below and started building cheqd into your existing or new product:

<table data-card-size="large" data-view="cards" data-full-width="false"><thead><tr><th></th><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><mark style="color:blue;"><strong>Credo</strong></mark></td><td>Credo is an SDK that is building directly towards supporting the EUDI standards, as well as support for AnonCreds.</td><td></td><td><a href="https://3569764573-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPVAMvpKH7PYzvXA6u6Cn%2Fuploads%2Fgit-blob-60c84f7d53e6eb6e675e8cd8b00e4920ad335ca0%2FCredo.png?alt=media">Credo.png</a></td><td><a href="/product/sdk/credo.md">Credo</a></td></tr><tr><td><mark style="color:blue;"><strong>ACA-Py</strong></mark></td><td>ACA-Py is a quickly expanding SDK, moving from the AnonCreds ecosystem towards wider support for EUDI.</td><td></td><td><a href="https://3569764573-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPVAMvpKH7PYzvXA6u6Cn%2Fuploads%2Fgit-blob-7c6e984dea8a819980980f97ae804f943838ce62%2FACA-Py.png?alt=media">ACA-Py.png</a></td><td><a href="/product/sdk/aca-py.md">ACA-Py</a></td></tr><tr><td><mark style="color:blue;"><strong>Veramo</strong></mark></td><td>The <strong>Veramo SDK Plugin</strong> is an extension of the Veramo SDK, a JavaScript framework for Trusted Data, adding support for cheqd functionality.</td><td></td><td><a href="https://3569764573-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPVAMvpKH7PYzvXA6u6Cn%2Fuploads%2Fgit-blob-031af91fab341ad25703bd5d5924bda95df8e5fe%2Fveramo%20logo.png?alt=media">veramo logo.png</a></td><td><a href="/product/sdk/veramo.md">Veramo</a></td></tr><tr><td><mark style="color:blue;"><strong>Walt.id Community Stack</strong></mark></td><td>Walt.id Community Stack is an SDK that supports the <a href="https://digital-strategy.ec.europa.eu/en/library/european-digital-identity-architecture-and-reference-framework-outline"><strong>European Architecture and Reference Framework (ARF)</strong></a> standards for identity, with cheqd DID support.</td><td></td><td><a href="https://3569764573-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FPVAMvpKH7PYzvXA6u6Cn%2Fuploads%2Fgit-blob-13fffb32e0b3f04983f4984cd455a441c3111b7f%2Fwalt.id%20logo.png?alt=media">walt.id logo.png</a></td><td><a href="/product/sdk/walt-id.md">Walt.id Community Stack</a></td></tr></tbody></table>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.cheqd.io/product/sdk/understanding-sdks.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
