Xero
Konektor ini menyediakan akses SQL ke backend Xero Anda.
Sebelum memulai
Sebelum menggunakan konektor Xero, lakukan tugas berikut:
- Di project Google Cloud Anda:
- Berikan peran IAM roles/connectors.admin kepada pengguna yang mengonfigurasi konektor.
- Berikan peran IAM berikut ke akun layanan yang ingin Anda gunakan untuk konektor:
roles/secretmanager.viewer
roles/secretmanager.secretAccessor
Akun layanan adalah jenis Akun Google khusus yang dimaksudkan untuk mewakili pengguna non-manusia yang perlu melakukan autentikasi dan diberi otorisasi untuk mengakses data di Google API. Jika tidak memiliki akun layanan, Anda harus membuat akun layanan. Untuk mengetahui informasi selengkapnya, lihat Membuat akun layanan.
- Aktifkan layanan berikut:
secretmanager.googleapis.com
(Secret Manager API)connectors.googleapis.com
(Connectors API)
Untuk memahami cara mengaktifkan layanan, lihat Mengaktifkan layanan.
Jika layanan atau izin ini belum diaktifkan untuk project Anda sebelumnya, Anda akan diminta untuk mengaktifkannya saat mengonfigurasi konektor.
Mengonfigurasi konektor
Mengonfigurasi konektor mengharuskan Anda membuat koneksi ke sumber data (sistem backend). Koneksi bersifat khusus untuk sumber data. Artinya, jika memiliki banyak sumber data, Anda harus membuat koneksi terpisah untuk setiap sumber data. Untuk membuat koneksi, lakukan langkah-langkah berikut:
- Di Konsol Cloud, buka halaman Integration Connectors > Connections, lalu pilih atau buat project Google Cloud.
- Klik + Create new untuk membuka halaman Create Connection.
- Di bagian Lokasi, pilih lokasi untuk koneksi.
- Region: Pilih lokasi dari menu drop-down.
Region yang didukung untuk konektor mencakup:
Untuk mengetahui daftar semua wilayah yang didukung, lihat Lokasi.
- Klik Next.
- Region: Pilih lokasi dari menu drop-down.
- Di bagian Connection Details, selesaikan tindakan berikut:
- Konektor: Pilih Xero dari menu drop-down Konektor yang tersedia.
- Versi konektor: Pilih versi Konektor dari menu drop-down versi yang tersedia.
- Di kolom Connection Name, masukkan nama untuk instance Connection.
Nama koneksi harus memenuhi kriteria berikut:
- Nama koneksi dapat menggunakan huruf, angka, atau tanda hubung.
- Huruf harus kecil.
- Nama koneksi harus dimulai dengan huruf dan diakhiri dengan huruf atau angka.
- Nama koneksi tidak boleh lebih dari 63 karakter.
- Secara opsional, masukkan Deskripsi untuk instance koneksi.
- Akun Layanan: Pilih akun layanan yang memiliki peran yang diperlukan.
- Secara opsional, konfigurasikan Setelan node koneksi:
- Jumlah minimum node: Masukkan jumlah minimum node koneksi.
- Jumlah maksimum node: Masukkan jumlah maksimum node koneksi.
{i>Node<i} adalah unit (atau replika) koneksi yang memproses transaksi. Lebih banyak node diperlukan untuk memproses lebih banyak transaksi untuk sebuah koneksi dan sebaliknya, lebih sedikit node diperlukan untuk memproses transaksi yang lebih sedikit. Untuk memahami pengaruh node terhadap harga konektor Anda, lihat Harga untuk node koneksi. Jika Anda tidak memasukkan nilai apa pun, secara default node minimum akan ditetapkan ke 2 (untuk ketersediaan yang lebih baik) dan node maksimum ditetapkan ke 50.
- Skema: Xero API yang ingin Anda akses sebagai skema database.
- Tenant: Menetapkan organisasi Xero yang akan dihubungkan. Dapat berupa nama atau ID tenant.
- Tingkat Verbositas: Tingkat panjang untuk koneksi, bervariasi dari 1-5. Tingkat panjang yang lebih tinggi akan mencatat semua detail komunikasi (sertifikat permintaan,respons & SSL).
- Secara opsional, klik + Add label untuk menambahkan label ke Connection dalam bentuk key-value pair.
- Klik Next.
-
Di bagian Authentication, masukkan detail autentikasi.
- Pilih Jenis autentikasi, lalu masukkan detail yang relevan.
Jenis autentikasi berikut didukung oleh koneksi Xero:
- Kredensial Klien OAuth 2.0
- Pemberian Kode Autentikasi OAuth 2.0
- Klik Next.
Untuk memahami cara mengonfigurasi jenis autentikasi ini, lihat Mengonfigurasi autentikasi.
- Pilih Jenis autentikasi, lalu masukkan detail yang relevan.
- Tinjau: Tinjau detail koneksi dan autentikasi Anda.
- Klik Create.
Mengonfigurasi autentikasi
Masukkan detail berdasarkan autentikasi yang ingin Anda gunakan.
-
Kredensial Klien OAuth 2.0
- Client-ID: Client ID yang diberikan oleh konektor untuk aplikasi yang Anda buat.
- Rahasia Klien: Secret Manager yang berisi rahasia klien untuk aplikasi terhubung yang Anda buat.
-
Pemberian Kode Autentikasi OAuth 2.0
- Token akses: Token akses yang digunakan untuk mengautentikasi permintaan dengan koneksi berbasis alur kode autentikasi.
- Client-ID: Client-ID yang digunakan untuk meminta token akses.
- Rahasia klien: Rahasia klien yang digunakan untuk meminta token akses.
Entitas, operasi, dan tindakan
Semua Integration Connectors menyediakan lapisan abstraksi untuk objek aplikasi yang terhubung. Anda hanya dapat mengakses objek aplikasi melalui abstraksi ini. Abstraksi ditampilkan kepada Anda sebagai entity, operasi, dan tindakan.
- Entity: Entity dapat dianggap sebagai objek, atau kumpulan properti, dalam
aplikasi atau layanan yang terhubung. Definisi entity berbeda dari konektor ke konektor. Misalnya, pada konektor database, tabel adalah entity, pada konektor server file, folder adalah entity, dan di konektor sistem pesan, antrean adalah entity.
Namun, mungkin saja konektor tidak mendukung atau memiliki entitas, dalam hal ini daftar
Entities
akan kosong. - Operasi: Operasi adalah aktivitas yang dapat Anda lakukan pada entity. Anda dapat melakukan
salah satu operasi berikut pada entitas:
Memilih entity dari daftar yang tersedia akan menghasilkan daftar operasi yang tersedia untuk entity tersebut. Untuk deskripsi operasi secara mendetail, lihat operasi entity tugas Konektor. Namun, jika konektor tidak mendukung salah satu operasi entity, operasi yang tidak didukung tersebut tidak akan dicantumkan dalam daftar
Operations
. - Tindakan: Tindakan adalah fungsi kelas pertama yang tersedia untuk integrasi melalui antarmuka konektor. Tindakan memungkinkan Anda membuat perubahan pada satu atau beberapa entitas, dan bervariasi dari satu konektor ke konektor lainnya. Namun, mungkin saja konektor tidak mendukung tindakan apa pun, dalam hal ini daftar
Actions
akan kosong.
Menggunakan koneksi Xero dalam integrasi
Keterbatasan sistem
Konektor Xero dapat memproses 5 transaksi per detik, per node, dan men-throttle setiap transaksi di luar batas ini. Namun, jumlah transaksi yang dapat diproses oleh konektor Xero juga bergantung pada batasan yang diberlakukan oleh instance Xero. Untuk mengetahui informasi selengkapnya, lihat Batas kapasitas Xero API. Secara default, Integration Connectors mengalokasikan 2 node (untuk ketersediaan yang lebih baik) untuk satu koneksi.
Untuk informasi tentang batas yang berlaku untuk Konektor Integrasi, lihat Batas.
Tindakan
Bagian ini mencantumkan beberapa tindakan yang didukung oleh konektor. Untuk memahami cara mengonfigurasi tindakan, lihat Contoh tindakan.
Tindakan DownloadLampiran
Tindakan ini akan mendownload lampiran.
Parameter input tindakan DownloadLampiran
Nama parameter | Jenis data | Diperlukan | Deskripsi |
---|---|---|---|
Nama file | String | Tidak | Nama lampiran untuk didownload. |
Tabel | String | Tidak | Nama tabel tempat kita harus mendownload lampiran. |
ObjectId | String | Tidak | ObjectId lampiran. |
Parameter output tindakan DownloadLampiran
Tindakan ini akan menampilkan status 200 (OK) jika download berhasil.
Untuk memahami cara mengonfigurasi tindakan DownloadAttachment
,
lihat Contoh tindakan.
Tindakan Upload lampiran
Tindakan ini akan memungkinkan Anda mengupload lampiran.
Parameter input tindakan UploadLampiran
Nama parameter | Jenis data | Diperlukan | Deskripsi |
---|---|---|---|
Nama file | String | Tidak | Nama lampiran yang akan diupload. |
ObjectId | String | Tidak | ObjectId lampiran. |
ContentType | String | Tidak | Jenis konten lampiran. |
Tabel | String | Tidak | Nama tabel tempat lampiran harus diupload. |
Konten | String | Tidak | Konten lampiran |
Parameter output tindakan UploadLampiran
Tindakan ini akan menampilkan status 200 (OK) jika upload objek berhasil.
Untuk memahami cara mengonfigurasi tindakan UploadAttachment
,
lihat Contoh tindakan.
Tindakan ListLampiran
Tindakan ini memungkinkan Anda menampilkan daftar semua lampiran tabel.
Parameter input tindakan ListLampiran
Nama parameter | Jenis data | Diperlukan | Deskripsi |
---|---|---|---|
ObjectId | String | Tidak | ID objek lampiran. |
Tabel | String | Tidak | Nama tabel tempat lampiran harus dicantumkan. |
Parameter output tindakan ListLampiran
Tindakan ini akan menampilkan status 200 (OK) jika penghapusan berhasil.
Untuk memahami cara mengonfigurasi tindakan ListAttachment
,
lihat Contoh tindakan.
Tindakan SendInvoiceMail
Tindakan ini memungkinkan Anda mengirim email ke invoicer.
Masukkan parameter tindakan SendInvoiceMail
Nama parameter | Jenis data | Diperlukan | Deskripsi |
---|---|---|---|
InvoiceId | String | Tidak | ID invoice yang menjadi tujuan pengiriman email. |
Parameter output tindakan SendInvoiceMail
Tindakan ini akan menampilkan status 200 (OK) jika operasi pemindahan berhasil.
Untuk memahami cara mengonfigurasi tindakan SendInvoiceMail
,
lihat Contoh tindakan.
Tindakan UploadFile
Tindakan ini memungkinkan Anda mengupload file.
Parameter input tindakan UploadFile
Nama parameter | Jenis data | Diperlukan | Deskripsi |
---|---|---|---|
Nama | String | Tidak | Nama file yang akan diupload. |
Konten | String | Tidak | Konten file yang akan diupload. |
Parameter output tindakan UploadFile
Tindakan ini akan menampilkan status 200 (OK) jika upload objek berhasil.
Untuk memahami cara mengonfigurasi tindakan UploadFile
,
lihat Contoh tindakan.
Contoh tindakan
Bagian ini menjelaskan cara melakukan beberapa tindakan dalam konektor ini.
Contoh - Download lampiran
Contoh ini mendownload lampiran.
- Dalam dialog
Configure connector task
, klikActions
. - Pilih tindakan
DownloadAttachment
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "Filename": "Xero_Test.txt", "Table": "Contacts", "ObjectId": "6a92a3ab-87cf-4f2f-8beb-ecb4f8ae4d41" }
Jika tindakan tersebut berhasil, parameter respons
connectorOutputPayload
tugas DownloadAttachment
akan memiliki nilai yang mirip dengan yang berikut:
[{ "Success": "True", "Content": "Test content" }]
Contoh - Upload lampiran
Contoh ini mengupload lampiran.
- Dalam dialog
Configure connector task
, klikActions
. - Pilih tindakan
UploadAttachment
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "Filename": "Xero_Test.txt", "ObjectId": "6a92a3ab-87cf-4f2f-8beb-ecb4f8ae4d41", "ContentType": "txt", "Table": "Contacts", "Content": "Test content upload attachment" }
Jika tindakan tersebut berhasil, parameter respons
connectorOutputPayload
tugas UploadAttachment
akan memiliki nilai yang mirip dengan yang berikut:
[{ "Success": null, "AttachmentId": "5ba982a6-9294-45a7-bdda-5f134b0d69d5", "FileName": "Xero_Test.txt", "URL": "https://api.xero.com/api.xro/2.0/Contacts/6a92a3ab-87cf-4f2f-8bwb-fcb4f8ae4d41/Attachments/Xero_Test.txt", "MimeType": "text/plain", "ContentLength": "27", "IncludeOnline": null, "_": "" }, { "Success": null, "AttachmentId": null, "FileName": null, "URL": null, "MimeType": null, "ContentLength": null, "IncludeOnline": null, "_": null }]
Contoh - Daftar lampiran
Contoh ini mencantumkan lampiran dari tabel yang ditentukan.
- Dalam dialog
Configure connector task
, klikActions
. - Pilih tindakan
ListAttachment
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "ObjectId": "6a92a3ab-87cf-4f2f-8beb-ecb4f8ae4d41", "Table": "Contacts" }
Jika tindakan tersebut berhasil, parameter respons
connectorOutputPayload
tugas ListAttachment
akan memiliki nilai yang mirip dengan yang berikut:
[{ "AttachmentId": "5ba982a6-9294-45a7-bdda-5f134b0d69d5", "FileName": "Xero_Limit_Testing.txt", "URL": "https://api.xero.com/api.xro/2.0/Contacts/6a92a3ab-87cf-4f2f-8bwb-fcb4f8ae4d41/Attachments/Xero_Test.txt", "MimeType": "text/plain", "ContentLength": "27" }]
Contoh - Mengirim email faktur
Contoh ini mengirim email untuk faktur yang telah ditentukan.
- Dalam dialog
Configure connector task
, klikActions
. - Pilih tindakan
SendInvoiceMail
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "InvoiceId": "016a64c7-be0b-45a2-acae-13057fdf1566" }
Jika tindakan tersebut berhasil, parameter respons
connectorOutputPayload
tugas SendInvoiceMail
akan memiliki nilai yang mirip dengan yang berikut:
[{ "Success": "true" }]
Contoh - Upload file
Contoh ini mengupload file.
- Dalam dialog
Configure connector task
, klikActions
. - Pilih tindakan
UploadFile
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "Name": "Sample1.txt", "Content": "This is a sample file" }
Jika tindakan tersebut berhasil, parameter respons
connectorOutputPayload
tugas UploadFile
akan memiliki nilai yang mirip dengan yang berikut:
[{ "Success": "true", "FileId": "09039c7b-35a2-473d-aa79-16fe00b8d460", "Name": "Sample1.txt", "FolderId": "36e5115d-a9b6-4c22-baf3-40a8b28ee71d", "MimeType": "text/plain", "Size": 26.0, "User_Id": "c1e33cc9-eb61-45cb-9e46-3ea4121cbdc6", "User_Name": "test_user_1@test.com", "User_FirstName": "John", "User_LastName": "Smith", "User_FullName": "John Smith", "Created": "2023-12-18 17:38:53.01", "Updated": "2023-12-18 17:38:53.01" }]
Contoh operasi entitas
Bagian ini menunjukkan cara melakukan beberapa operasi entity di konektor ini.
Contoh - Menampilkan daftar semua catatan
Contoh ini mencantumkan semua data dalam entity Accounts
.
- Dalam dialog
Configure connector task
, klikEntities
. - Pilih
Accounts
dari daftarEntity
. - Pilih operasi
List
, lalu klik Done. - Secara opsional, di bagian Task Input pada tugas Connectors, Anda dapat
memfilter kumpulan hasil dengan menentukan klausa filter.
Contohnya,
City='Bangalore'
Anda juga dapat menentukan beberapa kondisi filter menggunakan operator logika. Sebagai contoh,City='Bangalore' and region='asia-south2'
Contoh - Dapatkan faktur
Contoh ini mendapatkan invoice dengan ID yang ditentukan dari entity Invoices
.
- Dalam dialog
Configure connector task
, klikEntities
. - Pilih
Invoices
dari daftarEntity
. - Pilih operasi
Get
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik EntityId lalu masukkan
1|016a64c7-be0b-45a2-acae-13057fdf1566
di kolom Default Value.Di sini,
1|016a64c7-be0b-45a2-acae-13057fdf1566
adalah nilai kunci utama dalam entityInvoices
.
Contoh - Membuat invoice
Contoh ini membuat invoice dalam entity Invoices
.
- Dalam dialog
Configure connector task
, klikEntities
. - Pilih
Invoices
dari daftarEntity
. - Pilih operasi
Create
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "Type": "ACCPAY", "ContactName": "ContactName1", "LineItem_Description": "LineItemDescription" }
Jika integrasi berhasil, kolom
connectorOutputPayload
tugas konektor Anda akan memiliki nilai yang mirip dengan berikut ini:{ "Id": "1|7b29efe9-dacd-47bb-85a6-0c0640ce25de" }
Contoh - Memperbarui data
Contoh ini memperbarui data dalam entity AssetTypes
.
- Dalam dialog
Configure connector task
, klikEntities
. - Pilih
AssetTypes
dari daftarEntity
. - Pilih operasi
Update
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik
connectorInputPayload
, lalu masukkan nilai yang mirip dengan berikut di kolomDefault Value
:{ "BookDepreciationSetting_DepreciationRate": 10.0 }
- Klik entityId, lalu masukkan
f8d43548-25b0-4cc3-8f59-d97106974fe8
di kolom Nilai Default.Jika integrasi berhasil, kolom
connectorOutputPayload
tugas konektor Anda akan memiliki nilai yang mirip dengan berikut ini:{ "AssetTypeId": "f8d43548-25b0-4cc3-8f59-d97106974fe8" }
Contoh - Menghapus file
Contoh ini menghapus file dengan ID yang ditentukan dari entity Files
.
- Dalam dialog
Configure connector task
, klikEntities
. - Pilih
Files
dari daftarEntity
. - Pilih operasi
Delete
, lalu klik Done. - Di bagian Task Input pada tugas Connectors, klik entityId, lalu masukkan
421c82f0-38fb-4074-a679-63b04c0d8832
di kolom Default Value.
Setelah Anda membuat koneksi, koneksi tersebut akan tersedia di Apigee Integration dan Application Integration. Anda dapat menggunakan koneksi dalam integrasi melalui tugas Konektor.
- Untuk memahami cara membuat dan menggunakan tugas Konektor di Integrasi Apigee, lihat Tugas konektor.
- Untuk memahami cara membuat dan menggunakan tugas Konektor dalam Application Integration, lihat tugas konektor.
Dapatkan bantuan dari komunitas Google Cloud
Anda dapat memposting pertanyaan dan mendiskusikan konektor ini di komunitas Google Cloud di Cloud Forums.Langkah selanjutnya
- Memahami cara menangguhkan dan melanjutkan koneksi.
- Pahami cara memantau penggunaan konektor.
- Pahami cara melihat log konektor.