# Autentikasi

> Index of the TerraLab docs for agents: [llms.txt](https://terra-lab.ai/docs/llms.txt). Every docs page is also served as markdown: add .md to its URL.

Setiap panggilan memerlukan akun TerraLab, kecuali dua dokumen publik: [`/v1/openapi.json`](https://mcp.terra-lab.ai/v1/openapi.json) dan [`/v1/meta/pricing`](https://mcp.terra-lab.ai/v1/meta/pricing). Ada dua cara mengirimnya: kunci API untuk kode, OAuth 2.1 untuk agen.

## Kunci API

Pakai kunci untuk skrip, back end, dan notebook, yaitu apa pun yang tidak bisa membuka browser untuk masuk.

1. Masuk di [terra-lab.ai/login](https://terra-lab.ai/id/login).
2. Buka [Dashboard, MCP](https://terra-lab.ai/id/dashboard/mcp), lalu **Advanced**, **API keys**.
3. Beri nama kunci, setujui ketentuan API, dan klik **Create key**.
4. Salin segera. Kunci diawali `tlk_`, diikuti 48 karakter heksadesimal, dan hanya ditampilkan sekali: TerraLab menyimpan hash, tidak pernah kuncinya.

Kirim di header `Authorization`:

```bash
curl https://mcp.terra-lab.ai/v1/me \
  -H "Authorization: Bearer $TERRALAB_API_KEY"
```

Kunci tidak kedaluwarsa, dan satu akun bisa memiliki hingga 20 kunci aktif. Klik **Revoke** pada kunci di halaman yang sama bila kunci bocor atau proyek berakhir: panggilan berikutnya dengan kunci itu dijawab `401`. Panggilan dengan kunci dihitung pada akun yang membuatnya.

Jangan simpan kunci di source control, kode front-end, atau tangkapan layar. Bacalah dari variabel lingkungan atau secret manager.

## OAuth 2.1 untuk agen

Agen AI masuk tanpa kunci. Saat agen pertama kali memanggil `https://mcp.terra-lab.ai/mcp` tanpa token, server menjawab `401` dengan header `WWW-Authenticate` yang menunjuk ke metadatanya, lalu agen membuka halaman masuk TerraLab di browser Anda. Anda menyetujui sekali; setelah itu agen memegang token.

| Apa | Nilai |
| --- | --- |
| Metadata protected resource | `https://mcp.terra-lab.ai/.well-known/oauth-protected-resource` |
| Authorization server | `https://terra-lab.ai` |
| Metadata server | `https://terra-lab.ai/.well-known/oauth-authorization-server` |
| Grant | Authorization code dengan PKCE (`S256`), klien publik |
| Registrasi klien | Registrasi dinamis, atau dokumen metadata client ID |
| Scope | `data` |
| Masa berlaku access token | 1 jam, diperbarui dengan refresh token yang berlaku 30 hari |

Sebagian besar agen mengurus semua ini sendiri: Anda cukup menempelkan URL server. Lihat [server MCP](https://terra-lab.ai/id/docs/mcp).

Access token OAuth juga berfungsi di REST API, sebagai Bearer token di header yang sama.

## Putuskan agen

[Dashboard, MCP](https://terra-lab.ai/id/dashboard/mcp) menampilkan daftar **Connected apps** Anda. **Disconnect** mencabut akses aplikasi itu: panggilan berikutnya dijawab `401` dengan `access_revoked`.

Source: https://terra-lab.ai/id/docs/authentication · Updated 2026-10-27
