Saltar al contenido principal
Cada tarea tiene un precio en créditos. El precio se retiene al enviar, se cobra cuando la tarea se completa y se libera si falla. Tu plan fija cuántas tareas puedes tener en cola o en ejecución a la vez. Para la lista en vivo de motores y precios, llama al endpoint público de capacidades. No necesita clave de API:
Añade ?taskType=GEMINI para leer un solo motor. Se aceptan alias como GOOGLE_AIO. Consulta Obtener capacidades.

Créditos por tarea

Los precios no varían según el plan; lo que varía es el valor en dólares de un crédito. Los créditos pueden tener dos decimales, como 1.25.

Medición de Citation Analysis

Una tarea CITATION_ANALYSIS retiene 20 + 12 × citations + 80 × ⌈answer characters ÷ 1,000⌉ créditos al enviar. Al completarse se cobra 1 + ⌈input tokens ÷ 500⌉ + ⌈output tokens ÷ 100⌉ + 2 × source fetches, nunca más de lo retenido. El resto de la retención se libera. Consulta Citation Analysis.

Retención, cobro y liberación

1

Envío: retención

El precio de la tarea (para WEB_CRAWL, GEO_SCORE y CITATION_ANALYSIS, el máximo) pasa de tu saldo disponible a una retención. Si el saldo no lo cubre, el envío devuelve 402 INSUFFICIENT_CREDITS. La respuesta del envío muestra credits en 0.
2

Completada: cobro

El cargo se toma de la retención. El sondeo final y el webhook lo muestran en creditsCharged.
3

Fallida: liberación

La retención vuelve a tu saldo. Una tarea fallida cuesta 0.
Una cuenta nueva recibe 500 créditos al registrarse.

Consulta tu saldo

GET /v1/credits devuelve los créditos de tu cuenta. Consultarlo no cuesta nada, así que un programa puede revisarlo antes de cada lote. Consulta Saldo de créditos.
  • remaining es lo que puedes gastar ahora. Las tareas que ya enviaste retienen su precio en reserved, así que no lo restes otra vez.
  • perCycle es lo que tu plan otorga en cada ciclo y cycleResetsAt es cuándo termina el ciclo actual. Ambos son null sin un plan activo.
  • topUpBalance indica los créditos de recarga incluidos en remaining, con la fecha en que caducan los siguientes y cuántos son. Es null si no tienes ninguno. Los créditos de recarga duran tres meses desde la compra, se conservan al renovar y se gastan después de los créditos del plan.
La clave de una subcuenta recibe 403 SUB_ACCOUNT_FORBIDDEN, porque una subcuenta gasta tus créditos. Consulta Subcuentas.

Consulta tu uso

GET /v1/usage devuelve los créditos que se cobraron a tu cuenta en un rango de fechas UTC, desglosados por día, motor y clave de API según elijas. Consultarlo no cuesta nada. Consulta Uso de créditos.
  • from y to son fechas UTC y se incluyen los dos días. Por defecto son el primer día del mes UTC actual y hoy. Un rango abarca como máximo 366 días.
  • groupBy acepta day, engine y key, separados por comas, y por defecto es day,engine. Cada fila tiene los campos de los desgloses que elegiste, y una combinación sin cobros no tiene fila. credits y tasks en la parte superior suman todas las filas.
  • groupBy=key muestra quién gastó los créditos. Una tarea enviada con una clave de API tiene "source": "api" y un apiKey con su id, keyPrefix, name y subAccountId. El gasto sin clave de API tiene source con el valor monitor (las ejecuciones de un monitor), playground o dashboard, y apiKey es null.
  • El uso suma lo que se cobró a las tareas, y una tarea fallida cuesta 0. La lectura de competidores de un monitor se cobra sin una tarea, así que baja tu saldo pero no aparece en el uso.
  • Las tareas de tus subcuentas están en tu uso, y apiKey.subAccountId indica la subcuenta propietaria de una clave. GET /v1/sub-accounts/{id}/usage lee una sola subcuenta. La clave de una subcuenta recibe 403 SUB_ACCOUNT_FORBIDDEN.

Consulta tu cola

GET /v1/async/status devuelve tus tareas en cola y en ejecución junto al límite de concurrencia en el que cuentan. Consultarlo no cuesta nada. Consulta Estado de la cola.
  • concurrency.used es queuedTasks más processingTasks, los dos recuentos que suma el límite de concurrencia de tu plan. max es ese límite, así que max - used es el margen que queda para tareas nuevas.
  • priorityBreakdown enumera las tareas en cola según la priority con la que se enviaron, de mayor a menor.
  • Los recuentos incluyen las tareas de tus subcuentas, que comparten tu límite. La clave de una subcuenta recibe 403 SUB_ACCOUNT_FORBIDDEN y lee sus propios recuentos en GET /stats.

Planes

Compara los planes en la página de precios.

Concurrencia del plan

El límite de concurrencia cuenta juntas las tareas QUEUED y PROCESSING de tu cuenta. No limita lo rápido que envías. Un envío que lo superaría devuelve 429 PLAN_CONCURRENCY_LIMIT con details.limit, details.active y Retry-After. Un contrato puede fijar otro límite para tu cuenta, y una cuenta principal puede fijar uno para una subcuenta.

Límites por clave y por subcuenta

El límite diario de la clave cuenta la retención que necesita una tarea, así que una tarea se rechaza cuando used + price superaría el límite.

Tasa de solicitudes y contrapresión

Los 429 del edge llegan antes de la API y no llevan el sobre de error JSON ni Retry-After. Si recibes uno, espera con retardo exponencial. Un 429 o 503 de los endpoints de envío de tareas lleva un encabezado Retry-After en segundos. Los códigos y las recomendaciones de reintento están en Errores.

Dosifica los envíos grandes

1

Usa lotes en vez de bucles

Un POST /v1/async/task/batch con 500 elementos es una sola solicitud frente al límite del edge. Para más tareas que tu límite de concurrencia, usa POST /v1/batches: el servidor libera los elementos a medida que hay hueco. Consulta Lotes y cuadrículas.
2

Respeta Retry-After

Espera los segundos indicados en Retry-After antes de reenviar una tarea rechazada. Reutiliza el mismo idempotencyKey para que un reintento nunca cree un duplicado.
3

Ordena el trabajo dependiente

El orden de ejecución no está garantizado. Espera a que una tarea se complete antes de enviar trabajo que dependa de su resultado.
4

Vigila tus recuentos

GET /v1/async/status devuelve tus tareas en cola y en ejecución junto al límite de tu plan, para que puedas mantenerlas por debajo. GET /stats añade las tareas que terminaron en las últimas 24 horas.