Langsung ke konten
Sursa Developers

GET/v1/catalog/services

Tampilkan daftar layanan di katalog

list_catalog_services

Mengembalikan entri katalog global layanan eksternal (SaaS dan vendor): pencarian substring tanpa membedakan huruf besar-kecil di nama, grup, atau domain situs web, filter kategori, dan paginasi. Jumlah total untuk filter ada di header X-Total-Count. Katalog ini digunakan bersama oleh semua organisasi dan tersedia bagi setiap pengguna yang sudah masuk. Datanya disertakan bersama Sursa dan diperbarui pada setiap rilis (versinya ada di GET /v1/catalog/categories dan di field version pada icon_url setiap entri).

Autentikasi

Kirim kunci API di header Authorization: Authorization: Bearer <kunci>.

Parameter kueri

  • qstring | null

    Substring nama, grup, atau domain situs web (tanpa membedakan huruf besar-kecil).

    length ≤ 200

  • categorystring | null

    Slug kategori (GET /v1/catalog/categories).

  • offsetinteger

    Default: 0≥ 0

  • limitinteger

    Default: 50≥ 1, ≤ 500

  • cursorstring

    Kursor halaman berikutnya dari X-Next-Cursor atau next_cursor respons sebelumnya dengan filter yang sama; kursor ini membawa ukuran halaman. Bersama offset: 422 validation.failed; kursor dari daftar lain, dengan filter lain, atau kursor yang rusak: 400 api.cursor_invalid.

    length ≤ 512

Parameter header

  • X-View-Asstring

    Hanya untuk kunci API dengan peran admin. Menjalankan permintaan sebagai profil data <profile>[:viewer|verifier|editor], misalnya employee:viewer. Kunci instalasi tidak dapat memakai header ini (403).

Parameter cookie

  • kb_view_asstring

    Cookie mode “View as” (Lihat sebagai) untuk sesi. POST /auth/view-as menetapkannya dan DELETE /auth/view-as menghapusnya.

Respons

200Respons berhasil

Header respons

  • Link

    Alamat halaman berikutnya, <…>; rel="next". Jika header tidak ada, ini halaman terakhir.

  • X-Next-Cursor

    Kursor halaman berikutnya untuk parameter cursor. Jika header tidak ada, ini halaman terakhir.

  • X-Total-Count

    Jumlah total entri yang cocok dengan filter, terlepas dari limit dan offset.

  • RateLimit-Policy

    Batas yang berlaku, dalam format draf IETF draft-ietf-httpapi-ratelimit-headers: item yang dipisahkan koma "<name>";q=<quota>;w=<window in seconds>. key adalah laju permintaan kunci API (kuotanya adalah lonjakan, jendela waktunya adalah waktu untuk mengisinya kembali sepenuhnya; untuk sesi nilainya user, tanpa kredensial ip); minute, day, dan month adalah kuota organisasi untuk menit, hari, dan bulan kalender dalam UTC.

  • RateLimit

    Sisa setiap batas di RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Batas dari entri paling ketat di RateLimit-Policy (entri dengan sisa permintaan paling sedikit).

  • X-RateLimit-Remaining

    Sisa permintaan dalam batas paling ketat.

  • X-RateLimit-Reset

    Detik hingga batas paling ketat direset.

application/json

