Referință
REST API
Folosește backendul aplicației din orice client.
Fiecare aplicație expune un REST API JSON — același pe care îl folosesc SDK-ul web și aplicațiile Flutter.
Base URL: https://builder77.com/api/runtime/<PROJECT_ID>ID-ul proiectului se găsește în URL-ul editorului (/build/<PROJECT_ID>). CORS este activat pentru toate originile.
Autentificare
Opțională. Autentifică-te ca să primești un token și trimite-l ca Authorization: Bearer <token>.
| Metodă | Cale | Corp | Returnează |
|---|---|---|---|
| POST | /auth/signup | { email, password, name } | { token, user } |
| POST | /auth/signin | { email, password } | { token, user } |
| GET | /auth/me | — | { user } |
Bază de date
| Metodă | Cale | Note |
|---|---|---|
| GET | /db/<collection> | Parametri: where (JSON codificat în URL), sort, limit, offset, mine=1 → { items } |
| GET | /db/<collection>/_count | → { count } |
| GET | /db/<collection>/<id> | → înregistrare sau 404 |
| POST | /db/<collection> | Corp { data: {...} } → înregistrare |
| PATCH | /db/<collection>/<id> | Corp { data: {...} } (îmbinare) → înregistrare |
| PUT | /db/<collection>/<id> | Corp { data: {...} } (înlocuire) → înregistrare |
| DELETE | /db/<collection>/<id> | → { ok: true } |
AI, stocare, e-mail
| Metodă | Cale | Corp |
|---|---|---|
| POST | /ai | { messages: [{role, content}], system?, json? } → { text, data? } |
| POST | /storage/upload | multipart/form-data cu file → { id, url, name, size } |
| POST | /email/send | { to, subject, html } → { ok } |
| POST | /payments/checkout | { items: [{name, amount, quantity}], currency?, returnUrl, metadata? } → { url, sessionId } |
| GET | /payments/verify?session_id= | → { paid, payment } |
Exemplu
curl "https://builder77.com/api/runtime/PROJECT_ID/db/tasks?sort=-createdAt&limit=10"
curl -X POST "https://builder77.com/api/runtime/PROJECT_ID/db/tasks" \
-H "Content-Type: application/json" \
-d '{"data": {"title": "From the API", "done": false}}'Erori
Erorile returnează JSON { "error": "message" } cu un status 4xx/5xx. 429 înseamnă că ai atins o limită de frecvență; 402 înseamnă că proprietarul aplicației a rămas fără credite de integrare.