Your API dashboard
Loading…
Keys
Recent requests
Billing
Connect your coding assistant in one step
Give it the brief, then a key. The brief is made from the live price list, so it is always current.
1 · Send the brief to your coding assistant
Loading the price list…
2 · Create a key
Start with a test key: it answers with samples and never uses credits. Keep keys on your server, never in a web page.
Explore
See everythingExplore
Everything you can make, each with one price in its own unit.
Loading…
Quick start
One request. Base address https://dalfast.studio/api/cloud/v1. Put your key in DALFAST_KEY.
curl
JavaScript (on your server)
Python
A plain-text brief: base address, key header, every endpoint with its price, errors and limits.
What you can count on
A request that is refused, fails or runs out of time costs nothing: its credits are given back the moment it ends.
Making requests: 60 to 1,200 an hour per key by plan (test keys 60). Reading: at least 600 an hour. Refused requests do not count.
Measured every five minutes, the way a visitor meets the service: Status.
Docs
Keys
Send the key as Authorization: Bearer dfs_your_key. Keys are shown once when made; keep them on your server, never in a web page or an app people can download. Revoke a key at any time; it stops working at once.
| Key | What it does |
|---|---|
dfs_test_… | Test key. Making requests (POST /ai/…) answer with a sample of the real shape: nothing is made and no credits are used. Reading and saving projects work for real. Works on every plan. |
dfs_… read only | Reads your account, projects, websites and orders. |
dfs_… read & write | Also saves projects and makes things. Making things needs a paid plan or top-up credits. |
Team keys: a team's admins (Settings → Team) can make keys for the team; the team's admins see their requests and spend. Teams have no shared balance: a team key uses the credits of the admin who made it.
Make things: POST /ai/{task}
A JSON body that names the same task. The answer is {"ok": true, "task": …, "data": {…}}. The price of each is in Pricing.
| Task | Body | Answer (data) |
|---|---|---|
write, ask, summarize, research, content, marketing, listing | {"task":"ask","input":"Three taglines for a bakery"} | The written result, as structured fields for that task. |
translate | {"task":"translate","input":"Target language: French\nStrings (JSON array, 2 items):\n[\"Hello\",\"Thank you\"]"} | {"texts":[…]} |
seedtr | {"task":"seedtr","to":"fr","texts":["Hello","Thank you"]} (1 to 400 texts; 28 languages) | {"texts":[…]} |
image | {"task":"image","input":"A ceramic mug on a wooden table","n":1,"model":"seed45","size":"1024x1536"} (n 1 to 4; model optional) | {"images":["data:image/…"]} |
edit | {"task":"edit","input":"Make the background white","image":"data:image/png;base64,…"} | {"images":["data:image/…"]} |
speech | {"task":"speech","input":"Welcome to our shop.","voice":"coral"} (up to 4,000 characters) | {"audio":"data:audio/mpeg;base64,…"} |
transcribe | {"task":"transcribe","input":"speech","audio":"data:audio/mpeg;base64,…","seconds":42} | {"text":…,"segments":[…]} |
sound | {"task":"sound","input":"Calm piano with soft rain","seconds":20} (3 to 120) | {"audio":"data:audio/mpeg;base64,…"} |
Video is made in DALFAST Studio and is not in the API yet. Large results come back as data: addresses (the file itself, base64): save them on your side; they are not kept for you.
Account and projects
| Request | What it does |
|---|---|
GET /me | The account, its plan and this key. |
GET /projects?limit=50&offset=0 | Projects you own or that are shared with you. |
GET /projects/{id}?include=data | One project; include=data adds its full design. |
POST /projects | Create a project from Studio JSON: {"name":…,"data":{…"pages":[…]}} (read & write key). |
PATCH /projects/{id}/text | Replace text in the latest version: {"replace":{"[Event date]":"Saturday 14 June"}} (up to 200; read & write key). |
GET /projects/{id}/approvals | Approval history. |
GET /sites, GET /sites/{slug}/entries | Your published websites and their form entries. |
GET /orders | Paid orders. |
GET /events | The webhook event names. |
GET /models, GET /usage | Every model and task with its price per unit; your requests, errors and credits for the last 30 days. |
Limits
| Plan | Making requests (POST /ai/…) an hour, per key |
|---|---|
| Free (test keys, or real keys with top-up credits) | 60 |
| Basic, Plus | 300 |
| Pro | 600 |
| Teams | 1,200 |
Test keys: 60 an hour on every plan. Reading (GET) has its own allowance of at least 600 an hour per key. A request refused before anything is made does not count toward the hour. Daily limits of the account also apply, as in the Studio.
Safe retries and labels
"request_id" (up to 80 letters, digits, dots, colons, dashes or underscores) on any POST /ai/…: the same request again within an hour gets the answer already made, marked "replay": true, charged once; while the first is still being made, the retry gets 409 with "code": "in_progress".
"label" (up to 60 letters, digits, spaces and . _ : / # & ( ) + -): GET /usage then lists requests and credits per label.
Errors
| Status | Meaning |
|---|---|
| 400 | Something in the body is missing or wrong; the answer says what. |
| 401 | No key, or the key is not valid. |
| 402 | Not enough credits, or making things needs a paid plan or top-up credits. |
| 403 | The key is read only, or the account may not do this. |
| 404 | Unknown task or project. |
| 409 | The same request_id is still being made. |
| 429 | Too many requests this hour, or a daily limit reached; wait the seconds in Retry-After. |
| 502, 503 | The tool did not answer just now; nothing was charged. Try again. |
Every error is {"ok": false, "error": "…"}, written to be shown to a person.
Webhooks
Settings → Developers → Webhooks sends a signed POST to your https address when a project is created or saved, a design is approved or changes are asked for, a website is published, a website form is sent, or an order is paid or refunded. Each delivery has X-DALFAST-Signature: t=…,v1=…: work out HMAC-SHA256 of t + "." + the raw body with your webhook secret, compare it with v1, and reject deliveries older than five minutes. A webhook that fails 20 times in a row is switched off.
The connector for assistants (MCP)
Customers can add DALFAST Studio to their chat assistant as a custom connector: . They sign in with their own Studio account and choose which of their accounts (their own or a team) the app may act for; anything that costs credits shows its price first and runs only after their yes.
Pricing
One price per unit, in credits; the same in the Studio, the API and connected apps.
Loading…
"Your price" is the list price: plans include monthly credits, but the price of each unit does not change by plan. The same list for agents, in plain text: /api/cloud/v1/models/llms.txt (and per model at /api/cloud/v1/models/{id}/llms.txt).
Top-ups
Analytics
Loading…