array of CatalogService
  • categorystringwajib

    Slug kategori (GET /v1/catalog/categories).

  • description_enstring | nullwajib

    Deskripsi singkat dalam bahasa Inggris. null jika tidak ada deskripsi.

  • domainstring | nullwajib

    Domain situs web tanpa www.. null jika tidak ada situs web.

  • group_namestring | nullwajib

    Grup (vendor) jika layanan termasuk dalam keluarga produk, misalnya Atlassian; jika tidak, null.

  • iconbooleanwajib

    Apakah ikon disertakan bersama Sursa.

  • icon_urlstring | nullwajib

    URL ikon (/v1/catalog/services/{service_id}/icon?v=… atau alamat eksternal yang dikonfigurasi oleh instalasi). null jika tidak ada ikon.

  • idstring (uuid)wajib
  • namestringwajib
  • slugstringwajib
  • websitestring | nullwajib

    URL situs web (https://…) atau null.

401Kredensial tidak dikirim (baik cookie sesi maupun kunci API), atau kunci tidak ditemukan.

Header respons

  • RateLimit-Policy

    Batas yang berlaku, dalam format draf IETF draft-ietf-httpapi-ratelimit-headers: item yang dipisahkan koma "<name>";q=<quota>;w=<window in seconds>. key adalah laju permintaan kunci API (kuotanya adalah lonjakan, jendela waktunya adalah waktu untuk mengisinya kembali sepenuhnya; untuk sesi nilainya user, tanpa kredensial ip); minute, day, dan month adalah kuota organisasi untuk menit, hari, dan bulan kalender dalam UTC.

  • RateLimit

    Sisa setiap batas di RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Batas dari entri paling ketat di RateLimit-Policy (entri dengan sisa permintaan paling sedikit).

  • X-RateLimit-Remaining

    Sisa permintaan dalam batas paling ketat.

  • X-RateLimit-Reset

    Detik hingga batas paling ketat direset.

application/json

Objek: Error

403Tindakan tidak diizinkan: peran tidak memadai, tidak ada akses ke koleksi atau kartu, permintaan berjalan dalam mode “View as”, atau organisasi ditangguhkan atau dihapus (`detail` adalah objek dengan `code: org_suspended | org_deleted`).

Header respons

  • RateLimit-Policy

    Batas yang berlaku, dalam format draf IETF draft-ietf-httpapi-ratelimit-headers: item yang dipisahkan koma "<name>";q=<quota>;w=<window in seconds>. key adalah laju permintaan kunci API (kuotanya adalah lonjakan, jendela waktunya adalah waktu untuk mengisinya kembali sepenuhnya; untuk sesi nilainya user, tanpa kredensial ip); minute, day, dan month adalah kuota organisasi untuk menit, hari, dan bulan kalender dalam UTC.

  • RateLimit

    Sisa setiap batas di RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Batas dari entri paling ketat di RateLimit-Policy (entri dengan sisa permintaan paling sedikit).

  • X-RateLimit-Remaining

    Sisa permintaan dalam batas paling ketat.

  • X-RateLimit-Reset

    Detik hingga batas paling ketat direset.

application/json

Objek: Error

422Error validasi: isi atau parameter tidak sesuai dengan skema (`detail` berisi daftar error validasi), atau nilai parameter berada di luar rentang (`detail` berisi pesan).

Header respons

  • RateLimit-Policy

    Batas yang berlaku, dalam format draf IETF draft-ietf-httpapi-ratelimit-headers: item yang dipisahkan koma "<name>";q=<quota>;w=<window in seconds>. key adalah laju permintaan kunci API (kuotanya adalah lonjakan, jendela waktunya adalah waktu untuk mengisinya kembali sepenuhnya; untuk sesi nilainya user, tanpa kredensial ip); minute, day, dan month adalah kuota organisasi untuk menit, hari, dan bulan kalender dalam UTC.

  • RateLimit

    Sisa setiap batas di RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Batas dari entri paling ketat di RateLimit-Policy (entri dengan sisa permintaan paling sedikit).

  • X-RateLimit-Remaining

    Sisa permintaan dalam batas paling ketat.

  • X-RateLimit-Reset

    Detik hingga batas paling ketat direset.

application/json

Objek: Error

429Terlalu banyak permintaan (`api.rate_limited`), kuota organisasi untuk menit, hari, atau bulan sudah habis (`api.quota_exceeded`; `error.details` berisi `quota`, `limit`, dan `reset_at`), batas organisasi tercapai, atau layanan jawaban sedang sibuk (`answers.engine_busy`). Tunggu selama waktu di header `Retry-After`.

Header respons

  • Retry-After

    Jumlah detik yang perlu ditunggu sebelum Anda mencoba ulang permintaan.

  • RateLimit-Policy

    Batas yang berlaku, dalam format draf IETF draft-ietf-httpapi-ratelimit-headers: item yang dipisahkan koma "<name>";q=<quota>;w=<window in seconds>. key adalah laju permintaan kunci API (kuotanya adalah lonjakan, jendela waktunya adalah waktu untuk mengisinya kembali sepenuhnya; untuk sesi nilainya user, tanpa kredensial ip); minute, day, dan month adalah kuota organisasi untuk menit, hari, dan bulan kalender dalam UTC.

  • RateLimit

    Sisa setiap batas di RateLimit-Policy: "<name>";r=<remaining>;t=<seconds until reset>.

  • X-RateLimit-Limit

    Batas dari entri paling ketat di RateLimit-Policy (entri dengan sisa permintaan paling sedikit).

  • X-RateLimit-Remaining

    Sisa permintaan dalam batas paling ketat.

  • X-RateLimit-Reset

    Detik hingga batas paling ketat direset.

application/json

Objek: Error

Kode error

Kode yang dapat dikembalikan endpoint ini di error.code, selain kode umum yang berlaku untuk setiap permintaan.

Batas laju

Respons berisi header RateLimit dan RateLimit-Policy serta header lama X-RateLimit-Limit, X-RateLimit-Remaining, dan X-RateLimit-Reset. Respons 429 berisi Retry-After dalam detik: tunggu, lalu coba lagi.

← catalog · Referensi API