---
title: Compress Video Job API
slug: compress-video-job
url: https://apyhub.com/apyhub/service/compress-video-job
provider: ApyHub
categories: [File Conversion, File Manipulation]
tags: [compress, job, video]
auth: api_key
---

# Compress Video Job API

Compress videos from a file upload or URL and poll for a job URL. Returns job status, with a downloadable output when processing succeeds.

## Endpoints

| Method | Path | Description | Atoms |
| --- | --- | --- | --- |
| POST | `/job/compress/video/file` | What it does Submits a video file for compression as an asynchronous job and returns a job identifi… | 400 |
| GET | `/job/compress/video/status/:job_id` | What it does Checks the status of a video compression job by job ID and returns the job record in a… | 5 |
| POST | `/job/compress/video/url` | What it does Submits a video compression job using a source video URL and returns a job identifier… | 400 |

## About

## What it does
Video Compressor compresses a video file asynchronously and gives you a job ID for polling the result. Send either a source video file or a source video URL, choose an optional `compression_percentage` from 0 to 100, and check the job until the compressed file is ready.

Use `POST /file-to-json` when you already have the video as multipart upload, or `POST /url-to-json` when the source lives at an HTTP(S) URL. If you omit `compression_percentage`, the job defaults to 50. Both submission endpoints return a UUID `job_id` immediately, without wrapping it in `data`.

Poll `GET /jobs/:job_id` to read the job status. The response includes `job_id` and `status`, where `status` is `pending`, `successful`, or `failed`. When the job succeeds, the response also includes a presigned or CDN `url` to the output video. Failed and pending jobs include a human-readable `message`.

Video Compressor is a good fit for upload pipelines, media libraries, and workflows that need smaller video files before storage or delivery. Use it to reduce bandwidth, speed up playback, or prepare assets for downstream processing.

## Usage

Authenticate with an ApyHub API key in the `apy-token` header.
Full docs and a live playground: https://apyhub.com/apyhub/service/compress-video-job
