# Getting Started

## Prepare base URL

Your Issuer API environment is entirely managed by TNG's Product Suite Platform (PSP), so there is nothing to worry about setting up the technology stack. You will receive the **Issuer API Base URL** for your environment. The Issuer API uses a single base URL to standardize all endpoints.

```bash
$API_KEY=INSERT_YOUR_API_KEY_HERE # the API key assigned to you via Issuer portal
$IDENTITY_ENV_HASH=426f1ce15bf3df70 # the unique hash idenitifer for your env
$ISSUER_API_BASE_URL=https://identity.products.teranode.group/products/web/$IDENTITY_ENV_HASH/issuer
```

Make sure to replace `$ISSUER_API_BASE_URL` with the Issuer API base URL provided to you.&#x20;

{% hint style="info" %}
To check if your Issuer API Base URL is valid, you can visit the Ping-Pong website at <mark style="color:blue;">`GET $ISSUER_BASE_URL/api/v1/ping`</mark>  or the Version endpoint at <mark style="color:blue;">`GET $ISSUER_BASE_URL/api/v1/version`</mark>
{% endhint %}

## API Key Authentication

The API supports API Key authentication providing the following header

```
x-api-key: <API_KEY>
```

The API key grants you access to the API documented at [API Documentation](/tng-identity-documentation/tng-identity-issuers/issuer-api/api-documentation.md)

If the API returns 403 means the API key privileges does not suffice to access the action you want to perform. Ask an Admin or Owner of the environment to review your access.

If the API returns 401 means the API key is not authorised or invalid. Ask an Admin or Owner to review access.

## Authorization

The Issuer API uses role-based access control (RBAC) to manage permissions. Authorization is enforced using the `cognito:groups` claim in the JWT access token, which specifies the user’s assigned claims. These permissions determine what actions the user can perform within the API.

### Supported Roles

* **Issuer Admin -** can view and issue verifiable credentials, can view the history of issued credentials, can revoke credentials & more
* **Issuer User** - can view and issue verifiable credentials, can view the history of its own issued credentials, can revoke its own credentials and more.
* **Issuer Auditor -** can view the history of issued credentials, can revoke credentials & more


---

# Agent Instructions: Querying This Documentation

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

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.teranode.group/tng-identity-documentation/tng-identity-issuers/issuer-api/getting-started.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

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