Auth API
Terakhir diperbarui: 3 Juli 2026
Auth API adalah alur OAuth yang mengautentikasi ServiceUser (pendaftar umum dari produk yang dijalankan oleh sebuah Space) melalui login sosial. Saat pengguna masuk dengan penyedia yang terhubung ke konfigurasi ServiceLogin (misalnya Google), API ini menerbitkan accessToken dan refreshToken. accessToken yang diterbitkan adalah Bearer token yang hanya digunakan untuk memanggil ACMA dan ACDA, serta tidak dapat dipakai pada CMA maupun CDA. Tidak ada token yang melewati batas identitas.
Base URL-nya adalah https://auth.weegloo.com/v1, dan semua path berada di bawah /spaces/{spaceId}/.... Semua badan permintaan dan respons berupa JSON. Untuk aplikasi browser, disarankan menggunakan SDK resmi weegloo-service-user daripada menangani protokol jaringan ini secara langsung. Halaman ini membahas protokol jaringan HTTP yang dipanggil SDK tersebut secara internal. Gunakan sebagai rujukan ketika Anda mengimplementasikan alur ini sendiri di lingkungan yang tidak dapat memakai SDK (server, native, skrip).
Alur login
Login berlangsung dalam empat langkah.
- Arahkan browser ke URL masuk login (
/spaces/{spaceId}/login/oauth2/{provider}). URL ini memulai rantai pengalihan yang menuju ke layar login penyedia (Google). - Setelah login selesai, Weegloo mengembalikan browser ke
callbackUrlyang dikonfigurasi pada ServiceLogin, dengan menambahkan?exchangeToken=<token sekali pakai>pada alamatnya. - Halaman callback membaca
exchangeTokendari alamat, mengirimnya ke endpoint penukaran token (POST /spaces/{spaceId}/oauth/token), dan menerimaaccessTokensertarefreshTokensebagai respons. - Selanjutnya, panggil ACMA dan ACDA menggunakan
accessTokensebagai Bearer token. Perbarui denganrefreshTokensebelum kedaluwarsa (expiresAt), dan cabut token saat keluar.
exchangeToken bersifat sekali pakai. Segera setelah memproses callback, hapus token dari bilah alamat untuk mencegah paparan dan penggunaan ulang (jika menggunakan SDK, ini ditangani secara otomatis).
Model token
Penukaran dan pembaruan token mengembalikan respons token dengan bentuk yang sama. String token dan waktu yang termuat dalam respons adalah nilai contoh di bawah ini; pada kenyataannya berupa string rahasia yang buram (karena alur ini melewati login penyedia, nilai sebenarnya tidak dapat disalin apa adanya). Struktur dan field merupakan fakta yang telah diverifikasi melalui kode server.
{
"accessToken": "QY3xK9pR2mLs7Vc0Zt8Nf4Wd1Bj6Hg5Ua2Ee9Ck3PoZt8Nf4Wd",
"tokenType": "Bearer",
"scope": ["APP"],
"createdAt": "2026-06-18T05:00:00.000Z",
"expiresAt": "2026-06-19T05:00:00.000Z",
"refreshToken": "Rf7Hn2Qw9Zx4Tp1Lk6Vc3Bm8Yd5Gs0Ae2Uj7Co4NeLk6Vc3Bm",
"refreshExpiresAt": "2026-06-21T05:00:00.000Z"
}| Field | Tipe | Deskripsi |
|---|---|---|
accessToken | string | Bearer token yang digunakan untuk memanggil ACMA dan ACDA. |
tokenType | string | Jenis token. Selalu "Bearer". |
scope | array string | Cakupan izin token. Token ServiceUser adalah ["APP"]. |
createdAt | string (date-time) | Waktu penerbitan token. |
expiresAt | string (date-time) | Waktu kedaluwarsa accessToken. |
refreshToken | string | Token yang digunakan untuk memperbarui accessToken. |
refreshExpiresAt | string (date-time) | Waktu kedaluwarsa refreshToken. Tiga hari setelah createdAt. |
Masa hidup ketiga token adalah sebagai berikut.
exchangeTokenbersifat sekali pakai dan berumur pendek. Token ini harus segera ditukar setelah callback. Token ini tidak termuat dalam respons penukaran, melainkan diteruskan melalui alamat pada langkah 2 alur login.- Masa hidup
accessTokenmengikuti konfigurasi server, dan waktu kedaluwarsa tepatnya termuat padaexpiresAtdi respons. Hanya untuk ACMA dan ACDA. refreshTokenberlaku selama tiga hari setelah diterbitkan (refreshExpiresAt). Saat pembaruan dipanggil, pasanganaccessTokendanrefreshTokenbaru diterbitkan dan pasangan sebelumnya dicabut (rotasi, rotation). Setiap kali pembaruan dilakukan,refreshTokensebelumnya tidak dapat lagi digunakan.
API
Base URL keempat endpoint di bawah ini semuanya adalah https://auth.weegloo.com/v1. Dibahas berurutan: masuk login (GET), penukaran token (POST), pembaruan token (POST), dan keluar (DELETE).
Dokumen terkait
- Login ServiceUser (konsep): Cara mengonfigurasi ServiceLogin di studio konten.
- ACMA: API untuk menangani konten anggota dengan token yang diterbitkan.
- ACDA: API baca yang dikirimkan kepada anggota.
