API を使用して、次のいずれかのタイプのアクションを呼び出します。
- データ変更アクション
- 複合アクション(グループ化: 一連のアクションを実行)
グループ化シーケンスで呼び出されるアクションはすべて、データ変更アクションまたはグループ化: 一連のアクションを実行のいずれかである必要があります。
URL
次の形式の URL を使用して、API を呼び出します。
POST https://{appsheet-region}/api/v2/apps/{appId}/tables/{tableName}/Action
各要素の意味は次のとおりです。
変数 | 説明 |
|
サポートされるデータ所在地のリージョンに基づいて API を呼び出すために使用されるドメイン。有効な値は次のとおりです。
注: |
{app-id} |
AppSheet アプリの ID。API を有効にしてアプリ ID を確認する方法については、クラウドベースのサービスの通信で API を有効にするをご覧ください。 |
{table-name) |
テーブルの名前。[Data] > [Tables] を選択し、テーブルの詳細を開いてテーブル名を確認します。 注: テーブル名は URL エンコード形式にする必要があります。 |
アプリケーション アクセスキーを指定するで説明されている方法のいずれかを使用して、アプリケーション アクセスキーを渡す必要があります。たとえば HTTP クエリ文字列の中で渡すときは、次の形式を使用します。
https://{appsheet-region}/api/v2/apps/{appId}/tables/{tableName}/Action?applicationAccessKey=<applicationAccessKey>
リクエストの本文
HTTP リクエストの本文には、以下の要素が含まれます。
- アクション名。
- オプションのプロパティ(
Locale
、Location
、Timezone
など)。 - アクションの適用先となる行のキーフィールド値を指定する
Rows
要素(複数可)。
Date
、Time
、DateTime
、Decimal
、Percent
、Price
のデータ値を検証するときは、Locale が使用されます。たとえば、Locale
が en-US
の場合、日付値は MM/DD/YYYY
形式で入力する必要があります。Locale
が en-GB
の場合、日付値は DD/MM/YYYY
形式で入力する必要があります。
2 つ以上の行に対してアクションを呼び出すときは、各行に対して個別の API 呼び出しでアクションを呼び出すより、すべての行に対して一度の API 呼び出しでアクションを呼び出すほうが効率的です。
Webhook 本文のテンプレートの作成について詳しくは、自動化でテンプレートを使用するをご覧ください。
リクエスト本文の例を次に示します。
{
"Action": "IncrementCountAction",
"Properties": {
"Locale": "en-US",
"Location": "47.623098, -122.330184",
"Timezone": "Pacific Standard Time",
"UserSettings": {
"Option 1": "value1",
"Option 2": "value2"
}
},
"Rows": [
{
"FirstName": "Jan",
"LastName": "Jones"
},
{
"FirstName": "Ian",
"LastName": "Ivans",
}
]
レスポンスの本文
この API により、更新された行は HTTP レスポンスの本文で返されます。
{
"Rows": [
{
"_RowNumber": 10,
"FirstName": "Jan",
"LastName": "Jones",
"Age": 33,
"Department": "Accounting",
"Street": "110 Beach Blvd",
"City": "Newport Beach",
"State": "CA",
"Zip": 92661,
"Home Phone": 4257868765,
"Fax": 4253214432,
"Date Hired": "10/31/2014",
"Arrived": "8:15:25",
"Departed": "18:30:33",
"Last Review": "08/31/2017 23:59:59",
"Rating": 0.9950,
"Salary": 3333.45,
"Image": "http://images6.fanpop.com/image/photos/36300000/Emilia-Clarke-image-emilia-clarke-36399128-460-276.jpg"
},
{
"_RowNumber": 11,
"FirstName": "Ian",
"LastName": "Ivans",
"Age": 22,
"Department": "Payroll",
"Street": "118 E Oceanfront",
"City": "Newport Beach",
"State": "CA",
"Zip": 92661,
"Home Phone": 4257868148,
"Fax": 4253217798,
"Date Hired": "09/30/2014",
"Arrived": "7:40:25",
"Departed": "19:22:33",
"Last Review": "09/30/2017 23:59:59",
"Rating": 0.9750,
"Salary": 4444.45,
"Image": "http://images4.fanpop.com/image/photos/16300000/Christopher-Walken-3-christopher-walken-16367376-720-480.jpg"
}
]
}
レスポンス HTTP のステータス コード
API では以下の HTTP ステータス コードが返されます。
- 200 Success(成功)
- 400 Bad Request(不正なリクエスト)
- The Application Access Key is missing(アプリケーション アクセスキーが指定されていません)。
- The AppId is missing(アプリ ID が指定されていません)。
- The POST body contains invalid data(POST 本文に無効なデータが含まれています)。
- 403 Forbidden(アクセス拒否)
- The Web API is not enabled for this application(Web API がこのアプリケーションで有効になっていません)。
- The Application Access Key is invalid(アプリケーション アクセスキーが無効です)。
- 404 Not Found(ファイル未検出)
- The application specified by the AppId cannot be found(アプリ ID で指定されたアプリケーションが見つかりません)。
- 500 Internal Server Error(内部サーバーエラー)
- An unexpected error occurred(予期しないエラーが発生しました)。
アクションを呼び出した場合の結果
- データ変更アクションがレコードに適用されます。
- レコードがテーブル内で更新されます。
- 自動化ワークフロー(ある場合)が呼び出されます。
- 更新されたレコードが HTTP コンテンツに返されます。