1. Create a key
Sign in to the console, create an organisation and a project, and create a key. It is shown once: store it in your secret manager as EGEN_API_KEY.
2. Set the address
The base address is https://api.quince-ai.com/v1. Every call goes there, with your key in the Authorization header.
3. Send a request
Chat, with curl:
curl https://api.quince-ai.com/v1/chat/completions \
-H "Authorization: Bearer $EGEN_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"model": "gemma-4-31B-it", "messages": [{"role": "user", "content": "Summarise the attached minutes in three bullet points."}]}'
The same with the OpenAI library for Python:
import os
from openai import OpenAI
client = OpenAI(base_url="https://api.quince-ai.com/v1", api_key=os.environ["EGEN_API_KEY"])
reply = client.chat.completions.create(
model="gemma-4-31B-it",
messages=[{"role": "user", "content": "Summarise the attached minutes in three bullet points."}],
)
print(reply.choices[0].message.content)
Embeddings
vectors = client.embeddings.create(
model="multilingual-e5-large-instruct",
input=["Avtalet löper i tre år.", "The agreement runs for three years."],
)
Speech to text
Send an audio file of up to 100 MB:
curl https://api.quince-ai.com/v1/audio/transcriptions \
-H "Authorization: Bearer $EGEN_API_KEY" \
-F model=kb-whisper-large \
-F file=@styrelsemote.m4a
Errors and retries
Errors come back as {"error": {"message", "type", "code", "request_id"}}. Quote the request_id when you contact support. Send an Idempotency-Key with every generation so a retry cannot start a second one.