Skip to main content
POST
/
v1
/
svgs
/
vectorizations
curl --request POST \
  --url https://api.quiver.ai/v1/svgs/vectorizations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "image": {
    "url": "https://example.com/uploads/logo.png"
  },
  "model": "arrow-1.1",
  "stream": false
}
'
{
  "created": 1704067200,
  "data": [
    {
      "mime_type": "image/svg+xml",
      "svg": "<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\"><path d=\"M12 2l8 20H4z\"/></svg>"
    }
  ],
  "id": "resp_01J9AZ3XJ7D5S9ZV2Q5Z8E1A4N",
  "credits": 1,
  "usage": {
    "input_tokens": 0,
    "output_tokens": 0,
    "total_tokens": 0
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.quiver.ai/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

Authentication via Bearer token API key

Body

application/json
model
string
required

Model identifier to use for generation or vectorization.

Minimum string length: 1
Example:

"arrow-1.1"

image
object
required
max_output_tokens
integer

Upper bound for output token count.

Required range: 1 <= x <= 131072
Example:

4096

presence_penalty
number | null
default:0

Penalty for tokens already present in prior output.

Required range: -2 <= x <= 2
Example:

0.2

stream
boolean
default:false

When true, emits a Server-Sent Events stream.

Example:

false

temperature
number
default:1

Sampling temperature.

Required range: 0 <= x <= 2
Example:

0.4

top_p
number
default:1

Nucleus sampling probability.

Required range: 0 <= x <= 1
Example:

0.95

auto_crop
boolean
default:false

Auto-crop image to the dominant subject before vectorization.

Example:

true

target_size
integer

Square resize target in pixels.

Required range: 128 <= x <= 4096
Example:

1024

Response

When stream is false, returns application/json with the full SVG response. When stream is true, returns text/event-stream with Server-Sent Events. Each SSE message contains an event: line (generating, reasoning, draft, or content) and a data: line with a JSON payload. usage token fields are deprecated and set to 0; use credits for billing values. For streaming, credits is emitted on completed content events. The stream terminates with data: [DONE].

created
integer
required
Required range: x >= 0
Example:

1704067200

data
object[]
required
Minimum array length: 1
id
string
required
Minimum string length: 1
Example:

"resp_01J9AZ3XJ7D5S9ZV2Q5Z8E1A4N"

credits
integer

Credit cost for this request. Use this for billing instead of usage tokens.

Required range: x >= 0
Example:

1

usage
object
deprecated

Deprecated. Use credits for billing values.