Manajemen API Key

View as Markdown

Endpoint manajemen API Key hanya menerima autentikasi JWT.

Buat API Key

1POST /v1/private/user/api-key/create
2Authorization: Bearer YOUR_ACCESS_TOKEN
3Content-Type: application/json

Parameter permintaan:

ParameterTipeWajibDeskripsi
labelstringYaAPI Key label, panjang 1 - 64
permissionsintTidakBitmask izin, 1default, rentang 1 - 7
ipWhitelistsenar[]TidakIP daftar putih, hingga 20 entri. Jika dihilangkan, IP sumber tidak dibatasi

Contoh permintaan:

$curl -X POST https://api.6mm.com/v1/private/user/api-key/create \
> -H "Content-Type: application/json" \
> -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
> -d '{
> "label": "external-service-prod",
> "permissions": 3,
> "ipWhitelist": ["203.0.113.10"]
> }'

Contoh respons:

1{
2 "code": 0,
3 "message": "success",
4 "data": {
5 "apiKey": "fx_xxxxxxxxxxxxxxxxxxxxxxxx",
6 "apiSecret": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
7 },
8 "requestId": "req-api-key"
9}

apiSecret hanya dikembalikan sekali saat API Key dibuat. Simpan segera dalam sistem manajemen rahasia. Jangan menuliskannya ke repositori kode sumber atau log.

Setiap pengguna dapat membuat hingga 30 API Key.

Daftar Kunci API

1GET /v1/private/user/api-key/list
2Authorization: Bearer YOUR_ACCESS_TOKEN

Bidang respons:

LapanganTipeDeskripsi
list[].idstringID API Key
list[].labelstringLabel
list[].apiKeystringPengidentifikasi API Key publik
list[].permissionsintBitmask izin
list[].ipWhitelistsenar[]IP daftar putih
list[].statusintStatus: 1 diaktifkan, 0 dinonaktifkan
list[].lastUsedAtint64Waktu terakhir digunakan
list[].createdAtint64Waktu penciptaan

Pembaruan API Key

1PUT /v1/private/user/api-key/update
2Authorization: Bearer YOUR_ACCESS_TOKEN
3Content-Type: application/json

Parameter permintaan:

ParameterTipeWajibDeskripsi
idstringYaID API Key
labelstringTidakLabel baru
permissionsintTidakBitmask izin baru
ipWhitelistsenar[]TidakDaftar putih IP baru
statusintTidak1 diaktifkan, 0 dinonaktifkan

Hapus API Key

1POST /v1/private/user/api-key/delete
2Authorization: Bearer YOUR_ACCESS_TOKEN
3Content-Type: application/json

Badan permintaan:

1{ "id": "1001" }

Hapus Semua Kunci API

1POST /v1/private/user/api-key/delete-all
2Authorization: Bearer YOUR_ACCESS_TOKEN
3Content-Type: application/json

Bidang respons:

LapanganTipeDeskripsi
deletedint64Jumlah Kunci API yang dihapus