こんにちは、柴田(@shibe97)です。
JavaScript(Node.js)、iOS、Android向けのSDKを公開いたしました。
こちらのSDKを用いることで、microCMSのAPIが扱いやすくなります。
各リポジトリはこちらです。
いずれもオープンソースとなっており、どなたでもご利用いただけます。(Issue、Pull Requestも大歓迎です)
※ 現状ではGET APIのみに対応しています。
JavaScript SDK
こちらのSDKはJavaScript、またはNode.jsからご利用可能です。
npmパッケージとCDNからの配布のどちらも行なっていますので、用途に合わせてお使い分けください。
利用例:
import { createClient } from 'microcms-js-sdk';
// Initialize Client SDK.
const client = createClient({
serviceDomain: "YOUR_DOMAIN",
apiKey: "YOUR_API_KEY",
});
client
.get({
endpoint: 'endpoint',
contentId: 'contentId',
queries: { fields: 'title,publishedAt' },
})
.then((res) => console.log(res))
.catch((err) => console.log(err));
詳しい導入方法はこちらのドキュメントをご覧ください。
iOS SDK
こちらはiOS(Swift)アプリケーション向けのSDKになります。
※ microCMSはヘッドレスCMSであるため、Webだけでなくネイティブアプリからのご利用も可能です。
本SDKは Swift Package Manager にて配布しています。
利用例:
let client = MicrocmsClient(
serviceDomain: "YOUR_DOMAIN",
apiKey: "YOUR_API_KEY",
)
let params: [MicrocmsParameter] = [
.fields(["id"]),
]
client.get(
endpoint: "API_ENDPOINT",
contentId: "CONTENT_ID",
params: params) { result in
switch result {
case .success(let object):
print("[SUCCESS]: \(object)")
case .failure(let error):
print("[ERROR]: \(error)")
}
}
詳しい導入方法はこちらのドキュメントをご覧ください。
Android SDK
こちらはAndroid(Kotlin)アプリケーション向けのSDKになります。
※ microCMSはヘッドレスCMSであるため、Webだけでなくネイティブアプリからのご利用も可能です。(大事なことなので2回言います)
本SDKは Maven Central にて配布しています。
利用例:
val client = Client(
serviceDomain = "YOUR_DOMAIN",
apiKey = "YOUR_API_KEY",
)
client.get(
"API_ENDPOINT",
"CONTENT_ID",
listOf(Fields("id")) //some params
) { result ->
result.onSuccess { json -> Log.d("microCMS example", json.getString("publishedAt")) }
}
詳しい導入方法はこちらのドキュメントをご覧ください。
APIプレビューにコード例を表示
今回のSDK公開に伴い、microCMS管理画面内のAPIプレビューにてSDKを利用したコード例を表示するようにしました。
選択中のエンドポイント、コンテンツID、GETパラメータに応じて動的に変わるようになっておりますので、是非ご利用ください。
おわりに
JavaScript(Node.js)、iOS、Android向けのSDKのご紹介をしました。
今後、サーバーサイド言語(PHP、Java、Goなど)向けのSDKも公開予定なのでご期待ください。
-----
microCMSは日々改善を進めています。
ご意見・ご要望は管理画面右下のチャット、公式Twitter、お問い合わせからお気軽にご連絡ください!
引き続きmicroCMSをよろしくお願いいたします!