Edited at

kintone REST API について (共通事項編)


はじめに

前回の記事 の続きです。

連載記事一覧

タイトル

0
kintone環境の取得方法 (開発者ライセンス)

1
kintoneの使い方 (データベース編)

2

kintone REST API について (共通事項編) ← 本記事

3
kintone REST API について (GET編)

4
kintone REST API について (POST編)

今回はREST APIを使って、kintoneのデータを扱うための共通事項の説明をします!


共通事項

kintoneのデータを操作するためには、


  • URI/URL

  • メソッド

  • ヘッダー (認証)

  • リクエストパラメータ (GETの場合はURIに追記)

が必要になります。

これはkintoneだけでなく、いわゆる一般的なREST APIで必要な項目になります。

これらはすべて cybozu developer network (devnet) に細かく記述されるけど、

ただ、ページがわかれていたりと初心者には難しいかもなので、

さらりと全体の概要をここで説明します!


URI/URL

kintoneの何のデータを扱うか を示すものです。

例) レコードを1件操作したい / レコードを複数件操作したい / アプリ自体を操作したい

レコードを1件を操作する場合は、

https://(サブドメイン名).cybozu.com/k/v1/record.json

となります。他にも

// レコード複数件

https://(サブドメイン名).cybozu.com/k/v1/records.json

// アプリのフィーム情報
https://(サブドメイン名).cybozu.com/k/v1/app/form/fields.json

などあります!詳しくは上記のdevnetで!


サブドメイン

サブドメインとはURLにあるこの部分です!

image3.png


メソッド

これは データをどうしたいか 示すものです。

kintoneでは以下の4種類用意しています!

GET / POST / PUT / DELETE

(取得 / 新規登録 / 更新 / 削除)


ヘッダー (認証)

認証リクエストパラメータで送るデータ形式 を示すものです。

kintoneでは


  • ログインID/パスワード 認証

  • APIトークン認証

  • (セッション認証)

の3種類があります。

(セッション認証はブラウザのクッキーを利用するので暗黙的認証ですね)


ログインID/パスワード認証

Webブラウザでkintoneへログインする際の「ID」と「パスワード」を以下のようにbase64でエンコードしたものを利用します。

// ID/パスワードが demo/password の場合、「demo:password」をbase64でエンコードしたものを利用します

'X-Cybozu-Authorization: ZGVtbzpwYXNzd29yZA=='


APIトークン認証

アプリごとに発行できるトークンを使った認証です。

発行方法は、

gif3.gif

トークンごとにどんな操作をさせるか制御させることもできます!

(使うメソッドに合わせてチェックをつけると良いですね!)

image2.png

トークン発行後は必ずアプリの設定から更新をしてください!!

そしてAPIトークンを使った認証方法は、

'X-Cybozu-API-Token: 発行したAPIトークン'

と書きます。

また。GET以外のメソッドの場合、何かしらのデータを送るため、

その 送るデータの形式 を指定する必要があります。

データ形式については、ほとんどの場合 JSONを扱うと思うので、

'Content-Type: application/json'

で良いと思います!

※ GETの場合、URLにデータ(パラメータ)を載せるため必要ありません。

これらを組み合わせて、JSだと


let headers = {
'Content-Type': 'application/json',
'X-Cybozu-API-Token': 'hogehoge',
}

とかよく書きますね。これがヘッダー部分です。


リクエストパラメータ

扱いたいデータの具体的な部分 を示します。

よくURIと混同されますが、あっちはアバウトです!(レコード1件!レコード複数件!とか)

こちらはもっと具体的な部分で、

レコード1件の操作であれば「どのレコード1件」か指定する必要があり、

さらにはそもそも「どのアプリの?」も必要です。


現実世界でも一緒です!

「おにぎり買ってきて!」と言われても、

「どこで?」「何味?」となると思います。それと同じ


そしてこれは「使うURI、メソッドによって」変わってきます ← ここ大事!!

レコード1件を取得する場合、必要なパラメータは


  • アプリID (どのアプリから?)

  • レコードID (どのレコードを?)

となります。

アプリIDとレコードIDはレコードの詳細画面を開くとそれぞれURLに記載されています!

image4.png

なので、この例だと


  • アプリID → 126

  • レコードID → 1

となります。JSだと


let params = {
app: 126,
record: 1,
}

とよく書きます。


おわりに

以上がkintone REST APIの共通事項でした。

コマンドラインやJS、Pythonなどいろいろな方法でREST APIを実行する場合でも

これらは基本必要です!

次は 実際にkintoneのデータを取得する部分を説明します!

連載記事一覧

タイトル

0
kintone環境の取得方法 (開発者ライセンス)

1
kintoneの使い方 (データベース編)

2

kintone REST API について (共通事項編) ← 本記事

3
kintone REST API について (GET編)

4
kintone REST API について (POST編)

それでは!≧(+・` ཀ・´)≦