---
title: "Session status; LiveKit credentials once accepted"
method: GET
path: "/api/connect/{sessionId}"
---

# Session status; LiveKit credentials once accepted

`GET /api/connect/{sessionId}`

## Request

- Base URL: `https://api.askingahuman.com`
- URL: `https://api.askingahuman.com/api/connect/{sessionId}`
- Auth: HTTP bearer

## Path parameters

- `sessionId` string, required

## Response `200`

Session

- Session
  - `sessionId` string
  - `status` 'REQUESTED' | 'ACCEPTED' | 'ACTIVE' | 'ENDED' | 'DECLINED' | 'EXPIRED'
  - `mode` 'message' | 'video'
  - `pricing` Pricing
    - `blockMinutes` integer: 60 for chat, 30 for video
    - `blockPriceCents` integer: Price of each extension block
    - `firstChargeCents` integer: Price of the first block: blockPriceCents or the session minimum, whichever is higher
    - `currency` string
  - `blockMinutes` integer
  - `blocksPurchased` integer
  - `maxBlocks` integer
  - `endsAt` string, date-time, nullable
  - `canExtend` boolean
  - `room` string: Once ACCEPTED: LiveKit room name
  - `url` string: Once ACCEPTED: LiveKit server URL
  - `token` string: Once ACCEPTED: LiveKit join token. Chat is plain UTF-8 text on the data channel.
  - `billedSeconds` integer: Once ENDED
  - `amountCents` integer: Once ENDED
  - `receipt` string, nullable: Compact JWS (EdDSA, Ed25519) signed by askingahuman: who answered or met you, when, and SHA-256 hashes of the text (sessions: metadata and amount). Verify with the keys at /.well-known/askingahuman-receipt-keys.json. Null while receipts are off.

## Other responses

- `404`: No such person or record (also for unlisted people and people who blocked your key)

---

[API](https://skmtc.dev/askingahuman/apis/askingahuman-api.md) · [All operations](https://skmtc.dev/askingahuman/apis/askingahuman-api/llms.txt) · [OpenAPI document](https://skmtc.dev/askingahuman/apis/askingahuman-api/revisions/dbb2a1a46257?raw)
