Langkau ke kandungan utama
s.id Logo
Markdown ကြည့်ရန်

Pengesahan

Dua cara pengesahan dengan API s.id, kunci API untuk pelayan-ke-pelayan, OAuth 2.0 untuk bertindak bagi pihak pengguna.

Akses pelayan ke pelayan

Kunci API mengesahkan integrasi pelayan-ke-pelayan. Buat satu di Dashboard → Pembangun → Kunci API, pilih skop anda, dan hantarkan sebagai token Bearer.

Skopဝင်ရောက်ခွင့်
links:readSenaraikan dan baca pautan
links:writeCipta dan kemas kini pautan (cipta, edit, pulihkan)
links:archiveArkibkan pautan
links:analyticsBaca statistik klik setiap pautan dan jumlah sepanjang masa
qr:readBaca tetapan kod QR (global dan setiap pautan)
qr:writeSesuaikan tetapan kod QR (global dan setiap pautan)
user:readBaca profil pengguna yang disahkan dan kuota akaun
microsites:readBaca microsite
microsites:writeCipta, kemas kini dan urus komponen microsite
microsites:deletePadam microsite dan komponennya
bash
Authorization: Bearer sk_live_...
bash
curl https://api.s.id/v2/links \
  -H "Authorization: Bearer sk_live_..."
  • Kunci bermula dengan sk_live_ dan hanya ditunjukkan sekali semasa penciptaan.
  • Minta hanya skop minimum yang diperlukan integrasi anda.
  • Batalkan kunci segera jika terkompromi, buat yang baru.
  • Jangan sesekali mendedahkan kunci API di sisi klien (pelayar, aplikasi mudah alih).

Aliran kebenaran

Alihkan pengguna ke s.id untuk persetujuan, sahkan state callback, kemudian tukar kod sekali guna dengan token akses dan token muat semula berputar.

  • Jana nilai state yang tidak boleh dijangka, simpan dalam sesi pengguna dan sahkan padanan tepat semasa callback untuk mencegah CSRF.
  • Gunakan redirect_uri yang sepadan tepat dengan yang didaftarkan untuk aplikasi OAuth anda.

PKCE diperlukan, tanpa rahsia klien

Untuk SPA, aplikasi mudah alih dan CLI. Cipta code_verifier rawak, hantar cabaran S256 semasa kebenaran, kemudian hantar pengesah asal ketika pertukaran token.

bash
https://api.s.id/oauth/authorize?
  response_type=code&
  client_id=YOUR_CLIENT_ID&
  redirect_uri=https%3A%2F%2Fapp.example.com%2Fcallback&
  scope=links%3Aread%20links%3Awrite&
  state=RANDOM_CSRF_VALUE&
  code_challenge=BASE64URL_SHA256_VERIFIER&
  code_challenge_method=S256
bash
curl -X POST https://api.s.id/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=authorization_code" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "code=AUTHORIZATION_CODE" \
  -d "redirect_uri=https://app.example.com/callback" \
  -d "code_verifier=ORIGINAL_RANDOM_VERIFIER"

Rahsia klien pada backend dipercayai

Untuk aplikasi render pelayan atau backend yang boleh menyimpan client_secret secara sulit. PKCE kekal pilihan dan disyorkan sebagai pertahanan berlapis.

bash
https://api.s.id/oauth/authorize?
  response_type=code&
  client_id=YOUR_CLIENT_ID&
  redirect_uri=https%3A%2F%2Fapp.example.com%2Fcallback&
  scope=links%3Aread%20links%3Awrite&
  state=RANDOM_CSRF_VALUE
bash
curl -X POST https://api.s.id/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=authorization_code" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "client_secret=YOUR_CLIENT_SECRET" \
  -d "code=AUTHORIZATION_CODE" \
  -d "redirect_uri=https://app.example.com/callback"
Token aksesရှင်းလင်းချက်
access_tokenTamat tempoh selepas 1 jam
refresh_tokenTamat tempoh selepas 30 hari
codeSekali guna; tamat tempoh selepas 10 minit
bash
curl -X POST https://api.s.id/oauth/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=refresh_token" \
  -d "client_id=YOUR_CLIENT_ID" \
  -d "refresh_token=CURRENT_REFRESH_TOKEN"
bash
curl -X POST https://api.s.id/oauth/revoke \
  -H "Content-Type: application/json" \
  -d '{"token":"TOKEN_TO_REVOKE"}'
Penemuan dan operasi tokenရှင်းလင်းချက်
https://api.s.id/.well-known/oauth-authorization-serverTemui URL endpoint, skop yang disokong dan kaedah PKCE melalui metadata RFC 8414.
POST /oauth/introspectPelayan sumber sulit boleh menyemak sama ada token aktif dan memeriksa skopnya.
POST /oauth/revokeBatalkan token akses atau muat semula apabila pengguna memutuskan sambungan integrasi anda.
GET /oauth/userinfoBaca profil yang dikaitkan dengan token akses OAuth yang membawa user:read.

Buka Papan Pemuka Pembangun