Skip to content
TellMeHow Developers

API documentation

AI

AI: 17 API operations, with their parameters, body, responses and a curl example.

GET /ai/catalog

Read ai.catalog

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/catalog" \
  -H "Authorization: Bearer pat_…"

GET /ai/credentials

Read ai.credentials.index

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/credentials" \
  -H "Authorization: Bearer pat_…"

POST /ai/credentials/{credential}/test

Write ai.credentials.test

Parameters

credential path
Identifier (ULID).

Responses

  • 201 Created (200 or 202 for an action or an asynchronous job).
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X POST "https://{your-workspace}.tellmehow.io/api/v1/ai/credentials/{credential}/test" \
  -H "Authorization: Bearer pat_…"

GET /ai/enums/drivers

Read ai.enums.drivers

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/enums/drivers" \
  -H "Authorization: Bearer pat_…"

GET /ai/enums/usages

Read ai.enums.usages

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/enums/usages" \
  -H "Authorization: Bearer pat_…"

GET /ai/enums/voice-architectures

Read ai.enums.voice-architectures

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/enums/voice-architectures" \
  -H "Authorization: Bearer pat_…"

GET /ai/price-grid

Read ai.price-grid.index

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/price-grid" \
  -H "Authorization: Bearer pat_…"

GET /ai/profiles

Read ai.profiles.index

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/profiles" \
  -H "Authorization: Bearer pat_…"

PUT /ai/profiles

Write ai.profiles.upsert

Body application/json

  • scope_type object required

    one of workspace method engagement

  • scope_id string | null

    length: exactly 26

  • usage object required

    one of voice stt tts transcription vision analysis chat embedding ocr

  • driver object required

    one of openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • model string required

    length: at most 128

  • voice_architecture object

    one of realtime cascade

  • settings array<object>
  • settings.base_url string | null

    length: at most 512

  • settings.capabilities array<boolean>
  • credential_source object required

    one of workspace platform

  • credential_id string | null

    length: exactly 26

  • label string | null

    length: at most 255

  • is_enabled boolean

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X PUT "https://{your-workspace}.tellmehow.io/api/v1/ai/profiles" \
  -H "Authorization: Bearer pat_…" \
  -H "Content-Type: application/json" \
  -d '{"scope_type":"workspace","usage":"voice","driver":"openai","model":"…","credential_source":"workspace"}'

DELETE /ai/profiles/{profile}

Write ai.profiles.destroy

Parameters

profile path
Identifier (ULID).

Responses

  • 204 Deleted, no content.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X DELETE "https://{your-workspace}.tellmehow.io/api/v1/ai/profiles/{profile}" \
  -H "Authorization: Bearer pat_…"

POST /ai/profiles/{profile}/test

Write ai.profiles.test

Parameters

profile path
Identifier (ULID).

Body application/json

  • sample string | null

    length: at most 500

  • scope_type object

    one of workspace method engagement

  • scope_id string | null

    length: exactly 26

Responses

  • 201 Created (200 or 202 for an action or an asynchronous job).
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X POST "https://{your-workspace}.tellmehow.io/api/v1/ai/profiles/{profile}/test" \
  -H "Authorization: Bearer pat_…" \
  -H "Content-Type: application/json" \
  -d '{"sample":"…","scope_type":"workspace","scope_id":"01JABCDEFGHJKMNPQRSTVWXYZ0"}'

POST /ai/usages/{usage}/test

Write ai.usages.test

Parameters

usage path
Value from a fixed list (type, language, level…).

Body application/json

  • sample string | null

    length: at most 500

  • scope_type object

    one of workspace method engagement

  • scope_id string | null

    length: exactly 26

Responses

  • 201 Created (200 or 202 for an action or an asynchronous job).
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X POST "https://{your-workspace}.tellmehow.io/api/v1/ai/usages/{usage}/test" \
  -H "Authorization: Bearer pat_…" \
  -H "Content-Type: application/json" \
  -d '{"sample":"…","scope_type":"workspace","scope_id":"01JABCDEFGHJKMNPQRSTVWXYZ0"}'

GET /ai/voice-lab/trials

Read ai.voice-lab.index

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/voice-lab/trials" \
  -H "Authorization: Bearer pat_…"

POST /ai/voice-lab/trials

Write ai.voice-lab.store

Body application/json

  • engagement_id string | null

    length: exactly 26

  • mode object

    one of voice_only voice_screen

  • locale string | null

    length: at most 8

  • label string | null

    length: at most 255

  • voice_profile_id string | null

    length: exactly 26

  • voice array<object> | null
  • voice.voice_architecture object

    one of realtime cascade

  • voice.driver object

    one of openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • voice.model string

    length: at most 128

  • voice.settings array<object>
  • voice.credential_source object

    one of workspace platform

  • voice.credential_id string | null

    length: exactly 26

  • stt array<object> | null
  • stt.driver object

    one of openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • stt.model string

    length: at most 128

  • stt.settings array<object>
  • stt.credential_source object

    one of workspace platform

  • stt.credential_id string | null

    length: exactly 26

  • tts array<object> | null
  • tts.driver object

    one of openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • tts.model string

    length: at most 128

  • tts.settings array<object>
  • tts.credential_source object

    one of workspace platform

  • tts.credential_id string | null

    length: exactly 26

  • client_info array<object> | null
  • client_info.os string | null

    length: at most 64

  • client_info.browser string | null

    length: at most 64

  • client_info.device_class string | null

    length: at most 64

Responses

  • 201 Created (200 or 202 for an action or an asynchronous job).
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X POST "https://{your-workspace}.tellmehow.io/api/v1/ai/voice-lab/trials" \
  -H "Authorization: Bearer pat_…" \
  -H "Content-Type: application/json" \
  -d '{"engagement_id":"01JABCDEFGHJKMNPQRSTVWXYZ0","mode":"voice_only","locale":"…"}'

PATCH /ai/voice-lab/trials/{trial}

Write ai.voice-lab.update

Parameters

trial path
Identifier (ULID).

Body application/json

  • first_sound_ms integer | null

    at least 0 at most 600000

  • response_ms integer | null

    at least 0 at most 600000

  • duration_ms integer | null

    at least 0 at most 3600000

  • note string | null

    length: at most 2000

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X PATCH "https://{your-workspace}.tellmehow.io/api/v1/ai/voice-lab/trials/{trial}" \
  -H "Authorization: Bearer pat_…" \
  -H "Content-Type: application/json" \
  -d '{"first_sound_ms":0,"response_ms":0,"duration_ms":0}'

DELETE /ai/voice-lab/trials/{trial}

Write ai.voice-lab.destroy

Parameters

trial path
Identifier (ULID).

Responses

  • 204 Deleted, no content.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl -X DELETE "https://{your-workspace}.tellmehow.io/api/v1/ai/voice-lab/trials/{trial}" \
  -H "Authorization: Bearer pat_…"

GET /ai/voices

Read ai.voices

Parameters

cursor limit query
Cursor pagination, for operations that return a paginated list.

Responses

  • 200 Success: the resource in data.
  • 401 Missing, invalid, revoked or expired token.
  • 403 Not allowed by the role, a rule or the scope.
  • 404 Unknown resource or outside the workspace.
  • 422 Invalid data (validation.failed).
  • 429 Rate limit reached.
Example
curl "https://{your-workspace}.tellmehow.io/api/v1/ai/voices" \
  -H "Authorization: Bearer pat_…"