Mengambil daftar dasbor yang dipaginasikan yang dapat Anda lihat atau ubah
Daftar Dasbor
Ambil dasbor yang dapat Anda lihat. Ini termasuk dasbor yang Anda buat dan dasbor yang telah dibagikan kepada Anda.
Contoh Dasar
query ListDashboards {
dashboards(filter: { companyId: "company_123" }) {
items {
id
title
createdBy {
id
name
email
}
createdAt
updatedAt
}
pageInfo {
hasNextPage
hasPreviousPage
startCursor
endCursor
}
}
}
Contoh Lanjutan
query ListDashboardsAdvanced {
dashboards(
filter: {
companyId: "company_123"
projectId: "proj_456" # Optional: filter by project
}
sort: [updatedAt_DESC, title_ASC]
skip: 0
take: 10
) {
items {
id
title
createdBy {
id
name
email
}
dashboardUsers {
id
role
user {
id
name
email
}
}
createdAt
updatedAt
}
pageInfo {
hasNextPage
hasPreviousPage
startCursor
endCursor
}
}
}
Parameter Masukan
Parameter |
Tipe |
Diperlukan |
Deskripsi |
companyId |
String! |
✅ Ya |
ID perusahaan untuk memfilter dasbor |
projectId |
String |
Tidak |
ID proyek opsional untuk memfilter dasbor |
Opsi Pengurutan
Nilai Urut |
Deskripsi |
title_ASC |
Urut berdasarkan judul secara ascending |
title_DESC |
Urut berdasarkan judul secara descending |
createdBy_ASC |
Urut berdasarkan pembuat secara ascending |
createdBy_DESC |
Urut berdasarkan pembuat secara descending |
updatedAt_ASC |
Urut berdasarkan waktu pembaruan secara ascending |
updatedAt_DESC |
Urut berdasarkan waktu pembaruan secara descending (default) |
Parameter |
Tipe |
Default |
Deskripsi |
skip |
Int |
0 |
Jumlah item yang akan dilewati |
take |
Int |
20 |
Jumlah item yang akan dikembalikan (maks 100) |
Bidang Respons
Bidang |
Tipe |
Deskripsi |
items |
[Dashboard!]! |
Array objek dasbor |
pageInfo |
PageInfo! |
Informasi pagination |
Dashboard
Bidang |
Tipe |
Deskripsi |
id |
ID! |
Pengidentifikasi unik untuk dasbor |
title |
String! |
Nama tampilan dari dasbor |
createdBy |
User! |
Pengguna yang membuat dasbor |
dashboardUsers |
[DashboardUser!] |
Pengguna yang memiliki akses ke dasbor ini |
createdAt |
DateTime! |
Kapan dasbor dibuat |
updatedAt |
DateTime! |
Kapan dasbor terakhir dimodifikasi |
DashboardUser
Bidang |
Tipe |
Deskripsi |
id |
ID! |
Pengidentifikasi unik untuk pengguna dasbor |
role |
DashboardRole! |
Peran pengguna (PENONTON atau EDITOR) |
user |
User! |
Informasi pengguna |
Kontrol Akses
Visibilitas Dasbor
Anda hanya dapat melihat dasbor di mana Anda:
- Pembuat dasbor
- Diberikan akses secara eksplisit melalui berbagi dasbor
Izin yang Diperlukan
- Otentikasi Diperlukan: Anda harus masuk
- Akses Perusahaan: Anda harus memiliki akses ke perusahaan yang ditentukan
- Akses Proyek: Jika memfilter berdasarkan proyek, Anda harus memiliki akses ke proyek tersebut
Respons Kesalahan
Perusahaan Tidak Ditemukan
{
"errors": [{
"message": "Company not found",
"extensions": {
"code": "COMPANY_NOT_FOUND"
}
}]
}
Proyek Tidak Ditemukan
{
"errors": [{
"message": "Project not found",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Kasus Penggunaan Umum
Daftar Semua Dasbor Perusahaan
query CompanyDashboards {
dashboards(filter: { companyId: "company_123" }) {
items {
id
title
createdBy { name }
}
}
}
Daftar Dasbor Khusus Proyek
query ProjectDashboards {
dashboards(filter: {
companyId: "company_123"
projectId: "proj_456"
}) {
items {
id
title
}
}
}
Daftar Dasbor yang Dipaginasikan
query PaginatedDashboards {
dashboards(
filter: { companyId: "company_123" }
skip: 20
take: 10
) {
items {
id
title
}
pageInfo {
hasNextPage
hasPreviousPage
}
}
}
Praktik Terbaik
Kinerja
- Gunakan pagination untuk kinerja yang lebih baik dengan daftar dasbor yang besar
- Hanya minta bidang yang Anda butuhkan dalam aplikasi Anda
- Pertimbangkan untuk menyimpan daftar dasbor untuk data yang sering diakses
Penyaringan
- Selalu saring berdasarkan perusahaan untuk memastikan isolasi data yang tepat
- Gunakan penyaringan proyek saat bekerja dengan dasbor khusus proyek
- Gabungkan filter untuk mempersempit hasil dengan efisien
Pengurutan
- Pengurutan default adalah berdasarkan
updatedAt_DESC
(yang terbaru diperbarui pertama)
- Gunakan pengurutan judul untuk organisasi alfabetis
- Gabungkan beberapa kriteria urut untuk kebutuhan pemesanan yang kompleks
Operasi Terkait