API-key access
Generate account-scoped keys, exchange them for short-lived tokens, and keep secrets outside browser code.
DislifySearch for a command to run...
Authenticate with an API key, submit a media job, and receive signed events when the optimized file is ready.
Quick start
The API follows the same job model as the customer workspace: authenticate, submit, observe, and deliver.
Your access
import { readFile } from "node:fs/promises"
const tokenRes = await fetch("https://api.dislify.com/v1/developers/token", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
apiKey: process.env.DISLIFY_API_KEY,
}),
})
const { token } = await tokenRes.json()
const fileBytes = await readFile("./video.mp4")
const formData = new FormData()
formData.append(
"file",
new Blob([new Uint8Array(fileBytes)], { type: "video/mp4" }),
"video.mp4",
)
formData.append("compression", "balanced")
const jobRes = await fetch("https://api.dislify.com/v1/jobs", {
method: "POST",
headers: {
Authorization: `Bearer ${token}`,
},
body: formData,
})
const job = await jobRes.json()
console.log(job.id)
console.log(job.status)Platform surface
The developer experience includes access control, job lifecycle endpoints, quota tracking, and event delivery.
Generate account-scoped keys, exchange them for short-lived tokens, and keep secrets outside browser code.
Submit uploads, receive a job ID, inspect status, and download the result when processing completes.
Register endpoints for job, upload, and quota events with HMAC signatures and rotatable secrets.
Track request totals, remaining quota, plan limits, and recent processing activity from the dashboard.
{
"type": "job.completed",
"data": {
"jobId": "job_84x",
"status": "done",
"downloadUrl": "https://..."
}
}Event delivery
Subscribe to completion and failure events, verify each signature, and trigger the next step in your workflow immediately.
Ready when you are
Use the full API reference for authentication, compression jobs, status checks, and webhook registration.