Skip to content
Sign in Waitlist
Docs/API reference/Insights/Import metrics

Import metrics

POST /v1/insights/import scope admin

Imports the history from YouTube, Buffer (Instagram) and TikTok (every connected account; channel together with network limits it to one).

HeadersAuthorization: Bearer praeko_… and X-Praeko-Contract: en. Always send both.

Legacy Portuguese alias (still answered, marked as deprecated): /v1/insights/importar.

Parameters

Name In Description
network query Limit to one network (all imports every network). Values: all, youtube, instagram, tiktok.
channel query Account id when the network has several (from GET /v1/channels). Without it, the default channel.
Idempotency-Key header Idempotency key (1 to 255 visible characters, for example a UUID). Repeating the SAME request with the same key within 24 h returns the stored response (with Idempotent-Replayed: true) without running it again; a different request with the same key returns 422 idempotency_key_reuse; a request still in progress returns 409 idempotency_in_progress. 5xx errors are not stored. The key is scoped per workspace and per route. See Retry a request safely.

Example

curl -X POST "https://praeko.app/v1/insights/import" \
  -H "Authorization: Bearer $PRAEKO_KEY" \
  -H "X-Praeko-Contract: en"

Response

Success status When
200 Success.
Response 200
{
  "imported": [
    {
      "network": "youtube",
      "simulated": false,
      "found": 42,
      "publicCount": 40,
      "created": 38,
      "updated": 2,
      "skippedCount": 0,
      "pages": 1,
      "views": 51230,
      "likes": 3120,
      "comments": 410
    }
  ]
}

One item per imported network. With dryRun (the response says simulated: true) nothing is stored.

Errors

Status code When
422 idempotency_key_reuse The Idempotency-Key was already used with a different request (different method, path, query or body).
409 idempotency_in_progress A request with the same Idempotency-Key is still in progress (retry in a moment).
409 idempotency_response_too_large The original response was larger than 256 KB and was not stored; fetch the resource with GET instead.

Errors on any route

Status code When
401 unauthorized The Authorization: Bearer … header is missing.
401 invalid_api_key The key does not exist.
401 revoked_api_key The key has been revoked.
401 expired_api_key The key has expired.
403 forbidden The key's scope is not enough for this route (see the scope badge).
429 rate_limited The per-minute request limit was exceeded.

The body of every error is { "error": { "code", "message", "details"? } }. See all error codes.

Try it

Try it

The live test uses your key and your account. It stays off when you are not signed in.

Sign in to try it
Question or mistake on this page? contato@praeko.appView .md

Type to search pages, routes and error codes.