1{
2  "version":"2.0",
3  "metadata":{
4    "apiVersion":"2018-08-01",
5    "endpointPrefix":"rds-data",
6    "jsonVersion":"1.1",
7    "protocol":"rest-json",
8    "serviceFullName":"AWS RDS DataService",
9    "serviceId":"RDS Data",
10    "signatureVersion":"v4",
11    "signingName":"rds-data",
12    "uid":"rds-data-2018-08-01"
13  },
14  "operations":{
15    "BatchExecuteStatement":{
16      "name":"BatchExecuteStatement",
17      "http":{
18        "method":"POST",
19        "requestUri":"/BatchExecute",
20        "responseCode":200
21      },
22      "input":{"shape":"BatchExecuteStatementRequest"},
23      "output":{"shape":"BatchExecuteStatementResponse"},
24      "errors":[
25        {"shape":"SecretsErrorException"},
26        {"shape":"HttpEndpointNotEnabledException"},
27        {"shape":"DatabaseErrorException"},
28        {"shape":"DatabaseUnavailableException"},
29        {"shape":"TransactionNotFoundException"},
30        {"shape":"InvalidSecretException"},
31        {"shape":"ServiceUnavailableError"},
32        {"shape":"ForbiddenException"},
33        {"shape":"DatabaseNotFoundException"},
34        {"shape":"AccessDeniedException"},
35        {"shape":"BadRequestException"},
36        {"shape":"StatementTimeoutException"},
37        {"shape":"InternalServerErrorException"}
38      ],
39      "documentation":"<p>Runs a batch SQL statement over an array of data.</p> <p>You can run bulk update and insert operations for multiple records using a DML statement with different parameter sets. Bulk operations can provide a significant performance improvement over individual insert and update operations.</p> <note> <p>If a call isn't part of a transaction because it doesn't include the <code>transactionID</code> parameter, changes that result from the call are committed automatically.</p> <p>There isn't a fixed upper limit on the number of parameter sets. However, the maximum size of the HTTP request submitted through the Data API is 4 MiB. If the request exceeds this limit, the Data API returns an error and doesn't process the request. This 4-MiB limit includes the size of the HTTP headers and the JSON notation in the request. Thus, the number of parameter sets that you can include depends on a combination of factors, such as the size of the SQL statement and the size of each parameter set.</p> <p>The response size limit is 1 MiB. If the call returns more than 1 MiB of response data, the call is terminated.</p> </note>"
40    },
41    "BeginTransaction":{
42      "name":"BeginTransaction",
43      "http":{
44        "method":"POST",
45        "requestUri":"/BeginTransaction",
46        "responseCode":200
47      },
48      "input":{"shape":"BeginTransactionRequest"},
49      "output":{"shape":"BeginTransactionResponse"},
50      "errors":[
51        {"shape":"SecretsErrorException"},
52        {"shape":"HttpEndpointNotEnabledException"},
53        {"shape":"DatabaseErrorException"},
54        {"shape":"DatabaseUnavailableException"},
55        {"shape":"TransactionNotFoundException"},
56        {"shape":"InvalidSecretException"},
57        {"shape":"ServiceUnavailableError"},
58        {"shape":"ForbiddenException"},
59        {"shape":"DatabaseNotFoundException"},
60        {"shape":"AccessDeniedException"},
61        {"shape":"BadRequestException"},
62        {"shape":"StatementTimeoutException"},
63        {"shape":"InternalServerErrorException"}
64      ],
65      "documentation":"<p>Starts a SQL transaction.</p> <note> <p>A transaction can run for a maximum of 24 hours. A transaction is terminated and rolled back automatically after 24 hours.</p> <p>A transaction times out if no calls use its transaction ID in three minutes. If a transaction times out before it's committed, it's rolled back automatically.</p> <p>DDL statements inside a transaction cause an implicit commit. We recommend that you run each DDL statement in a separate <code>ExecuteStatement</code> call with <code>continueAfterTimeout</code> enabled.</p> </note>"
66    },
67    "CommitTransaction":{
68      "name":"CommitTransaction",
69      "http":{
70        "method":"POST",
71        "requestUri":"/CommitTransaction",
72        "responseCode":200
73      },
74      "input":{"shape":"CommitTransactionRequest"},
75      "output":{"shape":"CommitTransactionResponse"},
76      "errors":[
77        {"shape":"SecretsErrorException"},
78        {"shape":"HttpEndpointNotEnabledException"},
79        {"shape":"DatabaseErrorException"},
80        {"shape":"DatabaseUnavailableException"},
81        {"shape":"TransactionNotFoundException"},
82        {"shape":"InvalidSecretException"},
83        {"shape":"ServiceUnavailableError"},
84        {"shape":"ForbiddenException"},
85        {"shape":"DatabaseNotFoundException"},
86        {"shape":"AccessDeniedException"},
87        {"shape":"BadRequestException"},
88        {"shape":"StatementTimeoutException"},
89        {"shape":"InternalServerErrorException"},
90        {"shape":"NotFoundException"}
91      ],
92      "documentation":"<p>Ends a SQL transaction started with the <code>BeginTransaction</code> operation and commits the changes.</p>"
93    },
94    "ExecuteSql":{
95      "name":"ExecuteSql",
96      "http":{
97        "method":"POST",
98        "requestUri":"/ExecuteSql",
99        "responseCode":200
100      },
101      "input":{"shape":"ExecuteSqlRequest"},
102      "output":{"shape":"ExecuteSqlResponse"},
103      "errors":[
104        {"shape":"AccessDeniedException"},
105        {"shape":"BadRequestException"},
106        {"shape":"InternalServerErrorException"},
107        {"shape":"ForbiddenException"},
108        {"shape":"ServiceUnavailableError"}
109      ],
110      "documentation":"<p>Runs one or more SQL statements.</p> <note> <p>This operation isn't supported for Aurora PostgreSQL Serverless v2 and provisioned DB clusters, and for Aurora Serverless v1 DB clusters, the operation is deprecated. Use the <code>BatchExecuteStatement</code> or <code>ExecuteStatement</code> operation.</p> </note>",
111      "deprecated":true,
112      "deprecatedMessage":"The ExecuteSql API is deprecated, please use the ExecuteStatement API."
113    },
114    "ExecuteStatement":{
115      "name":"ExecuteStatement",
116      "http":{
117        "method":"POST",
118        "requestUri":"/Execute",
119        "responseCode":200
120      },
121      "input":{"shape":"ExecuteStatementRequest"},
122      "output":{"shape":"ExecuteStatementResponse"},
123      "errors":[
124        {"shape":"SecretsErrorException"},
125        {"shape":"HttpEndpointNotEnabledException"},
126        {"shape":"DatabaseErrorException"},
127        {"shape":"DatabaseUnavailableException"},
128        {"shape":"TransactionNotFoundException"},
129        {"shape":"InvalidSecretException"},
130        {"shape":"ServiceUnavailableError"},
131        {"shape":"ForbiddenException"},
132        {"shape":"DatabaseNotFoundException"},
133        {"shape":"AccessDeniedException"},
134        {"shape":"BadRequestException"},
135        {"shape":"StatementTimeoutException"},
136        {"shape":"InternalServerErrorException"},
137        {"shape":"UnsupportedResultException"}
138      ],
139      "documentation":"<p>Runs a SQL statement against a database.</p> <note> <p>If a call isn't part of a transaction because it doesn't include the <code>transactionID</code> parameter, changes that result from the call are committed automatically.</p> <p>If the binary response data from the database is more than 1 MB, the call is terminated.</p> </note>"
140    },
141    "RollbackTransaction":{
142      "name":"RollbackTransaction",
143      "http":{
144        "method":"POST",
145        "requestUri":"/RollbackTransaction",
146        "responseCode":200
147      },
148      "input":{"shape":"RollbackTransactionRequest"},
149      "output":{"shape":"RollbackTransactionResponse"},
150      "errors":[
151        {"shape":"SecretsErrorException"},
152        {"shape":"HttpEndpointNotEnabledException"},
153        {"shape":"DatabaseErrorException"},
154        {"shape":"DatabaseUnavailableException"},
155        {"shape":"TransactionNotFoundException"},
156        {"shape":"InvalidSecretException"},
157        {"shape":"ServiceUnavailableError"},
158        {"shape":"ForbiddenException"},
159        {"shape":"DatabaseNotFoundException"},
160        {"shape":"AccessDeniedException"},
161        {"shape":"BadRequestException"},
162        {"shape":"StatementTimeoutException"},
163        {"shape":"InternalServerErrorException"},
164        {"shape":"NotFoundException"}
165      ],
166      "documentation":"<p>Performs a rollback of a transaction. Rolling back a transaction cancels its changes.</p>"
167    }
168  },
169  "shapes":{
170    "AccessDeniedException":{
171      "type":"structure",
172      "members":{
173        "message":{"shape":"ErrorMessage"}
174      },
175      "documentation":"<p>You don't have sufficient access to perform this action.</p>",
176      "error":{
177        "httpStatusCode":403,
178        "senderFault":true
179      },
180      "exception":true
181    },
182    "Arn":{
183      "type":"string",
184      "max":100,
185      "min":11
186    },
187    "ArrayOfArray":{
188      "type":"list",
189      "member":{"shape":"ArrayValue"},
190      "documentation":"<p>An array of arrays.</p> <note> <p>Some array entries can be null.</p> </note>"
191    },
192    "ArrayValue":{
193      "type":"structure",
194      "members":{
195        "booleanValues":{
196          "shape":"BooleanArray",
197          "documentation":"<p>An array of Boolean values.</p>"
198        },
199        "longValues":{
200          "shape":"LongArray",
201          "documentation":"<p>An array of integers.</p>"
202        },
203        "doubleValues":{
204          "shape":"DoubleArray",
205          "documentation":"<p>An array of floating-point numbers.</p>"
206        },
207        "stringValues":{
208          "shape":"StringArray",
209          "documentation":"<p>An array of strings.</p>"
210        },
211        "arrayValues":{
212          "shape":"ArrayOfArray",
213          "documentation":"<p>An array of arrays.</p>"
214        }
215      },
216      "documentation":"<p>Contains an array.</p>",
217      "union":true
218    },
219    "ArrayValueList":{
220      "type":"list",
221      "member":{"shape":"Value"}
222    },
223    "BadRequestException":{
224      "type":"structure",
225      "members":{
226        "message":{
227          "shape":"ErrorMessage",
228          "documentation":"<p>The error message returned by this <code>BadRequestException</code> error.</p>"
229        }
230      },
231      "documentation":"<p>There is an error in the call or in a SQL statement. (This error only appears in calls from Aurora Serverless v1 databases.)</p>",
232      "error":{
233        "httpStatusCode":400,
234        "senderFault":true
235      },
236      "exception":true
237    },
238    "BatchExecuteStatementRequest":{
239      "type":"structure",
240      "required":[
241        "resourceArn",
242        "secretArn",
243        "sql"
244      ],
245      "members":{
246        "resourceArn":{
247          "shape":"Arn",
248          "documentation":"<p>The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster.</p>"
249        },
250        "secretArn":{
251          "shape":"Arn",
252          "documentation":"<p>The ARN of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret.</p> <p>For information about creating the secret, see <a href=\"https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_database_secret.html\">Create a database secret</a>.</p>"
253        },
254        "sql":{
255          "shape":"SqlStatement",
256          "documentation":"<p>The SQL statement to run. Don't include a semicolon (;) at the end of the SQL statement.</p>"
257        },
258        "database":{
259          "shape":"DbName",
260          "documentation":"<p>The name of the database.</p>"
261        },
262        "schema":{
263          "shape":"DbName",
264          "documentation":"<p>The name of the database schema.</p> <note> <p>Currently, the <code>schema</code> parameter isn't supported.</p> </note>"
265        },
266        "parameterSets":{
267          "shape":"SqlParameterSets",
268          "documentation":"<p>The parameter set for the batch operation.</p> <p>The SQL statement is executed as many times as the number of parameter sets provided. To execute a SQL statement with no parameters, use one of the following options:</p> <ul> <li> <p>Specify one or more empty parameter sets.</p> </li> <li> <p>Use the <code>ExecuteStatement</code> operation instead of the <code>BatchExecuteStatement</code> operation.</p> </li> </ul> <note> <p>Array parameters are not supported.</p> </note>"
269        },
270        "transactionId":{
271          "shape":"Id",
272          "documentation":"<p>The identifier of a transaction that was started by using the <code>BeginTransaction</code> operation. Specify the transaction ID of the transaction that you want to include the SQL statement in.</p> <p>If the SQL statement is not part of a transaction, don't set this parameter.</p>"
273        }
274      },
275      "documentation":"<p>The request parameters represent the input of a SQL statement over an array of data.</p>"
276    },
277    "BatchExecuteStatementResponse":{
278      "type":"structure",
279      "members":{
280        "updateResults":{
281          "shape":"UpdateResults",
282          "documentation":"<p>The execution results of each batch entry.</p>"
283        }
284      },
285      "documentation":"<p>The response elements represent the output of a SQL statement over an array of data.</p>"
286    },
287    "BeginTransactionRequest":{
288      "type":"structure",
289      "required":[
290        "resourceArn",
291        "secretArn"
292      ],
293      "members":{
294        "resourceArn":{
295          "shape":"Arn",
296          "documentation":"<p>The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster.</p>"
297        },
298        "secretArn":{
299          "shape":"Arn",
300          "documentation":"<p>The name or ARN of the secret that enables access to the DB cluster.</p>"
301        },
302        "database":{
303          "shape":"DbName",
304          "documentation":"<p>The name of the database.</p>"
305        },
306        "schema":{
307          "shape":"DbName",
308          "documentation":"<p>The name of the database schema.</p>"
309        }
310      },
311      "documentation":"<p>The request parameters represent the input of a request to start a SQL transaction.</p>"
312    },
313    "BeginTransactionResponse":{
314      "type":"structure",
315      "members":{
316        "transactionId":{
317          "shape":"Id",
318          "documentation":"<p>The transaction ID of the transaction started by the call.</p>"
319        }
320      },
321      "documentation":"<p>The response elements represent the output of a request to start a SQL transaction.</p>"
322    },
323    "Blob":{"type":"blob"},
324    "Boolean":{"type":"boolean"},
325    "BooleanArray":{
326      "type":"list",
327      "member":{"shape":"BoxedBoolean"},
328      "documentation":"<p>An array of Boolean values.</p> <note> <p>Some array entries can be null.</p> </note>"
329    },
330    "BoxedBoolean":{
331      "type":"boolean",
332      "box":true
333    },
334    "BoxedDouble":{
335      "type":"double",
336      "box":true
337    },
338    "BoxedFloat":{
339      "type":"float",
340      "box":true
341    },
342    "BoxedInteger":{
343      "type":"integer",
344      "box":true
345    },
346    "BoxedLong":{
347      "type":"long",
348      "box":true
349    },
350    "ColumnMetadata":{
351      "type":"structure",
352      "members":{
353        "name":{
354          "shape":"String",
355          "documentation":"<p>The name of the column.</p>"
356        },
357        "type":{
358          "shape":"Integer",
359          "documentation":"<p>The type of the column.</p>"
360        },
361        "typeName":{
362          "shape":"String",
363          "documentation":"<p>The database-specific data type of the column.</p>"
364        },
365        "label":{
366          "shape":"String",
367          "documentation":"<p>The label for the column.</p>"
368        },
369        "schemaName":{
370          "shape":"String",
371          "documentation":"<p>The name of the schema that owns the table that includes the column.</p>"
372        },
373        "tableName":{
374          "shape":"String",
375          "documentation":"<p>The name of the table that includes the column.</p>"
376        },
377        "isAutoIncrement":{
378          "shape":"Boolean",
379          "documentation":"<p>A value that indicates whether the column increments automatically.</p>"
380        },
381        "isSigned":{
382          "shape":"Boolean",
383          "documentation":"<p>A value that indicates whether an integer column is signed.</p>"
384        },
385        "isCurrency":{
386          "shape":"Boolean",
387          "documentation":"<p>A value that indicates whether the column contains currency values.</p>"
388        },
389        "isCaseSensitive":{
390          "shape":"Boolean",
391          "documentation":"<p>A value that indicates whether the column is case-sensitive.</p>"
392        },
393        "nullable":{
394          "shape":"Integer",
395          "documentation":"<p>A value that indicates whether the column is nullable.</p>"
396        },
397        "precision":{
398          "shape":"Integer",
399          "documentation":"<p>The precision value of a decimal number column.</p>"
400        },
401        "scale":{
402          "shape":"Integer",
403          "documentation":"<p>The scale value of a decimal number column.</p>"
404        },
405        "arrayBaseColumnType":{
406          "shape":"Integer",
407          "documentation":"<p>The type of the column.</p>"
408        }
409      },
410      "documentation":"<p>Contains the metadata for a column.</p>"
411    },
412    "CommitTransactionRequest":{
413      "type":"structure",
414      "required":[
415        "resourceArn",
416        "secretArn",
417        "transactionId"
418      ],
419      "members":{
420        "resourceArn":{
421          "shape":"Arn",
422          "documentation":"<p>The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster.</p>"
423        },
424        "secretArn":{
425          "shape":"Arn",
426          "documentation":"<p>The name or ARN of the secret that enables access to the DB cluster.</p>"
427        },
428        "transactionId":{
429          "shape":"Id",
430          "documentation":"<p>The identifier of the transaction to end and commit.</p>"
431        }
432      },
433      "documentation":"<p>The request parameters represent the input of a commit transaction request.</p>"
434    },
435    "CommitTransactionResponse":{
436      "type":"structure",
437      "members":{
438        "transactionStatus":{
439          "shape":"TransactionStatus",
440          "documentation":"<p>The status of the commit operation.</p>"
441        }
442      },
443      "documentation":"<p>The response elements represent the output of a commit transaction request.</p>"
444    },
445    "DatabaseErrorException":{
446      "type":"structure",
447      "members":{
448        "message":{"shape":"ErrorMessage"}
449      },
450      "documentation":"<p>There was an error in processing the SQL statement.</p>",
451      "error":{
452        "httpStatusCode":400,
453        "senderFault":true
454      },
455      "exception":true
456    },
457    "DatabaseNotFoundException":{
458      "type":"structure",
459      "members":{
460        "message":{"shape":"ErrorMessage"}
461      },
462      "documentation":"<p>The DB cluster doesn't have a DB instance.</p>",
463      "error":{
464        "httpStatusCode":404,
465        "senderFault":true
466      },
467      "exception":true
468    },
469    "DatabaseUnavailableException":{
470      "type":"structure",
471      "members":{
472      },
473      "documentation":"<p>The writer instance in the DB cluster isn't available.</p>",
474      "error":{"httpStatusCode":504},
475      "exception":true,
476      "fault":true
477    },
478    "DbName":{
479      "type":"string",
480      "max":64,
481      "min":0
482    },
483    "DecimalReturnType":{
484      "type":"string",
485      "enum":[
486        "STRING",
487        "DOUBLE_OR_LONG"
488      ]
489    },
490    "DoubleArray":{
491      "type":"list",
492      "member":{"shape":"BoxedDouble"},
493      "documentation":"<p>An array of floating-point numbers.</p> <note> <p>Some array entries can be null.</p> </note>"
494    },
495    "ErrorMessage":{"type":"string"},
496    "ExecuteSqlRequest":{
497      "type":"structure",
498      "required":[
499        "dbClusterOrInstanceArn",
500        "awsSecretStoreArn",
501        "sqlStatements"
502      ],
503      "members":{
504        "dbClusterOrInstanceArn":{
505          "shape":"Arn",
506          "documentation":"<p>The ARN of the Aurora Serverless DB cluster.</p>"
507        },
508        "awsSecretStoreArn":{
509          "shape":"Arn",
510          "documentation":"<p>The Amazon Resource Name (ARN) of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret.</p> <p>For information about creating the secret, see <a href=\"https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_database_secret.html\">Create a database secret</a>.</p>"
511        },
512        "sqlStatements":{
513          "shape":"SqlStatement",
514          "documentation":"<p>One or more SQL statements to run on the DB cluster.</p> <p>You can separate SQL statements from each other with a semicolon (;). Any valid SQL statement is permitted, including data definition, data manipulation, and commit statements. </p>"
515        },
516        "database":{
517          "shape":"DbName",
518          "documentation":"<p>The name of the database.</p>"
519        },
520        "schema":{
521          "shape":"DbName",
522          "documentation":"<p>The name of the database schema.</p>"
523        }
524      },
525      "documentation":"<p>The request parameters represent the input of a request to run one or more SQL statements.</p>"
526    },
527    "ExecuteSqlResponse":{
528      "type":"structure",
529      "members":{
530        "sqlStatementResults":{
531          "shape":"SqlStatementResults",
532          "documentation":"<p>The results of the SQL statement or statements.</p>"
533        }
534      },
535      "documentation":"<p>The response elements represent the output of a request to run one or more SQL statements.</p>"
536    },
537    "ExecuteStatementRequest":{
538      "type":"structure",
539      "required":[
540        "resourceArn",
541        "secretArn",
542        "sql"
543      ],
544      "members":{
545        "resourceArn":{
546          "shape":"Arn",
547          "documentation":"<p>The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster.</p>"
548        },
549        "secretArn":{
550          "shape":"Arn",
551          "documentation":"<p>The ARN of the secret that enables access to the DB cluster. Enter the database user name and password for the credentials in the secret.</p> <p>For information about creating the secret, see <a href=\"https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_database_secret.html\">Create a database secret</a>.</p>"
552        },
553        "sql":{
554          "shape":"SqlStatement",
555          "documentation":"<p>The SQL statement to run.</p>"
556        },
557        "database":{
558          "shape":"DbName",
559          "documentation":"<p>The name of the database.</p>"
560        },
561        "schema":{
562          "shape":"DbName",
563          "documentation":"<p>The name of the database schema.</p> <note> <p>Currently, the <code>schema</code> parameter isn't supported.</p> </note>"
564        },
565        "parameters":{
566          "shape":"SqlParametersList",
567          "documentation":"<p>The parameters for the SQL statement.</p> <note> <p>Array parameters are not supported.</p> </note>"
568        },
569        "transactionId":{
570          "shape":"Id",
571          "documentation":"<p>The identifier of a transaction that was started by using the <code>BeginTransaction</code> operation. Specify the transaction ID of the transaction that you want to include the SQL statement in.</p> <p>If the SQL statement is not part of a transaction, don't set this parameter.</p>"
572        },
573        "includeResultMetadata":{
574          "shape":"Boolean",
575          "documentation":"<p>A value that indicates whether to include metadata in the results.</p>"
576        },
577        "continueAfterTimeout":{
578          "shape":"Boolean",
579          "documentation":"<p>A value that indicates whether to continue running the statement after the call times out. By default, the statement stops running when the call times out.</p> <note> <p>For DDL statements, we recommend continuing to run the statement after the call times out. When a DDL statement terminates before it is finished running, it can result in errors and possibly corrupted data structures.</p> </note>"
580        },
581        "resultSetOptions":{
582          "shape":"ResultSetOptions",
583          "documentation":"<p>Options that control how the result set is returned.</p>"
584        },
585        "formatRecordsAs":{
586          "shape":"RecordsFormatType",
587          "documentation":"<p>A value that indicates whether to format the result set as a single JSON string. This parameter only applies to <code>SELECT</code> statements and is ignored for other types of statements. Allowed values are <code>NONE</code> and <code>JSON</code>. The default value is <code>NONE</code>. The result is returned in the <code>formattedRecords</code> field.</p> <p>For usage information about the JSON format for result sets, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html\">Using the Data API</a> in the <i>Amazon Aurora User Guide</i>.</p>"
588        }
589      },
590      "documentation":"<p>The request parameters represent the input of a request to run a SQL statement against a database.</p>"
591    },
592    "ExecuteStatementResponse":{
593      "type":"structure",
594      "members":{
595        "records":{
596          "shape":"SqlRecords",
597          "documentation":"<p>The records returned by the SQL statement. This field is blank if the <code>formatRecordsAs</code> parameter is set to <code>JSON</code>.</p>"
598        },
599        "columnMetadata":{
600          "shape":"Metadata",
601          "documentation":"<p>Metadata for the columns included in the results. This field is blank if the <code>formatRecordsAs</code> parameter is set to <code>JSON</code>.</p>"
602        },
603        "numberOfRecordsUpdated":{
604          "shape":"RecordsUpdated",
605          "documentation":"<p>The number of records updated by the request.</p>"
606        },
607        "generatedFields":{
608          "shape":"FieldList",
609          "documentation":"<p>Values for fields generated during a DML request.</p> <note> <p>The <code>generatedFields</code> data isn't supported by Aurora PostgreSQL. To get the values of generated fields, use the <code>RETURNING</code> clause. For more information, see <a href=\"https://www.postgresql.org/docs/10/dml-returning.html\">Returning Data From Modified Rows</a> in the PostgreSQL documentation.</p> </note>"
610        },
611        "formattedRecords":{
612          "shape":"FormattedSqlRecords",
613          "documentation":"<p>A string value that represents the result set of a <code>SELECT</code> statement in JSON format. This value is only present when the <code>formatRecordsAs</code> parameter is set to <code>JSON</code>.</p> <p>The size limit for this field is currently 10 MB. If the JSON-formatted string representing the result set requires more than 10 MB, the call returns an error.</p>"
614        }
615      },
616      "documentation":"<p>The response elements represent the output of a request to run a SQL statement against a database.</p>"
617    },
618    "Field":{
619      "type":"structure",
620      "members":{
621        "isNull":{
622          "shape":"BoxedBoolean",
623          "documentation":"<p>A NULL value.</p>"
624        },
625        "booleanValue":{
626          "shape":"BoxedBoolean",
627          "documentation":"<p>A value of Boolean data type.</p>"
628        },
629        "longValue":{
630          "shape":"BoxedLong",
631          "documentation":"<p>A value of long data type.</p>"
632        },
633        "doubleValue":{
634          "shape":"BoxedDouble",
635          "documentation":"<p>A value of double data type.</p>"
636        },
637        "stringValue":{
638          "shape":"String",
639          "documentation":"<p>A value of string data type.</p>"
640        },
641        "blobValue":{
642          "shape":"Blob",
643          "documentation":"<p>A value of BLOB data type.</p>"
644        },
645        "arrayValue":{
646          "shape":"ArrayValue",
647          "documentation":"<p>An array of values.</p>"
648        }
649      },
650      "documentation":"<p>Contains a value.</p>",
651      "union":true
652    },
653    "FieldList":{
654      "type":"list",
655      "member":{"shape":"Field"}
656    },
657    "ForbiddenException":{
658      "type":"structure",
659      "members":{
660        "message":{
661          "shape":"ErrorMessage",
662          "documentation":"<p>The error message returned by this <code>ForbiddenException</code> error.</p>"
663        }
664      },
665      "documentation":"<p>There are insufficient privileges to make the call.</p>",
666      "error":{
667        "httpStatusCode":403,
668        "senderFault":true
669      },
670      "exception":true
671    },
672    "FormattedSqlRecords":{"type":"string"},
673    "HttpEndpointNotEnabledException":{
674      "type":"structure",
675      "members":{
676        "message":{"shape":"ErrorMessage"}
677      },
678      "documentation":"<p>The HTTP endpoint for using RDS Data API isn't enabled for the DB cluster.</p>",
679      "error":{
680        "httpStatusCode":400,
681        "senderFault":true
682      },
683      "exception":true
684    },
685    "Id":{
686      "type":"string",
687      "max":192,
688      "min":0
689    },
690    "Integer":{"type":"integer"},
691    "InternalServerErrorException":{
692      "type":"structure",
693      "members":{
694      },
695      "documentation":"<p>An internal error occurred.</p>",
696      "error":{"httpStatusCode":500},
697      "exception":true,
698      "fault":true
699    },
700    "InvalidSecretException":{
701      "type":"structure",
702      "members":{
703        "message":{"shape":"ErrorMessage"}
704      },
705      "documentation":"<p>The Secrets Manager secret used with the request isn't valid.</p>",
706      "error":{
707        "httpStatusCode":400,
708        "senderFault":true
709      },
710      "exception":true
711    },
712    "Long":{"type":"long"},
713    "LongArray":{
714      "type":"list",
715      "member":{"shape":"BoxedLong"},
716      "documentation":"<p>An array of integers.</p> <note> <p>Some array entries can be null.</p> </note>"
717    },
718    "LongReturnType":{
719      "type":"string",
720      "enum":[
721        "STRING",
722        "LONG"
723      ]
724    },
725    "Metadata":{
726      "type":"list",
727      "member":{"shape":"ColumnMetadata"}
728    },
729    "NotFoundException":{
730      "type":"structure",
731      "members":{
732        "message":{
733          "shape":"ErrorMessage",
734          "documentation":"<p>The error message returned by this <code>NotFoundException</code> error.</p>"
735        }
736      },
737      "documentation":"<p>The <code>resourceArn</code>, <code>secretArn</code>, or <code>transactionId</code> value can't be found.</p>",
738      "error":{
739        "httpStatusCode":404,
740        "senderFault":true
741      },
742      "exception":true
743    },
744    "ParameterName":{"type":"string"},
745    "Record":{
746      "type":"structure",
747      "members":{
748        "values":{
749          "shape":"Row",
750          "documentation":"<p>The values returned in the record.</p>"
751        }
752      },
753      "documentation":"<p>A record returned by a call.</p> <note> <p>This data structure is only used with the deprecated <code>ExecuteSql</code> operation. Use the <code>BatchExecuteStatement</code> or <code>ExecuteStatement</code> operation instead.</p> </note>"
754    },
755    "Records":{
756      "type":"list",
757      "member":{"shape":"Record"}
758    },
759    "RecordsFormatType":{
760      "type":"string",
761      "enum":[
762        "NONE",
763        "JSON"
764      ]
765    },
766    "RecordsUpdated":{"type":"long"},
767    "ResultFrame":{
768      "type":"structure",
769      "members":{
770        "resultSetMetadata":{
771          "shape":"ResultSetMetadata",
772          "documentation":"<p>The result-set metadata in the result set.</p>"
773        },
774        "records":{
775          "shape":"Records",
776          "documentation":"<p>The records in the result set.</p>"
777        }
778      },
779      "documentation":"<p>The result set returned by a SQL statement.</p> <note> <p>This data structure is only used with the deprecated <code>ExecuteSql</code> operation. Use the <code>BatchExecuteStatement</code> or <code>ExecuteStatement</code> operation instead.</p> </note>"
780    },
781    "ResultSetMetadata":{
782      "type":"structure",
783      "members":{
784        "columnCount":{
785          "shape":"Long",
786          "documentation":"<p>The number of columns in the result set.</p>"
787        },
788        "columnMetadata":{
789          "shape":"Metadata",
790          "documentation":"<p>The metadata of the columns in the result set.</p>"
791        }
792      },
793      "documentation":"<p>The metadata of the result set returned by a SQL statement.</p>"
794    },
795    "ResultSetOptions":{
796      "type":"structure",
797      "members":{
798        "decimalReturnType":{
799          "shape":"DecimalReturnType",
800          "documentation":"<p>A value that indicates how a field of <code>DECIMAL</code> type is represented in the response. The value of <code>STRING</code>, the default, specifies that it is converted to a String value. The value of <code>DOUBLE_OR_LONG</code> specifies that it is converted to a Long value if its scale is 0, or to a Double value otherwise.</p> <note> <p>Conversion to Double or Long can result in roundoff errors due to precision loss. We recommend converting to String, especially when working with currency values.</p> </note>"
801        },
802        "longReturnType":{
803          "shape":"LongReturnType",
804          "documentation":"<p>A value that indicates how a field of <code>LONG</code> type is represented. Allowed values are <code>LONG</code> and <code>STRING</code>. The default is <code>LONG</code>. Specify <code>STRING</code> if the length or precision of numeric values might cause truncation or rounding errors. </p>"
805        }
806      },
807      "documentation":"<p>Options that control how the result set is returned.</p>"
808    },
809    "RollbackTransactionRequest":{
810      "type":"structure",
811      "required":[
812        "resourceArn",
813        "secretArn",
814        "transactionId"
815      ],
816      "members":{
817        "resourceArn":{
818          "shape":"Arn",
819          "documentation":"<p>The Amazon Resource Name (ARN) of the Aurora Serverless DB cluster.</p>"
820        },
821        "secretArn":{
822          "shape":"Arn",
823          "documentation":"<p>The name or ARN of the secret that enables access to the DB cluster.</p>"
824        },
825        "transactionId":{
826          "shape":"Id",
827          "documentation":"<p>The identifier of the transaction to roll back.</p>"
828        }
829      },
830      "documentation":"<p>The request parameters represent the input of a request to perform a rollback of a transaction.</p>"
831    },
832    "RollbackTransactionResponse":{
833      "type":"structure",
834      "members":{
835        "transactionStatus":{
836          "shape":"TransactionStatus",
837          "documentation":"<p>The status of the rollback operation.</p>"
838        }
839      },
840      "documentation":"<p>The response elements represent the output of a request to perform a rollback of a transaction.</p>"
841    },
842    "Row":{
843      "type":"list",
844      "member":{"shape":"Value"}
845    },
846    "SecretsErrorException":{
847      "type":"structure",
848      "members":{
849        "message":{"shape":"ErrorMessage"}
850      },
851      "documentation":"<p>There was a problem with the Secrets Manager secret used with the request, caused by one of the following conditions:</p> <ul> <li> <p>RDS Data API timed out retrieving the secret.</p> </li> <li> <p>The secret provided wasn't found.</p> </li> <li> <p>The secret couldn't be decrypted.</p> </li> </ul>",
852      "error":{
853        "httpStatusCode":400,
854        "senderFault":true
855      },
856      "exception":true
857    },
858    "ServiceUnavailableError":{
859      "type":"structure",
860      "members":{
861      },
862      "documentation":"<p>The service specified by the <code>resourceArn</code> parameter isn't available.</p>",
863      "error":{"httpStatusCode":503},
864      "exception":true,
865      "fault":true
866    },
867    "SqlParameter":{
868      "type":"structure",
869      "members":{
870        "name":{
871          "shape":"ParameterName",
872          "documentation":"<p>The name of the parameter.</p>"
873        },
874        "value":{
875          "shape":"Field",
876          "documentation":"<p>The value of the parameter.</p>"
877        },
878        "typeHint":{
879          "shape":"TypeHint",
880          "documentation":"<p>A hint that specifies the correct object type for data type mapping. Possible values are as follows:</p> <ul> <li> <p> <code>DATE</code> - The corresponding <code>String</code> parameter value is sent as an object of <code>DATE</code> type to the database. The accepted format is <code>YYYY-MM-DD</code>.</p> </li> <li> <p> <code>DECIMAL</code> - The corresponding <code>String</code> parameter value is sent as an object of <code>DECIMAL</code> type to the database.</p> </li> <li> <p> <code>JSON</code> - The corresponding <code>String</code> parameter value is sent as an object of <code>JSON</code> type to the database.</p> </li> <li> <p> <code>TIME</code> - The corresponding <code>String</code> parameter value is sent as an object of <code>TIME</code> type to the database. The accepted format is <code>HH:MM:SS[.FFF]</code>.</p> </li> <li> <p> <code>TIMESTAMP</code> - The corresponding <code>String</code> parameter value is sent as an object of <code>TIMESTAMP</code> type to the database. The accepted format is <code>YYYY-MM-DD HH:MM:SS[.FFF]</code>.</p> </li> <li> <p> <code>UUID</code> - The corresponding <code>String</code> parameter value is sent as an object of <code>UUID</code> type to the database. </p> </li> </ul>"
881        }
882      },
883      "documentation":"<p>A parameter used in a SQL statement.</p>"
884    },
885    "SqlParameterSets":{
886      "type":"list",
887      "member":{"shape":"SqlParametersList"}
888    },
889    "SqlParametersList":{
890      "type":"list",
891      "member":{"shape":"SqlParameter"}
892    },
893    "SqlRecords":{
894      "type":"list",
895      "member":{"shape":"FieldList"}
896    },
897    "SqlStatement":{
898      "type":"string",
899      "max":65536,
900      "min":0
901    },
902    "SqlStatementResult":{
903      "type":"structure",
904      "members":{
905        "resultFrame":{
906          "shape":"ResultFrame",
907          "documentation":"<p>The result set of the SQL statement.</p>"
908        },
909        "numberOfRecordsUpdated":{
910          "shape":"RecordsUpdated",
911          "documentation":"<p>The number of records updated by a SQL statement.</p>"
912        }
913      },
914      "documentation":"<p>The result of a SQL statement.</p> <note> <p>This data structure is only used with the deprecated <code>ExecuteSql</code> operation. Use the <code>BatchExecuteStatement</code> or <code>ExecuteStatement</code> operation instead.</p> </note>"
915    },
916    "SqlStatementResults":{
917      "type":"list",
918      "member":{"shape":"SqlStatementResult"}
919    },
920    "StatementTimeoutException":{
921      "type":"structure",
922      "members":{
923        "message":{
924          "shape":"ErrorMessage",
925          "documentation":"<p>The error message returned by this <code>StatementTimeoutException</code> error.</p>"
926        },
927        "dbConnectionId":{
928          "shape":"Long",
929          "documentation":"<p>The database connection ID that executed the SQL statement.</p>"
930        }
931      },
932      "documentation":"<p>The execution of the SQL statement timed out.</p>",
933      "error":{
934        "httpStatusCode":400,
935        "senderFault":true
936      },
937      "exception":true
938    },
939    "String":{"type":"string"},
940    "StringArray":{
941      "type":"list",
942      "member":{"shape":"String"},
943      "documentation":"<p>An array of strings.</p> <note> <p>Some array entries can be null.</p> </note>"
944    },
945    "StructValue":{
946      "type":"structure",
947      "members":{
948        "attributes":{
949          "shape":"ArrayValueList",
950          "documentation":"<p>The attributes returned in the record.</p>"
951        }
952      },
953      "documentation":"<p>A structure value returned by a call.</p> <note> <p>This data structure is only used with the deprecated <code>ExecuteSql</code> operation. Use the <code>BatchExecuteStatement</code> or <code>ExecuteStatement</code> operation instead.</p> </note>"
954    },
955    "TransactionNotFoundException":{
956      "type":"structure",
957      "members":{
958        "message":{"shape":"ErrorMessage"}
959      },
960      "documentation":"<p>The transaction ID wasn't found.</p>",
961      "error":{
962        "httpStatusCode":404,
963        "senderFault":true
964      },
965      "exception":true
966    },
967    "TransactionStatus":{
968      "type":"string",
969      "max":128,
970      "min":0
971    },
972    "TypeHint":{
973      "type":"string",
974      "enum":[
975        "JSON",
976        "UUID",
977        "TIMESTAMP",
978        "DATE",
979        "TIME",
980        "DECIMAL"
981      ]
982    },
983    "UnsupportedResultException":{
984      "type":"structure",
985      "members":{
986        "message":{"shape":"ErrorMessage"}
987      },
988      "documentation":"<p>There was a problem with the result because of one of the following conditions:</p> <ul> <li> <p>It contained an unsupported data type.</p> </li> <li> <p>It contained a multidimensional array.</p> </li> <li> <p>The size was too large.</p> </li> </ul>",
989      "error":{
990        "httpStatusCode":400,
991        "senderFault":true
992      },
993      "exception":true
994    },
995    "UpdateResult":{
996      "type":"structure",
997      "members":{
998        "generatedFields":{
999          "shape":"FieldList",
1000          "documentation":"<p>Values for fields generated during the request.</p>"
1001        }
1002      },
1003      "documentation":"<p>The response elements represent the results of an update.</p>"
1004    },
1005    "UpdateResults":{
1006      "type":"list",
1007      "member":{"shape":"UpdateResult"}
1008    },
1009    "Value":{
1010      "type":"structure",
1011      "members":{
1012        "isNull":{
1013          "shape":"BoxedBoolean",
1014          "documentation":"<p>A NULL value.</p>"
1015        },
1016        "bitValue":{
1017          "shape":"BoxedBoolean",
1018          "documentation":"<p>A value for a column of BIT data type.</p>"
1019        },
1020        "bigIntValue":{
1021          "shape":"BoxedLong",
1022          "documentation":"<p>A value for a column of big integer data type.</p>"
1023        },
1024        "intValue":{
1025          "shape":"BoxedInteger",
1026          "documentation":"<p>A value for a column of integer data type.</p>"
1027        },
1028        "doubleValue":{
1029          "shape":"BoxedDouble",
1030          "documentation":"<p>A value for a column of double data type.</p>"
1031        },
1032        "realValue":{
1033          "shape":"BoxedFloat",
1034          "documentation":"<p>A value for a column of real data type.</p>"
1035        },
1036        "stringValue":{
1037          "shape":"String",
1038          "documentation":"<p>A value for a column of string data type.</p>"
1039        },
1040        "blobValue":{
1041          "shape":"Blob",
1042          "documentation":"<p>A value for a column of BLOB data type.</p>"
1043        },
1044        "arrayValues":{
1045          "shape":"ArrayValueList",
1046          "documentation":"<p>An array of column values.</p>"
1047        },
1048        "structValue":{
1049          "shape":"StructValue",
1050          "documentation":"<p>A value for a column of STRUCT data type.</p>"
1051        }
1052      },
1053      "documentation":"<p>Contains the value of a column.</p> <note> <p>This data structure is only used with the deprecated <code>ExecuteSql</code> operation. Use the <code>BatchExecuteStatement</code> or <code>ExecuteStatement</code> operation instead.</p> </note>",
1054      "union":true
1055    }
1056  },
1057  "documentation":"<p><fullname>RDS Data API</fullname> <p>Amazon RDS provides an HTTP endpoint to run SQL statements on an Amazon Aurora DB cluster. To run these statements, you use the RDS Data API (Data API).</p> <p>Data API is available with the following types of Aurora databases:</p> <ul> <li> <p>Aurora PostgreSQL - Serverless v2, Serverless v1, and provisioned</p> </li> <li> <p>Aurora MySQL - Serverless v1 only</p> </li> </ul> <p>For more information about the Data API, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html\">Using RDS Data API</a> in the <i>Amazon Aurora User Guide</i>.</p></p>"
1058}
1059