キャッシュによる高速化
このオプションを利用すると、CDNにキャッシュし、
レスポンスを高速化することができます。
20列x2000行の場合、10回の平均では約5倍はやくなります。
- キャッシュなし: 平均1.6s(最大1.8s/最小0.8s)
- キャッシュあり: 平均0.3s(最大0.8s/最小0.2s)
キャッシュに保存する時間は1分から30日まで選択できます。
なお、キャッシュを有効にすると公開状態になるため、
ドメイン制限などが無効になります。
利用する際は、機密性の高い情報が含まれていないか確認ください。
また、古いキャッシュはAPIの更新時に削除されますが、
完全に削除されるまですこし時間がかかること、ご留意ください。
読み込み開始位置の変更
デフォルトでは、1列目/1行目から読み込みを開始しますが、
このオプションを利用すると、任意の位置から読み込みを開始できます。

この例では3列目/2行目から開始し、黄色い背景の部分がAPI化する対象となります。

1行の場合は配列にしない
一行のみのシートの場合、APIのレスポンスを配列ではなくオブジェクトで受け取りたいときは、
このオプションを有効にし、再度更新し直してください。

オプションがOFFの場合は配列ですが、
[
{
"id": 1,
"name": "Alice",
"age": 20,
"favorites": ["cake", "sushi"]
}
]
オプションをONにすると、オブジェクトの形式になります。
{
"id": 1,
"name": "Alice",
"age": 20,
"favorites": ["cake", "sushi"]
}
オプションがONの場合でも、2行以上ある場合は配列になります。
ドット(.)区切りのフィールドをネストに変換
APIのレスポンスをネストさせたいときは、
このオプションを有効にし、再度更新し直してください。

オプションをONにすると、ドット(.)区切りのフィールドがネストしたオブジェクトに変換されます。
この例では、user.name
とuser.age
がオブジェクトに変換しています。
オプションがOFFの場合。
[
{
"id": 1,
"user.name": "Alice",
"user.age": 20,
"favorites": ["cake", "sushi"]
},
{
"id": 2,
"user.name": "Bob",
"user.age": 300,
"favorites": ["coffee"]
}
]
オプションがONの場合。
[
{
"id": 1,
"user": { "name": "Alice", "age": 20 },
"favorites": ["cake", "sushi"]
},
{
"id": 2,
"user": { "name": "Bob", "age": 300 },
"favorites": ["coffee"]
}
]
また、フィールド名の代わりにインデックスを利用すると、 オブジェクトの配列に変換することができます。
id | user.0.name | user.0.age | user.1.name | user.1.age |
---|---|---|---|---|
1 | Alice | 20 | Bob | 30 |
[
{
"id": 1,
"user": [
{ "name": "Alice", "age": 20 },
{ "name": "Bob", "age": 30 }
]
}
]
自動更新
スプレッドシートが更新された時に、APIを自動で更新したいときは、 このオプションをONにしてください。
自動更新オプションでは、3分毎に変更時刻のチェックをしています。
また、ファイル単位の通知ため、更新していないシートのAPIが更新される場合があります。
更新の確認には、Google Drive APIを利用しています。
共有設定の権限によって、取得できる更新時間の種類が異なります。
Googleフォームと連携した場合など、ブラウザ以外で変更する場合には、
編集権限を付与いただくと広い範囲で更新のチェックを行います。
行数をIDとして追加
このオプションをONにすると、
id
フィールドが追加され、行数が設定されます。
Googleフォームのように自動で追記されるようなスプレッドシートなど、
A列に追加しにくい場合、このオプションを利用すると行数をIDとして扱うことができます。
オプションがOFFの場合。
[{ "user": "Alice" }, { "user": "Bob" }]
オプションがONの場合。
[
{ "id": 1, "user": "Alice" },
{ "id": 2, "user": "Bob" }
]
リスト全体をオブジェクトに変換
このオプションを有効にすると、リスト全体が1つのオブジェクトに変換されます。
多言語化(i18n対応)時の翻訳メッセージの一覧など、
各言語ごとにグループ化して受け取りたい場合に効果的です。
id | ja | en | ko |
---|---|---|---|
hello | こんにちは | Hello | 안녕하세요 |
good_bye | さようなら | good bye | 안녕 |
good_morning | おはよう | good morning | 안녕 |
good_night | おやすみ | good night | 잘자요 |
・サンプルのスプレッドシート
サンプル(翻訳)
そのまま変換
そのまま変換
を指定した場合、各行がA列目の値配下に設定されます。
{
"hello": {
"ja": "こんにちは",
"en": "Hello",
"ko": "안녕하세요"
},
"good_bye": {
"ja": "さようなら",
"en": "good bye",
"ko": "안녕"
},
"good_morning": {
"ja": "おはよう",
"en": "good morning",
"ko": "안녕"
},
"good_night": {
"ja": "おやすみ",
"en": "good night",
"ko": "잘자요"
}
}
転置して変換
転置して変換
を指定した場合、各列が1列目の値配下に設定されます。
{
"ja": {
"hello": "こんにちは",
"good_bye": "さようなら",
"good_morning": "おはよう",
"good_night": "おやすみ"
},
"en": {
"hello": "Hello",
"good_bye": "good bye",
"good_morning": "good morning",
"good_night": "good night"
},
"ko": {
"hello": "안녕하세요",
"good_bye": "안녕",
"good_morning": "안녕",
"good_night": "잘자요"
}
}
値が空のフィールドを除く
このオプションを有効にすると、セルが空のフィールドが含まれなくなります。
以下のスプレッドシートの場合、
id | name | small | large |
---|---|---|---|
1 | AAA | 100 | 200 |
2 | BBB | 300 | |
3 | 400 |
OFFのままだと、すべてのフィールドを含みますが、
[
{ "id": 1, "name": "AAA", "small": 100, "large": 200 },
{ "id": 2, "name": "BBB", "small": 300, "large": null },
{ "id": 3, "name": null, "small": null, "large": 400 }
]
ONの場合、空でないフィールドのみ表示するようになります。
[
{ "id": 1, "name": "AAA", "small": 100, "large": 200 },
{ "id": 2, "name": "BBB", "small": 300 },
{ "id": 3, "large": 400 }
]
また、「ドット(.)区切りのフィールドをネストに変換」と併用も可能です。
id | item.name | item.size.small | item.size.large |
---|---|---|---|
1 | AAA | 100 | 200 |
2 | BBB | 300 | |
3 | CCC | 400 | |
4 | DDD |
[
{
"id": 1,
"item": {
"name": "AAA",
"size": { "small": 100, "large": 200 }
}
},
{
"id": 2,
"item": {
"name": "BBB",
"size": { "small": 300 }
}
},
{
"id": 3,
"item": {
"name": "CCC",
"size": { "large": 400 }
}
},
{
"id": 4,
"item": { "name": "DDD" }
}
]
なお、以下の場合には対応しておりません。
- 「リスト全体をオブジェクトに変換」がON
- 「1行の場合は配列にしない」がON