API Docs

List models

GET /v1/models

Returns the image and video models currently available. Only models with configured credentials and an enabled status show up, so the list can change — fetch it at startup rather than hardcoding ids.

Request

bash
curl https://open.pikpikgo.com/v1/models \
  -H "Authorization: Bearer $PIKPIK_API_KEY"

Response

json
{
  "object": "list",
  "data": [
    {
      "id": "img-std-1",
      "object": "model",
      "type": "image",
      "credits": 10,
      "max_reference_images": 4,
      "specs": [
        { "key": "2k", "name": "2K", "resolution": "2k", "quality": "2k", "credits": 10, "min_sec": 0, "max_sec": 0 }
      ]
    }
  ]
}

Fields

FieldDescription
idModel identifier. Pass this as model when submitting; an id not in this list is rejected rather than silently swapped for the default
typeimage, video or text
creditsModel-level price. Image and video billing uses specs[].credits; tiers priced at 0 are omitted
max_reference_imagesHow many reference images are accepted. 0 means unsupported
aspect_ratiosVideo only. Aspect ratios this model accepts; an empty array means no restriction. Anything outside the list is rejected
supports_last_frameVideo only. false means the model takes a first frame only — passing image_last is rejected
max_reference_videosVideo only. How many reference videos are accepted. 0 means unsupported
max_reference_audiosVideo only. How many reference audio files are accepted. 0 means unsupported
specsAvailable tiers. When spec is passed, resolution and price come from the tier
billingVideo only. per_sec bills by duration; per_unit is a flat per-request price
specs[].creditsTier price. For video, multiply by duration only when billing is per_sec
specs[].min_sec / max_secAllowed duration range in seconds. Out-of-range values are clamped
For images and video, omitting model falls back to the platform default, which may change over time — pin it explicitly if you need stability. Entries with type text are for /v1/chat/completions, where model is required and has no default.