Metode API dalam akses awal atau program pratinjau pribadi bersifat pribadi, artinya metode tersebut tidak diekspos dalam library klien standar dan mungkin tidak dapat diakses secara default melalui HTTP. Halaman ini menjelaskan cara mengakses metode pratinjau ini.
Dokumen ini membahas empat opsi untuk menggunakan API pratinjau:
- Library klien statis yang disediakan Google.
- Library klien yang dibuat secara dinamis.
- Permintaan HTTP langsung.
- Library klien kustom Anda sendiri.
Menggunakan library statis atau yang dibuat secara dinamis yang disediakan Google adalah cara yang direkomendasikan untuk menggunakan API.
Library statis
Library klien dalam bahasa seperti Java, Node.js, PHP, dan C# harus di-build dari sumber. Library ini disediakan untuk Anda di download library klien dan sudah memiliki metode pratinjau.
Anda mungkin perlu mengubah konfigurasi dependensi standar untuk menggunakan library lokal ini, bukan mengimpor library klien standar yang tidak memiliki metode pratinjau.
Misalnya, jika Anda menggunakan Node.js dan npm, tambahkan download library klien Node.js (googleapis-classroom-1.0.4.tgz
) sebagai dependensi lokal di package.json
:
{
"name": "nodejs-classroom-example",
"version": "1.0.0",
...
"dependencies": {
"@google-cloud/local-auth": "^2.1.0",
"googleapis": "^95.0.0",
"classroom-with-addons": "file:./googleapis-classroom-1.0.4.tgz"
}
}
Kemudian, dalam aplikasi Anda, wajibkan modul classroom-with-addons
selain
dependensi reguler, dan buat instance layanan classroom
dari
modul tersebut:
const {authenticate} = require('@google-cloud/local-auth');
const {google} = require('googleapis');
const classroomWithAddons = require('classroom-with-addons');
...
const classroom = classroomWithAddons.classroom({
version: 'v1',
auth: auth,
});
...
Library dinamis
Library dalam bahasa seperti Python membuat library klien saat runtime menggunakan Dokumen Discovery dari layanan Discovery.
Dokumen Discovery adalah spesifikasi yang dapat dibaca mesin untuk mendeskripsikan dan menggunakan REST API. Dokumen ini digunakan untuk membuat library klien, plugin IDE, dan alat lain yang berinteraksi dengan Google API. Satu layanan dapat menyediakan beberapa dokumen penemuan.
Dokumen Penemuan untuk layanan Classroom API
(classroom.googleapis.com
) dapat ditemukan di endpoint berikut:
- https://classroom.googleapis.com/$discovery/rest?labels=<PREVIEW_LABEL>&version=v1&key=<PREVIEW_LABEL>
Untuk menghasilkan library Python dan membuat instance layanan Classroom dengan metode add-on, Anda dapat menentukan URL Penemuan dengan layanan, kredensial, dan label yang sesuai:
classroom_service_with_rubrics = googleapiclient.discovery.build(
serviceName="classroom",
version="v1",
credentials=credentials,
static_discovery=False,
discoveryServiceUrl=f"https://classroom.googleapis.com/$discovery/rest?labels=ADD_ONS_ALPHA&key=ABCXYZ")
Lihat dokumentasi library klien Google API individual untuk detail tentang setiap
bahasa. Perbedaan penting untuk menggunakan API pratinjau adalah menentukan
label
yang sesuai. Dalam pratinjau ini, labelnya adalah ADD_ONS_ALPHA
.
Permintaan HTTP
Jika Anda membuat permintaan HTTP tanpa library klien, pastikan Anda menyertakan label (ADD_ONS_ALPHA
) sebagai header X-Goog-Visibilities
.
Misalnya, untuk melihat semua lampiran yang dibuat oleh add-on di bawah postingan, gunakan permintaan curl berikut:
curl \
'https://classroom.googleapis.com/v1/courses/[courseId]/posts/[postId]/addOnAttachments?key=[YOUR_API_KEY]' \
--header 'X-Goog-Visibilities: ADD_ONS_ALPHA' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
API untuk setiap permintaan HTTP dijelaskan dalam dokumentasi REST.
Library klien kustom
Lihat mem-build library klien jika Anda perlu membuat library Anda sendiri. Pembuatan library Anda sendiri berada di luar cakupan panduan ini, tetapi Anda harus meninjau bagian library dinamis untuk mempelajari label pratinjau dan perannya dalam Discovery.