### GET /v2/credentials/web-semantic/configurations
Source: https://context7_llms
Retrieves a list of all JSON credentials configurations on your tenant.
```APIDOC
## GET /v2/credentials/web-semantic/configurations
### Description
Returns a list of all JSON credential configurations on your tenant.
### Method
GET
### Endpoint
/v2/credentials/web-semantic/configurations
### Parameters
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **configurations** (array) - An array of JSON credential configuration objects.
- Each object contains:
- **id** (string) - The unique identifier of the credential configuration.
- **name** (string) - The name of the credential configuration.
- **version** (string) - The version of the credential configuration.
#### Response Example
```json
{
"configurations": [
{
"id": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
"name": "ExampleCredential",
"version": "1.0.0"
},
{
"id": "b2c3d4e5-f6a7-8901-2345-67890abcdef0",
"name": "AnotherCredential",
"version": "2.1.0"
}
]
}
```
```
--------------------------------
### GET /v2/credentials/web-semantic/presentations/templates
Source: https://context7_llms
Retrieves a list of all presentation templates associated with your tenant.
```APIDOC
## GET /v2/credentials/web-semantic/presentations/templates
### Description
Retrieves a list of all presentation templates associated with your tenant.
### Method
GET
### Endpoint
/v2/credentials/web-semantic/presentations/templates
### Parameters
#### Query Parameters
- **limit** (integer) - Optional - The maximum number of templates to return.
- **offset** (integer) - Optional - The number of templates to skip.
### Request Example
```json
{}
```
### Response
#### Success Response (200)
- **templates** (array) - A list of presentation templates.
- **id** (string) - The ID of the presentation template.
- **name** (string) - The name of the template.
#### Response Example
```json
{
"templates": [
{
"id": "template-abc-123",
"name": "Proof of Identity Template"
},
{
"id": "template-xyz-789",
"name": "Employment Verification Template"
}
]
}
```
```
--------------------------------
### GET /v1/users/authentication-providers
Source: https://context7_llms
Returns a list of all Authentication Providers on your tenant.
```APIDOC
## GET /v1/users/authentication-providers
### Description
Returns a list of all Authentication Providers on your tenant.
### Method
GET
### Endpoint
/v1/users/authentication-providers
### Parameters
#### Query Parameters
* None
### Request Example
```json
{
"providers": [
{
"id": "auth-provider-123",
"name": "Example Provider 1",
"type": "oauth2"
},
{
"id": "auth-provider-456",
"name": "Example Provider 2",
"type": "saml"
}
]
}
```
### Response
#### Success Response (200)
- **providers** (array) - A list of authentication providers.
- **id** (string) - The unique identifier of the authentication provider.
- **name** (string) - The name of the authentication provider.
- **type** (string) - The type of the authentication provider.
#### Response Example
```json
{
"providers": [
{
"id": "auth-provider-123",
"name": "Example Provider 1",
"type": "oauth2"
},
{
"id": "auth-provider-456",
"name": "Example Provider 2",
"type": "saml"
}
]
}
```
```
--------------------------------
### GET /v2/credentials/mobile/configurations
Source: https://context7_llms
Retrieves all mDocs configurations from your tenant.
```APIDOC
## GET /v2/credentials/mobile/configurations
### Description
Retrieves all mDocs configurations from your tenant.
### Method
GET
### Endpoint
/v2/credentials/mobile/configurations
### Response
#### Success Response (200)
- **configurations** (array) - A list of mDocs configurations.
- Each item in the array is an object with the following properties:
- **id** (string) - The ID of the mDocs configuration.
- **name** (string) - The name of the mDocs configuration.
- **schema** (object) - The schema definition.
- **options** (object) - The configuration options.
#### Response Example
```json
{
"configurations": [
{
"id": "cfg_12345abcde",
"name": "Example mDocs Configuration 1",
"schema": {
"type": "object",
"properties": {
"name": {"type": "string"}
}
},
"options": {}
},
{
"id": "cfg_67890fghij",
"name": "Example mDocs Configuration 2",
"schema": {
"type": "object",
"properties": {
"email": {"type": "string", "format": "email"}
}
},
"options": {}
}
]
}
```
```
--------------------------------
### GET /v1/webhooks
Source: https://context7_llms
Retrieves a list of webhooks configured on the tenant.
```APIDOC
## GET /v1/webhooks
### Description
Retrieves a list of webhooks configured on the tenant.
### Method
GET
### Endpoint
/v1/webhooks
### Parameters
*(No parameters are detailed in the provided text.)*
### Request Example
*(No request example provided in the source text.)*
### Response
#### Success Response (200)
*(No specific success response fields are detailed in the provided text. Refer to the OpenAPI document for schema details.)*
#### Response Example
*(No response example provided in the source text.)*
```
--------------------------------
### GET /v2/credentials/compact/configurations
Source: https://context7_llms
Retrieves a list of all CWT credential configurations from your tenant.
```APIDOC
## GET /v2/credentials/compact/configurations
### Description
Returns a list of all CWT credential configurations from your tenant.
### Method
GET
### Endpoint
/v2/credentials/compact/configurations
### Response
#### Success Response (200)
- **configurations** (array) - A list of CWT credential configurations.
- **id** (string) - The ID of the credential configuration.
- **name** (string) - The name of the credential configuration.
- **definition** (object) - The definition of the credential.
#### Response Example
```json
{
"configurations": [
{
"id": "a1b2c3d4-e5f6-7890-1234-567890abcdef",
"name": "ExampleCredential1",
"definition": {
"type": "VerifiableCredential",
"schema": "https://example.com/schemas/credential1.json",
"fields": [
{
"name": "name",
"type": "string"
}
]
}
},
{
"id": "b2c3d4e5-f6a7-8901-2345-67890abcdef0",
"name": "ExampleCredential2",
"definition": {
"type": "VerifiableCredential",
"schema": "https://example.com/schemas/credential2.json",
"fields": [
{
"name": "email",
"type": "string"
}
]
}
}
]
}
```
```
--------------------------------
### Start Local Claims Source App (Docker)
Source: https://context7_llms
Command to build and start the local claims source application using Docker Compose. This requires Docker to be installed and running.
```bash
docker compose up --build
```
--------------------------------
### POST /v1/webhooks
Source: https://context7_llms
Creates a new webhook for this tenant.
```APIDOC
## POST /v1/webhooks
### Description
Creates a new webhook for this tenant.
### Method
POST
### Endpoint
/v1/webhooks
### Parameters
#### Request Body
*(No specific request body fields are detailed in the provided text. Refer to the OpenAPI document for schema details.)*
### Request Example
*(No request example provided in the source text.)*
### Response
#### Success Response (200)
*(No specific success response fields are detailed in the provided text. Refer to the OpenAPI document for schema details.)*
#### Response Example
*(No response example provided in the source text.)*
```
--------------------------------
### Create a Next.js Application
Source: https://context7_llms
Initializes a new Next.js project with default settings. Requires Node.js and npm installed. This command creates a project directory and installs basic dependencies.
```bash
npx create-next-app@latest --src-dir --yes
```
--------------------------------
### POST /v1/ecosystems
Source: https://context7_llms
Creates a new ecosystem.
```APIDOC
## POST /v1/ecosystems
### Description
Creates a new ecosystem.
### Method
POST
### Endpoint
/v1/ecosystems
### Parameters
#### Request Body
- **name** (string) - Required - The name of the ecosystem.
- **description** (string) - Optional - A description for the ecosystem.
### Request Example
{
"name": "My New Ecosystem",
"description": "This is a test ecosystem."
}
### Response
#### Success Response (200)
- **id** (string) - The ID of the newly created ecosystem.
- **name** (string) - The name of the ecosystem.
- **description** (string) - The description of the ecosystem.
#### Response Example
{
"id": "ecosystem-12345",
"name": "My New Ecosystem",
"description": "This is a test ecosystem."
}
```
--------------------------------
### POST /v1/users/authentication-providers
Source: https://context7_llms
Configures an Authentication Provider on the tenant.
```APIDOC
## POST /v1/users/authentication-providers
### Description
Configures an Authentication Provider on the tenant. An authentication or identity provider (IdP) is a platform that is typically used to store and manage user accounts on behalf of an organization or a service provider. MATTR VII uses the authentication provider to authenticate end users before issuing them credentials.
ℹ️ **Note:** Only one authentication provider can be configured on a tenant. The `/.well-known/openid-configuration` endpoint of the Authentication Provider must contain values for the `authorization_endpoint`, `token_endpoint` and `scopes_supported`.
### Method
POST
### Endpoint
/v1/users/authentication-providers
### Parameters
#### Query Parameters
- **roles** (array) - Optional - Roles that can access this endpoint.
#### Request Body
- **authenticationProvider** (object) - Required - The authentication provider configuration.
- **name** (string) - Required - The name of the authentication provider.
- **configuration** (object) - Required - The configuration details for the authentication provider.
- **issuer** (string) - Required - The issuer URL of the OpenID Connect provider.
- **clientId** (string) - Required - The client ID provided by the OpenID Connect provider.
- **clientSecret** (string) - Required - The client secret provided by the OpenID Connect provider.
- **scopes** (array) - Optional - The scopes to request from the OpenID Connect provider.
### Request Example
```json
{
"authenticationProvider": {
"name": "My IdP",
"configuration": {
"issuer": "https://my.idp.com/auth/realms/myrealm",
"clientId": "my-client-id",
"clientSecret": "my-client-secret",
"scopes": ["openid", "email", "profile"]
}
}
}
```
### Response
#### Success Response (200)
- **authenticationProviderId** (string) - The ID of the newly configured authentication provider.
#### Response Example
```json
{
"authenticationProviderId": "a1b2c3d4-e5f6-7890-1234-567890abcdef"
}
```
```
--------------------------------
### Install Express Framework using Yarn
Source: https://context7_llms
Installs the Express framework, a web application framework for Node.js, using the Yarn package manager. This is a prerequisite for setting up a local callback server.
```shell
yarn add express
```
--------------------------------
### Example mDoc Status Response
Source: https://context7_llms
An example JSON response body for checking the status of an mDoc. The 'status' field indicates the current state of the mDoc, expected to be 'valid' upon issuance.
```json
{
"status": "valid"
}
```
--------------------------------
### Clients API
Source: https://learn.mattr.global/docs/resources/get-started
Endpoints for managing tenant clients, including creation, retrieval, and deletion.
```APIDOC
## POST /docs/api-reference/management/clients/createTenantClient
### Description
Creates a new client for the tenant.
### Method
POST
### Endpoint
/docs/api-reference/management/clients/createTenantClient
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
- **name** (string) - Required - The name of the client.
- **redirectUri** (string) - Required - The redirect URI for the client.
### Request Example
```json
{
"name": "MyNewClient",
"redirectUri": "https://myapp.com/callback"
}
```
### Response
#### Success Response (200)
- **client** (object) - The created client object.
#### Response Example
```json
{
"client": {
"id": "client-789",
"name": "MyNewClient",
"redirectUri": "https://myapp.com/callback",
"clientId": "abc123xyz789"
}
}
```
## GET /docs/api-reference/management/clients/getTenantClients
### Description
Retrieves a list of all clients for the tenant.
### Method
GET
### Endpoint
/docs/api-reference/management/clients/getTenantClients
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **clients** (array) - A list of tenant client objects.
#### Response Example
```json
{
"clients": [
{
"id": "client-789",
"name": "MyNewClient",
"redirectUri": "https://myapp.com/callback",
"clientId": "abc123xyz789"
}
]
}
```
## DELETE /docs/api-reference/management/clients/deleteTenantClient
### Description
Deletes a tenant client.
### Method
DELETE
### Endpoint
/docs/api-reference/management/clients/deleteTenantClient
### Parameters
#### Path Parameters
- **clientId** (string) - Required - The unique identifier of the client to delete.
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **message** (string) - A confirmation message.
#### Response Example
```json
{
"message": "Client deleted successfully."
}
```
```
--------------------------------
### Example CWT Credential Revocation Status Response
Source: https://context7_llms
An example JSON response body for checking the revocation status of a CWT credential. The 'isRevoked' field is a boolean indicating whether the credential has been revoked.
```json
{
"id": "bKcrxojFSuSZvI5qhKInxA",
"isRevoked": false
}
```
--------------------------------
### Configure Auth0 Application
Source: https://context7_llms
Steps to set up a new Auth0 application for OID4VCI Authorization Code flow.
```APIDOC
## Configure an Auth0 application
This section details the steps to configure an Auth0 application for use with the OID4VCI Authorization Code flow.
### Steps
1. Log into [Auth0](https://auth0.com/) and navigate to your Dashboard.
2. Select **Create Application**.
3. Provide a *Name* for your application and select **Regular Web Application**.
4. Select **Create**, then **Skip Integration**.
5. On the **Settings** tab, record your application `Domain`, `Client ID`, and `Client Secret`.
6. Add a simple **Description**.
7. In the *Application URIs* section, add `https://{your_tenant_url}/core/v1/oauth/authentication/callback` to *Allowed Callback URLs* (replace `{your_tenant_url}` with your MATTR VII tenant URL).
8. Navigate to the **Connections** tab.
9. Enable *Username-Password-Authentication* under **Database** and disable all **Social** connections.
### Create a User
1. Go to **User Management** > **Users**.
2. Select **Create User**.
3. Enter a unique *Email*, a *password*, and select **Username-Password-Authentication** from the *Connection* dropdown.
4. Select **Create**.
5. Under the user's *Details* tab, select **Edit** for *Name* and provide the full user name.
Auth0 stores Personally Identifiable Information (PII). Ensure compliance with [Auth0's policies](https://auth0.com/docs/users/normalized/auth0/store-user-data) regarding data storage.
```
--------------------------------
### Install MATTR Verifier SDK for Web
Source: https://context7_llms
Installs the official MATTR verifier SDK for web applications using npm. This package provides the necessary tools to interact with MATTR's verification services.
```bash
npm install @mattrglobal/verifier-sdk-web
```
--------------------------------
### Tenant Management API
Source: https://learn.mattr.global/docs/resources/get-started
Endpoints for managing tenants, including creation, retrieval, and deletion.
```APIDOC
## Create Tenant
### Description
Creates a new tenant.
### Method
POST
### Endpoint
/api/tenants
### Parameters
#### Request Body
- **name** (string) - Required - The name of the tenant.
### Request Example
```json
{
"name": "New Tenant Name"
}
```
### Response
#### Success Response (200)
- **id** (string) - The unique identifier of the newly created tenant.
- **name** (string) - The name of the tenant.
#### Response Example
```json
{
"id": "tenant_xyz",
"name": "New Tenant Name"
}
```
```
```APIDOC
## Retrieve Tenants
### Description
Retrieves a list of all tenants.
### Method
GET
### Endpoint
/api/tenants
### Parameters
None
### Request Example
None
### Response
#### Success Response (200)
- **tenants** (array) - A list of tenant objects.
#### Response Example
```json
{
"tenants": [
{
"id": "tenant_xyz",
"name": "New Tenant Name"
}
]
}
```
```
```APIDOC
## Retrieve Tenant
### Description
Retrieves details for a specific tenant by its ID.
### Method
GET
### Endpoint
/api/tenants/{tenant_id}
### Parameters
#### Path Parameters
- **tenant_id** (string) - Required - The unique identifier of the tenant.
### Request Example
None
### Response
#### Success Response (200)
- **id** (string) - The unique identifier of the tenant.
- **name** (string) - The name of the tenant.
#### Response Example
```json
{
"id": "tenant_xyz",
"name": "New Tenant Name"
}
```
```
```APIDOC
## Delete Tenant
### Description
Deletes a specific tenant by its ID.
### Method
DELETE
### Endpoint
/api/tenants/{tenant_id}
### Parameters
#### Path Parameters
- **tenant_id** (string) - Required - The unique identifier of the tenant to delete.
### Request Example
None
### Response
#### Success Response (200)
- **message** (string) - Confirmation message of deletion.
#### Response Example
```json
{
"message": "Tenant deleted successfully."
}
```
```
--------------------------------
### NQUAD Example - Bottom Insertion
Source: https://context7_llms
Shows the NQUAD representation for a credential payload with a context added to the bottom. This example highlights how altering context order can change term interpretations, such as the 'name' term being formatted as HTML.
```nquad
"Certificate Name" .
"Shin" .
"Chris" .
"tenant"^^ .
...
```
--------------------------------
### JSON Credentials Configuration API
Source: https://learn.mattr.global/docs/resources/get-started
Manage web semantic credential configurations.
```APIDOC
## GET /docs/api-reference/platform/json-credentials-configuration/getWebSemanticCredentialConfiguration
### Description
Retrieves the web semantic credential configuration.
### Method
GET
### Endpoint
/docs/api-reference/platform/json-credentials-configuration/getWebSemanticCredentialConfiguration
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **configuration** (object) - The web semantic credential configuration details.
#### Response Example
```json
{
"configuration": {
"field1": "value1",
"field2": "value2"
}
}
```
```
```APIDOC
## PUT /docs/api-reference/platform/json-credentials-configuration/updateWebSemanticCredentialConfiguration
### Description
Updates the web semantic credential configuration.
### Method
PUT
### Endpoint
/docs/api-reference/platform/json-credentials-configuration/updateWebSemanticCredentialConfiguration
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
- **configuration** (object) - The updated web semantic credential configuration.
### Request Example
```json
{
"configuration": {
"newField": "newValue"
}
}
```
### Response
#### Success Response (200)
- **message** (string) - Confirmation message of the update.
#### Response Example
```json
{
"message": "Web semantic credential configuration updated successfully."
}
```
```
```APIDOC
## DELETE /docs/api-reference/platform/json-credentials-configuration/deleteWebSemanticCredentialConfiguration
### Description
Deletes the web semantic credential configuration.
### Method
DELETE
### Endpoint
/docs/api-reference/platform/json-credentials-configuration/deleteWebSemanticCredentialConfiguration
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
None
### Request Example
None
### Response
#### Success Response (200)
- **message** (string) - Confirmation message of the deletion.
#### Response Example
```json
{
"message": "Web semantic credential configuration deleted successfully."
}
```
```
--------------------------------
### Setup Local Environment for Callback
Source: https://context7_llms
This section details how to set up your local environment with Express and Ngrok to receive and view data posted to a callback URL.
```APIDOC
## Setup Local Environment for Callback
This section details how to set up your local environment with Express and Ngrok to receive and view data posted to a callback URL.
### Requirements
1. **Express**: A web framework for Node.js.
2. **Ngrok**: A port forwarding service to make your local server publicly accessible.
### Setup Express
1. **Install Express and body-parser**:
```shell
yarn add express body-parser
```
2. **Create `callback-express.js`**:
```js
"use strict";
const express = require("express");
const bodyParser = require("body-parser");
const app = express();
app.use(bodyParser.json());
app.post("/callback", function (req, res) {
const body = req.body;
console.log(body);
res.sendStatus(200);
});
app.listen(2000, function (err) {
if (err) {
throw err;
}
console.log("Server started on port 2000");
});
```
3. **Start the Express app**:
```shell
node callback-express.js
```
4. **Test the local callback endpoint**:
```shell
curl --request POST \
--url http://localhost:2000/callback \
--header 'Content-Type: application/json' \
--data '{ "json": "payload" }'
```
### Setup Ngrok
1. **Sign up for Ngrok** and retrieve your authentication token.
2. **Install Ngrok globally**:
```shell
yarn global add ngrok
```
3. **Start Ngrok**:
```shell
ngrok http 2000
```
4. **Test the public Ngrok endpoint**:
```shell
curl --request POST \
--url http:///callback \
--header 'Content-Type: application/json' \
--data '{ "ngrok": "routed" }'
```
Replace `` with your actual Ngrok HTTP domain.
```
--------------------------------
### POST /v1/config/domain
Source: https://context7_llms
Creates a new custom domain for the tenant.
```APIDOC
## POST /v1/config/domain
### Description
Creates a new custom domain for the tenant.
### Method
POST
### Endpoint
`/v1/config/domain`
### Parameters
#### Request Body
(Details not provided in the source text, refer to OpenAPI schema for specifics)
### Response
#### Success Response (200)
(Details not provided in the source text, refer to OpenAPI schema for specifics)
#### Response Example
(Details not provided in the source text, refer to OpenAPI schema for specifics)
```
--------------------------------
### Android: Initialize MainActivity with Jetpack Compose
Source: https://context7_llms
This snippet shows the basic setup for the `MainActivity.kt` file in an Android application using Jetpack Compose. It includes necessary imports for Compose UI elements and activity setup. This code is intended to be a starting point for building the Android interface, with further UI components and logic to be added.
```kotlin
package com.example.verifiertutorial
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.enableEdgeToEdge
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.material3.Button
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.lifecycle.lifecycleScope
```
--------------------------------
### Install Ngrok Globally
Source: https://context7_llms
Installs the Ngrok command-line tool globally using Yarn. Ngrok is a utility that exposes local servers to the internet through secure tunnels, which is necessary for external services to send data to a local callback URL.
```shell
yarn global add ngrok
```
--------------------------------
### POST /v1/config/ecosystems
Source: https://context7_llms
Creates an ecosystem configuration for the tenant.
```APIDOC
## POST /v1/config/ecosystems
### Description
Creates an ecosystem configuration for the tenant.
### Method
POST
### Endpoint
/v1/config/ecosystems
### Parameters
#### Query Parameters
- **roles** (array) - Optional - Roles that can access this endpoint.
#### Request Body
- **ecosystemConfiguration** (object) - Required - The ecosystem configuration details.
- **name** (string) - Required - The name of the ecosystem.
- **description** (string) - Optional - A description of the ecosystem.
- **default** (boolean) - Optional - Whether this is the default ecosystem.
### Request Example
```json
{
"ecosystemConfiguration": {
"name": "My Ecosystem",
"description": "Configuration for my main ecosystem",
"default": true
}
}
```
### Response
#### Success Response (200)
- **ecosystemId** (string) - The ID of the newly created ecosystem configuration.
#### Response Example
```json
{
"ecosystemId": "f0e9d8c7-b6a5-4321-0987-fedcba098765"
}
```
```
--------------------------------
### MATTR API Request Construction (HTTP)
Source: https://context7_llms
Illustrates the general structure for constructing an API request to the MATTR Platform. It uses placeholders for the HTTP method, tenant URL, and API path. An example shows a GET request to retrieve all IACAs.
```http
{method} https://{tenant_url}/{path}
```
```http
GET https://learn.vii.au01.mattr.global/v2/credentials/mobile/iacas
```
--------------------------------
### Client Management API
Source: https://learn.mattr.global/docs/resources/get-started
Endpoints for managing clients, including creation, retrieval, and deletion.
```APIDOC
## Create Client
### Description
Creates a new client.
### Method
POST
### Endpoint
/api/clients
### Parameters
#### Request Body
- **name** (string) - Required - The name of the client.
- **redirect_uris** (array) - Optional - A list of valid redirect URIs.
### Request Example
```json
{
"name": "New Client",
"redirect_uris": ["https://client.example.com/callback"]
}
```
### Response
#### Success Response (200)
- **id** (string) - The unique identifier of the newly created client.
- **name** (string) - The name of the client.
- **client_secret** (string) - The client secret (should be kept confidential).
#### Response Example
```json
{
"id": "client_def",
"name": "New Client",
"client_secret": "supersecretclientsecret"
}
```
```
```APIDOC
## Retrieve Clients
### Description
Retrieves a list of all clients.
### Method
GET
### Endpoint
/api/clients
### Parameters
None
### Request Example
None
### Response
#### Success Response (200)
- **clients** (array) - A list of client objects.
#### Response Example
```json
{
"clients": [
{
"id": "client_def",
"name": "New Client"
}
]
}
```
```
```APIDOC
## Delete Client
### Description
Deletes a specific client by its ID.
### Method
DELETE
### Endpoint
/api/clients/{client_id}
### Parameters
#### Path Parameters
- **client_id** (string) - Required - The unique identifier of the client to delete.
### Request Example
None
### Response
#### Success Response (200)
- **message** (string) - Confirmation message of deletion.
#### Response Example
```json
{
"message": "Client deleted successfully."
}
```
```
--------------------------------
### GET /v1/ecosystems/certificates/vical-signers
Source: https://context7_llms
Retrieves all VICAL signers.
```APIDOC
## GET /v1/ecosystems/certificates/vical-signers
### Description
Retrieves all VICAL signers.
### Method
GET
### Endpoint
/v1/ecosystems/certificates/vical-signers
### Parameters
(Details not provided in the source text)
### Request Body
(Details not provided in the source text)
### Response
#### Success Response (200)
(Details not provided in the source text)
#### Response Example
(Details not provided in the source text)
```
--------------------------------
### POST /platform/claims-source/createClaimSource
Source: https://learn.mattr.global/docs/holding/go-hold/getting-started
Creates a new claim source.
```APIDOC
## POST /platform/claims-source/createClaimSource
### Description
Creates a new claim source configuration.
### Method
POST
### Endpoint
/platform/claims-source/createClaimSource
### Parameters
#### Path Parameters
None
#### Query Parameters
None
#### Request Body
- **name** (string) - Required - The name of the claim source.
- **type** (string) - Required - The type of the claim source (e.g., 'ldap', 'database').
- **config** (object) - Required - Configuration details specific to the claim source type.
### Request Example
```json
{
"name": "MyLDAPSource",
"type": "ldap",
"config": {
"host": "ldap.example.com",
"port": 389,
"bindDn": "cn=admin,dc=example,dc=com"
}
}
```
### Response
#### Success Response (201)
- **id** (string) - The unique identifier of the created claim source.
- **name** (string) - The name of the claim source.
- **type** (string) - The type of the claim source.
#### Response Example
```json
{
"id": "claim-source-xyz",
"name": "MyLDAPSource",
"type": "ldap"
}
```
```
--------------------------------
### GET /v1/ecosystems
Source: https://context7_llms
Retrieves a list of all ecosystems.
```APIDOC
## GET /v1/ecosystems
### Description
Retrieves a list of all ecosystems.
### Method
GET
### Endpoint
/v1/ecosystems
### Response
#### Success Response (200)
- **ecosystems** (array) - A list of ecosystem objects.
- **id** (string) - The ID of the ecosystem.
- **name** (string) - The name of the ecosystem.
- **description** (string) - The description of the ecosystem.
#### Response Example
{
"ecosystems": [
{
"id": "ecosystem-12345",
"name": "My New Ecosystem",
"description": "This is a test ecosystem."
},
{
"id": "ecosystem-67890",
"name": "Another Ecosystem",
"description": "Another test ecosystem."
}
]
}
```
--------------------------------
### User Management API
Source: https://learn.mattr.global/docs/resources/get-started
Endpoints for managing users, including creation, retrieval, update, and deletion.
```APIDOC
## POST /users
### Description
Create a new user.
### Method
POST
### Endpoint
/users
### Parameters
#### Request Body
- **user_data** (object) - Required - The data for the new user.
### Request Example
```json
{
"user_data": {
"username": "johndoe",
"email": "john.doe@example.com"
}
}
```
### Response
#### Success Response (201)
- **user_id** (string) - The unique identifier for the created user.
- **message** (string) - A confirmation message.
#### Response Example
```json
{
"user_id": "user_1a2b3c",
"message": "User created successfully."
}
```
## DELETE /users/{id}
### Description
Delete a user by their ID.
### Method
DELETE
### Endpoint
/users/{id}
### Parameters
#### Path Parameters
- **id** (string) - Required - The unique identifier of the user to delete.
### Response
#### Success Response (200)
- **message** (string) - A confirmation message indicating the deletion was successful.
#### Response Example
```json
{
"message": "User deleted successfully."
}
```
## GET /users/{id}
### Description
Retrieve a specific user by their ID.
### Method
GET
### Endpoint
/users/{id}
### Parameters
#### Path Parameters
- **id** (string) - Required - The unique identifier of the user to retrieve.
### Response
#### Success Response (200)
- **user_id** (string) - The unique identifier for the user.
- **username** (string) - The username of the user.
- **email** (string) - The email address of the user.
#### Response Example
```json
{
"user_id": "user_1a2b3c",
"username": "johndoe",
"email": "john.doe@example.com"
}
```
## GET /users/{id}/credentials
### Description
Retrieve all credentials data for a specific user.
### Method
GET
### Endpoint
/users/{id}/credentials
### Parameters
#### Path Parameters
- **id** (string) - Required - The unique identifier of the user.
### Response
#### Success Response (200)
- **credentials** (array) - A list of credentials associated with the user.
#### Response Example
```json
{
"credentials": [
{
"credential_id": "cred_xyz789",
"type": "EmploymentCredential"
}
]
}
```
## GET /users
### Description
Retrieve all users.
### Method
GET
### Endpoint
/users
### Parameters
#### Query Parameters
- **limit** (integer) - Optional - The maximum number of users to return.
- **offset** (integer) - Optional - The number of users to skip.
### Response
#### Success Response (200)
- **users** (array) - A list of users.
- **user_id** (string) - The unique identifier for the user.
- **username** (string) - The username of the user.
#### Response Example
```json
{
"users": [
{
"user_id": "user_1a2b3c",
"username": "johndoe"
},
{
"user_id": "user_4d5e6f",
"username": "janedoe"
}
]
}
```
## POST /users/search
### Description
Search for users based on specified criteria.
### Method
POST
### Endpoint
/users/search
### Parameters
#### Request Body
- **search_criteria** (object) - Required - The criteria to search for users.
### Request Example
```json
{
"search_criteria": {
"username": "john%",
"email": "@example.com"
}
}
```
### Response
#### Success Response (200)
- **users** (array) - A list of users matching the search criteria.
#### Response Example
```json
{
"users": [
{
"user_id": "user_1a2b3c",
"username": "johndoe",
"email": "john.doe@example.com"
}
]
}
```
## PUT /users/{id}
### Description
Update a user's information.
### Method
PUT
### Endpoint
/users/{id}
### Parameters
#### Path Parameters
- **id** (string) - Required - The unique identifier of the user to update.
#### Request Body
- **user_data** (object) - Required - The updated user data.
### Request Example
```json
{
"user_data": {
"email": "john.doe.updated@example.com"
}
}
```
### Response
#### Success Response (200)
- **message** (string) - A confirmation message indicating the update was successful.
#### Response Example
```json
{
"message": "User updated successfully."
}
```
```
--------------------------------
### Construct API Request
Source: https://context7_llms
Demonstrates how to construct an API request using the tenant URL and the appropriate HTTP method and endpoint path. Includes an example for retrieving IACAs.
```APIDOC
## Constructing Requests
### Description
Construct API requests using your tenant URL and the specific endpoint path. Ensure the `access_token` is included in the request header for protected endpoints.
### Request Template
```http
{method} https://{tenant_url}/{path}
```
### Example: Retrieve all IACAs
This example shows how to retrieve all IACAs from a tenant.
### Method
GET
### Endpoint
`https://learn.vii.au01.mattr.global/v2/credentials/mobile/iacas`
### Request Headers
- **Authorization** (string) - Required - Bearer token for authentication. Example: `Bearer YOUR_ACCESS_TOKEN`
### Request Example
```http
GET https://learn.vii.au01.mattr.global/v2/credentials/mobile/iacas
```
### Response
Response details vary by endpoint and are documented in the API Reference.
```
--------------------------------
### Initialize Global LLM SDK
Source: https://context7_llms
Initializes the mobile credential verifier SDK. Ensure you have the necessary certificates added for trusted issuers. This setup is crucial before making any credential-related calls.
```swift
mobileCredentialVerifier.initialize()
```
```kotlin
MobileCredentialVerifier.initialize(activity)
```
```typescript
await mobileCredentialVerifier.initialise()
```
--------------------------------
### Ecosystem Configuration API
Source: https://learn.mattr.global/docs/resources/get-started
Endpoints for managing ecosystem configurations, including creation and deletion.
```APIDOC
## Create Ecosystem Configuration
### Description
Creates a new ecosystem configuration.
### Method
POST
### Endpoint
/api/ecosystem/config
### Parameters
#### Request Body
- **key** (string) - Required - The configuration key.
- **value** (string) - Required - The configuration value.
### Request Example
```json
{
"key": "feature_flag_x",
"value": "enabled"
}
```
### Response
#### Success Response (200)
- **message** (string) - Confirmation message of creation.
#### Response Example
```json
{
"message": "Ecosystem configuration created successfully."
}
```
```
```APIDOC
## Delete Ecosystem Configuration
### Description
Deletes an ecosystem configuration by key.
### Method
DELETE
### Endpoint
/api/ecosystem/config/{config_key}
### Parameters
#### Path Parameters
- **config_key** (string) - Required - The key of the configuration to delete.
### Request Example
None
### Response
#### Success Response (200)
- **message** (string) - Confirmation message of deletion.
#### Response Example
```json
{
"message": "Ecosystem configuration deleted successfully."
}
```
```
```APIDOC
## Retrieve Ecosystem Configuration
### Description
Retrieves a specific ecosystem configuration by key.
### Method
GET
### Endpoint
/api/ecosystem/config/{config_key}
### Parameters
#### Path Parameters
- **config_key** (string) - Required - The key of the configuration to retrieve.
### Request Example
None
### Response
#### Success Response (200)
- **key** (string) - The configuration key.
- **value** (string) - The configuration value.
#### Response Example
```json
{
"key": "feature_flag_x",
"value": "enabled"
}
```
```
--------------------------------
### Configuration API
Source: https://context7_llms
Manage VICAL configurations within an ecosystem, including updating, retrieving, and deleting.
```APIDOC
## PUT /v1/ecosystems/{ecosystemId}/vicals/configuration
### Description
Updates a VICAL configuration for a given ecosystem.
### Method
PUT
### Endpoint
/v1/ecosystems/{ecosystemId}/vicals/configuration
### Parameters
#### Path Parameters
- **ecosystemId** (string) - Required - The ID of the ecosystem.
#### Request Body
(Structure not provided in the source text)
### Request Example
(Not provided in the source text)
### Response
#### Success Response (200)
(Structure not provided in the source text)
#### Response Example
(Not provided in the source text)
```
```APIDOC
## GET /v1/ecosystems/{ecosystemId}/vicals/configuration
### Description
Retrieves VICAL configurations for a given ecosystem.
### Method
GET
### Endpoint
/v1/ecosystems/{ecosystemId}/vicals/configuration
### Parameters
#### Path Parameters
- **ecosystemId** (string) - Required - The ID of the ecosystem.
### Request Example
(Not provided in the source text)
### Response
#### Success Response (200)
(Structure not provided in the source text)
#### Response Example
(Not provided in the source text)
```
```APIDOC
## DELETE /v1/ecosystems/{ecosystemId}/vicals/configuration
### Description
Deletes a VICAL configuration for a given ecosystem.
### Method
DELETE
### Endpoint
/v1/ecosystems/{ecosystemId}/vicals/configuration
### Parameters
#### Path Parameters
- **ecosystemId** (string) - Required - The ID of the ecosystem.
### Request Example
(Not provided in the source text)
### Response
#### Success Response (200)
(Structure not provided in the source text)
#### Response Example
(Not provided in the source text)
```