> ## 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

> Crie e faça a gestão de chaves de API, carregue o seu saldo de API e compreenda os preços por modelo para lançar integrações Krea com custos previsíveis.

## Criar chaves de API

Apenas os **proprietários** e **administradores** da workspace podem criar tokens de API. Se não vir a opção para criar um token, contacte o proprietário da workspace para solicitar acesso ou uma função elevada.

Para criar uma chave de API:

1. Aceda a [krea.ai/settings/api-tokens](https://www.krea.ai/settings/api-tokens)
2. Certifique-se de que se encontra na workspace correta (usando o seletor de workspace no canto superior esquerdo)
3. Clique em "New Token"
4. Atribua ao token um nome descritivo
5. Guarde o token em segurança — só o verá uma vez!

<Info>
  A API funciona como uma identidade de utilizador própria dentro da sua workspace. Os estilos treinados na aplicação não estarão acessíveis através da API, e os estilos treinados via API não aparecerão na aplicação, a menos que sejam partilhados com a workspace. Consulte [Treinar um estilo personalizado](/developers/tutorials/train-image-style#use-your-trained-style) para mais detalhes.
</Info>

<Warning>
  **Diretrizes de segurança**

  * Armazene os tokens em variáveis de ambiente, nunca no código
  * Utilize tokens diferentes para desenvolvimento e produção
  * Revogue tokens imediatamente caso sejam comprometidos
  * Nunca faça commit de tokens para o controlo de versões
  * Nunca partilhe tokens publicamente
</Warning>

## Utilizar chaves de API

Inclua o seu token no cabeçalho `Authorization` de todos os pedidos:

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

## Preços

Para os preços por modelo, consulte [krea.ai/features/api ↗](https://krea.ai/features/api). Cada modelo tem um preço fixo por geração, determinado pelos parâmetros do seu pedido (resolução, qualidade, áudio, duração, referências de estilo, etc.).

## Como funciona a faturação da API

As chamadas diretas à API e as ligações MCP que utilizam um token de API são deduzidas a um **saldo separado em USD** na sua workspace — independente das unidades de computação utilizadas pela aplicação web do Krea. As ligações MCP que utilizam OAuth são faturadas à conta Krea em sessão, usando unidades de computação. O acesso à API tem de estar ativado na sua workspace antes de poder utilizar chaves de API; caso contrário, contacte [support@krea.ai ↗](mailto:support@krea.ai).

<Check>
  Os trabalhos falhados e cancelados não são faturados. Paga apenas pelos trabalhos concluídos.
</Check>

### Quando o saldo se esgota

Os trabalhos em curso terminam normalmente. Os novos pedidos à API são rejeitados com **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."
}
```

Carregue saldo em [krea.ai/app/api/](https://krea.ai/app/api/) para retomar. Não existe um endpoint público para consultar o seu saldo de forma programática — monitorize-o na aplicação.

## Adicionar saldo de API

Adicione fundos em [krea.ai/app/api/](https://krea.ai/app/api/). Apenas os **proprietários** da workspace podem adicionar saldo de API.

* **Montantes predefinidos:** \$10, \$25, \$50, \$100
* **Montante personalizado:** \$5 mínimo, \$10,000 máximo
* Pago através do Stripe Checkout; o saldo é aplicado imediatamente após o sucesso

## Acompanhar a utilização

Os gastos recentes são apresentados no cartão de saldo de API em [krea.ai/app/api/](https://krea.ai/app/api/), em "API cost in the last 7 days."

## Enterprise

<Info>
  Os clientes com maior volume podem ser faturados mensalmente em condições Net 30, em vez de pagar antecipadamente. Contacte [sales@krea.ai ↗](mailto:sales@krea.ai) para discutir a faturação enterprise.
</Info>

## Próximos passos

<CardGroup cols={2}>
  <Card title="Playground interativo" icon="rocket" href="/developers/interactiveexample">
    Faça o seu primeiro pedido à API
  </Card>

  <Card title="APIs dos modelos" icon="book-open" href="/api-reference/image/flux">
    Explore todos os endpoints disponíveis
  </Card>

  <Card title="Ciclo de vida do trabalho" icon="cube" href="/developers/job-lifecycle">
    Compreenda os estados dos trabalhos e o polling
  </Card>

  <Card title="Limites de taxa" icon="gauge" href="/developers/rate-limits">
    Compreenda os limites da API por nível de plano
  </Card>
</CardGroup>
