Pendahuluan
Modul IntegrationCollections menyimpan data yang digunakan untuk mengintegrasikan berbagai layanan dan sistem.
Untuk mengintegrasikan layanan pihak ketiga, Anda perlu membuat dan mengonfigurasi koleksi terlebih dahulu.
Informasi lebih lanjut tentang antarmuka pengguna modul ini https://doc.oneentry.cloud/docs/category/integration-collections
🎯 Apa yang dilakukan modul ini?
Modul IntegrationCollections memungkinkan Anda untuk membaca dan mengelola koleksi — tabel terstruktur dari catatan yang digunakan untuk mengintegrasikan OneEntry dengan layanan dan sistem eksternal. Setiap koleksi didefinisikan oleh sebuah formulir (skema); setiap catatan (baris) menyimpan formData yang dikirimkan.
Tentukan sebuah koleksi dan formulirnya di panel admin, kemudian ambil, buat, perbarui, dan hapus barisnya dari aplikasi Anda.
🚀 Memulai dengan Cepat
Inisialisasi modul dari defineOneEntry:
const { IntegrationCollections } = defineOneEntry( "your-project-url", { "token": "your-app-token" });
Ambil semua koleksi dan baca bidang-bidangnya:
// Returns an array of collections (langCode defaults to the configured language).
const collections = await IntegrationCollections.getICollections("en_US");
collections.forEach((collection) => {
console.log(collection.id, collection.identifier, collection.formId);
});
✨ Konsep Kunci
Koleksi vs. Baris
- Koleksi (
ICollectionEntity) — wadah/skema. Ini merujuk pada sebuah formulir (formId) dan satu set atribut, serta membawa informasi yang dilokalisasi. - Baris (
ICollectionRow) — sebuah catatan tunggal di dalam koleksi, menyimpanformData(sebuah array dari{ marker, type, value }), cap waktu, dan entitas terkait opsional (entityType/entityId).
Struktur Koleksi
{
id: 1,
identifier: 'collection1',
formId: 1234,
localizeInfos: { title: 'Admins text' },
attributeSetId: 1234,
selectedAttributeMarkers: 'collection_marker'
}
Struktur Baris
{
id: 1,
createdDate: '2025-06-06T19:08:54.616Z',
updatedDate: '2025-06-06T19:08:54.616Z',
collectionId: 1,
formData: [
{ marker: 'name_1', type: 'string', value: 'Value' }
],
entityType: null,
entityId: null,
attributeSetIdentifier: null
}
Membuat atau memperbarui baris
Kirimkan objek formulir (ICollectionFormObject) dengan pengidentifikasi formulir dan nilai bidang:
const body = {
formIdentifier: 'collection-form',
formData: [
{ marker: 'collection_marker', type: 'string', value: 'Collection marker' }
]
};
await IntegrationCollections.createICollectionRow('collection1', body);
📋 Apa yang Perlu Anda Ketahui
Koleksi didefinisikan di panel admin
Koleksi dan formulirnya dibuat dan dikonfigurasi di panel admin OneEntry. SDK digunakan untuk membaca koleksi dan mengelola barisnya (buat / perbarui / hapus).
Menghapus baris memerlukan izin
deleteICollectionRowByMarkerAndId() memerlukan hak collections.row.delete; tanpa itu, penghapusan akan gagal.
📊 Tabel Referensi Cepat
| Metode | Deskripsi |
|---|---|
| getICollections() | Ambil semua koleksi. |
| getICollectionById() | Ambil satu koleksi berdasarkan id. |
| getICollectionRowsById() | Ambil semua baris dari sebuah koleksi berdasarkan id koleksi. |
| getICollectionRowsByMarker() | Ambil semua baris dari sebuah koleksi berdasarkan penanda. |
| getICollectionRowByMarkerAndId() | Ambil satu baris berdasarkan penanda koleksi dan id baris. |
| validateICollectionMarker() | Periksa apakah penanda koleksi ada. |
| createICollectionRow() | Buat sebuah baris dalam koleksi. |
| updateICollectionRow() | Perbarui sebuah baris dalam koleksi. |
| deleteICollectionRowByMarkerAndId() | Hapus sebuah baris koleksi (memerlukan hak collections.row.delete). |
❓ Pertanyaan Umum (FAQ)
Di mana koleksi dibuat?
Koleksi dan formulirnya dibuat dan dikonfigurasi di panel admin OneEntry. SDK digunakan untuk membaca koleksi dan mengelola barisnya (buat / perbarui / hapus).
Apa perbedaan antara koleksi dan baris koleksi?
Sebuah koleksi adalah definisi tabel (skema formulir dan metadata-nya). Sebuah baris koleksi adalah catatan tunggal yang disimpan dalam koleksi tersebut, membawa nilai formData-nya.
🎓 Praktik Terbaik
- Tentukan koleksi di panel admin - SDK membaca koleksi dan mengelola barisnya, bukan skemanya.
- Validasi penanda sebelum digunakan - Gunakan
validateICollectionMarker()untuk mengonfirmasi bahwa penanda koleksi ada. - Sesuaikan bidang formulir dengan skema - Penanda/tipe
formDataharus sesuai dengan formulir koleksi. - Pastikan izin hapus -
deleteICollectionRowByMarkerAndId()memerlukan hakcollections.row.delete.
🔗 Dokumentasi Terkait
- Modul Formulir - Pahami struktur formulir yang digunakan oleh koleksi
- Modul FileUploading - Unggah file dan simpan URL di baris koleksi
- Modul Produk - Tautkan baris koleksi ke produk
- Modul Halaman - Tautkan baris koleksi ke halaman