Skip to content

Desarrolladores

Vídeos con IA desde tus propios sistemas

Una API REST asíncrona e idempotente, webhooks firmados con reintentos, SDKs oficiales y un servidor MCP para agentes. Precio garantizado antes de producir.

La API, los webhooks y el MCP están en los planes Pro y Agency.

Empieza en 5 pasos

  1. 1
    Crea una clave de API

    En el Studio: Integraciones → API REST → «Crear clave de API». Se muestra una sola vez.

  2. 2
    Cotiza

    POST /v1/estimates con la misma petición que vas a crear: el precio máximo garantizado en créditos (1 crédito = US$0,01).

  3. 3
    Crea el trabajo

    POST /v1/jobs con Idempotency-Key: si repites la petición, no se crea ni se cobra dos veces. Responde 202 con el id.

  4. 4
    Síguelo

    Con webhooks (recomendado), con eventos en vivo (SSE) en /v1/jobs/{id}/events o consultando GET /v1/jobs/{id}.

  5. 5
    Descarga o publica

    Al terminar, result.videos trae los archivos; publícalos en redes conectadas con POST /v1/publications.

# 1) cotiza · quote
curl https://api.creavideosconia.com/v1/estimates -H "Authorization: Bearer $AIVS_API_KEY" -H "Content-Type: application/json" \
  -d '{"kind":"idea","idea":"3 errores al elegir zapatillas para correr","channels":["tiktok"]}'

# 2) crea · create (idempotent)
curl https://api.creavideosconia.com/v1/jobs -H "Authorization: Bearer $AIVS_API_KEY" -H "Content-Type: application/json" \
  -H "Idempotency-Key: pedido-123" \
  -d '{"kind":"idea","idea":"3 errores al elegir zapatillas para correr","channels":["tiktok"]}'
# → 202 {"id":"job_…","status":"queued",…}

# 3) sigue · follow
curl -N https://api.creavideosconia.com/v1/jobs/job_…/events -H "Authorization: Bearer $AIVS_API_KEY"

Autenticación, límites y errores

  • Envía Authorization: Bearer aivs_… en cada petición. Guardamos solo la huella de la clave; revócala cuando quieras.
  • Cada respuesta trae X-RateLimit-Limit, X-RateLimit-Remaining y X-RateLimit-Reset; si te pasas, 429 con Retry-After. Tu uso por clave: GET /v1/usage/api.
  • Los errores siguen RFC 7807: type, title, status, detail y request_id (dánoslo si escribes a soporte).
  • Todo va por HTTPS (TLS 1.2 o superior). Los trabajos fallidos por nuestra parte no se cobran.

Webhooks

Te avisamos en tu servidor cuando algo pasa. Suscríbete en Integraciones o con POST /v1/webhooks; el secreto de firma se muestra una sola vez.

Eventos disponibles
EventoQué significa
credits.lowThe available credits dropped below the low-balance threshold
job.canceledThe job was canceled
job.failedThe job failed; nothing was charged for the failed run
job.needs_reviewThe script is ready and waits for approval (approve or edit it)
job.queuedA job was accepted and waits for a worker
job.retryingA step failed and is being retried automatically
job.startedA worker started producing the job
job.succeededThe job finished: its videos and files are ready
order.paidA payment was confirmed: credits or a plan were added
order.refundedA payment was voided or refunded: its credits were taken back
publication.failedA scheduled publication failed for good
publication.publishedA video was published on a connected network
renewal.failedThe automatic renewal charge was declined
review.approvedYour client approved a video through an approval link
review.changes_requestedYour client asked for changes through an approval link

Verifica la firma

Cada aviso trae X-AIVS-Timestamp y X-AIVS-Signature = hex(HMAC-SHA256(secreto, timestamp + "." + cuerpo)). Verifica sobre el cuerpo crudo, en tiempo constante, y rechaza marcas de tiempo de más de 5 minutos. Mientras rotas el secreto, el anterior firma en X-AIVS-Signature-Previous.

# Without the SDK (Python standard library)
import hashlib, hmac, time

def valid(body: bytes, ts: str, signature: str, secret: str) -> bool:
    if abs(time.time() - int(ts)) > 300:
        return False
    good = hmac.new(secret.encode(), ts.encode() + b"." + body, hashlib.sha256).hexdigest()
    return hmac.compare_digest(good, signature)

Entregas y reintentos

  • Responde 2xx en menos de 10 s; procesa en segundo plano si tarda.
  • Si falla, reintentamos con espera creciente (10 s … 1 h) hasta 8 veces, durante cerca de un día.
  • X-AIVS-Delivery trae el id del evento (el mismo en cada reintento): úsalo para ignorar duplicados.
  • Si respondes 410 Gone, pausamos el webhook. Ves cada entrega, su respuesta y la reenvías desde Integraciones o la API.

SDKs oficiales

Reintentos con espera, idempotencia automática y verificación de webhooks incluidos.

npm install creavideosconia
import { CreaVideos, verifyWebhook, WebhookError } from "creavideosconia";

const api = new CreaVideos({ apiKey: process.env.AIVS_API_KEY! });
const job = await api.jobs.create({ kind: "idea", idea: "3 errores al elegir zapatillas", channels: ["tiktok"] });

// Next.js route handler (any Fetch-API runtime)
export async function POST(req: Request) {
  const raw = await req.text();                     // RAW body, before JSON.parse
  try {
    const event = await verifyWebhook(raw, req.headers, process.env.AIVS_WEBHOOK_SECRET!);
    if (event.type === "job.succeeded") { /* event.data.videos … */ }
    return new Response("ok");
  } catch (e) {
    if (e instanceof WebhookError) return new Response("bad signature", { status: 400 });
    throw e;
  }
}
pip install creavideosconia
from creavideosconia import Client, verify_webhook, WebhookError

api = Client("https://api.creavideosconia.com", "aivs_…")
job = api.create_job({"kind": "idea", "idea": "3 errores al elegir zapatillas", "channels": ["tiktok"]})

# Flask / FastAPI / Django: pass the RAW body and the headers
def webhook(body: bytes, headers) -> int:
    try:
        event = verify_webhook(body, headers, "whsec_…")
    except WebhookError:
        return 400
    if event["type"] == "job.succeeded":
        ...
    return 200

MCP para agentes de IA

Claude, ChatGPT, Cursor y otros agentes crean y publican vídeos con tu cuenta. Se conectan con OAuth (pulsas «Permitir») o con una clave de API, y siempre cotizan antes de producir.

https://mcp.creavideosconia.com/mcp

Tu próximo vídeo está a una idea.

Crea una cuenta gratis, elige tu sector y mira tu primer vídeo producirse en unos 4 minutos, con su costo al centavo.

Sin tarjeta · créditos de prueba · en español