Verbatik LogoVerbatik
Developer API

Personas API

Create and reuse a consistent visual identity.

Personas are reusable identities shown as Models in the app. They are separate from the generation engine catalog returned by GET /models.

Create from a description

curl --fail-with-body https://app.verbatik.com/api/v1/personas \
  -H "Authorization: Bearer $VERBATIK_API_KEY" \
  -H 'Content-Type: application/json' \
  -H 'Idempotency-Key: campaign-persona-001' \
  -d '{
    "source":"describe",
    "name":"Campaign host",
    "description":"An adult fictional presenter with short dark hair and a warm expression.",
    "shared":true
  }'

This generates an initial portrait, consumes credits, and returns 202. Poll GET /personas/{id} until status is ready or failed.

Create from references

Use source: "upload", name, and reference_images containing 3–10 image URLs. Description-based requests instead require a description of up to 800 characters. Names are limited to 80 characters; shared defaults to true.

An upload-based persona returns 201 with a ready resource. Use images of one identity that you have permission to use, and upload files when needed.

Reuse and manage

Pass the persona's ID as persona_id in a compatible image or video generation request. Describe the new scene and action in the prompt. References preserve identity; the prompt supplies the creative direction.

  • GET /personas: list accessible personas.
  • GET /personas/{id}: inspect one persona.
  • DELETE /personas/{id}: delete a persona.

Read operations require personas:read; create and delete operations require personas:write. Watch for persona.ready and persona.failed webhook events for generated personas.

On this page