> ## Documentation Index
> Fetch the complete documentation index at: https://www.krea.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# API Keys & Billing

> Crea y gestiona claves de API, recarga tu saldo de API y comprende los precios por modelo para que puedas lanzar integraciones con Krea con costos predecibles.

## Crear claves de API

Solo los **propietarios** y **administradores** del workspace pueden crear tokens de API. Si no ves la opción para crear un token, contacta al propietario de tu workspace para solicitar acceso o un rol con permisos más altos.

Para crear una clave de API:

1. Ve a [krea.ai/settings/api-tokens](https://www.krea.ai/settings/api-tokens)
2. Asegúrate de estar en el workspace correcto (usa el selector de workspace en la parte superior izquierda)
3. Haz clic en "New Token"
4. Dale a tu token un nombre descriptivo
5. Guarda el token de forma segura: ¡solo lo verás una vez!

<Info>
  La API funciona como su propia identidad de usuario dentro de tu workspace. Los estilos entrenados en la app no estarán disponibles a través de la API, y los estilos entrenados a través de la API no aparecerán en la app, a menos que se compartan con el workspace. Consulta [Entrenar un estilo personalizado](/developers/tutorials/train-image-style#use-your-trained-style) para más detalles.
</Info>

<Warning>
  **Pautas de seguridad**

  * Almacena los tokens en variables de entorno, nunca en el código
  * Usa tokens diferentes para desarrollo y producción
  * Revoca los tokens de inmediato si se ven comprometidos
  * Nunca confirmes tokens en el control de versiones
  * Nunca compartas tokens públicamente
</Warning>

## Usar claves de API

Incluye tu token en el encabezado `Authorization` de todas las solicitudes:

<CodeGroup>
  ```javascript Node.js theme={null}
  // npm install @krea-ai/sdk
  import { Krea } from "@krea-ai/sdk";

  const krea = new Krea({ apiKey: process.env.KREA_API_KEY });

  const job = await krea.image("bfl/flux-1-dev", {
    prompt: "a serene mountain landscape at sunset",
    width: 1024,
    height: 576
  });

  console.log(`Job ID: ${job.job_id}`);
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.krea.ai/generate/image/bfl/flux-1-dev \
    -H "Authorization: Bearer YOUR_API_TOKEN" \
    -H "Content-Type: application/json" \
    -d '{
      "prompt": "a serene mountain landscape at sunset",
      "width": 1024,
      "height": 576
    }'
  ```

  ```python Python theme={null}
  import requests

  API_BASE = "https://api.krea.ai"
  API_TOKEN = "your-api-token"

  response = requests.post(
      f"{API_BASE}/generate/image/bfl/flux-1-dev",
      headers={
          "Authorization": f"Bearer {API_TOKEN}",
          "Content-Type": "application/json"
      },
      json={
          "prompt": "a serene mountain landscape at sunset",
          "width": 1024,
          "height": 576
      }
  )

  job = response.json()
  print(f"Job ID: {job['job_id']}")
  ```

  ```go Go theme={null}
  package main

  import (
      "bytes"
      "encoding/json"
      "fmt"
      "net/http"
  )

  func main() {
      apiBase := "https://api.krea.ai"
      apiToken := "your-api-token"

      payload := map[string]interface{}{
          "prompt": "a serene mountain landscape at sunset",
          "width":  1024,
          "height": 576,
      }

      jsonData, _ := json.Marshal(payload)
      req, _ := http.NewRequest("POST", apiBase+"/generate/image/bfl/flux-1-dev", bytes.NewBuffer(jsonData))
      req.Header.Set("Authorization", "Bearer "+apiToken)
      req.Header.Set("Content-Type", "application/json")

      client := &http.Client{}
      resp, _ := client.Do(req)
      defer resp.Body.Close()

      var job map[string]interface{}
      json.NewDecoder(resp.Body).Decode(&job)
      fmt.Printf("Job ID: %s\n", job["job_id"])
  }
  ```
</CodeGroup>

## Precios

Para conocer los precios por modelo, consulta [krea.ai/features/api ↗](https://krea.ai/features/api). Cada modelo tiene un precio fijo por generación determinado por los parámetros de tu solicitud (resolución, calidad, audio, duración, referencias de estilo, etc.).

## Cómo funciona la facturación de la API

Las llamadas directas a la API y las conexiones MCP que utilizan un token de API se descuentan de un **saldo en USD independiente** en tu workspace, separado de las unidades de cómputo que usa la app web de Krea. Las conexiones MCP que utilizan OAuth se facturan a la cuenta de Krea con la que iniciaste sesión usando unidades de cómputo. El acceso a la API debe estar habilitado en tu workspace antes de que puedas usar claves de API; si no lo está, contacta a [support@krea.ai ↗](mailto:support@krea.ai).

<Check>
  Los trabajos fallidos y cancelados no se facturan. Solo pagas por los trabajos completados.
</Check>

### Cuando se agota tu saldo

Los trabajos en curso finalizan con normalidad. Las nuevas solicitudes a la API se rechazan con **HTTP 402 Payment Required**:

```json theme={null}
{
  "message": "Your API balance is separate from your workspace compute balance. Please top up your API balance to continue using the API."
}
```

Recarga en [krea.ai/app/api/](https://krea.ai/app/api/) para reanudar. No hay un endpoint público para consultar tu saldo de forma programática: revísalo en la app.

## Añadir saldo de API

Añade fondos en [krea.ai/app/api/](https://krea.ai/app/api/). Solo los **propietarios** del workspace pueden añadir saldo de API.

* **Importes predefinidos:** \$10, \$25, \$50, \$100
* **Importe personalizado:** \$5 mínimo, \$10.000 máximo
* Se paga mediante Stripe Checkout; el saldo se aplica de inmediato tras el pago

## Seguimiento del uso

El gasto reciente se muestra en la tarjeta de saldo de API en [krea.ai/app/api/](https://krea.ai/app/api/) bajo "API cost in the last 7 days".

## Enterprise

<Info>
  Los clientes de mayor volumen pueden recibir facturación mensual con términos Net 30 en lugar de pagar por adelantado. Contacta a [sales@krea.ai ↗](mailto:sales@krea.ai) para hablar sobre facturación empresarial.
</Info>

## Siguientes pasos

<CardGroup cols={2}>
  <Card title="Playground interactivo" icon="rocket" href="/developers/interactiveexample">
    Realiza tu primera solicitud a la API
  </Card>

  <Card title="APIs de modelos" icon="book-open" href="/api-reference/image/flux">
    Explora todos los endpoints disponibles
  </Card>

  <Card title="Ciclo de vida del trabajo" icon="cube" href="/developers/job-lifecycle">
    Comprende los estados de los trabajos y el sondeo
  </Card>

  <Card title="Límites de tasa" icon="gauge" href="/developers/rate-limits">
    Comprende los límites de la API según el nivel del plan
  </Card>
</CardGroup>
