---
title: "Get extraction results"
method: GET
path: "/api/v1/extractions/{id}"
tags: ["Extractions"]
---

# Get extraction results

`GET /api/v1/extractions/{id}`

Returns status and up to 1,000 results. A bounded wait reduces polling. Follow nextCursor when hasMore is true.

## Path parameters

- `id` string, required

## Query parameters

- `limit` integer
- `cursor` string
- `wait` integer
- `outputMode` 'compact' | 'full' | 'raw'
- `outputPreset` 'nested' | 'flat'
- `fieldStyle` 'source' | 'camelCase' | 'snake_case'
- `includeRaw` boolean

## Response `200`

Extraction job with results

- object
  - `job` ExtractionJob, required — Extraction job tracking status, tool type, and result count.
    - `id` string, required
    - `toolType` 'article_extractor' | 'community_extractor' | 'community_moderator_explorer' | 'community_post_extractor' | 'community_search' | 'favoriters' | 'follower_explorer' | 'following_explorer' | 'list_follower_explorer' | 'list_member_extractor' | 'list_post_extractor' | 'mention_extractor' | 'people_search' | 'post_extractor' | 'quote_extractor' | 'reply_extractor' | 'repost_extractor' | 'space_explorer' | 'thread_extractor' | 'tweet_search_extractor' | 'user_likes' | 'user_media' | 'verified_follower_explorer', required — Identifier for the extraction tool used to run a job.
    - `status` 'pending' | 'running' | 'canceled' | 'completed' | 'failed', required
    - `totalResults` integer, required
    - `resultsLimit` integer — Requested result limit.
    - `effectiveResultsLimit` integer — Result limit after affordability checks.
    - `completionReason` 'budget_limited' | 'canceled' | 'deadline_reached' | 'failed' | 'pagination_safety_limit' | 'partial_failure' | 'requested_limit_reached' | 'source_exhausted' — Why a terminal job stopped.
    - `errorMessage` string — Safe error code for a failed job.
    - `createdAt` string, date-time, required
    - `completedAt` string, date-time
  - `results` ExtractionResult[], required
    - `id` string, required
    - `xUserId` string, required
    - `xUsername` string
    - `xDisplayName` string
    - `xFollowersCount` integer
    - `xVerified` boolean
    - `xProfileImageUrl` string, uri
    - `tweetId` string
    - `tweetUrl` string, uri
    - `tweetText` string
    - `tweetCreatedAt` string, date-time
    - `createdAt` string, date-time, required
    - `bookmarkCount` integer
    - `likeCount` integer
    - `quoteCount` integer
    - `replyCount` integer
    - `retweetCount` integer
    - `viewCount` integer
    - `enrichmentData` PublicMetadata — Public metadata whose fields are defined by X.
  - `hasMore` boolean, required
  - `pollAfterMs` integer, required
  - `waitUrl` string, required
  - `nextCursor` string

## Other responses

- `400` — Invalid input
- `401` — Unauthenticated
- `404` — Not found
- `429` — Xquik tier rate limit exceeded. The response includes a `Retry-After` header with the number of seconds to wait before retrying.
- `default` — Unexpected error.

## Changes

- **2026-08-28** `f23b15f4dac2` — 3 warning
  - added the new `deadline_reached` enum value to the `job/completionReason` response property for the response status `200`
  - added the new `pagination_safety_limit` enum value to the `job/completionReason` response property for the response status `200`
  - added the new `partial_failure` enum value to the `job/completionReason` response property for the response status `200`
- **2026-08-25** `21827353271b` — 22 info
  - added the new optional `query` request parameter `wait`
  - added the optional property `results/items/bookmarkCount` to the response with the `200` status
  - added the optional property `results/items/enrichmentData` to the response with the `200` status
  - added the optional property `results/items/likeCount` to the response with the `200` status
  - …18 more
- **2026-08-24** `d6cb34aefa9f` — 1 breaking
  - for the `query` request parameter `limit`, default value was changed from `10` to `1000`
- **2026-08-23** `dc5ab8bc994e` — 1 breaking, 10 info
  - for the `query` request parameter `limit`, default value was changed from `100` to `10`
  - added the optional property `job/completedAt` to the response with the `200` status
  - added the optional property `job/completionReason` to the response with the `200` status
  - added the optional property `job/effectiveResultsLimit` to the response with the `200` status
  - …7 more
- …earlier changes not shown

[Full history](https://skmtc.dev/xquik-dev/apis/xquik-api-2/changes/api/v1/extractions/:id/get.md)

---

[API](https://skmtc.dev/xquik-dev/apis/xquik-api-2.md) · [All operations](https://skmtc.dev/xquik-dev/apis/xquik-api-2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/xquik-dev/xquik-api-2/revisions/834c16fa45e8/schema)
