Agents × jobs

Get ban alerts via webhooks with any AI agent

Get TikTok/Instagram ban alerts from any of 25 agents: create_webhook_endpoint for account.banned, ban_appeal.submitted, ban_resolution.decided; list_ac…

From any MCP-capable agent, ban visibility is one create_webhook_endpoint call subscribing to account.ban_appeal.submitted (the earliest signal — the manager filed a platform appeal and the account is unavailable), account.banned (confirmed) and account.ban_resolution.decided (TokPortal's commercial outcome: refund, remake or no_remake with a reason_code), plus list_account_bans as the pollable source of truth. Deliveries are signed (TokPortal-Signature, HMAC SHA-256) and retryable with retry_webhook_delivery. No official API tells you a third-party account was banned; here it is a first-class event.

How it works

The lifecycle is explicit. When a manager can no longer use an account and files an appeal with the platform, TokPortal emits account.ban_appeal.submitted — that is the moment to pause scheduling for that account in your systems. If the appeal succeeds, account.ban_appeal.resolved reports it and the account continues; if it fails or there is no appeal path, account.banned fires and the account's banned flag flips in list_accounts. Staff then decide the commercial outcome and account.ban_resolution.decided carries resolution (refund, remake, no_remake), a reason_code (e.g. tos_ban) and refund_credits; credits.restored fires if TokPortal Coverage restores credits. Bundles tied to a banned account are cancelled (bundle.cancelled).

From any MCP-capable agent the setup is: list_webhook_events to see the catalogue, create_webhook_endpoint with your url and the four events, test_webhook_endpoint to receive a webhook.test, and get_webhook_endpoint to copy the signing secret into your receiver. Verify TokPortal-Signature (t=<timestamp>,v1=<hex>) with the raw body — the Node SDK ships verifyWebhookSignature. If your endpoint was down, list_webhook_deliveries shows failed attempts and retry_webhook_delivery replays one.

For reporting and reconciliation, list_account_bans is the only source of truth: filter status (appeal_pending, appeal_accepted, appeal_refused, no_appeal_banned), resolution (refund, remake, no_remake, pending), since as a polling watermark, and include_screenshots=true for a signed 7-day evidence URL. Agents must report these values verbatim and never infer a ban from missing analytics or a not_found profile.

Tool sequence

  1. tokportal_list_webhook_events — Catalogue of event names and payload contract.
  2. tokportal_create_webhook_endpointurl, events: ["account.ban_appeal.submitted","account.banned","account.ban_resolution.decided","credits.restored"].
  3. tokportal_test_webhook_endpoint — Sends webhook.test to validate your receiver and signature check.
  4. tokportal_get_webhook_endpoint — Endpoint details incl. signing secret.
  5. tokportal_list_webhook_deliveries — Delivery log per endpoint (status, attempts).
  6. tokportal_retry_webhook_delivery — Replay a failed delivery by delivery_id.
  7. tokportal_list_account_bans — Source of truth: status, resolution, since, include_screenshots.
  8. tokportal_list_accountsbanned=true|false filter and the ban_appeal block per account.

Pick your agent