> ## Documentation Index
> Fetch the complete documentation index at: https://docs.socq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Twitch User Videos

> Fetch normalized user videos data from Twitch.

# Get Twitch User Videos

Fetch normalized user videos data from Twitch.

Each successful task costs a fixed `0.19` credits.

## Request Body

```json theme={"system"}
{
  "username": "ninja",
  "filter_by": "all",
  "sort_by": "time"
}
```

## Use with MCP

| Interface      | Value                                                |
| -------------- | ---------------------------------------------------- |
| REST           | `POST /v1/twitch/user-videos`                        |
| Compact MCP    | `socq_execute` with `endpoint: "twitch/user-videos"` |
| Typed MCP      | `socq_twitch_user_videos`                            |
| Exact-tool URL | `https://api.socq.ai/mcp?tools=twitch_user_videos`   |
| CLI            | `socq twitch user-videos`                            |

<Info>
  A successful request returns a `task_id`. Poll it with `socq_get_task`, then read normalized records from `results.items`.
</Info>

## Result Fields

| Field                    | Type            | Nullable | Description                                                                   |
| ------------------------ | --------------- | -------- | ----------------------------------------------------------------------------- |
| `id`                     | `string`        | Yes      | Unique identifier for this result item.                                       |
| `platform`               | `string`        | No       | Platform the result belongs to, such as `instagram` or `linkedin`.            |
| `resource`               | `string`        | No       | SocQ resource represented by the result, such as `videos` or `comments`.      |
| `type`                   | `string`        | No       | Category of the result item, such as `video`, `post`, or `comment`.           |
| `url`                    | `string`        | Yes      | Public URL of the result item when available.                                 |
| `published_at`           | `string`        | Yes      | Time the source item was published, in ISO 8601 format when available.        |
| `collected_at`           | `string`        | No       | Time SocQ collected or processed this result, in ISO 8601 format.             |
| `text`                   | `string`        | Yes      | Video caption or description.                                                 |
| `author`                 | `object`        | Yes      | Author or publisher of the content.                                           |
| `author`                 | `object`        | No       | Field value in the standard result.                                           |
| `author.id`              | `string`        | Yes      | Unique identifier of the author.                                              |
| `author.username`        | `string`        | Yes      | Public username or handle of the account.                                     |
| `author.name`            | `string`        | Yes      | Display name of the author.                                                   |
| `author.url`             | `string`        | Yes      | Public URL of the author when available.                                      |
| `author.avatar_url`      | `string`        | Yes      | URL of the account avatar image.                                              |
| `author.is_verified`     | `boolean`       | Yes      | Whether the account is verified on the platform.                              |
| `author.is_private`      | `boolean`       | Yes      | Whether the account is private.                                               |
| `metrics`                | `object`        | Yes      | Counters and measurements available for the result item.                      |
| `metrics`                | `object`        | No       | Field value in the standard result.                                           |
| `metrics.likes_count`    | `integer`       | Yes      | Number of likes.                                                              |
| `metrics.comments_count` | `integer`       | Yes      | Number of comments.                                                           |
| `metrics.shares_count`   | `integer`       | Yes      | Number of shares or reposts.                                                  |
| `metrics.plays_count`    | `integer`       | Yes      | Number of video playback starts reported by the platform.                     |
| `metrics.views_count`    | `integer`       | Yes      | Number of views reported by the platform.                                     |
| `media`                  | `array<object>` | Yes      | Images, videos, or other media attached to the result.                        |
| `hashtags`               | `array<string>` | Yes      | Hashtags associated with the content, without changing their source spelling. |
| `mentions`               | `array<string>` | Yes      | Accounts mentioned in the content.                                            |
| `shortcode`              | `string`        | Yes      | Platform shortcode used to identify the media item.                           |
| `duration_seconds`       | `number`        | Yes      | Duration in seconds.                                                          |
| `audio`                  | `object`        | Yes      | Audio or music metadata associated with the video.                            |
| `audio`                  | `object`        | No       | Field value in the standard result.                                           |
| `audio.id`               | `string`        | Yes      | Identifier of the audio or music track.                                       |
| `audio.title`            | `string`        | Yes      | Title of the audio or music track.                                            |
| `audio.artist`           | `string`        | Yes      | Name of the audio artist or creator.                                          |
| `audio.url`              | `string`        | Yes      | URL of the audio or music track when available.                               |

## Completed Task Response

```json theme={"system"}
{
  "code": 200,
  "message": "success",
  "data": {
    "task_id": "task_example",
    "public_id": "twitch/user-videos",
    "status": "succeeded",
    "result_count": 0,
    "credits_amount": 0,
    "results": {
      "schema_id": "reel-video",
      "schema_version": "1.0",
      "items": [],
      "limit": 20,
      "next_cursor": null,
      "has_more": false
    }
  }
}
```


## OpenAPI

````yaml api-manual/agent-api/agent-api.json POST /v1/twitch/user-videos
openapi: 3.1.0
info:
  title: SocQ Agent API
  version: v1-d93e6d4f8368
  description: Asynchronous social data API generated from the SocQ Capability Registry.
servers:
  - url: https://api.socq.ai
security: []
paths:
  /v1/twitch/user-videos:
    post:
      tags:
        - twitch
      summary: Twitch User Videos API
      description: Collect one page of public Twitch user videos.
      operationId: socq_twitch_user_videos
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $schema: https://json-schema.org/draft/2020-12/schema
              type: object
              additionalProperties: false
              properties:
                filter_by:
                  type: string
                  minLength: 1
                  enum:
                    - all
                    - archive
                    - archives
                    - highlight
                    - highlights
                    - upload
                    - uploads
                sort_by:
                  type: string
                  minLength: 1
                  enum:
                    - time
                    - views
                username:
                  type: string
                  minLength: 1
                  description: A public account username.
              required:
                - username
      responses:
        '200':
          description: Task accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentSubmitResponse'
        '422':
          description: Input validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AgentValidationErrorResponse'
      security:
        - bearerAuth: []
        - apiKeyAuth: []
components:
  schemas:
    AgentSubmitResponse:
      type: object
      properties:
        code:
          type: integer
          const: 200
        data:
          type: object
          properties:
            task_id:
              type: string
            status:
              type: string
            created_time:
              type:
                - string
                - 'null'
          required:
            - task_id
            - status
    AgentValidationErrorResponse:
      type: object
      properties:
        code:
          type: integer
          const: 422
        error:
          type: object
          properties:
            message:
              type: string
            type:
              type: string
            details:
              type: object
          required:
            - message
            - type
      required:
        - code
        - error
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````