kintone REST APIのスキーマ情報を取得する

指定したkintone REST APIのスキーマ情報を取得します。

目次

HTTPメソッドGET
URLhttps://sample.cybozu.com/k/v1/apis/API_ID.json

パスパラメーター

パラメーター名 説明
APIのID スキーマ情報を取得するAPIのID
IDはkintone REST APIの一覧を取得するAPIのapisのキー名です。
kintone REST APIの一覧を取得する
たとえば、1件のレコードを取得するAPI(/k/v1/record.json [GET])の場合、キー名は「record/get」でURLのパスは「https://sample.cybozu.com/k/v1/apis/record/get.json」です。

リクエストパラメーター

なし

レスポンスプロパティ

スペース・ピープル・ゲストスペース機能を無効にしている場合でも、それらのAPIの情報を取得します。

プロパティ名 型 説明
id 文字列 kintone REST APIのAPIのID
baseUrl 文字列 APIを実行するときの基本となるURL
path 文字列 APIのパス
baseUrlとpathを結合した値がAPIのURLです。
httpMethod 文字列 APIを実行するためのHTTPメソッド
request オブジェクト APIリクエストのスキーマ情報
JSON Schemaで表現されます。
response オブジェクト APIレスポンスのスキーマ情報
JSON Schemaで表現されます。
schemas オブジェクト APIで共通で使用するスキーマ情報一覧
プロパティ名は、スキーマ情報を表す文字列です。
JSON Schemaの$refで参照します。

必要なアクセス権

なし

認証情報は不要です。

JSON Schemaについて

上記のrequest、response、schemasで使用するJSON Schemaは、draft v4を基準とします。
coreとvalidationを使用し、hyper schemaは使用しません。

typeとformat

kintoneのパラメーターの制限を表現するために、JSON Schemaで定義されているformatに加えて、次のformatを定義しています。
kintone独自のformatは、今後追加される可能性があります。

type format 説明
string long -9,223,372,036,854,775,808~9,223,372,036,854,775,807の範囲の整数型
string locale "", "en", "ja" or "zh" の文字列
string boolean "true" or "false" の文字列
string email Email形式の文字列
string number 実数型
string query kintoneクエリ記法
クエリ形式の詳細は次のページを参照してください。
kintone APIのクエリの書き方の基本
string date-time ISO形式の日時文字列
string timezone タイムゾーンを示す文字列

ファイルAPIのSchema取得

ファイルアップロードAPI

JSON Schemaのrequestオブジェクトには、kintoneの内部の型情報が入ります。
実際のリクエストは、multipart/form-data形式で送信してください。

ファイルダウンロードAPI

JSON Schemaのresponseオブジェクトは、空が返ります。
実際のリクエストではファイルがダウンロードされます。

サンプル

1
https://sample.cybozu.com/k/v1/apis/record/get.json

なし

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
{
  "id": "records/get",
  "baseUrl": "https://sample.cybozu.com/k/v1/",
  "path": "records.json",
  "httpMethod": "GET",
  "request": {
    "type": "object",
    "required": ["app"],
    "properties": {
      "app": {
        "type": "string",
        "format": "long"
      },
      "fields": {
        "type": "array",
        "items": {
          "type": "string"
        }
      },
      "query": {
        "type": "string",
        "format": "query"
      },
      "totalCount": {
        "format": "boolean",
        "type": "string"
      }
    }
  },
  "response": {
    "type": "object",
    "properties": {
      "records": {
        "type": "array",
        "items": {
          "type": "object",
          "patternProperties": {
            "*": {
              "anyOf": [
                { "$ref": "CalcSimpleValue" },
                { "$ref": "CategorySimpleValue" }
                // ...
              ],
              "type": "object"
            }
          }
        }
      },
      "totalCount": {
        "format": "long",
        "type": "string"
      }
    }
  },
  "schemas": {
    "SingleLineTextSimpleValue": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": ["CATEGORY", "CREATED_TIME"]
        },
        "value": { "type": "string" }
      }
    },
    "MultipleLineTextSimpleValue": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "enum": ["CATEGORY", "CREATED_TIME"]
        },
        "value": { "type": "string" }
      }
    }
    // 省略
  }
}

kintone.api()の詳細は、次のページを参照してください。
kintone REST APIリクエストを送信する

1
await kintone.api(kintone.api.url('/k/v1/apis/record/get.json'), 'GET', {});

ご利用の環境によって、curlのフォーマットは異なる場合があります。
詳細は、次のページを参照してください。
curlコマンドでkintone REST APIを実行してみよう/3.API実行

1
curl -X GET 'https://sample.cybozu.com/k/v1/apis/record/get.json'

補足

次のAPIのスキーマ情報は取得できません。

公式コミュニティ

kintone開発者同士で質問や知見を共有し、学び合うことができます。