Referencia

API REST

Usa el backend de tu app desde cualquier cliente.

Cada app expone una API REST en JSON: la misma que usan el SDK web y las apps Flutter.

Base URL: https://builder77.com/api/runtime/<PROJECT_ID>

El ID de tu proyecto está en la URL del editor (/build/<PROJECT_ID>). CORS está habilitado para todos los orígenes.

Autenticación

Opcional. Inicia sesión para obtener un token y envíalo como Authorization: Bearer <token>.

MétodoRutaCuerpoDevuelve
POST/auth/signup{ email, password, name }{ token, user }
POST/auth/signin{ email, password }{ token, user }
GET/auth/me—{ user }

Base de datos

MétodoRutaNotas
GET/db/<collection>Parámetros: where (JSON codificado en la URL), sort, limit, offset, mine=1 → { items }
GET/db/<collection>/_count→ { count }
GET/db/<collection>/<id>→ registro o 404
POST/db/<collection>Cuerpo { data: {...} } → registro
PATCH/db/<collection>/<id>Cuerpo { data: {...} } (fusión) → registro
PUT/db/<collection>/<id>Cuerpo { data: {...} } (reemplazo) → registro
DELETE/db/<collection>/<id>→ { ok: true }

IA, almacenamiento, correo

MétodoRutaCuerpo
POST/ai{ messages: [{role, content}], system?, json? } → { text, data? }
POST/storage/uploadmultipart/form-data con 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 }

Ejemplo

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}}'

Errores

Los errores devuelven JSON { "error": "message" } con un estado 4xx/5xx. 429 significa que has alcanzado un límite de frecuencia; 402 significa que el propietario de la app se ha quedado sin créditos de integración.