Aller au contenu
Twexapi
Français
Esc
naviguerouvrir⌘Japerçu
Sur cette page

Gestion des erreurs

Récupérez-vous des erreurs HTTP TwexAPI, des échecs d'outils MCP, des limites de crédits et des retries d'actions d'écriture.

TwexAPI renvoie des erreurs à deux niveaux : erreurs JSON-RPC MCP (authentification avant l’exécution d’un outil) et erreurs HTTP REST (après qu’une requête atteint l’API). Conservez les codes de statut, les corps de réponse, les curseurs et les ID pour que les retries et la revue humaine restent sûrs.

Enveloppe de réponse REST

Les appels réussis renvoient :

{
  "code": 200,
  "msg": "success",
  "data": {}
}

Lorsque le statut HTTP n’est pas 2xx, traitez la réponse comme un échec même si le corps inclut un champ code. Journalisez le corps complet, le chemin de requête et tout curseur déjà consommé.

Récupération par statut HTTP

Statut Signification Action
400 Requête invalide, champ manquant ou corps mal formé Corrigez l’entrée. Ne pas réessayer sans modification.
401 Clé API manquante ou invalide Remplacez l’identifiant depuis le tableau de bord. Vérifiez le formatage Authorization: Bearer.
403 Crédits épuisés, compte restreint ou action non autorisée Consultez Get Balance. Rechargez ou supprimez les étapes d’écriture jusqu’au retour de l’accès.
404 Tweet, utilisateur, liste ou ressource introuvable Vérifiez les ID, noms d’écran et fraîcheur du curseur.
422 Validation échouée sur une entrée structurée Corrigez les champs de schéma documentés sur la page d’endpoint. Ne pas réessayer sans modification.
429 Limite de débit dépassée Ralentissez selon Limites de débit. Conservez next_cursor et les lignes complétées.
5xx Défaillance de service transitoire ou échec de récupération en amont Réessayez avec backoff exponentiel et plafond strict.

Crédits et solde

Les lectures et écritures comptabilisées consomment des crédits de compte. Lorsqu’une tâche traite de nombreuses pages, vérifiez le solde avant et après de longues exécutions :

curl --request GET \
  --url 'https://api.twexapi.io/balance' \
  --header 'Authorization: Bearer YOUR_API_KEY'

Si les réponses 403 mentionnent des crédits ou l’accès :

  1. Arrêtez les tâches planifiées qui continuent de solliciter l’API.
  2. Confirmez le solde dans le tableau de bord.
  3. Reprenez depuis le dernier curseur enregistré après restauration des crédits.

Retries sûrs pour la pagination

Pour la recherche, les abonnés, les timelines et l’historique DM :

  • Stockez next_cursor, has_next_page et tout task_id en dehors de la conversation de l’agent.
  • Après 429 ou 5xx, réessayez le même curseur, pas la page suivante.
  • Après 400, 404 ou 422, inspectez les ID et paramètres de requête avant de réessayer.

Actions d’écriture

Les endpoints d’écriture (tweet, réponse, like, follow, envoi de DM) nécessitent :

  • Une clé API TwexAPI valide
  • Un cookie Twitter ou auth_token enregistré sur la requête

Règles de récupération :

Situation Action
401 sur écriture Corrigez la clé API et les identifiants cookie avant de réessayer.
403 sur écriture Confirmez les crédits et que le compte connecté a toujours la permission.
Succès ambigu Consultez le tweet, le DM ou l’état d’engagement avec un endpoint de lecture avant de dupliquer l’action.
Workflows d’agents Exigez une approbation humaine avant tout appel MCP read_only: false.

Public docs focus on API-key reads.

Erreurs MCP

Échec d’authentification avant l’exécution de l’outil

Lorsque l’authentification MCP échoue, explore et twexapi_request ne s’exécutent pas :

{
  "jsonrpc": "2.0",
  "error": {
    "code": 401,
    "message": "Missing MCP API token"
  }
}

Corrigez x-api-key ou Authorization: Bearer sur le client MCP, puis relancez l’appel d’outil.

Erreur API renvoyée via twexapi_request

Lorsque l’appel REST sous-jacent échoue, conservez le résultat de l’outil :

{
  "status_code": 403,
  "endpoint": "get_global_trending_tweets",
  "method": "GET",
  "path": "/twitter/global-trending/tweets",
  "result": {
    "detail": "Credits exhausted or action not allowed."
  }
}

Appliquez le même tableau de récupération HTTP ci-dessus. Ne demandez pas au modèle de deviner un nouveau chemin — appelez explore à nouveau si la route a pu changer.

Erreurs SDK et CLI

Les SDK générés mappent les échecs HTTP vers des exceptions natives du langage. Interceptez les erreurs à la frontière de la tâche, journalisez le code de statut et le corps de réponse, et routez 429/5xx vers des politiques de retry.

Exemple Python :

import requests

try:
    response = requests.get(
        "https://api.twexapi.io/balance",
        headers={"Authorization": "Bearer YOUR_API_KEY"},
        timeout=30,
    )
    response.raise_for_status()
except requests.HTTPError as exc:
    status = exc.response.status_code
    body = exc.response.text
    if status == 429:
        # Back off, preserve cursor, retry later
        ...
    elif status in (400, 404, 422):
        # Fix input; do not retry unchanged
        ...
    raise

Consultez les modèles spécifiques à chaque langage sur chaque page SDK.

Modèle de backoff de retry

Utilisez un backoff exponentiel plafonné pour 429 et 5xx :

retry_delays_seconds = [5, 15, 45, 120]

for delay in retry_delays_seconds:
    response = call_twexapi()
    if response.ok:
        break
    if response.status_code in (429, 500, 502, 503, 504):
        time.sleep(delay)
        continue
    break  # 4xx other than 429: stop and fix input

Associez le backoff à Limites de débit pour que les tâches planifiées ne redémarrent pas immédiatement à plein QPS après un 429.

Notes spécifiques aux frameworks

Runtime Conseil
LangChain Validez les modèles de transfert ; arrêtez le graphe sur 401.
Prefect Utilisez des retries de tâches avec jitter ; stockez les curseurs dans l’état de la tâche.
n8n / Zapier / Make Routez 401/403 vers des alertes ops ; retardez les replays 429.
Agents MCP Ne supprimez jamais next_cursor après un succès partiel.

Pages associées

Cette page vous a-t-elle été utile ?