はじめに
こちらの記事はCURLで基本的なkintone REST APIを叩く方法を紹介します。
事前知識として、kintoneアプリの作り方、フィールドコードの編集方法、APIトークンの生成方法、アプリIDの確認方法、レコードIDの確認方法、CURLの叩き方を知ってる必要があります。
事前準備
文字列(1行)、数値、ドロップダウンで構成された下記のようなアプリを用意します。
フィールドコードはフィールド名と同じにしました。この例では、アプリIDは111が設定されているとします。
CURLで叩いてみる
レコード登録
NameにAndrew, Ageに77, SkillにPython を含めたデータを登録する例:
curl -X POST 'https://{subdomain}.cybozu.com/k/v1/record.json' \
-H 'X-Cybozu-API-Token: {API_TOKEN}' \
-H 'Content-Type: application/json' \
-d '{"app": 111,"record": {"Name":{"value":"Andrew"},"Age":{"value":77},"Skill":{"value":"Python"}}}'
APIの情報はこちら: レコードの登録
レコード取得(1件)
レコードIDが3のレコード情報を取得する例:
curl -G 'https://{subdomain}.cybozu.com/k/v1/record.json?app=111&id=3' \
-H 'X-Cybozu-API-Token: {API_TOKEN}'
APIの情報はこちら: レコードの取得(1件)
レコード取得(クエリを指定して複数件取得)
SkillにRubyが設定されているレコードを複数取得し、かつレスポンスに含むフィールド情報をNameとAgeだけにする例:
curl -G 'https://{subdomain}.cybozu.com/k/v1/records.json' \
-H 'X-Cybozu-API-Token: {API_TOKEN}' \
--data-urlencode 'app=111' \
--data-urlencode 'fields[0]=Name' \
--data-urlencode 'fields[1]=Age' \
--data-urlencode 'query=Skill in ("Ruby")'
APIの情報はこちら: レコードの一括取得(クエリで条件を指定)
最後に
複数レコードの取得のクエリに指定方法はトリッキーかもしれませんが、上記の例を参考にし、必要なクエリを投げてみましょう!
うまくリクエストが通らない場合、CURLのオプションに --verbose を追加し、リクエスト内容を確認しながらデバッグしてみましょう。