Aller au contenu
TellMeHow Documentation

Documentation de l’API

IA

IA : 17 opérations de l’API, avec leurs paramètres, leur corps, leurs réponses et un exemple curl.

GET /ai/catalog

Lecture ai.catalog

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/catalog" \
  -H "Authorization: Bearer pat_…"

GET /ai/credentials

Lecture ai.credentials.index

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/credentials" \
  -H "Authorization: Bearer pat_…"

POST /ai/credentials/{credential}/test

Écriture ai.credentials.test

Paramètres

credential chemin
Identifiant (ULID).

Réponses

  • 201 Créé (200 ou 202 pour une action ou un traitement asynchrone).
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X POST "https://{votre-espace}.tellmehow.io/api/v1/ai/credentials/{credential}/test" \
  -H "Authorization: Bearer pat_…"

GET /ai/enums/drivers

Lecture ai.enums.drivers

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/enums/drivers" \
  -H "Authorization: Bearer pat_…"

GET /ai/enums/usages

Lecture ai.enums.usages

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/enums/usages" \
  -H "Authorization: Bearer pat_…"

GET /ai/enums/voice-architectures

Lecture ai.enums.voice-architectures

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/enums/voice-architectures" \
  -H "Authorization: Bearer pat_…"

GET /ai/price-grid

Lecture ai.price-grid.index

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/price-grid" \
  -H "Authorization: Bearer pat_…"

GET /ai/profiles

Lecture ai.profiles.index

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/profiles" \
  -H "Authorization: Bearer pat_…"

PUT /ai/profiles

Écriture ai.profiles.upsert

Corps application/json

  • scope_type object requis

    une valeur parmi workspace method engagement

  • scope_id string | null

    longueur : exactement 26

  • usage object requis

    une valeur parmi voice stt tts transcription vision analysis chat embedding ocr

  • driver object requis

    une valeur parmi openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • model string requis

    longueur : au plus 128

  • voice_architecture object

    une valeur parmi realtime cascade

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

    longueur : au plus 512

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

    une valeur parmi workspace platform

  • credential_id string | null

    longueur : exactement 26

  • label string | null

    longueur : au plus 255

  • is_enabled boolean

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X PUT "https://{votre-espace}.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}

Écriture ai.profiles.destroy

Paramètres

profile chemin
Identifiant (ULID).

Réponses

  • 204 Supprimé, sans contenu.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X DELETE "https://{votre-espace}.tellmehow.io/api/v1/ai/profiles/{profile}" \
  -H "Authorization: Bearer pat_…"

POST /ai/profiles/{profile}/test

Écriture ai.profiles.test

Paramètres

profile chemin
Identifiant (ULID).

Corps application/json

  • sample string | null

    longueur : au plus 500

  • scope_type object

    une valeur parmi workspace method engagement

  • scope_id string | null

    longueur : exactement 26

Réponses

  • 201 Créé (200 ou 202 pour une action ou un traitement asynchrone).
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X POST "https://{votre-espace}.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

Écriture ai.usages.test

Paramètres

usage chemin
Valeur d’une liste fixe (type, langue, niveau…).

Corps application/json

  • sample string | null

    longueur : au plus 500

  • scope_type object

    une valeur parmi workspace method engagement

  • scope_id string | null

    longueur : exactement 26

Réponses

  • 201 Créé (200 ou 202 pour une action ou un traitement asynchrone).
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X POST "https://{votre-espace}.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

Lecture ai.voice-lab.index

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/voice-lab/trials" \
  -H "Authorization: Bearer pat_…"

POST /ai/voice-lab/trials

Écriture ai.voice-lab.store

Corps application/json

  • engagement_id string | null

    longueur : exactement 26

  • mode object

    une valeur parmi voice_only voice_screen

  • locale string | null

    longueur : au plus 8

  • label string | null

    longueur : au plus 255

  • voice_profile_id string | null

    longueur : exactement 26

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

    une valeur parmi realtime cascade

  • voice.driver object

    une valeur parmi openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • voice.model string

    longueur : au plus 128

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

    une valeur parmi workspace platform

  • voice.credential_id string | null

    longueur : exactement 26

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

    une valeur parmi openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • stt.model string

    longueur : au plus 128

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

    une valeur parmi workspace platform

  • stt.credential_id string | null

    longueur : exactement 26

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

    une valeur parmi openai openai_compatible mistral anthropic deepgram elevenlabs tesseract

  • tts.model string

    longueur : au plus 128

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

    une valeur parmi workspace platform

  • tts.credential_id string | null

    longueur : exactement 26

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

    longueur : au plus 64

  • client_info.browser string | null

    longueur : au plus 64

  • client_info.device_class string | null

    longueur : au plus 64

Réponses

  • 201 Créé (200 ou 202 pour une action ou un traitement asynchrone).
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X POST "https://{votre-espace}.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}

Écriture ai.voice-lab.update

Paramètres

trial chemin
Identifiant (ULID).

Corps application/json

  • first_sound_ms integer | null

    au moins 0 au plus 600000

  • response_ms integer | null

    au moins 0 au plus 600000

  • duration_ms integer | null

    au moins 0 au plus 3600000

  • note string | null

    longueur : au plus 2000

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X PATCH "https://{votre-espace}.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}

Écriture ai.voice-lab.destroy

Paramètres

trial chemin
Identifiant (ULID).

Réponses

  • 204 Supprimé, sans contenu.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl -X DELETE "https://{votre-espace}.tellmehow.io/api/v1/ai/voice-lab/trials/{trial}" \
  -H "Authorization: Bearer pat_…"

GET /ai/voices

Lecture ai.voices

Paramètres

cursor limit requête
Pagination par curseur, pour les opérations qui rendent une liste paginée.

Réponses

  • 200 Succès : la ressource dans data.
  • 401 Jeton absent, invalide, révoqué ou expiré.
  • 403 Non autorisé par le rôle, une règle ou la portée.
  • 404 Ressource inconnue ou hors de l’espace.
  • 422 Données invalides (validation.failed).
  • 429 Limite de débit atteinte.
Exemple
curl "https://{votre-espace}.tellmehow.io/api/v1/ai/voices" \
  -H "Authorization: Bearer pat_…"