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

# Multi-tenancy & Headers

> Todo recurso da API é isolado por tenant. Saiba como indicar o seu identificador de tenant.

# Multi-tenancy & Headers

O DokStamp é uma plataforma **multi-tenant**. Todos os recursos — instituições, cursos, estudantes, certificados — são totalmente isolados dentro de um tenant. Não existe acesso a dados entre tenants distintos.

***

## Headers obrigatórios

Todos os endpoints de recursos (tudo exceto `/oauth/token` e `/auth/*`) exigem estes headers:

| Header          | Obrigatório | Descrição                                               |
| --------------- | ----------- | ------------------------------------------------------- |
| `Authorization` | Sim         | `Bearer {access_token}`                                 |
| `Accept`        | Sim         | `application/json`                                      |
| `X-Tenant`      | Sim         | O seu identificador de tenant (fornecido pelo DokStamp) |

### Exemplo

```http theme={null}
GET /certificates HTTP/1.1
Host: api.dokstamp.com
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9...
Accept: application/json
X-Tenant: universidade-federal-example
```

***

## Localizar o seu identificador de tenant

O seu identificador de tenant é fornecido aquando da criação da conta. Pode também obtê-lo a partir do corpo da resposta de `GET /auth/me`:

```json theme={null}
{
  "data": {
    "uuid": "550e8400-e29b-41d4-a716-446655440000",
    "name": "João Silva",
    "email": "joao@universidade.edu.br",
    "tenant": {
      "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "name": "Universidade Federal Example",
      "domain": "universidade-federal-example"
    }
  }
}
```

Utilize o valor de `tenant.domain` como header `X-Tenant`.

***

## Regras de isolamento de tenant

* Dados criados num tenant **nunca são visíveis** para outro tenant.
* Os UUIDs são globalmente únicos, mas todas as operações de leitura/escrita são filtradas por tenant.
* Tentar aceder a um recurso que pertence a um tenant diferente devolve `404 Not Found` (não `403`) — isto previne ataques de enumeração.
