Paradym integrationParadym logo

Paradym integration for AI agents.

Paradym integration for AI agents with secure authentication and server-side credential injection. Open Connector runs the OAuth, seals the token in an encrypted vault, and serves Paradym tools to your agent over MCP or a typed API — credentials injected server-side, every call audited, nothing leaving your infrastructure. Open source (AGPL-3.0) and self-hostable.

What your agents can do

Real Paradym actions, managed and audited.

Your user connects Paradym once; your agent can then digital identity platform for building verifiable-credential solutions — scoped to the OAuth permissions you grant and the tool allowlist you configure. Every action is least-privilege and written to a tamper-evident audit trail.

  1. 1

    Your user grants Paradym access once (OAuth) — the token lands in the vault.

  2. 2

    Your agent calls a tool over MCP or the typed API; Open Connector injects the credential server-side.

  3. 3

    Every routed call appends a hash-chained audit record — nothing leaves your infra.

Tools & triggers

Supported Paradym tools.

96 tools are generated from the published Paradym catalog. Descriptions are plain text; each action remains subject to its configured authentication and tool allowlist.

Showing 96 tools. All published catalog entries are included in this page's server-rendered HTML.

Archive anoncreds credential template
Archive an `anoncreds` credential template by its id.
Anoncreds Credential Templates
Create anoncreds credential template
Create a new `anoncreds` credential template If you provide an existing schema, the API will count a call to this endpoint as a single transaction. But if you don't provide an existing schema, the system will create both a schema and a credential definition, which counts as two transactions. Note: You can only have one `anoncreds` credential template per schema.
Anoncreds Credential Templates
Retrieve anoncreds credential templates
Retrieve all `anoncreds` credential templates associated with the provided `walletId`. ## Example An example query that searches for all Anoncreds credential templates where the name includes "My Template" and are not revocable, ordering them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/templates/credentials/anoncreds?filter[revocable]=false&search[name]=My Template&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `revocable`, `archived` - search: `name` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Anoncreds Credential Templates
Retrieve anoncreds credential template
Retrieve a specific `anoncreds` credential template by its id.
Anoncreds Credential Templates
Retrieve JSON schema for anoncreds credential template
Get the JSON schema for an `anoncreds` credential template. You could use this for to generate forms or validate the input.
Anoncreds Credential Templates
Unarchive anoncreds credential template
Unarchive an `anoncreds` credential template by its id.
Anoncreds Credential Templates
Create a new attribute provider
Create a new attribute provider.
Attribute Providers
Deletes an attribute provider
Deletes an attribute provider. It is not possible to delete an attribute provider that is referenced by any credential template. First, disconnect the attribute provider from all relevant credential templates.
Attribute Providers
Retrieve attribute provider
Retrieves an attribute provider by its id.
Attribute Providers
Retrieve attribute providers
Retrieve all attribute providers associated with the provided `walletId`. ## Example An example query that searches for all attribute providers and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/attribute-providers?sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `url`, `name` - search: `url`, `name` - sort: `createdAt`, `updatedAt`, `id` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Attribute Providers
Updates an attribute provider
Updates an attribute provider.
Attribute Providers
Create a new authorization server
Create a new authorization server.
Authorization Servers
Deletes an authorization server
Deletes an authorization server. It is not possible to delete an authorization server that is referenced by any credential template. First, disconnect the authorization server from all relevant credential templates.
Authorization Servers
Retrieve authorization server
Retrieves an authorization server by its id.
Authorization Servers
Retrieve authorization servers
Retrieve all authorization servers associated with the provided `walletId`. ## Example An example query that searches for all authorization servers and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/authorization-servers?sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `url`, `name` - search: `url`, `name` - sort: `createdAt`, `updatedAt`, `id` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Authorization Servers
Updates an authorization server
Updates an authorization server.
Authorization Servers
Create certificate signing request
Create a new certificate signing request based on the [PKCS #10](https://datatracker.ietf.org/doc/html/rfc2986) specification. Creating externally signed certificates is not available in the Free tier. The returned certificate signing request is encoded as PEM. When creating a certificate signing request you must provide: - `type` - the type of the certificate signing request - `keyType` - the type of the key to include in the certificate signing request. Supported are P-256 and Ed25519 - `countryName` - uppercase alpha-2 country code as defined in ISO 3166-1 - `commonName` - name of the certificate subject, if not provided the url of the issuer/verifier will be used (depending on the type of the certificate) Optionally you can provide specific `capabilities` that must be supported for this certificate.
Certificate Signing Requests
Delete certificate signing request
Delete a certificate signing request.
Certificate Signing Requests
Retrieve certificate signing requests
Retrieve all certificate signing requests associated with the provided `walletId`. ## Example An example query that searches for all certificate signing requests and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/certificates/csrs?sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `type`, `keyType`, `subjectKeyIdentifier` - search: - - sort: `createdAt`, `updatedAt`, `expiresAt`, `id`, `type`, `keyType` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Certificate Signing Requests
Import certificate from request
Import a certificate for a certificate signing request. Once a certificate signing request has been created, you can use this endpoint to import the signed certificate. The certificate will be validated against the certificate signing request to ensure it matches the requested certificate. Creating externally signed certificates is not available in the Free tier. The certificate must: - Be valid and properly formatted - Have a public key that matches the CSR's public key - Have the same subject as the CSR - Have the expected subject alternative names - Have the required key usage and extended key usage extensions - Have a validity period that does not exceed the maximum allowed validity period (457 days)
Certificate Signing Requests
Activate certificate
Activates a certificate. The following certificate types can be activated: - `verifierRoot` - `issuerRoot` - externally signed `issuerSignCredential` - externally signed `verifierSignRequest` Note that certificates can only be activated if they are in the `pendingActivation` state. When activating a certificate, any existing certificates within the same category (issuer/verifier) and keyType will be deactivated.
Certificates
Create certificate
Create a new certificate of a specific type. The following certificate types can be created: - `verifierRoot` - `issuerRoot` You can also import an externally signed `issuerSignCredential` or `verifierSignRequest` certificate using the Certificate Signing Request API. When creating a root certificate you must provide: - `keyType` - the type of the key used for signing the certificate. Supported are P-256 and Ed25519 - `countryName` - uppercase alpha-2 country code as defined in ISO 3166-1 - `commonName` - name of the certificate issuer/subject, if not provided the url of the of the issuer/verifier will be used (depending on the type of the certificate) Note that the following certificates are automatically created by Paradym based on the created root certificate: - `verifierSignRequest` - `issuerSignCredential` Also note that you can have at most one `active` and one `pendingActivation` certificate that is manually created (either through this endpoint or the Certificate Signing Request API) for each certificate category (issuer/verifier) and `keyType`, allowing for rotation.
Certificates
Deactivate certificate
Deactivates a certificate. The following certificate types can be deactivated: - `verifierRoot` - `issuerRoot` - `issuerSignCredential` - `verifierSignRequest` Deactivating a certificate will not invalidate any signatures created with this certificate. If you want to invalidate all signatures created with this certificate, revoke the certificate instead. Note that certificates can only be deactivated if they are in the `active` or `pendingActivation` state. When deactivating a certificate and there's a `pendingActivation` certificate within the same category (issuer/verifier) and keyType, it will be activated. When revoking a root certificate, all children certificates that are not already inactive, revoked or expired will be deactivated as well.
Certificates
Retrieve certificates
Retrieve all certificates associated with the provided `walletId`. ## Example An example query that searches for all certificates and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/certificates?sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `type`, `keyType`, `subjectKeyIdentifier` - search: - - sort: `createdAt`, `updatedAt`, `id`, `type`, `keyType` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Certificates
Revoke certificate
Revokes a certificate. The following certificate types can be revoked: - `verifierRoot` - `verifierSignRequest` - only if not externally signed - `issuerRoot` - `issuerSignCredential` - only if not externally signed Revoking a certificate will invalidate any signatures created with this certificate. If you want to ensure all previous signatures created with this certificate remain valid, deactivate the certificate instead. Since revocation is managed by the certificate issuer, it is not possible to revoke certificates imported through a certificate signing request. Instead, reach out to the certificate issuer. Note that certificates can only be revoked if they are in `pendingActivation`, `active`, or `inactive` state. When revoking a root certificate, all children certificates that are not already revoked or expired will be revoked as well.
Certificates
Delete DIDComm connection
Delete a specific DIDComm connection by its id.
DIDComm Connections
Retrieve DIDComm connections
Retrieve all DIDComm connections associated with the provided `walletId`. ## Example An example query that searches for all didcomm connections where displayName includes "Wallet" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/didcomm/connections?search[displayName]=Wallet&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `displayName`, `didcommInvitationId` - search: `displayName` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDComm Connections
Retrieve DIDComm connection
Retrieve a specific DIDComm connection by its id.
DIDComm Connections
Update DIDComm connection
Update a specific DIDComm connection by its id. You can only update the `displayName`.
DIDComm Connections
Create DIDComm connection invitation
Create a DIDComm connection invitation. The invitation will be a `https://didcomm.org/out-of-band` invitation, leveraging `https://didcomm.org/didexchange/1.x` (where `x` may be any version) as the value for `handshake_protocols`. The invitation will automatically expire 30 days after it was created.
DIDComm Invitations
Delete DIDComm invitation
Delete a specific DIDComm invitation by its id.
DIDComm Invitations
Retrieve DIDComm invitations
Retrieve all DIDComm invitations associated with the provided `walletId`. ## Example An example query that searchs for all didcomm invitations where reusable is set to `false` and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/didcomm/invitations?filter[reusable]=false&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `reusable` - search: - - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDComm Invitations
Retrieve DIDComm invitation
Retrieve a specific DIDComm invitation by its id.
DIDComm Invitations
Receive DIDComm invitation
Receive a DIDComm invitation. Only `https://didcomm.org/out-of-band` invitations using `handshake_protocols` including `https://didcomm.org/didexchange/1.x` (where `x` may be any version) are supported. Invitations including attached messages, using no `handshake_protocols`, or using a handshake protocol different than DID Exchange will result in an error.
DIDComm Invitations
Create DIDComm issuance offer
Create or send a DIDComm issuance offer for the provided credential. Only credential templates for the `anoncreds` format are currently supported for usage with DIDComm offers. If a `didcommConnectionId` is provided the offer will be sent directly to the connection, if no `didcommConnectionId` is provided, an invitation will be created containing the message. You can optionally provide `createConnection` to also create a connection as part of the credential issuance so you can use it for future exchanges with the holder. If an invitation will be created, it will be returned as part of this method. If you need the invitation in the future, you can fetch it based on the `didcommInvitationId` available in the DIDComm issuance session. The offer and invitation will automatically expire 30 days after it was created. See the API execution part of the [Issue Credential](https://docs.paradym.id/api-and-dashboard/issue-credentials) guide for more information.
DIDComm Issuance
Retrieve DIDComm issuance sessions
Retrieve all DIDComm issuance sessions associated with the provided `walletId`. ## Example An example query that searches for all issuance sessions where the status is "offered" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/didcomm/issuance?filter[status]=offered&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `createdAt`, `updatedAt`, `status`, `didcommConnectionId`, `didcommInvitationId` - search: - - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDComm Issuance
Retrieve DIDComm issuance session
Retrieve a specific DIDComm issuance session by its id.
DIDComm Issuance
Allow mediator connection based on public key
Allow a mediator connection to be created based on a specific public key. When the wallet tries to connect with the mediator it will be matched with the public key. After it's matched and the connection is created, the status of the mediator connection will become active.
DIDComm Mediators
Delete mediator connection
Delete a mediator connection. If the connection has not been established yet, this will revoke the allowance for a mediator connection. If a connection has already been established, this will delete the conneciton and prevent the wallet from using the mediator going forward.
DIDComm Mediators
Retrieve mediators
Get all the mediators for the current user. All of these you can use to allow certain public keys to connect to the mediator. We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `sort` - Sort the results by the given property. The default is `sort=-id`. We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDComm Mediators
Retrieve mediator
Get a specific DIDcomm mediator by its id.
DIDComm Mediators
Retrieve mediator connection
Get a specific mediator connection by its id.
DIDComm Mediators
Retrieve mediator connections
This gives the possibility to fetch mediator connections. We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `sort` - Sort the results by the given property. The following parameters are supported for this endpoint: - filter: `id`, `status`, `initialPublicKeyBase58` - search: - - sort: `id`, `createdAt`, `updatedAt` We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDComm Mediators
Send a basic message
Send a basic message to an existing connection
DIDComm Messaging
Send a custom message
Send a custom message to an existing connection. The following protocols are not allowed as `@type`, as they are natively supported by Paradym: - `https://didcomm.org/connections` - `https://didcomm.org/didexchange` - `https://didcomm.org/issue-credential` - `https://didcomm.org/present-proof` - `https://didcomm.org/basicmessage` - `https://didcomm.org/out-of-band` In addition the `did:sov:BzCbsNYhMrjHiqZDTUASHg;spec` is not allowed to be used as the message prefix in the `@type` of a custom message.
DIDComm Messaging
Create DIDComm verification request
Create an DIDComm verification request for the selected presentation template. The request and invitation will automatically expire 30 days after it was created.
DIDComm Verification
Retrieve DIDComm verification sessions
Retrieve all DIDComm verification sessions associated with the provided `walletId`. ## Example An example query that searches for all verification sessions where the status is "offered" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/didcomm/verification?filter[status]=offered&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `createdAt`, `updatedAt`, `status`, `presentationTemplateId` - search: - - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDComm Verification
Retrieve a DIDComm verification session by its ID.
Retrieve a DIDComm verification session by its ID.
DIDComm Verification
Retrieve DIDs
Retrieve all DIDs associated with the provided `walletId`. ## Example An example query that searches for all dids where method is `cheqd` and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/dids?filter[method]=cheqd&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `did`, `method`, `network` - search: `did` - sort: `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
DIDs
Directly issue sd-jwt-vc
Directly issue an `sd-jwt-vc` based on a [SD-JWT VC Credential Template](#tags/sd-jwt-vc-credential-templates). Binding a directly issued credential to a holder DID is not supported yet when directly issuing, you can use [OpenID4VC Issuance](#tags/openid4vc-issuance) to bind an issued `sd-jwt-vc` to a holder DID. Note that credential branding you have configured on the template is only sent to the holder when using OpenID4VC for issuance and thus won't be available to the holder of the credential.
Direct Issuance
Retrieve Issued Credentials
Retrieve all issued credentials associated with the provided `walletId`. ## Example An example query that searches for all issued credentials where the format is `sd-jwt-vc`, there is no exchange and limiting the page size to 10 ``` /v1/wallets/{walletId}/issuance?filter[format]=sd-jwt-vc&filter[exchange]=null&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `format`, `status`, `credentialTemplateId`, `exchange` (pass 'null' for looking for issued credentials without exchange) - search: - - sort: `id` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Issued Credentials
Archive mdoc credential template
Archive a specific `mdoc` credential template by its id.
mDoc Credential Templates
Create mdoc credential template
Create a new `mdoc` credential template. The `validUntil` field must be set as a duration from the moment the credential is issued, and it must not exceed 365 days. ## Premium features - `localization` (template and attributes): Available on the Builder tier and up. - `trustedWallets`: Available on the Builder tier and up. - `authorization`: Available on the Pro tier and up. - `attributeProviderId`: Available on the Pro tier and up.
mDoc Credential Templates
Retrieve mdoc credential templates
Retrieve all `mdoc` credential templates associated with the provided `walletId`. ## Example An example query that searches for all mDoc VC credential templates where the name includes "My Template", ordering them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/templates/credentials/mdoc?filter?search[name]=My Template&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. - `include` - Include a relation model in the response. The following parameters are supported for this endpoint: - filter: `id`, `type`, `archived` - search: `name` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) - include: - `trustedWallets` - load the Trusted Entities that are allowed to receive this credential. ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
mDoc Credential Templates
Retrieve mdoc credential template
Retrieve a specific `mdoc` credential template by its id. This endpoint supports the following query parameters: - `include` - Include a relation model in the response. The following parameters are supported for this endpoint: - include: - `trustedWallets` - load the Trusted Entities that are allowed to receive this credential.
mDoc Credential Templates
Retrieve JSON schema for mdoc credential template
Get the JSON schema for an `mdoc` credential template. You could use this for to generate forms or validate the input.
mDoc Credential Templates
Unarchive mdoc credential template
Unarchive a specific `mdoc` credential template by its id.
mDoc Credential Templates
Update mdoc credential template
Update a specific `mdoc` credential template by its id. This will replace the entire template with the new one, except for the `type` and `issuer` fields (these can't be updated) ## Premium features - `localization` (template and attributes): Available on the Builder tier and up. - `trustedWallets`: Available on the Builder tier and up. - `authorization`: Available on the Pro tier and up. - `attributeProviderId`: Available on the Pro tier and up.
mDoc Credential Templates
Create OpenID4VC credential offer
Create a OpenID4VC issuance offer for the selected credentials See the API execution part of the [Issue Credential](https://docs.paradym.id/api-and-dashboard/issue-credentials) guide for more information. The issuance session will automatically expire 7 minutes after it was created. The offer URL will expire 5 minutes after it was created, after which the offer URL cannot be accessed anymore, and an authorization request will not be accepted anymore. The extra 2 minutes are for retrieving the credentials, which can be done after the offer URL has expired.
OpenID4VC Issuance
Retrieve OpenID4VC issuance sessions
Retrieve all OpenID4VC issuance sessions associated with the provided `walletId`. ## Example An example query that searches for all issuance sessions where the status is "offered" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/openid4vc/issuance?filter[status]=offered&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `createdAt`, `updatedAt`, `status` - search: - - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
OpenID4VC Issuance
Retrieve OpenID4VC issuance session
Retrieve a specific OpenID4VC issuance session by its id.
OpenID4VC Issuance
Create OpenID4VC verification request
Create an OpenID4VC verification request for the selected presentation template. See the API execution part of the [Verify Credentials](https://docs.paradym.id/api-and-dashboard/verify-credentials) guide for more information. The verification session will automatically expire 5 minutes after it was created, after which the URL is not accessible anymore and a presentation will not be accepted anymore.
OpenID4VC Verification
Retrieve OpenID4VC verification sessions
Retrieve all OpenID4VC verification sessions associated with the provided `walletId`. ## Example An example query that searches for all verification sessions where the status is "requested" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/openid4vc/verification?filter[status]=requested&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `createdAt`, `updatedAt`, `status`, `presentationTemplateId` - search: - - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
OpenID4VC Verification
Retrieve OpenID4VC verification session
Retrieve a specific OpenID4VC verification session by its id.
OpenID4VC Verification
Archive presentation template
Archive a specific presentation template by its id.
Presentation Templates
Create presentation template
Create a new presentation template. A presentation template can either request: - AnonCreds credentials, to be used with [DIDComm Verification](/reference#tag/didcomm-verification). - Mdoc and SD JWT VC credentials, to be used with [OpenID4VC Verification](/reference#tag/openid4vc-verification)
Presentation Templates
Retrieve presentation templates
Retrieve all presentation templates associated with the provided `walletId`. ## Example An example query that searches for all presentation templates where the name includes "My Template", ordering them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/templates/presentations?search[name]=My Template&sort[-createdAt]&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. - `include` - Include a relation model in the response. The following parameters are supported for this endpoint: - filter: `id` - search: `name` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) - include: - `credentials.trustedIssuers` - load the TrustedEntitites associated with a requested credential. ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Presentation Templates
Retrieve presentation template
Retrieve a specific presentation template by its id. This endpoint supports the following query parameters: - `include` - Include a relation model in the response. The following parameters are supported for this endpoint: - include: - `credentials.trustedIssuers` - load the TrustedEntitites associated with a requested credential.
Presentation Templates
Update presentation template
Update a specific presentation template. This will replace the entire template with the new one.
Presentation Templates
Batch revoke credentials
Revoke a batch of credentials based on the issued credential id. Only credentials issued based on a template where `revocable` is `true` can be revoked. Credentials that have already been revoked cannot be revoked again. The issued credential id is the `id` field in the `IssuedCredential` model, which is returned in the [Issuance](#tag/direct-issuance), [OpenID4VC Issuance](#tag/openid4vc-issuance), and [DIDComm Issuance](#tag/didcomm-issuance) API endpoints. You can revoke credentials from different templates and formats at the same time, with a limit of 100 credentials. For each credential, one transaction is used. When revoking AnonCreds credentials, it will be processed in a background job. This means that it may take up to 2 minutes before the credentials are revoked.
Revocation
Archive sd-jwt-vc credential template
Archive a specific `sd-jwt-vc` credential template by its id.
SD-JWT VC Credential Templates
Create sd-jwt-vc credential template
Create a new `sd-jwt-vc` credential template. When issuing with a certificate, some limitations apply: - The `validFrom` field is not allowed to be set. The credential will always be valid from the moment it is issued. - The `validUntil` field must be set as a duration from the moment the credential is issued, and it must not exceed 365 days. ## Premium features - `localization` (template and attributes): Available on the Builder tier and up. - `trustedWallets`: Available on the Builder tier and up. - `authorization`: Available on the Pro tier and up. - `attributeProviderId`: Available on the Pro tier and up.
SD-JWT VC Credential Templates
Retrieve sd-jwt-vc credential templates
Retrieve all `sd-jwt-vc` credential templates associated with the provided `walletId`. ## Example An example query that searches for all SD-JWT VC credential templates where the name includes "My Template" and are not revocable, ordering them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/templates/credentials/sd-jwt-vc?filter[revocable]=false&search[name]=My Template&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. - `include` - Include a relation model in the response. The following parameters are supported for this endpoint: - filter: `id`, `type`, `revocable`, `archived` - search: `name` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) - include: - `trustedWallets` - load the Trusted Entities that are allowed to receive this credential. ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
SD-JWT VC Credential Templates
Retrieve sd-jwt-vc credential template
Retrieve a specific `sd-jwt-vc` credential template by its id. This endpoint supports the following query parameters: - `include` - Include a relation model in the response. The following parameters are supported for this endpoint: - include: - `trustedWallets` - load the Trusted Entities that are allowed to receive this credential.
SD-JWT VC Credential Templates
Retrieve JSON schema for sd-jwt-vc credential template
Get the JSON schema for an `sd-jwt-vc` credential template. You could use this for to generate forms or validate the input.
SD-JWT VC Credential Templates
Retrieve SD-JWT VC type metadata for sd-jwt-vc credential template
Get the SD-JWT VC type metadata for an `sd-jwt-vc` credential template. The `typeMetadata` object is the document described by the [SD-JWT VC Type Metadata documentation](https://docs.paradym.id/api-and-dashboard/credential-metadata#sd-jwt-vc-type-metadata). The `typeMetadataLocation` field indicates who hosts the document: - `managed` — the template uses a Paradym-generated VCT (`type`) URI, and Paradym automatically (re)hosts the document at that URI whenever the template is updated. - `manual` — the template uses a custom VCT URI. Paradym does **not** host the document and it is **not** automatically updated; you must publish the returned `typeMetadata` document at the VCT URI yourself (and re-publish after each update).
SD-JWT VC Credential Templates
Unarchive sd-jwt-vc credential template
Unarchive a specific `sd-jwt-vc` credential template by its id.
SD-JWT VC Credential Templates
Update sd-jwt-vc credential template
Update a specific `sd-jwt-vc` credential template by its id. This will replace the entire template with the new one, except for the `type` and `issuer` fields (these can't be updated) ## Type Metadata Updating a template also updates the [SD-JWT VC Type Metadata](https://docs.paradym.id/api-and-dashboard/credential-metadata#sd-jwt-vc-type-metadata) document that wallets and verifiers may download on demand from the VCT (`type`) URI. For Paradym-hosted VCT URLs this document is automatically re-hosted on every update. For custom VCT URLs the document is **not** automatically updated — retrieve it from the type-metadata endpoint and re-publish it to your VCT URL yourself after updating. If you are making breaking changes such as removing required claims or narrowing selective-disclosure rules, previously issued credentials may no longer pass type-metadata validation. In that case, it is recommended to create a new credential template instead. ## Premium features - `localization` (template and attributes): Available on the Builder tier and up. - `trustedWallets`: Available on the Builder tier and up. - `authorization`: Available on the Pro tier and up. - `attributeProviderId`: Available on the Pro tier and up.
SD-JWT VC Credential Templates
Create trusted entity
Create a trusted entity. At least one DID or certificate MUST be provided. For both `dids` and `certificates`, at most 20 entries can be provided.
Trusted Entities
Delete a trusted entity
Delete a trusted entity by its id. NOTE: If the trusted entity is referenced in any presentation template it is not possible to remove the entity. First, remove the trusted entity from all presentation templates that reference this trusted entity.
Trusted Entities
Retrieve trusted entities
Retrieve all trusted entities associated with the provided `walletId`. ## Example An example query that searches for all trusted entities where name includes 'EUDI' and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/trusted-entities?search[name]=EUDI&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `name`, `id` - search: `name` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Trusted Entities
Retrieve trusted entity
Retrieve a specific trusted entity by its id.
Trusted Entities
Update trusted entity
Update a trusted entity. The same rules as creating a trusted entity apply. This will replace the entire trusted entity (including DIDs and certificates) with a new one.
Trusted Entities
Retrieve default profile
Retrieves the default profile of the wallet. The wallet profile contains which version of the OpenID for Verifiable Credentials specification suite to use, and the public information about the wallet for display purposes. If there is no profile, a new one will automatically be created with the wallet's name as display name.
Wallet Profile
Update default profile
Updates the default profile of the profile. Upgrading from the OpenID4VC version from 'legacy' to 'v1' is a one-way operation, and cannot be reverted. In order to comply with the standards defined for each version, the metadata of your OpenID4VC issuer, as well as any Token Status Lists associated with active X509 certificates, will be regenerated. Alternatively, you may consider creating a new wallet. In the future, all legacy wallets will be migrated to version 1. ## Premium features - `localization`: Available on the Builder tier and up. - `wallet`: Available on the Builder tier and up.
Wallet Profile
Add member to wallet
Add a member to the provided wallet by email. Beware that the user will not be added until they have accepted the invitation. If an invitation is already active, you cannot add them again until the invitation has expired. An invitation is valid for 7 days, after which the user needs to be invited again to be able to join the wallet. **Note:** Only the owner of the wallet is able to add members to the wallet.
Wallets
Create new wallet
Creates a new wallet under the user which is associated with the API key being used for the request. The user will be the owner of the wallet. Creating multiple wallets is not available in the Free tier. Note that the wallet cannot be deleted yet so be careful with creating wallets.
Wallets
Retrieve wallet members
Retrieve all members associated with the provided `walletId`. ## Example An example query that searches for all members where in wallet, limiting the page size to 10 ``` /v1/wallets/{walletId}/members?page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id` - search: - - sort: `id` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Wallets
Retrieve wallets
Retrieve all wallets for the user associated with the API key being used for the request. ## Example An example query that searches for all wallets where the name includes "Example" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets?search[name]=Example&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id`, `name` - search: `name` - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Wallets
Updates a wallet
Updates a wallet by only replacing the provided settings.
Wallets
Updates a wallet
Updates a wallet by fully replacing the current settings.
Wallets
Remove member from wallet
Remove a member from the provided wallet by email. If the user is not part of the wallet yet, but an invitation has already been sent, the invitation will be revoked, and the user won't be able to accept the invitation anymore. **Note:** Only the owner of the wallet is able to remove members from the wallet.
Wallets
Updates a wallet (deprecated)
Use the PUT endpoint instead.
Wallets
Create new webhook
Create a new webhook for the given wallet. The webhook will be used to send notifications to the given URL. The URL must be reachable from the internet. We will send a request to the given URL to verify that it's reachable. When it's created you will get a signatureSecret. This secret is used to sign the request body. You can use this secret to verify that the request is coming from us. For more information take a look at the [webhook documentation](https://docs.paradym.id/api-and-dashboard/using-webhooks).
Webhooks
Delete webhook
Delete a webhook by ID.
Webhooks
Retrieve webhooks
Retrieve all webhooks associated associated with the provided `walletId`. ## Example An example query that searches for all webhooks where the name includes "Example" and order them by the date they were created descending, limiting the page size to 10 ``` /v1/wallets/{walletId}/webhooks?search[name]=Example&sort=-createdAt&page[size]=10 ``` ## Query parameters We are using the [JSON:API 1.1](https://jsonapi.org/) specification for requesting a list of entities. From this specification we support the following query parameters: - `filter[<property>]` - Filter the results by the given property. You can filter by multiple properties by providing multiple `filter[<property>]` query parameters. At the moment it's only possible to filter the properties in the root of the object. Also, some properties are not filterable because of performance reasons. - `search[<property>]` - Search the results by the given sub-value of a property case-insensitive. You can search by multiple properties by providing multiple `search[<property>]` query parameters. - `sort` - Sort the results by the given property. If you want to sort in descending order you can prefix the property with a `-`. The following parameters are supported for this endpoint: - filter: `id` - search: `name`, 'url' - sort: `id`, `createdAt`, `updatedAt` (default: `sort=-id`) ## Pagination We also implemented the [Cursor Pagination Profile](https://jsonapi.org/profiles/ethanresnick/cursor-pagination/) for pagination. This means that you can use the `page[size]`, `page[before]` and `page[after]` query parameters to retrieve the next or previous page of results. The `page[size]` parameter is used to set the number of items per page. The `page[before]` and `page[after]` parameters are used to set the cursor. The cursor is the ID of the last item on the previous page, or the first item on the next page.
Webhooks
FAQ

Paradym integration, answered

How do AI agents use Paradym through Open Connector?
Your user connects Paradym once with one of its cataloged authentication methods. Open Connector stores the credential in an encrypted vault and exposes Paradym tools to your agent over MCP or a typed API, with credentials injected server-side on each call.
Is this a Paradym MCP server?
Yes. Open Connector can serve Paradym as a named MCP server with a scoped allowlist and a per-user connection URL, so any MCP client can call Paradym actions with credentials injected server-side.
Where do Paradym credentials live?
In your own infrastructure. Open Connector keeps credentials in its own vault and injects them at call time, so they never leave your environment.

Give your agents Paradym — keep the keys.

Open source, self-hostable, with Paradym credentials that never leave your infrastructure. Run it from source today.