{ "service": { "actions": { "BatchGetItem": { "request": { "operation": "BatchGetItem" } }, "BatchWriteItem": { "request": { "operation": "BatchWriteItem" } }, "CreateTable": { "request": { "operation": "CreateTable" }, "resource": { "type": "Table", "identifiers": [ { "target": "Name", "source": "response", "path": "TableDescription.TableName" } ], "path": "TableDescription" } } }, "has": { "Table": { "resource": { "type": "Table", "identifiers": [ { "target": "Name", "source": "input" } ] } } }, "hasMany": { "Tables": { "request": { "operation": "ListTables" }, "resource": { "type": "Table", "identifiers": [ { "target": "Name", "source": "response", "path": "TableNames[]" } ] } } } }, "resources": { "Table": { "identifiers": [ { "name": "Name", "memberName": "TableName" } ], "shape": "TableDescription", "load": { "request": { "operation": "DescribeTable", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] }, "path": "Table" }, "actions": { "Delete": { "request": { "operation": "DeleteTable", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } }, "DeleteItem": { "request": { "operation": "DeleteItem", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } }, "GetItem": { "request": { "operation": "GetItem", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } }, "PutItem": { "request": { "operation": "PutItem", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } }, "Query": { "request": { "operation": "Query", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } }, "Scan": { "request": { "operation": "Scan", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } }, "Update": { "request": { "operation": "UpdateTable", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] }, "resource": { "type": "Table", "identifiers": [ { "target": "Name", "source": "identifier", "name": "Name" } ], "path": "TableDescription" } }, "UpdateItem": { "request": { "operation": "UpdateItem", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } } }, "waiters":{ "Exists": { "waiterName": "TableExists", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] }, "NotExists": { "waiterName": "TableNotExists", "params": [ { "target": "TableName", "source": "identifier", "name": "Name" } ] } } } } }