Skip to main content
The Vigen API has five endpoints. They all use the same origin, the same authentication, and the same error shape.

Conventions

  • Base URL https://vigen.id, path prefix /api/v1. See Base URL.
  • Authentication through Authorization: Bearer vg_... or x-api-key: vg_.... See Authentication.
  • Content type application/json; charset=utf-8, except uploads, which use multipart/form-data.
  • Timestamps use ISO-8601 UTC (2026-11-04T09:12:44.000Z). Daily quotas are counted in WIB.
  • Success bodies always include "success": true next to the data.
  • No CORS: call from a server, not from a browser.

Error shape

Every failure uses this body:
What distinguishes them is the HTTP status. Some errors add diagnostic fields:
Vigen does not issue its own numeric error codes. Do not parse strings for logic — use the HTTP status, then read the diagnostic fields if any are present.

Error messages never contain internal details

The path to the user is filtered: provider names, internal URLs, and raw responses from upstream systems never appear in error or errorMessage. What you get is a sentence you can pass straight to an end user. If something looks off, report the job.id together with its status.

OpenAPI spec

There is an OpenAPI 3.1 spec in the documentation repository (/openapi.json), provided as an artifact for generating clients. If it conflicts with the pages in this tab, the spec is not the source of truth; the live contract is the server.

Where to start

Generate video or image

The main endpoint: prompt, model, parameters, references.

Fetch a result

Poll the status and download the media.

Upload a reference

Images, video, or audio as source material.

Read your balance

Credits, Unlimited period, and the quota left today.