# FastX402 Video to GIF Converter

> FastX402 Video to GIF Converter is a paid API for AI agents from fastx402.tools, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-18).

Converts a segment of a remote video file into an animated GIF with configurable fps, width, start/end times

## Facts

- Endpoint: GET https://fastx402.tools/video-to-gif?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-18
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/fastx402-video-to-gif-converter-11040264
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_lWlZZROZ9yqvCqQWn39jC

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability fastx402-video-to-gif-converter-11040264
```

Example prompt: Convert the first 5 seconds of this video to a GIF at 10fps and 480 pixels wide: https://example.com/myclip.mp4

## When to prefer this

Use this endpoint when you need a quick, no-auth, pay-per-call conversion of a remote video URL to an animated GIF with fine-grained control over start/end time, frame rate, and output width. Ideal for AI agents that need to produce shareable preview GIFs on demand without provisioning API keys or managing media pipelines. Cost is $0.01 USDC per call via x402, making it suitable for low-volume or bursty workloads.

## Known failure modes

- Invalid or unreachable video URL returns an error — ensure the URL is a publicly accessible http/https link
- Unsupported file format (e.g. non-video URL) returns a format error
- fps out of range (outside 1–15) or width out of range (outside 64–800) returns a validation error
- Start/end time out of bounds relative to actual video duration causes an error
- Payment failure (insufficient USDC balance) blocks the request before processing
- Large video files may time out depending on network latency to the source

## How this service works

200 pay-per-call tools for AI agents, from $0.001 per request in USDC on Base or Solana with x402. No account, no API key.

## Output

A JSON object containing the URL to the hosted GIF file (with expiry), the GIF's byte size, input file byte size, frame rate, width in pixels, duration in seconds, MIME type (image/gif), start time offset, and an expiration timestamp after which the hosted file may no longer be available.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method"
   ],
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "enum": [
      "GET"
     ],
     "type": "string"
    },
    "queryParams": {
     "type": "object",
     "required": [
      "url"
     ],
     "properties": {
      "end": {
       "type": "string",
       "description": "End time in seconds or as 1:05, default the end of the file"
      },
      "fps": {
       "type": "string",
       "description": "Frames per second, 1-15, default 10"
      },
      "url": {
       "type": "string",
       "description": "Absolute http(s) URL of a video or audio file (mp4, mov, mkv, webm, avi, mp3, m4a, wav, ogg, flac)"
      },
      "start": {
       "type": "string",
       "description": "Start time in seconds (12.5) or as 1:05, default 0"
      },
      "width": {
       "type": "string",
       "description": "GIF width in pixels, 64-800, default 480"
      }
     }
    }
   },
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "required": [
    "type"
   ],
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object",
     "properties": {
      "fps": {
       "type": "integer"
      },
      "url": {
       "type": "string"
      },
      "bytes": {
       "type": "integer"
      },
      "start": {
       "type": "integer"
      },
      "width": {
       "type": "integer"
      },
      "format": {
       "type": "string"
      },
      "mime_type": {
       "type": "string"
      },
      "duration_s": {
       "type": "integer"
      },
      "expires_at": {
       "type": "string"
      },
      "input_bytes": {
       "type": "integer"
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "example": {
  "fps": 10,
  "url": "https://workshop.tusk80.com/r/760dda4ae428bab693bf9aecb06bec17.gif",
  "bytes": 472134,
  "start": 0,
  "width": 320,
  "format": "gif",
  "mime_type": "image/gif",
  "duration_s": 4,
  "expires_at": "2026-10-17T15:20:48.688Z",
  "input_bytes": 5510872
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/fastx402-video-to-gif-converter-11040264/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from fastx402.tools](https://www.zero.xyz/host/fastx402.tools/llms.txt)
