> ## Documentation Index
> Fetch the complete documentation index at: https://developer.eka.care/llms.txt
> Use this file to discover all available pages before exploring further.

# Authenticate & Try the APIs

> Paste your client credentials once and call every EkaScribe API live from these docs

Every API page in this section has a built-in playground — you can call the real API from your browser. Authenticate once and try the whole EkaScribe flow end-to-end, no code required.

## Step 1 — Get your access token

**1. Open the Client Login API**

Go to **[Client Login](https://developer.eka.care/api-sdk/auth/client-login.md)** and click **Try it**.

**2. Paste your credentials**

Enter your `client_id` and `client_secret` in the request body and hit **Send**.

```json theme={null}
{
  "client_id": "your-client-id",
  "client_secret": "your-client-secret"
}
```

> [!NOTE]
>
> Don't have credentials? Create them in the [Eka Developer Console](https://console.eka.care) under **Manage API Credentials**.

**3. Copy the access\_token**

The response contains your token:

```json theme={null}
{ "access_token": "eyJhbGciOi...", "expires_in": 1800, "refresh_token": "..." }
```

## Step 2 — Set the token once

On any EkaScribe API page, paste the `access_token` into the **Authorization → Bearer** field of the playground. The docs remember it, so every other EkaScribe endpoint page is instantly authenticated too.

## Step 3 — Try the APIs, one by one

Walk the real flow directly from the docs:

| # | Try | What you'll see |
| - | - | - |
| 1 | [List Templates](https://developer.eka.care/api-sdk/scribe/templates/list-templates.md) | The note templates available to your workspace |
| 2 | [Create Session](https://developer.eka.care/api-sdk/scribe/sessions/create-session.md) | A new `session_id` — use it in the next calls |
| 3 | [Upload Audio](https://developer.eka.care/api-sdk/scribe/sessions/upload-audio.md) | Send your audio — **use the cURL on that page** (raw binary uploads can’t be sent from the browser playground) |
| 4 | [End Session](https://developer.eka.care/api-sdk/scribe/sessions/end-session.md) | Processing starts (`202`) |
| 5 | [Get Session](https://developer.eka.care/api-sdk/scribe/sessions/get-session.md) | `202` while processing → `200` with the structured note |
| 6 | [List Session Documents](https://developer.eka.care/api-sdk/scribe/documents/list-session-documents.md) | Every document generated on the session |
| 7 | [Get Document](https://developer.eka.care/api-sdk/scribe/documents/get-document.md) | Note metadata + a download URL for the content |

> [!TIP]
>
> Want to try a custom format? [Create Template](https://developer.eka.care/api-sdk/scribe/templates/create-template.md) with your own markdown instructions, then pass its `template_id` in Create Session — the notes come back in your format.

> [!NOTE]
>
> Access tokens expire (`expires_in` is in seconds — typically 30 minutes). If calls start returning `401`, run Step 1 again, or use the [Refresh Token API](https://developer.eka.care/api-sdk/auth/refresh-token-v2.md). You can also create a **long-lived token** against your client in the Developer Console and use it directly as the Bearer token.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.