antworkDOCS

Errores

Todos los fallos tienen la misma forma, así que un solo manejador cubre todos los endpoints.

Forma del error

Todos los fallos tienen la misma forma. type es la clase sobre la que ramificar, code es el identificador estable del problema concreto y param nombra el campo culpable cuando lo hay. Trata message como texto para una persona leyendo un log: puede cambiar.

4xx / 5xx
{
  "error": {
    "type": "invalid_request_error",
    "code": "scheduled_for_too_far",
    "message": "Posts can be scheduled at most 30 days ahead. The latest accepted time is 2026-10-22T10:00:00.000Z.",
    "param": "scheduledFor"
  }
}
TipoSignifica
authentication_errorLa clave falta, está mal formada, no existe o está revocada. Siempre 401; code indica cuál.
permission_errorLa clave es válida pero le falta el permiso, o la cuenta detrás no tiene suscripción activa. 403.
invalid_request_errorAlgo de la petición está mal. 400, o 404 para una publicación que no existe en tu cuenta.
rate_limit_errorSe alcanzó un tope. 429, con Retry-After.
api_errorAlgo se rompió de nuestro lado. 500. Se puede reintentar con la misma clave de idempotencia.

Ramifica sobre code, nunca sobre message. Los códigos son parte del contrato; las frases no.

Códigos de error

CódigoEstado y significado
api_key_missing401 — falta la cabecera Authorization: Bearer.
api_key_malformed401 — el valor no tiene forma de clave de Antwork.
api_key_unknown401 — no existe ninguna clave con este id y secreto.
api_key_revoked401 — la clave se revocó en ajustes.
insufficient_scope403 — la clave no tiene el permiso que necesita esta llamada.
subscription_inactive403 — la cuenta de la clave no tiene una suscripción activa.
invalid_body400 — el cuerpo no es un objeto JSON.
accounts_required400 — falta accounts o está vacío.
too_many_accounts400 — más cuentas de las que admite una petición.
invalid_text400 — text no es una cadena.
invalid_texts400 — texts no es un objeto de cadenas indexado por id de cuenta.
invalid_media400 — media no es un array de cadenas.
media_not_hosted400 — una URL de media no está en tu biblioteca de Antwork.
invalid_scheduled_for400 — scheduledFor no es una hora ISO 8601 válida.
scheduled_for_in_past400 — scheduledFor está en el pasado.
scheduled_for_too_far400 — scheduledFor supera el horizonte de programación.
workspace_required400 — tienes varios espacios de trabajo y no enviaste workspaceId.
workspace_not_found400 — workspaceId no es un espacio de trabajo tuyo.
invalid_option400 — una clave de options es desconocida, tiene un tipo incorrecto o es de una plataforma que no está en la petición.
no_targets_accepted400 — no se aceptó ninguna cuenta y ninguna dio un motivo más concreto.
invalid_status400 — el filtro status no es uno de los cuatro estados.
invalid_limit400 — limit no es un número entero dentro del rango.
invalid_cursor400 — cursor no lo emitió esta API.
post_not_found404 — no existe esa publicación en tu cuenta.
idempotency_in_flight409 — una petición con esta Idempotency-Key sigue en curso.
idempotency_key_reused422 — esta Idempotency-Key se usó con otro cuerpo.
rate_limit_burst429 — por encima del límite por minuto.
rate_limit_daily429 — por encima del límite diario.
internal_error500 — algo falló por nuestra parte.

Cuando no se acepta ninguna cuenta de una petición de creación, la respuesta es un 400 cuyo code es el motivo de rechazo de la primera cuenta (ver la tabla siguiente), con el array posts completo al lado.

Por qué se rechazó una cuenta

El reason de una entrada rejected o failed en la respuesta de creación.

CódigoEstado y significado
account_unresolvedEl id no es una cuenta conectada en este espacio de trabajo.
platform_not_availableLa cuenta es de una plataforma en la que la API aún no publica.
text_emptyNo hay texto para esta cuenta y la plataforma lo necesita.
text_too_longEl texto supera el límite de caracteres de la plataforma.
media_requiredLa plataforma necesita una imagen o un vídeo y no se adjuntó ninguno.
unsupported_mediaLa plataforma no acepta uno de los tipos de archivo adjuntos.
video_too_longEl vídeo es más largo de lo que permite la plataforma.
token_invalidLa conexión de la cuenta ha caducado. Vuelve a conectarla en Antwork.
token_refresh_failedNo se pudo renovar la conexión. Vuelve a conectarla en Antwork.
quota_exceededHas agotado las publicaciones de tu plan en este ciclo.
schedule_failedLa publicación se creó pero no se pudo poner en cola (failed). Existe y no se enviará.