Anda sedang melihat dokumentasi Apigee Edge.
Buka
dokumentasi Apigee X. info
Pada fase Desain, Anda menentukan persyaratan untuk API. Sebagai desainer API, Anda merencanakan layanan yang ingin diekspos kepada konsumen, dan mendesain API untuk mengakses layanan tersebut. Anda membuat salah satu dokumen berikut untuk merekam persyaratan API:
- Dokumen OpenAPI
- Skema GraphQL
Bagian berikut memberikan informasi selengkapnya tentang dokumen OpenAPI dan GraphQL serta perannya dalam siklus proses API Anda. Untuk perbandingan kedua opsi desain API, lihat perbandingan REST dan GraphQL dalam postingan blog ini.
Apa itu Spesifikasi OpenAPI?
"OpenAPI Initiative (OAI) berfokus pada pembuatan, pengembangan, dan promosi Format Deskripsi API yang netral vendor berdasarkan Spesifikasi Swagger." Untuk informasi lebih lanjut tentang Inisiatif OpenAPI, lihat https://openapis.org.
Dokumen OpenAPI menggunakan format standar untuk mendeskripsikan RESTful API. Dokumen OpenAPI ditulis dalam format JSON atau YAML, sehingga dapat dibaca oleh mesin, tetapi juga mudah dibaca dan dipahami oleh manusia. Spesifikasi OpenAPI memungkinkan deskripsi formal elemen API seperti jalur dasarnya, jalur dan kata kerja, header, parameter kueri, tipe materi, model respons, dan banyak lagi. Selain itu, dokumen OpenAPI biasanya digunakan untuk membuat dokumentasi API.
Berikut ini fragmen dari dokumen OpenAPI yang menjelaskan contoh hello world sederhana Apigee. Untuk mengetahui informasi selengkapnya, lihat Spesifikasi OpenAPI di GitHub.
openapi: 3.0.0
info:
description: OpenAPI Specification for the Apigee mock target service endpoint.
version: 1.0.0
title: Mock Target API
paths:
/:
get:
summary: View personalized greeting
operationId: View a personalized greeting
description: View a personalized greeting for the specified or guest user.
parameters:
- name: user
in: query
description: Your user name.
required: false
schema:
type: string
responses:
"200":
description: Success
/help:
get:
summary: Get help
operationId: Get help
description: View help information about available resources in HTML format.
responses:
"200":
description: Success
...
Banyak sumber informasi yang sangat baik tentang Spesifikasi OpenAPI yang tersedia. Tempat yang tepat untuk memulai adalah situs OpenAPI Initiative, tempat Anda dapat menemukan ringkasan, blog, dan link ke Spesifikasi OpenAPI. Lihat Spesifikasi untuk deskripsi mendetail tentang elemen skema dan jenis data.
Ada sejumlah dokumen OpenAPI contoh JSON dan YAML yang dapat Anda download dari repositori Spesifikasi OpenAPI.
Apa itu skema GraphQL?
Skema GraphQL menjelaskan data yang tersedia di API untuk dibuat kueri oleh klien.
Manfaat menggunakan GraphQL meliputi:
- Endpoint tunggal menyediakan akses ke semua kolom untuk operasi tertentu
- Bahasa kueri yang kuat, yang disebut {i>Schema Definition Language<i}, memungkinkan Anda untuk mengakses data yang Anda butuhkan dengan tepat, mencegah pengambilan data yang berlebihan atau kurang-pengambilan data
- Pemrosesan kueri terjadi secara paralel
Untuk mengetahui informasi selengkapnya tentang GraphQL, lihat graphql.org.
Berikut adalah contoh skema GraphQL yang menentukan titik entri data (jenis Kueri), operasi tulis yang tersedia (jenis Mutasi), dan jenis data.
type Query {
Greeting: String
students: [Student]
}
type Mutation {
createStudent(firstName: String!, lastName: String!): Student!
}
type Subscription {
newStudent: Student!
}
type Student {
Id: ID!
firstName: String!
lastName: String!
password: String!
collegeId: String!
}
Anda dapat membuat kueri skema GraphQL untuk menampilkan data yang tepat yang Anda perlukan sebagai payload JSON.
Apa yang terjadi jika saya mengubah dokumen?
Setiap dokumen OpenAPI atau GraphQL berfungsi sebagai sumber kebenaran di seluruh siklus proses API. Dokumen yang sama digunakan di setiap fase dalam siklus proses API, mulai dari pengembangan, publikasi, hingga pemantauan.
Saat Anda mengedit atau menghapus dokumen, hal tersebut akan berdampak pada:
- Jika mengedit dokumen, Anda perlu mengedit artefak terkait secara manual, termasuk proxy API dan produk API apa pun yang mengekspos resource-nya, serta membuat ulang dokumentasi referensi API untuk mencerminkan perubahan yang diterapkan dalam dokumen.
- Jika menghapus dokumen, Anda harus menghapus artefak terkait secara manual termasuk proxy API dan mengedit produk API apa pun untuk menghapus resource terkait, serta membuat ulang dokumentasi referensi API untuk mencerminkan penghapusan dokumen dan resource-nya.
Apa yang terjadi jika saya membuat proxy API dari dokumen OpenAPI?
Di Edge, Anda dapat membuat proxy API dari dokumen OpenAPI. Hanya dengan beberapa klik, Anda akan memiliki proxy API dengan jalur, parameter, alur bersyarat, dan endpoint target yang dihasilkan secara otomatis. Kemudian, Anda dapat menambahkan fitur seperti keamanan OAuth, pembatasan kapasitas, dan cache.
Anda bisa membuat proxy API dari dokumen OpenAPI, seperti yang dijelaskan di bagian berikut:
- Dari daftar spesifikasi, seperti yang dijelaskan dalam Membuat proxy API dari spesifikasi dalam daftar spesifikasi. Catatan: Daftar spesifikasi tidak tersedia di Classic Edge.
- Dari pengelola proxy API dengan memanggil Wizard Build Proxy dan memilih untuk membuat proxy API dari dokumen OpenAPI, seperti yang dijelaskan dalam Menggunakan Spesifikasi OpenAPI untuk membuat proxy.
Saat memublikasikan API, Anda akan mengambil snapshot dokumen OpenAPI untuk membuat dokumentasi referensi API. Snapshot tersebut mewakili revisi tertentu pada dokumen deskripsi di penyimpanan spesifikasi.