1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package honeycode
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13)
14
15const opBatchCreateTableRows = "BatchCreateTableRows"
16
17// BatchCreateTableRowsRequest generates a "aws/request.Request" representing the
18// client's request for the BatchCreateTableRows operation. The "output" return
19// value will be populated with the request's response once the request completes
20// successfully.
21//
22// Use "Send" method on the returned Request to send the API call to the service.
23// the "output" return value is not valid until after Send returns without error.
24//
25// See BatchCreateTableRows for more information on using the BatchCreateTableRows
26// API call, and error handling.
27//
28// This method is useful when you want to inject custom logic or configuration
29// into the SDK's request lifecycle. Such as custom headers, or retry logic.
30//
31//
32//    // Example sending a request using the BatchCreateTableRowsRequest method.
33//    req, resp := client.BatchCreateTableRowsRequest(params)
34//
35//    err := req.Send()
36//    if err == nil { // resp is now filled
37//        fmt.Println(resp)
38//    }
39//
40// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchCreateTableRows
41func (c *Honeycode) BatchCreateTableRowsRequest(input *BatchCreateTableRowsInput) (req *request.Request, output *BatchCreateTableRowsOutput) {
42	op := &request.Operation{
43		Name:       opBatchCreateTableRows,
44		HTTPMethod: "POST",
45		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/rows/batchcreate",
46	}
47
48	if input == nil {
49		input = &BatchCreateTableRowsInput{}
50	}
51
52	output = &BatchCreateTableRowsOutput{}
53	req = c.newRequest(op, input, output)
54	return
55}
56
57// BatchCreateTableRows API operation for Amazon Honeycode.
58//
59// The BatchCreateTableRows API allows you to create one or more rows at the
60// end of a table in a workbook. The API allows you to specify the values to
61// set in some or all of the columns in the new rows.
62//
63// If a column is not explicitly set in a specific row, then the column level
64// formula specified in the table will be applied to the new row. If there is
65// no column level formula but the last row of the table has a formula, then
66// that formula will be copied down to the new row. If there is no column level
67// formula and no formula in the last row of the table, then that column will
68// be left blank for the new rows.
69//
70// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
71// with awserr.Error's Code and Message methods to get detailed information about
72// the error.
73//
74// See the AWS API reference guide for Amazon Honeycode's
75// API operation BatchCreateTableRows for usage and error information.
76//
77// Returned Error Types:
78//   * AccessDeniedException
79//   You do not have sufficient access to perform this action. Check that the
80//   workbook is owned by you and your IAM policy allows access to the resource
81//   in the request.
82//
83//   * InternalServerException
84//   There were unexpected errors from the server.
85//
86//   * RequestTimeoutException
87//   The request timed out.
88//
89//   * ResourceNotFoundException
90//   A Workbook, Table, App, Screen or Screen Automation was not found with the
91//   given ID.
92//
93//   * ServiceQuotaExceededException
94//   The request caused service quota to be breached.
95//
96//   * ServiceUnavailableException
97//   Remote service is unreachable.
98//
99//   * ThrottlingException
100//   Tps(transactions per second) rate reached.
101//
102//   * ValidationException
103//   Request is invalid. The message in the response contains details on why the
104//   request is invalid.
105//
106// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchCreateTableRows
107func (c *Honeycode) BatchCreateTableRows(input *BatchCreateTableRowsInput) (*BatchCreateTableRowsOutput, error) {
108	req, out := c.BatchCreateTableRowsRequest(input)
109	return out, req.Send()
110}
111
112// BatchCreateTableRowsWithContext is the same as BatchCreateTableRows with the addition of
113// the ability to pass a context and additional request options.
114//
115// See BatchCreateTableRows for details on how to use this API operation.
116//
117// The context must be non-nil and will be used for request cancellation. If
118// the context is nil a panic will occur. In the future the SDK may create
119// sub-contexts for http.Requests. See https://golang.org/pkg/context/
120// for more information on using Contexts.
121func (c *Honeycode) BatchCreateTableRowsWithContext(ctx aws.Context, input *BatchCreateTableRowsInput, opts ...request.Option) (*BatchCreateTableRowsOutput, error) {
122	req, out := c.BatchCreateTableRowsRequest(input)
123	req.SetContext(ctx)
124	req.ApplyOptions(opts...)
125	return out, req.Send()
126}
127
128const opBatchDeleteTableRows = "BatchDeleteTableRows"
129
130// BatchDeleteTableRowsRequest generates a "aws/request.Request" representing the
131// client's request for the BatchDeleteTableRows operation. The "output" return
132// value will be populated with the request's response once the request completes
133// successfully.
134//
135// Use "Send" method on the returned Request to send the API call to the service.
136// the "output" return value is not valid until after Send returns without error.
137//
138// See BatchDeleteTableRows for more information on using the BatchDeleteTableRows
139// API call, and error handling.
140//
141// This method is useful when you want to inject custom logic or configuration
142// into the SDK's request lifecycle. Such as custom headers, or retry logic.
143//
144//
145//    // Example sending a request using the BatchDeleteTableRowsRequest method.
146//    req, resp := client.BatchDeleteTableRowsRequest(params)
147//
148//    err := req.Send()
149//    if err == nil { // resp is now filled
150//        fmt.Println(resp)
151//    }
152//
153// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchDeleteTableRows
154func (c *Honeycode) BatchDeleteTableRowsRequest(input *BatchDeleteTableRowsInput) (req *request.Request, output *BatchDeleteTableRowsOutput) {
155	op := &request.Operation{
156		Name:       opBatchDeleteTableRows,
157		HTTPMethod: "POST",
158		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/rows/batchdelete",
159	}
160
161	if input == nil {
162		input = &BatchDeleteTableRowsInput{}
163	}
164
165	output = &BatchDeleteTableRowsOutput{}
166	req = c.newRequest(op, input, output)
167	return
168}
169
170// BatchDeleteTableRows API operation for Amazon Honeycode.
171//
172// The BatchDeleteTableRows API allows you to delete one or more rows from a
173// table in a workbook. You need to specify the ids of the rows that you want
174// to delete from the table.
175//
176// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
177// with awserr.Error's Code and Message methods to get detailed information about
178// the error.
179//
180// See the AWS API reference guide for Amazon Honeycode's
181// API operation BatchDeleteTableRows for usage and error information.
182//
183// Returned Error Types:
184//   * AccessDeniedException
185//   You do not have sufficient access to perform this action. Check that the
186//   workbook is owned by you and your IAM policy allows access to the resource
187//   in the request.
188//
189//   * InternalServerException
190//   There were unexpected errors from the server.
191//
192//   * ResourceNotFoundException
193//   A Workbook, Table, App, Screen or Screen Automation was not found with the
194//   given ID.
195//
196//   * ServiceUnavailableException
197//   Remote service is unreachable.
198//
199//   * ValidationException
200//   Request is invalid. The message in the response contains details on why the
201//   request is invalid.
202//
203//   * RequestTimeoutException
204//   The request timed out.
205//
206//   * ThrottlingException
207//   Tps(transactions per second) rate reached.
208//
209// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchDeleteTableRows
210func (c *Honeycode) BatchDeleteTableRows(input *BatchDeleteTableRowsInput) (*BatchDeleteTableRowsOutput, error) {
211	req, out := c.BatchDeleteTableRowsRequest(input)
212	return out, req.Send()
213}
214
215// BatchDeleteTableRowsWithContext is the same as BatchDeleteTableRows with the addition of
216// the ability to pass a context and additional request options.
217//
218// See BatchDeleteTableRows for details on how to use this API operation.
219//
220// The context must be non-nil and will be used for request cancellation. If
221// the context is nil a panic will occur. In the future the SDK may create
222// sub-contexts for http.Requests. See https://golang.org/pkg/context/
223// for more information on using Contexts.
224func (c *Honeycode) BatchDeleteTableRowsWithContext(ctx aws.Context, input *BatchDeleteTableRowsInput, opts ...request.Option) (*BatchDeleteTableRowsOutput, error) {
225	req, out := c.BatchDeleteTableRowsRequest(input)
226	req.SetContext(ctx)
227	req.ApplyOptions(opts...)
228	return out, req.Send()
229}
230
231const opBatchUpdateTableRows = "BatchUpdateTableRows"
232
233// BatchUpdateTableRowsRequest generates a "aws/request.Request" representing the
234// client's request for the BatchUpdateTableRows operation. The "output" return
235// value will be populated with the request's response once the request completes
236// successfully.
237//
238// Use "Send" method on the returned Request to send the API call to the service.
239// the "output" return value is not valid until after Send returns without error.
240//
241// See BatchUpdateTableRows for more information on using the BatchUpdateTableRows
242// API call, and error handling.
243//
244// This method is useful when you want to inject custom logic or configuration
245// into the SDK's request lifecycle. Such as custom headers, or retry logic.
246//
247//
248//    // Example sending a request using the BatchUpdateTableRowsRequest method.
249//    req, resp := client.BatchUpdateTableRowsRequest(params)
250//
251//    err := req.Send()
252//    if err == nil { // resp is now filled
253//        fmt.Println(resp)
254//    }
255//
256// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchUpdateTableRows
257func (c *Honeycode) BatchUpdateTableRowsRequest(input *BatchUpdateTableRowsInput) (req *request.Request, output *BatchUpdateTableRowsOutput) {
258	op := &request.Operation{
259		Name:       opBatchUpdateTableRows,
260		HTTPMethod: "POST",
261		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/rows/batchupdate",
262	}
263
264	if input == nil {
265		input = &BatchUpdateTableRowsInput{}
266	}
267
268	output = &BatchUpdateTableRowsOutput{}
269	req = c.newRequest(op, input, output)
270	return
271}
272
273// BatchUpdateTableRows API operation for Amazon Honeycode.
274//
275// The BatchUpdateTableRows API allows you to update one or more rows in a table
276// in a workbook.
277//
278// You can specify the values to set in some or all of the columns in the table
279// for the specified rows. If a column is not explicitly specified in a particular
280// row, then that column will not be updated for that row. To clear out the
281// data in a specific cell, you need to set the value as an empty string ("").
282//
283// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
284// with awserr.Error's Code and Message methods to get detailed information about
285// the error.
286//
287// See the AWS API reference guide for Amazon Honeycode's
288// API operation BatchUpdateTableRows for usage and error information.
289//
290// Returned Error Types:
291//   * AccessDeniedException
292//   You do not have sufficient access to perform this action. Check that the
293//   workbook is owned by you and your IAM policy allows access to the resource
294//   in the request.
295//
296//   * InternalServerException
297//   There were unexpected errors from the server.
298//
299//   * ResourceNotFoundException
300//   A Workbook, Table, App, Screen or Screen Automation was not found with the
301//   given ID.
302//
303//   * ServiceUnavailableException
304//   Remote service is unreachable.
305//
306//   * ValidationException
307//   Request is invalid. The message in the response contains details on why the
308//   request is invalid.
309//
310//   * RequestTimeoutException
311//   The request timed out.
312//
313//   * ThrottlingException
314//   Tps(transactions per second) rate reached.
315//
316// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchUpdateTableRows
317func (c *Honeycode) BatchUpdateTableRows(input *BatchUpdateTableRowsInput) (*BatchUpdateTableRowsOutput, error) {
318	req, out := c.BatchUpdateTableRowsRequest(input)
319	return out, req.Send()
320}
321
322// BatchUpdateTableRowsWithContext is the same as BatchUpdateTableRows with the addition of
323// the ability to pass a context and additional request options.
324//
325// See BatchUpdateTableRows for details on how to use this API operation.
326//
327// The context must be non-nil and will be used for request cancellation. If
328// the context is nil a panic will occur. In the future the SDK may create
329// sub-contexts for http.Requests. See https://golang.org/pkg/context/
330// for more information on using Contexts.
331func (c *Honeycode) BatchUpdateTableRowsWithContext(ctx aws.Context, input *BatchUpdateTableRowsInput, opts ...request.Option) (*BatchUpdateTableRowsOutput, error) {
332	req, out := c.BatchUpdateTableRowsRequest(input)
333	req.SetContext(ctx)
334	req.ApplyOptions(opts...)
335	return out, req.Send()
336}
337
338const opBatchUpsertTableRows = "BatchUpsertTableRows"
339
340// BatchUpsertTableRowsRequest generates a "aws/request.Request" representing the
341// client's request for the BatchUpsertTableRows operation. The "output" return
342// value will be populated with the request's response once the request completes
343// successfully.
344//
345// Use "Send" method on the returned Request to send the API call to the service.
346// the "output" return value is not valid until after Send returns without error.
347//
348// See BatchUpsertTableRows for more information on using the BatchUpsertTableRows
349// API call, and error handling.
350//
351// This method is useful when you want to inject custom logic or configuration
352// into the SDK's request lifecycle. Such as custom headers, or retry logic.
353//
354//
355//    // Example sending a request using the BatchUpsertTableRowsRequest method.
356//    req, resp := client.BatchUpsertTableRowsRequest(params)
357//
358//    err := req.Send()
359//    if err == nil { // resp is now filled
360//        fmt.Println(resp)
361//    }
362//
363// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchUpsertTableRows
364func (c *Honeycode) BatchUpsertTableRowsRequest(input *BatchUpsertTableRowsInput) (req *request.Request, output *BatchUpsertTableRowsOutput) {
365	op := &request.Operation{
366		Name:       opBatchUpsertTableRows,
367		HTTPMethod: "POST",
368		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/rows/batchupsert",
369	}
370
371	if input == nil {
372		input = &BatchUpsertTableRowsInput{}
373	}
374
375	output = &BatchUpsertTableRowsOutput{}
376	req = c.newRequest(op, input, output)
377	return
378}
379
380// BatchUpsertTableRows API operation for Amazon Honeycode.
381//
382// The BatchUpsertTableRows API allows you to upsert one or more rows in a table.
383// The upsert operation takes a filter expression as input and evaluates it
384// to find matching rows on the destination table. If matching rows are found,
385// it will update the cells in the matching rows to new values specified in
386// the request. If no matching rows are found, a new row is added at the end
387// of the table and the cells in that row are set to the new values specified
388// in the request.
389//
390// You can specify the values to set in some or all of the columns in the table
391// for the matching or newly appended rows. If a column is not explicitly specified
392// for a particular row, then that column will not be updated for that row.
393// To clear out the data in a specific cell, you need to set the value as an
394// empty string ("").
395//
396// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
397// with awserr.Error's Code and Message methods to get detailed information about
398// the error.
399//
400// See the AWS API reference guide for Amazon Honeycode's
401// API operation BatchUpsertTableRows for usage and error information.
402//
403// Returned Error Types:
404//   * AccessDeniedException
405//   You do not have sufficient access to perform this action. Check that the
406//   workbook is owned by you and your IAM policy allows access to the resource
407//   in the request.
408//
409//   * InternalServerException
410//   There were unexpected errors from the server.
411//
412//   * RequestTimeoutException
413//   The request timed out.
414//
415//   * ResourceNotFoundException
416//   A Workbook, Table, App, Screen or Screen Automation was not found with the
417//   given ID.
418//
419//   * ServiceQuotaExceededException
420//   The request caused service quota to be breached.
421//
422//   * ServiceUnavailableException
423//   Remote service is unreachable.
424//
425//   * ThrottlingException
426//   Tps(transactions per second) rate reached.
427//
428//   * ValidationException
429//   Request is invalid. The message in the response contains details on why the
430//   request is invalid.
431//
432// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/BatchUpsertTableRows
433func (c *Honeycode) BatchUpsertTableRows(input *BatchUpsertTableRowsInput) (*BatchUpsertTableRowsOutput, error) {
434	req, out := c.BatchUpsertTableRowsRequest(input)
435	return out, req.Send()
436}
437
438// BatchUpsertTableRowsWithContext is the same as BatchUpsertTableRows with the addition of
439// the ability to pass a context and additional request options.
440//
441// See BatchUpsertTableRows for details on how to use this API operation.
442//
443// The context must be non-nil and will be used for request cancellation. If
444// the context is nil a panic will occur. In the future the SDK may create
445// sub-contexts for http.Requests. See https://golang.org/pkg/context/
446// for more information on using Contexts.
447func (c *Honeycode) BatchUpsertTableRowsWithContext(ctx aws.Context, input *BatchUpsertTableRowsInput, opts ...request.Option) (*BatchUpsertTableRowsOutput, error) {
448	req, out := c.BatchUpsertTableRowsRequest(input)
449	req.SetContext(ctx)
450	req.ApplyOptions(opts...)
451	return out, req.Send()
452}
453
454const opDescribeTableDataImportJob = "DescribeTableDataImportJob"
455
456// DescribeTableDataImportJobRequest generates a "aws/request.Request" representing the
457// client's request for the DescribeTableDataImportJob operation. The "output" return
458// value will be populated with the request's response once the request completes
459// successfully.
460//
461// Use "Send" method on the returned Request to send the API call to the service.
462// the "output" return value is not valid until after Send returns without error.
463//
464// See DescribeTableDataImportJob for more information on using the DescribeTableDataImportJob
465// API call, and error handling.
466//
467// This method is useful when you want to inject custom logic or configuration
468// into the SDK's request lifecycle. Such as custom headers, or retry logic.
469//
470//
471//    // Example sending a request using the DescribeTableDataImportJobRequest method.
472//    req, resp := client.DescribeTableDataImportJobRequest(params)
473//
474//    err := req.Send()
475//    if err == nil { // resp is now filled
476//        fmt.Println(resp)
477//    }
478//
479// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/DescribeTableDataImportJob
480func (c *Honeycode) DescribeTableDataImportJobRequest(input *DescribeTableDataImportJobInput) (req *request.Request, output *DescribeTableDataImportJobOutput) {
481	op := &request.Operation{
482		Name:       opDescribeTableDataImportJob,
483		HTTPMethod: "GET",
484		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/import/{jobId}",
485	}
486
487	if input == nil {
488		input = &DescribeTableDataImportJobInput{}
489	}
490
491	output = &DescribeTableDataImportJobOutput{}
492	req = c.newRequest(op, input, output)
493	return
494}
495
496// DescribeTableDataImportJob API operation for Amazon Honeycode.
497//
498// The DescribeTableDataImportJob API allows you to retrieve the status and
499// details of a table data import job.
500//
501// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
502// with awserr.Error's Code and Message methods to get detailed information about
503// the error.
504//
505// See the AWS API reference guide for Amazon Honeycode's
506// API operation DescribeTableDataImportJob for usage and error information.
507//
508// Returned Error Types:
509//   * AccessDeniedException
510//   You do not have sufficient access to perform this action. Check that the
511//   workbook is owned by you and your IAM policy allows access to the resource
512//   in the request.
513//
514//   * InternalServerException
515//   There were unexpected errors from the server.
516//
517//   * ResourceNotFoundException
518//   A Workbook, Table, App, Screen or Screen Automation was not found with the
519//   given ID.
520//
521//   * ServiceUnavailableException
522//   Remote service is unreachable.
523//
524//   * ThrottlingException
525//   Tps(transactions per second) rate reached.
526//
527//   * ValidationException
528//   Request is invalid. The message in the response contains details on why the
529//   request is invalid.
530//
531// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/DescribeTableDataImportJob
532func (c *Honeycode) DescribeTableDataImportJob(input *DescribeTableDataImportJobInput) (*DescribeTableDataImportJobOutput, error) {
533	req, out := c.DescribeTableDataImportJobRequest(input)
534	return out, req.Send()
535}
536
537// DescribeTableDataImportJobWithContext is the same as DescribeTableDataImportJob with the addition of
538// the ability to pass a context and additional request options.
539//
540// See DescribeTableDataImportJob for details on how to use this API operation.
541//
542// The context must be non-nil and will be used for request cancellation. If
543// the context is nil a panic will occur. In the future the SDK may create
544// sub-contexts for http.Requests. See https://golang.org/pkg/context/
545// for more information on using Contexts.
546func (c *Honeycode) DescribeTableDataImportJobWithContext(ctx aws.Context, input *DescribeTableDataImportJobInput, opts ...request.Option) (*DescribeTableDataImportJobOutput, error) {
547	req, out := c.DescribeTableDataImportJobRequest(input)
548	req.SetContext(ctx)
549	req.ApplyOptions(opts...)
550	return out, req.Send()
551}
552
553const opGetScreenData = "GetScreenData"
554
555// GetScreenDataRequest generates a "aws/request.Request" representing the
556// client's request for the GetScreenData operation. The "output" return
557// value will be populated with the request's response once the request completes
558// successfully.
559//
560// Use "Send" method on the returned Request to send the API call to the service.
561// the "output" return value is not valid until after Send returns without error.
562//
563// See GetScreenData for more information on using the GetScreenData
564// API call, and error handling.
565//
566// This method is useful when you want to inject custom logic or configuration
567// into the SDK's request lifecycle. Such as custom headers, or retry logic.
568//
569//
570//    // Example sending a request using the GetScreenDataRequest method.
571//    req, resp := client.GetScreenDataRequest(params)
572//
573//    err := req.Send()
574//    if err == nil { // resp is now filled
575//        fmt.Println(resp)
576//    }
577//
578// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/GetScreenData
579func (c *Honeycode) GetScreenDataRequest(input *GetScreenDataInput) (req *request.Request, output *GetScreenDataOutput) {
580	op := &request.Operation{
581		Name:       opGetScreenData,
582		HTTPMethod: "POST",
583		HTTPPath:   "/screendata",
584	}
585
586	if input == nil {
587		input = &GetScreenDataInput{}
588	}
589
590	output = &GetScreenDataOutput{}
591	req = c.newRequest(op, input, output)
592	return
593}
594
595// GetScreenData API operation for Amazon Honeycode.
596//
597// The GetScreenData API allows retrieval of data from a screen in a Honeycode
598// app. The API allows setting local variables in the screen to filter, sort
599// or otherwise affect what will be displayed on the screen.
600//
601// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
602// with awserr.Error's Code and Message methods to get detailed information about
603// the error.
604//
605// See the AWS API reference guide for Amazon Honeycode's
606// API operation GetScreenData for usage and error information.
607//
608// Returned Error Types:
609//   * AccessDeniedException
610//   You do not have sufficient access to perform this action. Check that the
611//   workbook is owned by you and your IAM policy allows access to the resource
612//   in the request.
613//
614//   * InternalServerException
615//   There were unexpected errors from the server.
616//
617//   * RequestTimeoutException
618//   The request timed out.
619//
620//   * ResourceNotFoundException
621//   A Workbook, Table, App, Screen or Screen Automation was not found with the
622//   given ID.
623//
624//   * ServiceUnavailableException
625//   Remote service is unreachable.
626//
627//   * ThrottlingException
628//   Tps(transactions per second) rate reached.
629//
630//   * ValidationException
631//   Request is invalid. The message in the response contains details on why the
632//   request is invalid.
633//
634// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/GetScreenData
635func (c *Honeycode) GetScreenData(input *GetScreenDataInput) (*GetScreenDataOutput, error) {
636	req, out := c.GetScreenDataRequest(input)
637	return out, req.Send()
638}
639
640// GetScreenDataWithContext is the same as GetScreenData with the addition of
641// the ability to pass a context and additional request options.
642//
643// See GetScreenData for details on how to use this API operation.
644//
645// The context must be non-nil and will be used for request cancellation. If
646// the context is nil a panic will occur. In the future the SDK may create
647// sub-contexts for http.Requests. See https://golang.org/pkg/context/
648// for more information on using Contexts.
649func (c *Honeycode) GetScreenDataWithContext(ctx aws.Context, input *GetScreenDataInput, opts ...request.Option) (*GetScreenDataOutput, error) {
650	req, out := c.GetScreenDataRequest(input)
651	req.SetContext(ctx)
652	req.ApplyOptions(opts...)
653	return out, req.Send()
654}
655
656const opInvokeScreenAutomation = "InvokeScreenAutomation"
657
658// InvokeScreenAutomationRequest generates a "aws/request.Request" representing the
659// client's request for the InvokeScreenAutomation operation. The "output" return
660// value will be populated with the request's response once the request completes
661// successfully.
662//
663// Use "Send" method on the returned Request to send the API call to the service.
664// the "output" return value is not valid until after Send returns without error.
665//
666// See InvokeScreenAutomation for more information on using the InvokeScreenAutomation
667// API call, and error handling.
668//
669// This method is useful when you want to inject custom logic or configuration
670// into the SDK's request lifecycle. Such as custom headers, or retry logic.
671//
672//
673//    // Example sending a request using the InvokeScreenAutomationRequest method.
674//    req, resp := client.InvokeScreenAutomationRequest(params)
675//
676//    err := req.Send()
677//    if err == nil { // resp is now filled
678//        fmt.Println(resp)
679//    }
680//
681// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/InvokeScreenAutomation
682func (c *Honeycode) InvokeScreenAutomationRequest(input *InvokeScreenAutomationInput) (req *request.Request, output *InvokeScreenAutomationOutput) {
683	op := &request.Operation{
684		Name:       opInvokeScreenAutomation,
685		HTTPMethod: "POST",
686		HTTPPath:   "/workbooks/{workbookId}/apps/{appId}/screens/{screenId}/automations/{automationId}",
687	}
688
689	if input == nil {
690		input = &InvokeScreenAutomationInput{}
691	}
692
693	output = &InvokeScreenAutomationOutput{}
694	req = c.newRequest(op, input, output)
695	return
696}
697
698// InvokeScreenAutomation API operation for Amazon Honeycode.
699//
700// The InvokeScreenAutomation API allows invoking an action defined in a screen
701// in a Honeycode app. The API allows setting local variables, which can then
702// be used in the automation being invoked. This allows automating the Honeycode
703// app interactions to write, update or delete data in the workbook.
704//
705// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
706// with awserr.Error's Code and Message methods to get detailed information about
707// the error.
708//
709// See the AWS API reference guide for Amazon Honeycode's
710// API operation InvokeScreenAutomation for usage and error information.
711//
712// Returned Error Types:
713//   * AccessDeniedException
714//   You do not have sufficient access to perform this action. Check that the
715//   workbook is owned by you and your IAM policy allows access to the resource
716//   in the request.
717//
718//   * InternalServerException
719//   There were unexpected errors from the server.
720//
721//   * ResourceNotFoundException
722//   A Workbook, Table, App, Screen or Screen Automation was not found with the
723//   given ID.
724//
725//   * ValidationException
726//   Request is invalid. The message in the response contains details on why the
727//   request is invalid.
728//
729//   * ThrottlingException
730//   Tps(transactions per second) rate reached.
731//
732//   * ServiceUnavailableException
733//   Remote service is unreachable.
734//
735//   * AutomationExecutionException
736//   The automation execution did not end successfully.
737//
738//   * AutomationExecutionTimeoutException
739//   The automation execution timed out.
740//
741//   * RequestTimeoutException
742//   The request timed out.
743//
744// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/InvokeScreenAutomation
745func (c *Honeycode) InvokeScreenAutomation(input *InvokeScreenAutomationInput) (*InvokeScreenAutomationOutput, error) {
746	req, out := c.InvokeScreenAutomationRequest(input)
747	return out, req.Send()
748}
749
750// InvokeScreenAutomationWithContext is the same as InvokeScreenAutomation with the addition of
751// the ability to pass a context and additional request options.
752//
753// See InvokeScreenAutomation for details on how to use this API operation.
754//
755// The context must be non-nil and will be used for request cancellation. If
756// the context is nil a panic will occur. In the future the SDK may create
757// sub-contexts for http.Requests. See https://golang.org/pkg/context/
758// for more information on using Contexts.
759func (c *Honeycode) InvokeScreenAutomationWithContext(ctx aws.Context, input *InvokeScreenAutomationInput, opts ...request.Option) (*InvokeScreenAutomationOutput, error) {
760	req, out := c.InvokeScreenAutomationRequest(input)
761	req.SetContext(ctx)
762	req.ApplyOptions(opts...)
763	return out, req.Send()
764}
765
766const opListTableColumns = "ListTableColumns"
767
768// ListTableColumnsRequest generates a "aws/request.Request" representing the
769// client's request for the ListTableColumns operation. The "output" return
770// value will be populated with the request's response once the request completes
771// successfully.
772//
773// Use "Send" method on the returned Request to send the API call to the service.
774// the "output" return value is not valid until after Send returns without error.
775//
776// See ListTableColumns for more information on using the ListTableColumns
777// API call, and error handling.
778//
779// This method is useful when you want to inject custom logic or configuration
780// into the SDK's request lifecycle. Such as custom headers, or retry logic.
781//
782//
783//    // Example sending a request using the ListTableColumnsRequest method.
784//    req, resp := client.ListTableColumnsRequest(params)
785//
786//    err := req.Send()
787//    if err == nil { // resp is now filled
788//        fmt.Println(resp)
789//    }
790//
791// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/ListTableColumns
792func (c *Honeycode) ListTableColumnsRequest(input *ListTableColumnsInput) (req *request.Request, output *ListTableColumnsOutput) {
793	op := &request.Operation{
794		Name:       opListTableColumns,
795		HTTPMethod: "GET",
796		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/columns",
797		Paginator: &request.Paginator{
798			InputTokens:     []string{"nextToken"},
799			OutputTokens:    []string{"nextToken"},
800			LimitToken:      "",
801			TruncationToken: "",
802		},
803	}
804
805	if input == nil {
806		input = &ListTableColumnsInput{}
807	}
808
809	output = &ListTableColumnsOutput{}
810	req = c.newRequest(op, input, output)
811	return
812}
813
814// ListTableColumns API operation for Amazon Honeycode.
815//
816// The ListTableColumns API allows you to retrieve a list of all the columns
817// in a table in a workbook.
818//
819// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
820// with awserr.Error's Code and Message methods to get detailed information about
821// the error.
822//
823// See the AWS API reference guide for Amazon Honeycode's
824// API operation ListTableColumns for usage and error information.
825//
826// Returned Error Types:
827//   * AccessDeniedException
828//   You do not have sufficient access to perform this action. Check that the
829//   workbook is owned by you and your IAM policy allows access to the resource
830//   in the request.
831//
832//   * InternalServerException
833//   There were unexpected errors from the server.
834//
835//   * RequestTimeoutException
836//   The request timed out.
837//
838//   * ResourceNotFoundException
839//   A Workbook, Table, App, Screen or Screen Automation was not found with the
840//   given ID.
841//
842//   * ServiceUnavailableException
843//   Remote service is unreachable.
844//
845//   * ThrottlingException
846//   Tps(transactions per second) rate reached.
847//
848//   * ValidationException
849//   Request is invalid. The message in the response contains details on why the
850//   request is invalid.
851//
852// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/ListTableColumns
853func (c *Honeycode) ListTableColumns(input *ListTableColumnsInput) (*ListTableColumnsOutput, error) {
854	req, out := c.ListTableColumnsRequest(input)
855	return out, req.Send()
856}
857
858// ListTableColumnsWithContext is the same as ListTableColumns with the addition of
859// the ability to pass a context and additional request options.
860//
861// See ListTableColumns for details on how to use this API operation.
862//
863// The context must be non-nil and will be used for request cancellation. If
864// the context is nil a panic will occur. In the future the SDK may create
865// sub-contexts for http.Requests. See https://golang.org/pkg/context/
866// for more information on using Contexts.
867func (c *Honeycode) ListTableColumnsWithContext(ctx aws.Context, input *ListTableColumnsInput, opts ...request.Option) (*ListTableColumnsOutput, error) {
868	req, out := c.ListTableColumnsRequest(input)
869	req.SetContext(ctx)
870	req.ApplyOptions(opts...)
871	return out, req.Send()
872}
873
874// ListTableColumnsPages iterates over the pages of a ListTableColumns operation,
875// calling the "fn" function with the response data for each page. To stop
876// iterating, return false from the fn function.
877//
878// See ListTableColumns method for more information on how to use this operation.
879//
880// Note: This operation can generate multiple requests to a service.
881//
882//    // Example iterating over at most 3 pages of a ListTableColumns operation.
883//    pageNum := 0
884//    err := client.ListTableColumnsPages(params,
885//        func(page *honeycode.ListTableColumnsOutput, lastPage bool) bool {
886//            pageNum++
887//            fmt.Println(page)
888//            return pageNum <= 3
889//        })
890//
891func (c *Honeycode) ListTableColumnsPages(input *ListTableColumnsInput, fn func(*ListTableColumnsOutput, bool) bool) error {
892	return c.ListTableColumnsPagesWithContext(aws.BackgroundContext(), input, fn)
893}
894
895// ListTableColumnsPagesWithContext same as ListTableColumnsPages except
896// it takes a Context and allows setting request options on the pages.
897//
898// The context must be non-nil and will be used for request cancellation. If
899// the context is nil a panic will occur. In the future the SDK may create
900// sub-contexts for http.Requests. See https://golang.org/pkg/context/
901// for more information on using Contexts.
902func (c *Honeycode) ListTableColumnsPagesWithContext(ctx aws.Context, input *ListTableColumnsInput, fn func(*ListTableColumnsOutput, bool) bool, opts ...request.Option) error {
903	p := request.Pagination{
904		NewRequest: func() (*request.Request, error) {
905			var inCpy *ListTableColumnsInput
906			if input != nil {
907				tmp := *input
908				inCpy = &tmp
909			}
910			req, _ := c.ListTableColumnsRequest(inCpy)
911			req.SetContext(ctx)
912			req.ApplyOptions(opts...)
913			return req, nil
914		},
915	}
916
917	for p.Next() {
918		if !fn(p.Page().(*ListTableColumnsOutput), !p.HasNextPage()) {
919			break
920		}
921	}
922
923	return p.Err()
924}
925
926const opListTableRows = "ListTableRows"
927
928// ListTableRowsRequest generates a "aws/request.Request" representing the
929// client's request for the ListTableRows operation. The "output" return
930// value will be populated with the request's response once the request completes
931// successfully.
932//
933// Use "Send" method on the returned Request to send the API call to the service.
934// the "output" return value is not valid until after Send returns without error.
935//
936// See ListTableRows for more information on using the ListTableRows
937// API call, and error handling.
938//
939// This method is useful when you want to inject custom logic or configuration
940// into the SDK's request lifecycle. Such as custom headers, or retry logic.
941//
942//
943//    // Example sending a request using the ListTableRowsRequest method.
944//    req, resp := client.ListTableRowsRequest(params)
945//
946//    err := req.Send()
947//    if err == nil { // resp is now filled
948//        fmt.Println(resp)
949//    }
950//
951// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/ListTableRows
952func (c *Honeycode) ListTableRowsRequest(input *ListTableRowsInput) (req *request.Request, output *ListTableRowsOutput) {
953	op := &request.Operation{
954		Name:       opListTableRows,
955		HTTPMethod: "POST",
956		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/rows/list",
957		Paginator: &request.Paginator{
958			InputTokens:     []string{"nextToken"},
959			OutputTokens:    []string{"nextToken"},
960			LimitToken:      "maxResults",
961			TruncationToken: "",
962		},
963	}
964
965	if input == nil {
966		input = &ListTableRowsInput{}
967	}
968
969	output = &ListTableRowsOutput{}
970	req = c.newRequest(op, input, output)
971	return
972}
973
974// ListTableRows API operation for Amazon Honeycode.
975//
976// The ListTableRows API allows you to retrieve a list of all the rows in a
977// table in a workbook.
978//
979// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
980// with awserr.Error's Code and Message methods to get detailed information about
981// the error.
982//
983// See the AWS API reference guide for Amazon Honeycode's
984// API operation ListTableRows for usage and error information.
985//
986// Returned Error Types:
987//   * AccessDeniedException
988//   You do not have sufficient access to perform this action. Check that the
989//   workbook is owned by you and your IAM policy allows access to the resource
990//   in the request.
991//
992//   * InternalServerException
993//   There were unexpected errors from the server.
994//
995//   * ResourceNotFoundException
996//   A Workbook, Table, App, Screen or Screen Automation was not found with the
997//   given ID.
998//
999//   * ServiceUnavailableException
1000//   Remote service is unreachable.
1001//
1002//   * ValidationException
1003//   Request is invalid. The message in the response contains details on why the
1004//   request is invalid.
1005//
1006//   * RequestTimeoutException
1007//   The request timed out.
1008//
1009//   * ThrottlingException
1010//   Tps(transactions per second) rate reached.
1011//
1012// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/ListTableRows
1013func (c *Honeycode) ListTableRows(input *ListTableRowsInput) (*ListTableRowsOutput, error) {
1014	req, out := c.ListTableRowsRequest(input)
1015	return out, req.Send()
1016}
1017
1018// ListTableRowsWithContext is the same as ListTableRows with the addition of
1019// the ability to pass a context and additional request options.
1020//
1021// See ListTableRows for details on how to use this API operation.
1022//
1023// The context must be non-nil and will be used for request cancellation. If
1024// the context is nil a panic will occur. In the future the SDK may create
1025// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1026// for more information on using Contexts.
1027func (c *Honeycode) ListTableRowsWithContext(ctx aws.Context, input *ListTableRowsInput, opts ...request.Option) (*ListTableRowsOutput, error) {
1028	req, out := c.ListTableRowsRequest(input)
1029	req.SetContext(ctx)
1030	req.ApplyOptions(opts...)
1031	return out, req.Send()
1032}
1033
1034// ListTableRowsPages iterates over the pages of a ListTableRows operation,
1035// calling the "fn" function with the response data for each page. To stop
1036// iterating, return false from the fn function.
1037//
1038// See ListTableRows method for more information on how to use this operation.
1039//
1040// Note: This operation can generate multiple requests to a service.
1041//
1042//    // Example iterating over at most 3 pages of a ListTableRows operation.
1043//    pageNum := 0
1044//    err := client.ListTableRowsPages(params,
1045//        func(page *honeycode.ListTableRowsOutput, lastPage bool) bool {
1046//            pageNum++
1047//            fmt.Println(page)
1048//            return pageNum <= 3
1049//        })
1050//
1051func (c *Honeycode) ListTableRowsPages(input *ListTableRowsInput, fn func(*ListTableRowsOutput, bool) bool) error {
1052	return c.ListTableRowsPagesWithContext(aws.BackgroundContext(), input, fn)
1053}
1054
1055// ListTableRowsPagesWithContext same as ListTableRowsPages except
1056// it takes a Context and allows setting request options on the pages.
1057//
1058// The context must be non-nil and will be used for request cancellation. If
1059// the context is nil a panic will occur. In the future the SDK may create
1060// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1061// for more information on using Contexts.
1062func (c *Honeycode) ListTableRowsPagesWithContext(ctx aws.Context, input *ListTableRowsInput, fn func(*ListTableRowsOutput, bool) bool, opts ...request.Option) error {
1063	p := request.Pagination{
1064		NewRequest: func() (*request.Request, error) {
1065			var inCpy *ListTableRowsInput
1066			if input != nil {
1067				tmp := *input
1068				inCpy = &tmp
1069			}
1070			req, _ := c.ListTableRowsRequest(inCpy)
1071			req.SetContext(ctx)
1072			req.ApplyOptions(opts...)
1073			return req, nil
1074		},
1075	}
1076
1077	for p.Next() {
1078		if !fn(p.Page().(*ListTableRowsOutput), !p.HasNextPage()) {
1079			break
1080		}
1081	}
1082
1083	return p.Err()
1084}
1085
1086const opListTables = "ListTables"
1087
1088// ListTablesRequest generates a "aws/request.Request" representing the
1089// client's request for the ListTables operation. The "output" return
1090// value will be populated with the request's response once the request completes
1091// successfully.
1092//
1093// Use "Send" method on the returned Request to send the API call to the service.
1094// the "output" return value is not valid until after Send returns without error.
1095//
1096// See ListTables for more information on using the ListTables
1097// API call, and error handling.
1098//
1099// This method is useful when you want to inject custom logic or configuration
1100// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1101//
1102//
1103//    // Example sending a request using the ListTablesRequest method.
1104//    req, resp := client.ListTablesRequest(params)
1105//
1106//    err := req.Send()
1107//    if err == nil { // resp is now filled
1108//        fmt.Println(resp)
1109//    }
1110//
1111// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/ListTables
1112func (c *Honeycode) ListTablesRequest(input *ListTablesInput) (req *request.Request, output *ListTablesOutput) {
1113	op := &request.Operation{
1114		Name:       opListTables,
1115		HTTPMethod: "GET",
1116		HTTPPath:   "/workbooks/{workbookId}/tables",
1117		Paginator: &request.Paginator{
1118			InputTokens:     []string{"nextToken"},
1119			OutputTokens:    []string{"nextToken"},
1120			LimitToken:      "maxResults",
1121			TruncationToken: "",
1122		},
1123	}
1124
1125	if input == nil {
1126		input = &ListTablesInput{}
1127	}
1128
1129	output = &ListTablesOutput{}
1130	req = c.newRequest(op, input, output)
1131	return
1132}
1133
1134// ListTables API operation for Amazon Honeycode.
1135//
1136// The ListTables API allows you to retrieve a list of all the tables in a workbook.
1137//
1138// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1139// with awserr.Error's Code and Message methods to get detailed information about
1140// the error.
1141//
1142// See the AWS API reference guide for Amazon Honeycode's
1143// API operation ListTables for usage and error information.
1144//
1145// Returned Error Types:
1146//   * AccessDeniedException
1147//   You do not have sufficient access to perform this action. Check that the
1148//   workbook is owned by you and your IAM policy allows access to the resource
1149//   in the request.
1150//
1151//   * InternalServerException
1152//   There were unexpected errors from the server.
1153//
1154//   * RequestTimeoutException
1155//   The request timed out.
1156//
1157//   * ResourceNotFoundException
1158//   A Workbook, Table, App, Screen or Screen Automation was not found with the
1159//   given ID.
1160//
1161//   * ServiceUnavailableException
1162//   Remote service is unreachable.
1163//
1164//   * ThrottlingException
1165//   Tps(transactions per second) rate reached.
1166//
1167//   * ValidationException
1168//   Request is invalid. The message in the response contains details on why the
1169//   request is invalid.
1170//
1171// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/ListTables
1172func (c *Honeycode) ListTables(input *ListTablesInput) (*ListTablesOutput, error) {
1173	req, out := c.ListTablesRequest(input)
1174	return out, req.Send()
1175}
1176
1177// ListTablesWithContext is the same as ListTables with the addition of
1178// the ability to pass a context and additional request options.
1179//
1180// See ListTables for details on how to use this API operation.
1181//
1182// The context must be non-nil and will be used for request cancellation. If
1183// the context is nil a panic will occur. In the future the SDK may create
1184// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1185// for more information on using Contexts.
1186func (c *Honeycode) ListTablesWithContext(ctx aws.Context, input *ListTablesInput, opts ...request.Option) (*ListTablesOutput, error) {
1187	req, out := c.ListTablesRequest(input)
1188	req.SetContext(ctx)
1189	req.ApplyOptions(opts...)
1190	return out, req.Send()
1191}
1192
1193// ListTablesPages iterates over the pages of a ListTables operation,
1194// calling the "fn" function with the response data for each page. To stop
1195// iterating, return false from the fn function.
1196//
1197// See ListTables method for more information on how to use this operation.
1198//
1199// Note: This operation can generate multiple requests to a service.
1200//
1201//    // Example iterating over at most 3 pages of a ListTables operation.
1202//    pageNum := 0
1203//    err := client.ListTablesPages(params,
1204//        func(page *honeycode.ListTablesOutput, lastPage bool) bool {
1205//            pageNum++
1206//            fmt.Println(page)
1207//            return pageNum <= 3
1208//        })
1209//
1210func (c *Honeycode) ListTablesPages(input *ListTablesInput, fn func(*ListTablesOutput, bool) bool) error {
1211	return c.ListTablesPagesWithContext(aws.BackgroundContext(), input, fn)
1212}
1213
1214// ListTablesPagesWithContext same as ListTablesPages except
1215// it takes a Context and allows setting request options on the pages.
1216//
1217// The context must be non-nil and will be used for request cancellation. If
1218// the context is nil a panic will occur. In the future the SDK may create
1219// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1220// for more information on using Contexts.
1221func (c *Honeycode) ListTablesPagesWithContext(ctx aws.Context, input *ListTablesInput, fn func(*ListTablesOutput, bool) bool, opts ...request.Option) error {
1222	p := request.Pagination{
1223		NewRequest: func() (*request.Request, error) {
1224			var inCpy *ListTablesInput
1225			if input != nil {
1226				tmp := *input
1227				inCpy = &tmp
1228			}
1229			req, _ := c.ListTablesRequest(inCpy)
1230			req.SetContext(ctx)
1231			req.ApplyOptions(opts...)
1232			return req, nil
1233		},
1234	}
1235
1236	for p.Next() {
1237		if !fn(p.Page().(*ListTablesOutput), !p.HasNextPage()) {
1238			break
1239		}
1240	}
1241
1242	return p.Err()
1243}
1244
1245const opQueryTableRows = "QueryTableRows"
1246
1247// QueryTableRowsRequest generates a "aws/request.Request" representing the
1248// client's request for the QueryTableRows operation. The "output" return
1249// value will be populated with the request's response once the request completes
1250// successfully.
1251//
1252// Use "Send" method on the returned Request to send the API call to the service.
1253// the "output" return value is not valid until after Send returns without error.
1254//
1255// See QueryTableRows for more information on using the QueryTableRows
1256// API call, and error handling.
1257//
1258// This method is useful when you want to inject custom logic or configuration
1259// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1260//
1261//
1262//    // Example sending a request using the QueryTableRowsRequest method.
1263//    req, resp := client.QueryTableRowsRequest(params)
1264//
1265//    err := req.Send()
1266//    if err == nil { // resp is now filled
1267//        fmt.Println(resp)
1268//    }
1269//
1270// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/QueryTableRows
1271func (c *Honeycode) QueryTableRowsRequest(input *QueryTableRowsInput) (req *request.Request, output *QueryTableRowsOutput) {
1272	op := &request.Operation{
1273		Name:       opQueryTableRows,
1274		HTTPMethod: "POST",
1275		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/rows/query",
1276		Paginator: &request.Paginator{
1277			InputTokens:     []string{"nextToken"},
1278			OutputTokens:    []string{"nextToken"},
1279			LimitToken:      "maxResults",
1280			TruncationToken: "",
1281		},
1282	}
1283
1284	if input == nil {
1285		input = &QueryTableRowsInput{}
1286	}
1287
1288	output = &QueryTableRowsOutput{}
1289	req = c.newRequest(op, input, output)
1290	return
1291}
1292
1293// QueryTableRows API operation for Amazon Honeycode.
1294//
1295// The QueryTableRows API allows you to use a filter formula to query for specific
1296// rows in a table.
1297//
1298// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1299// with awserr.Error's Code and Message methods to get detailed information about
1300// the error.
1301//
1302// See the AWS API reference guide for Amazon Honeycode's
1303// API operation QueryTableRows for usage and error information.
1304//
1305// Returned Error Types:
1306//   * AccessDeniedException
1307//   You do not have sufficient access to perform this action. Check that the
1308//   workbook is owned by you and your IAM policy allows access to the resource
1309//   in the request.
1310//
1311//   * InternalServerException
1312//   There were unexpected errors from the server.
1313//
1314//   * RequestTimeoutException
1315//   The request timed out.
1316//
1317//   * ResourceNotFoundException
1318//   A Workbook, Table, App, Screen or Screen Automation was not found with the
1319//   given ID.
1320//
1321//   * ServiceUnavailableException
1322//   Remote service is unreachable.
1323//
1324//   * ThrottlingException
1325//   Tps(transactions per second) rate reached.
1326//
1327//   * ValidationException
1328//   Request is invalid. The message in the response contains details on why the
1329//   request is invalid.
1330//
1331// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/QueryTableRows
1332func (c *Honeycode) QueryTableRows(input *QueryTableRowsInput) (*QueryTableRowsOutput, error) {
1333	req, out := c.QueryTableRowsRequest(input)
1334	return out, req.Send()
1335}
1336
1337// QueryTableRowsWithContext is the same as QueryTableRows with the addition of
1338// the ability to pass a context and additional request options.
1339//
1340// See QueryTableRows for details on how to use this API operation.
1341//
1342// The context must be non-nil and will be used for request cancellation. If
1343// the context is nil a panic will occur. In the future the SDK may create
1344// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1345// for more information on using Contexts.
1346func (c *Honeycode) QueryTableRowsWithContext(ctx aws.Context, input *QueryTableRowsInput, opts ...request.Option) (*QueryTableRowsOutput, error) {
1347	req, out := c.QueryTableRowsRequest(input)
1348	req.SetContext(ctx)
1349	req.ApplyOptions(opts...)
1350	return out, req.Send()
1351}
1352
1353// QueryTableRowsPages iterates over the pages of a QueryTableRows operation,
1354// calling the "fn" function with the response data for each page. To stop
1355// iterating, return false from the fn function.
1356//
1357// See QueryTableRows method for more information on how to use this operation.
1358//
1359// Note: This operation can generate multiple requests to a service.
1360//
1361//    // Example iterating over at most 3 pages of a QueryTableRows operation.
1362//    pageNum := 0
1363//    err := client.QueryTableRowsPages(params,
1364//        func(page *honeycode.QueryTableRowsOutput, lastPage bool) bool {
1365//            pageNum++
1366//            fmt.Println(page)
1367//            return pageNum <= 3
1368//        })
1369//
1370func (c *Honeycode) QueryTableRowsPages(input *QueryTableRowsInput, fn func(*QueryTableRowsOutput, bool) bool) error {
1371	return c.QueryTableRowsPagesWithContext(aws.BackgroundContext(), input, fn)
1372}
1373
1374// QueryTableRowsPagesWithContext same as QueryTableRowsPages except
1375// it takes a Context and allows setting request options on the pages.
1376//
1377// The context must be non-nil and will be used for request cancellation. If
1378// the context is nil a panic will occur. In the future the SDK may create
1379// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1380// for more information on using Contexts.
1381func (c *Honeycode) QueryTableRowsPagesWithContext(ctx aws.Context, input *QueryTableRowsInput, fn func(*QueryTableRowsOutput, bool) bool, opts ...request.Option) error {
1382	p := request.Pagination{
1383		NewRequest: func() (*request.Request, error) {
1384			var inCpy *QueryTableRowsInput
1385			if input != nil {
1386				tmp := *input
1387				inCpy = &tmp
1388			}
1389			req, _ := c.QueryTableRowsRequest(inCpy)
1390			req.SetContext(ctx)
1391			req.ApplyOptions(opts...)
1392			return req, nil
1393		},
1394	}
1395
1396	for p.Next() {
1397		if !fn(p.Page().(*QueryTableRowsOutput), !p.HasNextPage()) {
1398			break
1399		}
1400	}
1401
1402	return p.Err()
1403}
1404
1405const opStartTableDataImportJob = "StartTableDataImportJob"
1406
1407// StartTableDataImportJobRequest generates a "aws/request.Request" representing the
1408// client's request for the StartTableDataImportJob operation. The "output" return
1409// value will be populated with the request's response once the request completes
1410// successfully.
1411//
1412// Use "Send" method on the returned Request to send the API call to the service.
1413// the "output" return value is not valid until after Send returns without error.
1414//
1415// See StartTableDataImportJob for more information on using the StartTableDataImportJob
1416// API call, and error handling.
1417//
1418// This method is useful when you want to inject custom logic or configuration
1419// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1420//
1421//
1422//    // Example sending a request using the StartTableDataImportJobRequest method.
1423//    req, resp := client.StartTableDataImportJobRequest(params)
1424//
1425//    err := req.Send()
1426//    if err == nil { // resp is now filled
1427//        fmt.Println(resp)
1428//    }
1429//
1430// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/StartTableDataImportJob
1431func (c *Honeycode) StartTableDataImportJobRequest(input *StartTableDataImportJobInput) (req *request.Request, output *StartTableDataImportJobOutput) {
1432	op := &request.Operation{
1433		Name:       opStartTableDataImportJob,
1434		HTTPMethod: "POST",
1435		HTTPPath:   "/workbooks/{workbookId}/tables/{tableId}/import",
1436	}
1437
1438	if input == nil {
1439		input = &StartTableDataImportJobInput{}
1440	}
1441
1442	output = &StartTableDataImportJobOutput{}
1443	req = c.newRequest(op, input, output)
1444	return
1445}
1446
1447// StartTableDataImportJob API operation for Amazon Honeycode.
1448//
1449// The StartTableDataImportJob API allows you to start an import job on a table.
1450// This API will only return the id of the job that was started. To find out
1451// the status of the import request, you need to call the DescribeTableDataImportJob
1452// API.
1453//
1454// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1455// with awserr.Error's Code and Message methods to get detailed information about
1456// the error.
1457//
1458// See the AWS API reference guide for Amazon Honeycode's
1459// API operation StartTableDataImportJob for usage and error information.
1460//
1461// Returned Error Types:
1462//   * AccessDeniedException
1463//   You do not have sufficient access to perform this action. Check that the
1464//   workbook is owned by you and your IAM policy allows access to the resource
1465//   in the request.
1466//
1467//   * InternalServerException
1468//   There were unexpected errors from the server.
1469//
1470//   * ResourceNotFoundException
1471//   A Workbook, Table, App, Screen or Screen Automation was not found with the
1472//   given ID.
1473//
1474//   * ServiceUnavailableException
1475//   Remote service is unreachable.
1476//
1477//   * ThrottlingException
1478//   Tps(transactions per second) rate reached.
1479//
1480//   * ValidationException
1481//   Request is invalid. The message in the response contains details on why the
1482//   request is invalid.
1483//
1484// See also, https://docs.aws.amazon.com/goto/WebAPI/honeycode-2020-03-01/StartTableDataImportJob
1485func (c *Honeycode) StartTableDataImportJob(input *StartTableDataImportJobInput) (*StartTableDataImportJobOutput, error) {
1486	req, out := c.StartTableDataImportJobRequest(input)
1487	return out, req.Send()
1488}
1489
1490// StartTableDataImportJobWithContext is the same as StartTableDataImportJob with the addition of
1491// the ability to pass a context and additional request options.
1492//
1493// See StartTableDataImportJob for details on how to use this API operation.
1494//
1495// The context must be non-nil and will be used for request cancellation. If
1496// the context is nil a panic will occur. In the future the SDK may create
1497// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1498// for more information on using Contexts.
1499func (c *Honeycode) StartTableDataImportJobWithContext(ctx aws.Context, input *StartTableDataImportJobInput, opts ...request.Option) (*StartTableDataImportJobOutput, error) {
1500	req, out := c.StartTableDataImportJobRequest(input)
1501	req.SetContext(ctx)
1502	req.ApplyOptions(opts...)
1503	return out, req.Send()
1504}
1505
1506// You do not have sufficient access to perform this action. Check that the
1507// workbook is owned by you and your IAM policy allows access to the resource
1508// in the request.
1509type AccessDeniedException struct {
1510	_            struct{}                  `type:"structure"`
1511	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
1512
1513	Message_ *string `locationName:"message" type:"string"`
1514}
1515
1516// String returns the string representation
1517func (s AccessDeniedException) String() string {
1518	return awsutil.Prettify(s)
1519}
1520
1521// GoString returns the string representation
1522func (s AccessDeniedException) GoString() string {
1523	return s.String()
1524}
1525
1526func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
1527	return &AccessDeniedException{
1528		RespMetadata: v,
1529	}
1530}
1531
1532// Code returns the exception type name.
1533func (s *AccessDeniedException) Code() string {
1534	return "AccessDeniedException"
1535}
1536
1537// Message returns the exception's message.
1538func (s *AccessDeniedException) Message() string {
1539	if s.Message_ != nil {
1540		return *s.Message_
1541	}
1542	return ""
1543}
1544
1545// OrigErr always returns nil, satisfies awserr.Error interface.
1546func (s *AccessDeniedException) OrigErr() error {
1547	return nil
1548}
1549
1550func (s *AccessDeniedException) Error() string {
1551	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
1552}
1553
1554// Status code returns the HTTP status code for the request's response error.
1555func (s *AccessDeniedException) StatusCode() int {
1556	return s.RespMetadata.StatusCode
1557}
1558
1559// RequestID returns the service's response RequestID for request.
1560func (s *AccessDeniedException) RequestID() string {
1561	return s.RespMetadata.RequestID
1562}
1563
1564// The automation execution did not end successfully.
1565type AutomationExecutionException struct {
1566	_            struct{}                  `type:"structure"`
1567	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
1568
1569	Message_ *string `locationName:"message" type:"string"`
1570}
1571
1572// String returns the string representation
1573func (s AutomationExecutionException) String() string {
1574	return awsutil.Prettify(s)
1575}
1576
1577// GoString returns the string representation
1578func (s AutomationExecutionException) GoString() string {
1579	return s.String()
1580}
1581
1582func newErrorAutomationExecutionException(v protocol.ResponseMetadata) error {
1583	return &AutomationExecutionException{
1584		RespMetadata: v,
1585	}
1586}
1587
1588// Code returns the exception type name.
1589func (s *AutomationExecutionException) Code() string {
1590	return "AutomationExecutionException"
1591}
1592
1593// Message returns the exception's message.
1594func (s *AutomationExecutionException) Message() string {
1595	if s.Message_ != nil {
1596		return *s.Message_
1597	}
1598	return ""
1599}
1600
1601// OrigErr always returns nil, satisfies awserr.Error interface.
1602func (s *AutomationExecutionException) OrigErr() error {
1603	return nil
1604}
1605
1606func (s *AutomationExecutionException) Error() string {
1607	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
1608}
1609
1610// Status code returns the HTTP status code for the request's response error.
1611func (s *AutomationExecutionException) StatusCode() int {
1612	return s.RespMetadata.StatusCode
1613}
1614
1615// RequestID returns the service's response RequestID for request.
1616func (s *AutomationExecutionException) RequestID() string {
1617	return s.RespMetadata.RequestID
1618}
1619
1620// The automation execution timed out.
1621type AutomationExecutionTimeoutException struct {
1622	_            struct{}                  `type:"structure"`
1623	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
1624
1625	Message_ *string `locationName:"message" type:"string"`
1626}
1627
1628// String returns the string representation
1629func (s AutomationExecutionTimeoutException) String() string {
1630	return awsutil.Prettify(s)
1631}
1632
1633// GoString returns the string representation
1634func (s AutomationExecutionTimeoutException) GoString() string {
1635	return s.String()
1636}
1637
1638func newErrorAutomationExecutionTimeoutException(v protocol.ResponseMetadata) error {
1639	return &AutomationExecutionTimeoutException{
1640		RespMetadata: v,
1641	}
1642}
1643
1644// Code returns the exception type name.
1645func (s *AutomationExecutionTimeoutException) Code() string {
1646	return "AutomationExecutionTimeoutException"
1647}
1648
1649// Message returns the exception's message.
1650func (s *AutomationExecutionTimeoutException) Message() string {
1651	if s.Message_ != nil {
1652		return *s.Message_
1653	}
1654	return ""
1655}
1656
1657// OrigErr always returns nil, satisfies awserr.Error interface.
1658func (s *AutomationExecutionTimeoutException) OrigErr() error {
1659	return nil
1660}
1661
1662func (s *AutomationExecutionTimeoutException) Error() string {
1663	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
1664}
1665
1666// Status code returns the HTTP status code for the request's response error.
1667func (s *AutomationExecutionTimeoutException) StatusCode() int {
1668	return s.RespMetadata.StatusCode
1669}
1670
1671// RequestID returns the service's response RequestID for request.
1672func (s *AutomationExecutionTimeoutException) RequestID() string {
1673	return s.RespMetadata.RequestID
1674}
1675
1676type BatchCreateTableRowsInput struct {
1677	_ struct{} `type:"structure"`
1678
1679	// The request token for performing the batch create operation. Request tokens
1680	// help to identify duplicate requests. If a call times out or fails due to
1681	// a transient error like a failed network connection, you can retry the call
1682	// with the same request token. The service ensures that if the first call using
1683	// that request token is successfully performed, the second call will not perform
1684	// the operation again.
1685	//
1686	// Note that request tokens are valid only for a few minutes. You cannot use
1687	// request tokens to dedupe requests spanning hours or days.
1688	ClientRequestToken *string `locationName:"clientRequestToken" min:"32" type:"string"`
1689
1690	// The list of rows to create at the end of the table. Each item in this list
1691	// needs to have a batch item id to uniquely identify the element in the request
1692	// and the cells to create for that row. You need to specify at least one item
1693	// in this list.
1694	//
1695	// Note that if one of the column ids in any of the rows in the request does
1696	// not exist in the table, then the request fails and no updates are made to
1697	// the table.
1698	//
1699	// RowsToCreate is a required field
1700	RowsToCreate []*CreateRowData `locationName:"rowsToCreate" min:"1" type:"list" required:"true"`
1701
1702	// The ID of the table where the new rows are being added.
1703	//
1704	// If a table with the specified ID could not be found, this API throws ResourceNotFoundException.
1705	//
1706	// TableId is a required field
1707	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
1708
1709	// The ID of the workbook where the new rows are being added.
1710	//
1711	// If a workbook with the specified ID could not be found, this API throws ResourceNotFoundException.
1712	//
1713	// WorkbookId is a required field
1714	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
1715}
1716
1717// String returns the string representation
1718func (s BatchCreateTableRowsInput) String() string {
1719	return awsutil.Prettify(s)
1720}
1721
1722// GoString returns the string representation
1723func (s BatchCreateTableRowsInput) GoString() string {
1724	return s.String()
1725}
1726
1727// Validate inspects the fields of the type to determine if they are valid.
1728func (s *BatchCreateTableRowsInput) Validate() error {
1729	invalidParams := request.ErrInvalidParams{Context: "BatchCreateTableRowsInput"}
1730	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 32 {
1731		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 32))
1732	}
1733	if s.RowsToCreate == nil {
1734		invalidParams.Add(request.NewErrParamRequired("RowsToCreate"))
1735	}
1736	if s.RowsToCreate != nil && len(s.RowsToCreate) < 1 {
1737		invalidParams.Add(request.NewErrParamMinLen("RowsToCreate", 1))
1738	}
1739	if s.TableId == nil {
1740		invalidParams.Add(request.NewErrParamRequired("TableId"))
1741	}
1742	if s.TableId != nil && len(*s.TableId) < 36 {
1743		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
1744	}
1745	if s.WorkbookId == nil {
1746		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
1747	}
1748	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
1749		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
1750	}
1751	if s.RowsToCreate != nil {
1752		for i, v := range s.RowsToCreate {
1753			if v == nil {
1754				continue
1755			}
1756			if err := v.Validate(); err != nil {
1757				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RowsToCreate", i), err.(request.ErrInvalidParams))
1758			}
1759		}
1760	}
1761
1762	if invalidParams.Len() > 0 {
1763		return invalidParams
1764	}
1765	return nil
1766}
1767
1768// SetClientRequestToken sets the ClientRequestToken field's value.
1769func (s *BatchCreateTableRowsInput) SetClientRequestToken(v string) *BatchCreateTableRowsInput {
1770	s.ClientRequestToken = &v
1771	return s
1772}
1773
1774// SetRowsToCreate sets the RowsToCreate field's value.
1775func (s *BatchCreateTableRowsInput) SetRowsToCreate(v []*CreateRowData) *BatchCreateTableRowsInput {
1776	s.RowsToCreate = v
1777	return s
1778}
1779
1780// SetTableId sets the TableId field's value.
1781func (s *BatchCreateTableRowsInput) SetTableId(v string) *BatchCreateTableRowsInput {
1782	s.TableId = &v
1783	return s
1784}
1785
1786// SetWorkbookId sets the WorkbookId field's value.
1787func (s *BatchCreateTableRowsInput) SetWorkbookId(v string) *BatchCreateTableRowsInput {
1788	s.WorkbookId = &v
1789	return s
1790}
1791
1792type BatchCreateTableRowsOutput struct {
1793	_ struct{} `type:"structure"`
1794
1795	// The map of batch item id to the row id that was created for that item.
1796	//
1797	// CreatedRows is a required field
1798	CreatedRows map[string]*string `locationName:"createdRows" type:"map" required:"true"`
1799
1800	// The list of batch items in the request that could not be added to the table.
1801	// Each element in this list contains one item from the request that could not
1802	// be added to the table along with the reason why that item could not be added.
1803	FailedBatchItems []*FailedBatchItem `locationName:"failedBatchItems" type:"list"`
1804
1805	// The updated workbook cursor after adding the new rows at the end of the table.
1806	//
1807	// WorkbookCursor is a required field
1808	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
1809}
1810
1811// String returns the string representation
1812func (s BatchCreateTableRowsOutput) String() string {
1813	return awsutil.Prettify(s)
1814}
1815
1816// GoString returns the string representation
1817func (s BatchCreateTableRowsOutput) GoString() string {
1818	return s.String()
1819}
1820
1821// SetCreatedRows sets the CreatedRows field's value.
1822func (s *BatchCreateTableRowsOutput) SetCreatedRows(v map[string]*string) *BatchCreateTableRowsOutput {
1823	s.CreatedRows = v
1824	return s
1825}
1826
1827// SetFailedBatchItems sets the FailedBatchItems field's value.
1828func (s *BatchCreateTableRowsOutput) SetFailedBatchItems(v []*FailedBatchItem) *BatchCreateTableRowsOutput {
1829	s.FailedBatchItems = v
1830	return s
1831}
1832
1833// SetWorkbookCursor sets the WorkbookCursor field's value.
1834func (s *BatchCreateTableRowsOutput) SetWorkbookCursor(v int64) *BatchCreateTableRowsOutput {
1835	s.WorkbookCursor = &v
1836	return s
1837}
1838
1839type BatchDeleteTableRowsInput struct {
1840	_ struct{} `type:"structure"`
1841
1842	// The request token for performing the delete action. Request tokens help to
1843	// identify duplicate requests. If a call times out or fails due to a transient
1844	// error like a failed network connection, you can retry the call with the same
1845	// request token. The service ensures that if the first call using that request
1846	// token is successfully performed, the second call will not perform the action
1847	// again.
1848	//
1849	// Note that request tokens are valid only for a few minutes. You cannot use
1850	// request tokens to dedupe requests spanning hours or days.
1851	ClientRequestToken *string `locationName:"clientRequestToken" min:"32" type:"string"`
1852
1853	// The list of row ids to delete from the table. You need to specify at least
1854	// one row id in this list.
1855	//
1856	// Note that if one of the row ids provided in the request does not exist in
1857	// the table, then the request fails and no rows are deleted from the table.
1858	//
1859	// RowIds is a required field
1860	RowIds []*string `locationName:"rowIds" min:"1" type:"list" required:"true"`
1861
1862	// The ID of the table where the rows are being deleted.
1863	//
1864	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
1865	//
1866	// TableId is a required field
1867	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
1868
1869	// The ID of the workbook where the rows are being deleted.
1870	//
1871	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
1872	//
1873	// WorkbookId is a required field
1874	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
1875}
1876
1877// String returns the string representation
1878func (s BatchDeleteTableRowsInput) String() string {
1879	return awsutil.Prettify(s)
1880}
1881
1882// GoString returns the string representation
1883func (s BatchDeleteTableRowsInput) GoString() string {
1884	return s.String()
1885}
1886
1887// Validate inspects the fields of the type to determine if they are valid.
1888func (s *BatchDeleteTableRowsInput) Validate() error {
1889	invalidParams := request.ErrInvalidParams{Context: "BatchDeleteTableRowsInput"}
1890	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 32 {
1891		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 32))
1892	}
1893	if s.RowIds == nil {
1894		invalidParams.Add(request.NewErrParamRequired("RowIds"))
1895	}
1896	if s.RowIds != nil && len(s.RowIds) < 1 {
1897		invalidParams.Add(request.NewErrParamMinLen("RowIds", 1))
1898	}
1899	if s.TableId == nil {
1900		invalidParams.Add(request.NewErrParamRequired("TableId"))
1901	}
1902	if s.TableId != nil && len(*s.TableId) < 36 {
1903		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
1904	}
1905	if s.WorkbookId == nil {
1906		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
1907	}
1908	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
1909		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
1910	}
1911
1912	if invalidParams.Len() > 0 {
1913		return invalidParams
1914	}
1915	return nil
1916}
1917
1918// SetClientRequestToken sets the ClientRequestToken field's value.
1919func (s *BatchDeleteTableRowsInput) SetClientRequestToken(v string) *BatchDeleteTableRowsInput {
1920	s.ClientRequestToken = &v
1921	return s
1922}
1923
1924// SetRowIds sets the RowIds field's value.
1925func (s *BatchDeleteTableRowsInput) SetRowIds(v []*string) *BatchDeleteTableRowsInput {
1926	s.RowIds = v
1927	return s
1928}
1929
1930// SetTableId sets the TableId field's value.
1931func (s *BatchDeleteTableRowsInput) SetTableId(v string) *BatchDeleteTableRowsInput {
1932	s.TableId = &v
1933	return s
1934}
1935
1936// SetWorkbookId sets the WorkbookId field's value.
1937func (s *BatchDeleteTableRowsInput) SetWorkbookId(v string) *BatchDeleteTableRowsInput {
1938	s.WorkbookId = &v
1939	return s
1940}
1941
1942type BatchDeleteTableRowsOutput struct {
1943	_ struct{} `type:"structure"`
1944
1945	// The list of row ids in the request that could not be deleted from the table.
1946	// Each element in this list contains one row id from the request that could
1947	// not be deleted along with the reason why that item could not be deleted.
1948	FailedBatchItems []*FailedBatchItem `locationName:"failedBatchItems" type:"list"`
1949
1950	// The updated workbook cursor after deleting the rows from the table.
1951	//
1952	// WorkbookCursor is a required field
1953	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
1954}
1955
1956// String returns the string representation
1957func (s BatchDeleteTableRowsOutput) String() string {
1958	return awsutil.Prettify(s)
1959}
1960
1961// GoString returns the string representation
1962func (s BatchDeleteTableRowsOutput) GoString() string {
1963	return s.String()
1964}
1965
1966// SetFailedBatchItems sets the FailedBatchItems field's value.
1967func (s *BatchDeleteTableRowsOutput) SetFailedBatchItems(v []*FailedBatchItem) *BatchDeleteTableRowsOutput {
1968	s.FailedBatchItems = v
1969	return s
1970}
1971
1972// SetWorkbookCursor sets the WorkbookCursor field's value.
1973func (s *BatchDeleteTableRowsOutput) SetWorkbookCursor(v int64) *BatchDeleteTableRowsOutput {
1974	s.WorkbookCursor = &v
1975	return s
1976}
1977
1978type BatchUpdateTableRowsInput struct {
1979	_ struct{} `type:"structure"`
1980
1981	// The request token for performing the update action. Request tokens help to
1982	// identify duplicate requests. If a call times out or fails due to a transient
1983	// error like a failed network connection, you can retry the call with the same
1984	// request token. The service ensures that if the first call using that request
1985	// token is successfully performed, the second call will not perform the action
1986	// again.
1987	//
1988	// Note that request tokens are valid only for a few minutes. You cannot use
1989	// request tokens to dedupe requests spanning hours or days.
1990	ClientRequestToken *string `locationName:"clientRequestToken" min:"32" type:"string"`
1991
1992	// The list of rows to update in the table. Each item in this list needs to
1993	// contain the row id to update along with the map of column id to cell values
1994	// for each column in that row that needs to be updated. You need to specify
1995	// at least one row in this list, and for each row, you need to specify at least
1996	// one column to update.
1997	//
1998	// Note that if one of the row or column ids in the request does not exist in
1999	// the table, then the request fails and no updates are made to the table.
2000	//
2001	// RowsToUpdate is a required field
2002	RowsToUpdate []*UpdateRowData `locationName:"rowsToUpdate" min:"1" type:"list" required:"true"`
2003
2004	// The ID of the table where the rows are being updated.
2005	//
2006	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
2007	//
2008	// TableId is a required field
2009	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
2010
2011	// The ID of the workbook where the rows are being updated.
2012	//
2013	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
2014	//
2015	// WorkbookId is a required field
2016	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
2017}
2018
2019// String returns the string representation
2020func (s BatchUpdateTableRowsInput) String() string {
2021	return awsutil.Prettify(s)
2022}
2023
2024// GoString returns the string representation
2025func (s BatchUpdateTableRowsInput) GoString() string {
2026	return s.String()
2027}
2028
2029// Validate inspects the fields of the type to determine if they are valid.
2030func (s *BatchUpdateTableRowsInput) Validate() error {
2031	invalidParams := request.ErrInvalidParams{Context: "BatchUpdateTableRowsInput"}
2032	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 32 {
2033		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 32))
2034	}
2035	if s.RowsToUpdate == nil {
2036		invalidParams.Add(request.NewErrParamRequired("RowsToUpdate"))
2037	}
2038	if s.RowsToUpdate != nil && len(s.RowsToUpdate) < 1 {
2039		invalidParams.Add(request.NewErrParamMinLen("RowsToUpdate", 1))
2040	}
2041	if s.TableId == nil {
2042		invalidParams.Add(request.NewErrParamRequired("TableId"))
2043	}
2044	if s.TableId != nil && len(*s.TableId) < 36 {
2045		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
2046	}
2047	if s.WorkbookId == nil {
2048		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
2049	}
2050	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
2051		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
2052	}
2053	if s.RowsToUpdate != nil {
2054		for i, v := range s.RowsToUpdate {
2055			if v == nil {
2056				continue
2057			}
2058			if err := v.Validate(); err != nil {
2059				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RowsToUpdate", i), err.(request.ErrInvalidParams))
2060			}
2061		}
2062	}
2063
2064	if invalidParams.Len() > 0 {
2065		return invalidParams
2066	}
2067	return nil
2068}
2069
2070// SetClientRequestToken sets the ClientRequestToken field's value.
2071func (s *BatchUpdateTableRowsInput) SetClientRequestToken(v string) *BatchUpdateTableRowsInput {
2072	s.ClientRequestToken = &v
2073	return s
2074}
2075
2076// SetRowsToUpdate sets the RowsToUpdate field's value.
2077func (s *BatchUpdateTableRowsInput) SetRowsToUpdate(v []*UpdateRowData) *BatchUpdateTableRowsInput {
2078	s.RowsToUpdate = v
2079	return s
2080}
2081
2082// SetTableId sets the TableId field's value.
2083func (s *BatchUpdateTableRowsInput) SetTableId(v string) *BatchUpdateTableRowsInput {
2084	s.TableId = &v
2085	return s
2086}
2087
2088// SetWorkbookId sets the WorkbookId field's value.
2089func (s *BatchUpdateTableRowsInput) SetWorkbookId(v string) *BatchUpdateTableRowsInput {
2090	s.WorkbookId = &v
2091	return s
2092}
2093
2094type BatchUpdateTableRowsOutput struct {
2095	_ struct{} `type:"structure"`
2096
2097	// The list of batch items in the request that could not be updated in the table.
2098	// Each element in this list contains one item from the request that could not
2099	// be updated in the table along with the reason why that item could not be
2100	// updated.
2101	FailedBatchItems []*FailedBatchItem `locationName:"failedBatchItems" type:"list"`
2102
2103	// The updated workbook cursor after adding the new rows at the end of the table.
2104	//
2105	// WorkbookCursor is a required field
2106	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
2107}
2108
2109// String returns the string representation
2110func (s BatchUpdateTableRowsOutput) String() string {
2111	return awsutil.Prettify(s)
2112}
2113
2114// GoString returns the string representation
2115func (s BatchUpdateTableRowsOutput) GoString() string {
2116	return s.String()
2117}
2118
2119// SetFailedBatchItems sets the FailedBatchItems field's value.
2120func (s *BatchUpdateTableRowsOutput) SetFailedBatchItems(v []*FailedBatchItem) *BatchUpdateTableRowsOutput {
2121	s.FailedBatchItems = v
2122	return s
2123}
2124
2125// SetWorkbookCursor sets the WorkbookCursor field's value.
2126func (s *BatchUpdateTableRowsOutput) SetWorkbookCursor(v int64) *BatchUpdateTableRowsOutput {
2127	s.WorkbookCursor = &v
2128	return s
2129}
2130
2131type BatchUpsertTableRowsInput struct {
2132	_ struct{} `type:"structure"`
2133
2134	// The request token for performing the update action. Request tokens help to
2135	// identify duplicate requests. If a call times out or fails due to a transient
2136	// error like a failed network connection, you can retry the call with the same
2137	// request token. The service ensures that if the first call using that request
2138	// token is successfully performed, the second call will not perform the action
2139	// again.
2140	//
2141	// Note that request tokens are valid only for a few minutes. You cannot use
2142	// request tokens to dedupe requests spanning hours or days.
2143	ClientRequestToken *string `locationName:"clientRequestToken" min:"32" type:"string"`
2144
2145	// The list of rows to upsert in the table. Each item in this list needs to
2146	// have a batch item id to uniquely identify the element in the request, a filter
2147	// expression to find the rows to update for that element and the cell values
2148	// to set for each column in the upserted rows. You need to specify at least
2149	// one item in this list.
2150	//
2151	// Note that if one of the filter formulas in the request fails to evaluate
2152	// because of an error or one of the column ids in any of the rows does not
2153	// exist in the table, then the request fails and no updates are made to the
2154	// table.
2155	//
2156	// RowsToUpsert is a required field
2157	RowsToUpsert []*UpsertRowData `locationName:"rowsToUpsert" type:"list" required:"true"`
2158
2159	// The ID of the table where the rows are being upserted.
2160	//
2161	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
2162	//
2163	// TableId is a required field
2164	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
2165
2166	// The ID of the workbook where the rows are being upserted.
2167	//
2168	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
2169	//
2170	// WorkbookId is a required field
2171	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
2172}
2173
2174// String returns the string representation
2175func (s BatchUpsertTableRowsInput) String() string {
2176	return awsutil.Prettify(s)
2177}
2178
2179// GoString returns the string representation
2180func (s BatchUpsertTableRowsInput) GoString() string {
2181	return s.String()
2182}
2183
2184// Validate inspects the fields of the type to determine if they are valid.
2185func (s *BatchUpsertTableRowsInput) Validate() error {
2186	invalidParams := request.ErrInvalidParams{Context: "BatchUpsertTableRowsInput"}
2187	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 32 {
2188		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 32))
2189	}
2190	if s.RowsToUpsert == nil {
2191		invalidParams.Add(request.NewErrParamRequired("RowsToUpsert"))
2192	}
2193	if s.TableId == nil {
2194		invalidParams.Add(request.NewErrParamRequired("TableId"))
2195	}
2196	if s.TableId != nil && len(*s.TableId) < 36 {
2197		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
2198	}
2199	if s.WorkbookId == nil {
2200		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
2201	}
2202	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
2203		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
2204	}
2205	if s.RowsToUpsert != nil {
2206		for i, v := range s.RowsToUpsert {
2207			if v == nil {
2208				continue
2209			}
2210			if err := v.Validate(); err != nil {
2211				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "RowsToUpsert", i), err.(request.ErrInvalidParams))
2212			}
2213		}
2214	}
2215
2216	if invalidParams.Len() > 0 {
2217		return invalidParams
2218	}
2219	return nil
2220}
2221
2222// SetClientRequestToken sets the ClientRequestToken field's value.
2223func (s *BatchUpsertTableRowsInput) SetClientRequestToken(v string) *BatchUpsertTableRowsInput {
2224	s.ClientRequestToken = &v
2225	return s
2226}
2227
2228// SetRowsToUpsert sets the RowsToUpsert field's value.
2229func (s *BatchUpsertTableRowsInput) SetRowsToUpsert(v []*UpsertRowData) *BatchUpsertTableRowsInput {
2230	s.RowsToUpsert = v
2231	return s
2232}
2233
2234// SetTableId sets the TableId field's value.
2235func (s *BatchUpsertTableRowsInput) SetTableId(v string) *BatchUpsertTableRowsInput {
2236	s.TableId = &v
2237	return s
2238}
2239
2240// SetWorkbookId sets the WorkbookId field's value.
2241func (s *BatchUpsertTableRowsInput) SetWorkbookId(v string) *BatchUpsertTableRowsInput {
2242	s.WorkbookId = &v
2243	return s
2244}
2245
2246type BatchUpsertTableRowsOutput struct {
2247	_ struct{} `type:"structure"`
2248
2249	// The list of batch items in the request that could not be updated or appended
2250	// in the table. Each element in this list contains one item from the request
2251	// that could not be updated in the table along with the reason why that item
2252	// could not be updated or appended.
2253	FailedBatchItems []*FailedBatchItem `locationName:"failedBatchItems" type:"list"`
2254
2255	// A map with the batch item id as the key and the result of the upsert operation
2256	// as the value. The result of the upsert operation specifies whether existing
2257	// rows were updated or a new row was appended, along with the list of row ids
2258	// that were affected.
2259	//
2260	// Rows is a required field
2261	Rows map[string]*UpsertRowsResult `locationName:"rows" type:"map" required:"true"`
2262
2263	// The updated workbook cursor after updating or appending rows in the table.
2264	//
2265	// WorkbookCursor is a required field
2266	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
2267}
2268
2269// String returns the string representation
2270func (s BatchUpsertTableRowsOutput) String() string {
2271	return awsutil.Prettify(s)
2272}
2273
2274// GoString returns the string representation
2275func (s BatchUpsertTableRowsOutput) GoString() string {
2276	return s.String()
2277}
2278
2279// SetFailedBatchItems sets the FailedBatchItems field's value.
2280func (s *BatchUpsertTableRowsOutput) SetFailedBatchItems(v []*FailedBatchItem) *BatchUpsertTableRowsOutput {
2281	s.FailedBatchItems = v
2282	return s
2283}
2284
2285// SetRows sets the Rows field's value.
2286func (s *BatchUpsertTableRowsOutput) SetRows(v map[string]*UpsertRowsResult) *BatchUpsertTableRowsOutput {
2287	s.Rows = v
2288	return s
2289}
2290
2291// SetWorkbookCursor sets the WorkbookCursor field's value.
2292func (s *BatchUpsertTableRowsOutput) SetWorkbookCursor(v int64) *BatchUpsertTableRowsOutput {
2293	s.WorkbookCursor = &v
2294	return s
2295}
2296
2297// An object that represents a single cell in a table.
2298type Cell struct {
2299	_ struct{} `type:"structure" sensitive:"true"`
2300
2301	// The format of the cell. If this field is empty, then the format is either
2302	// not specified in the workbook or the format is set to AUTO.
2303	Format *string `locationName:"format" type:"string" enum:"Format"`
2304
2305	// The formatted value of the cell. This is the value that you see displayed
2306	// in the cell in the UI.
2307	//
2308	// Note that the formatted value of a cell is always represented as a string
2309	// irrespective of the data that is stored in the cell. For example, if a cell
2310	// contains a date, the formatted value of the cell is the string representation
2311	// of the formatted date being shown in the cell in the UI. See details in the
2312	// rawValue field below for how cells of different formats will have different
2313	// raw and formatted values.
2314	FormattedValue *string `locationName:"formattedValue" type:"string"`
2315
2316	// The formula contained in the cell. This field is empty if a cell does not
2317	// have a formula.
2318	Formula *string `locationName:"formula" type:"string" sensitive:"true"`
2319
2320	// The raw value of the data contained in the cell. The raw value depends on
2321	// the format of the data in the cell. However the attribute in the API return
2322	// value is always a string containing the raw value.
2323	//
2324	// Cells with format DATE, DATE_TIME or TIME have the raw value as a floating
2325	// point number where the whole number represents the number of days since 1/1/1900
2326	// and the fractional part represents the fraction of the day since midnight.
2327	// For example, a cell with date 11/3/2020 has the raw value "44138". A cell
2328	// with the time 9:00 AM has the raw value "0.375" and a cell with date/time
2329	// value of 11/3/2020 9:00 AM has the raw value "44138.375". Notice that even
2330	// though the raw value is a number in all three cases, it is still represented
2331	// as a string.
2332	//
2333	// Cells with format NUMBER, CURRENCY, PERCENTAGE and ACCOUNTING have the raw
2334	// value of the data as the number representing the data being displayed. For
2335	// example, the number 1.325 with two decimal places in the format will have
2336	// it's raw value as "1.325" and formatted value as "1.33". A currency value
2337	// for $10 will have the raw value as "10" and formatted value as "$10.00".
2338	// A value representing 20% with two decimal places in the format will have
2339	// its raw value as "0.2" and the formatted value as "20.00%". An accounting
2340	// value of -$25 will have "-25" as the raw value and "$ (25.00)" as the formatted
2341	// value.
2342	//
2343	// Cells with format TEXT will have the raw text as the raw value. For example,
2344	// a cell with text "John Smith" will have "John Smith" as both the raw value
2345	// and the formatted value.
2346	//
2347	// Cells with format CONTACT will have the name of the contact as a formatted
2348	// value and the email address of the contact as the raw value. For example,
2349	// a contact for John Smith will have "John Smith" as the formatted value and
2350	// "john.smith@example.com" as the raw value.
2351	//
2352	// Cells with format ROWLINK (aka picklist) will have the first column of the
2353	// linked row as the formatted value and the row id of the linked row as the
2354	// raw value. For example, a cell containing a picklist to a table that displays
2355	// task status might have "Completed" as the formatted value and "row:dfcefaee-5b37-4355-8f28-40c3e4ff5dd4/ca432b2f-b8eb-431d-9fb5-cbe0342f9f03"
2356	// as the raw value.
2357	//
2358	// Cells with format AUTO or cells without any format that are auto-detected
2359	// as one of the formats above will contain the raw and formatted values as
2360	// mentioned above, based on the auto-detected formats. If there is no auto-detected
2361	// format, the raw and formatted values will be the same as the data in the
2362	// cell.
2363	RawValue *string `locationName:"rawValue" type:"string"`
2364}
2365
2366// String returns the string representation
2367func (s Cell) String() string {
2368	return awsutil.Prettify(s)
2369}
2370
2371// GoString returns the string representation
2372func (s Cell) GoString() string {
2373	return s.String()
2374}
2375
2376// SetFormat sets the Format field's value.
2377func (s *Cell) SetFormat(v string) *Cell {
2378	s.Format = &v
2379	return s
2380}
2381
2382// SetFormattedValue sets the FormattedValue field's value.
2383func (s *Cell) SetFormattedValue(v string) *Cell {
2384	s.FormattedValue = &v
2385	return s
2386}
2387
2388// SetFormula sets the Formula field's value.
2389func (s *Cell) SetFormula(v string) *Cell {
2390	s.Formula = &v
2391	return s
2392}
2393
2394// SetRawValue sets the RawValue field's value.
2395func (s *Cell) SetRawValue(v string) *Cell {
2396	s.RawValue = &v
2397	return s
2398}
2399
2400// CellInput object contains the data needed to create or update cells in a
2401// table.
2402type CellInput struct {
2403	_ struct{} `type:"structure"`
2404
2405	// Fact represents the data that is entered into a cell. This data can be free
2406	// text or a formula. Formulas need to start with the equals (=) sign.
2407	Fact *string `locationName:"fact" type:"string" sensitive:"true"`
2408}
2409
2410// String returns the string representation
2411func (s CellInput) String() string {
2412	return awsutil.Prettify(s)
2413}
2414
2415// GoString returns the string representation
2416func (s CellInput) GoString() string {
2417	return s.String()
2418}
2419
2420// SetFact sets the Fact field's value.
2421func (s *CellInput) SetFact(v string) *CellInput {
2422	s.Fact = &v
2423	return s
2424}
2425
2426// Metadata for column in the table.
2427type ColumnMetadata struct {
2428	_ struct{} `type:"structure"`
2429
2430	// The format of the column.
2431	//
2432	// Format is a required field
2433	Format *string `locationName:"format" type:"string" required:"true" enum:"Format"`
2434
2435	// The name of the column.
2436	//
2437	// Name is a required field
2438	Name *string `locationName:"name" type:"string" required:"true" sensitive:"true"`
2439}
2440
2441// String returns the string representation
2442func (s ColumnMetadata) String() string {
2443	return awsutil.Prettify(s)
2444}
2445
2446// GoString returns the string representation
2447func (s ColumnMetadata) GoString() string {
2448	return s.String()
2449}
2450
2451// SetFormat sets the Format field's value.
2452func (s *ColumnMetadata) SetFormat(v string) *ColumnMetadata {
2453	s.Format = &v
2454	return s
2455}
2456
2457// SetName sets the Name field's value.
2458func (s *ColumnMetadata) SetName(v string) *ColumnMetadata {
2459	s.Name = &v
2460	return s
2461}
2462
2463// Data needed to create a single row in a table as part of the BatchCreateTableRows
2464// request.
2465type CreateRowData struct {
2466	_ struct{} `type:"structure"`
2467
2468	// An external identifier that represents the single row that is being created
2469	// as part of the BatchCreateTableRows request. This can be any string that
2470	// you can use to identify the row in the request. The BatchCreateTableRows
2471	// API puts the batch item id in the results to allow you to link data in the
2472	// request to data in the results.
2473	//
2474	// BatchItemId is a required field
2475	BatchItemId *string `locationName:"batchItemId" min:"1" type:"string" required:"true"`
2476
2477	// A map representing the cells to create in the new row. The key is the column
2478	// id of the cell and the value is the CellInput object that represents the
2479	// data to set in that cell.
2480	//
2481	// CellsToCreate is a required field
2482	CellsToCreate map[string]*CellInput `locationName:"cellsToCreate" min:"1" type:"map" required:"true"`
2483}
2484
2485// String returns the string representation
2486func (s CreateRowData) String() string {
2487	return awsutil.Prettify(s)
2488}
2489
2490// GoString returns the string representation
2491func (s CreateRowData) GoString() string {
2492	return s.String()
2493}
2494
2495// Validate inspects the fields of the type to determine if they are valid.
2496func (s *CreateRowData) Validate() error {
2497	invalidParams := request.ErrInvalidParams{Context: "CreateRowData"}
2498	if s.BatchItemId == nil {
2499		invalidParams.Add(request.NewErrParamRequired("BatchItemId"))
2500	}
2501	if s.BatchItemId != nil && len(*s.BatchItemId) < 1 {
2502		invalidParams.Add(request.NewErrParamMinLen("BatchItemId", 1))
2503	}
2504	if s.CellsToCreate == nil {
2505		invalidParams.Add(request.NewErrParamRequired("CellsToCreate"))
2506	}
2507	if s.CellsToCreate != nil && len(s.CellsToCreate) < 1 {
2508		invalidParams.Add(request.NewErrParamMinLen("CellsToCreate", 1))
2509	}
2510
2511	if invalidParams.Len() > 0 {
2512		return invalidParams
2513	}
2514	return nil
2515}
2516
2517// SetBatchItemId sets the BatchItemId field's value.
2518func (s *CreateRowData) SetBatchItemId(v string) *CreateRowData {
2519	s.BatchItemId = &v
2520	return s
2521}
2522
2523// SetCellsToCreate sets the CellsToCreate field's value.
2524func (s *CreateRowData) SetCellsToCreate(v map[string]*CellInput) *CreateRowData {
2525	s.CellsToCreate = v
2526	return s
2527}
2528
2529// The data in a particular data cell defined on the screen.
2530type DataItem struct {
2531	_ struct{} `type:"structure" sensitive:"true"`
2532
2533	// The formatted value of the data. e.g. John Smith.
2534	FormattedValue *string `locationName:"formattedValue" type:"string"`
2535
2536	// The overrideFormat is optional and is specified only if a particular row
2537	// of data has a different format for the data than the default format defined
2538	// on the screen or the table.
2539	OverrideFormat *string `locationName:"overrideFormat" type:"string" enum:"Format"`
2540
2541	// The raw value of the data. e.g. jsmith@example.com
2542	RawValue *string `locationName:"rawValue" type:"string"`
2543}
2544
2545// String returns the string representation
2546func (s DataItem) String() string {
2547	return awsutil.Prettify(s)
2548}
2549
2550// GoString returns the string representation
2551func (s DataItem) GoString() string {
2552	return s.String()
2553}
2554
2555// SetFormattedValue sets the FormattedValue field's value.
2556func (s *DataItem) SetFormattedValue(v string) *DataItem {
2557	s.FormattedValue = &v
2558	return s
2559}
2560
2561// SetOverrideFormat sets the OverrideFormat field's value.
2562func (s *DataItem) SetOverrideFormat(v string) *DataItem {
2563	s.OverrideFormat = &v
2564	return s
2565}
2566
2567// SetRawValue sets the RawValue field's value.
2568func (s *DataItem) SetRawValue(v string) *DataItem {
2569	s.RawValue = &v
2570	return s
2571}
2572
2573// An object that contains the options relating to parsing delimited text as
2574// part of an import request.
2575type DelimitedTextImportOptions struct {
2576	_ struct{} `type:"structure"`
2577
2578	// The encoding of the data in the input file.
2579	DataCharacterEncoding *string `locationName:"dataCharacterEncoding" type:"string" enum:"ImportDataCharacterEncoding"`
2580
2581	// The delimiter to use for separating columns in a single row of the input.
2582	//
2583	// Delimiter is a required field
2584	Delimiter *string `locationName:"delimiter" min:"1" type:"string" required:"true"`
2585
2586	// Indicates whether the input file has a header row at the top containing the
2587	// column names.
2588	HasHeaderRow *bool `locationName:"hasHeaderRow" type:"boolean"`
2589
2590	// A parameter to indicate whether empty rows should be ignored or be included
2591	// in the import.
2592	IgnoreEmptyRows *bool `locationName:"ignoreEmptyRows" type:"boolean"`
2593}
2594
2595// String returns the string representation
2596func (s DelimitedTextImportOptions) String() string {
2597	return awsutil.Prettify(s)
2598}
2599
2600// GoString returns the string representation
2601func (s DelimitedTextImportOptions) GoString() string {
2602	return s.String()
2603}
2604
2605// Validate inspects the fields of the type to determine if they are valid.
2606func (s *DelimitedTextImportOptions) Validate() error {
2607	invalidParams := request.ErrInvalidParams{Context: "DelimitedTextImportOptions"}
2608	if s.Delimiter == nil {
2609		invalidParams.Add(request.NewErrParamRequired("Delimiter"))
2610	}
2611	if s.Delimiter != nil && len(*s.Delimiter) < 1 {
2612		invalidParams.Add(request.NewErrParamMinLen("Delimiter", 1))
2613	}
2614
2615	if invalidParams.Len() > 0 {
2616		return invalidParams
2617	}
2618	return nil
2619}
2620
2621// SetDataCharacterEncoding sets the DataCharacterEncoding field's value.
2622func (s *DelimitedTextImportOptions) SetDataCharacterEncoding(v string) *DelimitedTextImportOptions {
2623	s.DataCharacterEncoding = &v
2624	return s
2625}
2626
2627// SetDelimiter sets the Delimiter field's value.
2628func (s *DelimitedTextImportOptions) SetDelimiter(v string) *DelimitedTextImportOptions {
2629	s.Delimiter = &v
2630	return s
2631}
2632
2633// SetHasHeaderRow sets the HasHeaderRow field's value.
2634func (s *DelimitedTextImportOptions) SetHasHeaderRow(v bool) *DelimitedTextImportOptions {
2635	s.HasHeaderRow = &v
2636	return s
2637}
2638
2639// SetIgnoreEmptyRows sets the IgnoreEmptyRows field's value.
2640func (s *DelimitedTextImportOptions) SetIgnoreEmptyRows(v bool) *DelimitedTextImportOptions {
2641	s.IgnoreEmptyRows = &v
2642	return s
2643}
2644
2645type DescribeTableDataImportJobInput struct {
2646	_ struct{} `type:"structure"`
2647
2648	// The ID of the job that was returned by the StartTableDataImportJob request.
2649	//
2650	// If a job with the specified id could not be found, this API throws ResourceNotFoundException.
2651	//
2652	// JobId is a required field
2653	JobId *string `location:"uri" locationName:"jobId" min:"1" type:"string" required:"true"`
2654
2655	// The ID of the table into which data was imported.
2656	//
2657	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
2658	//
2659	// TableId is a required field
2660	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
2661
2662	// The ID of the workbook into which data was imported.
2663	//
2664	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
2665	//
2666	// WorkbookId is a required field
2667	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
2668}
2669
2670// String returns the string representation
2671func (s DescribeTableDataImportJobInput) String() string {
2672	return awsutil.Prettify(s)
2673}
2674
2675// GoString returns the string representation
2676func (s DescribeTableDataImportJobInput) GoString() string {
2677	return s.String()
2678}
2679
2680// Validate inspects the fields of the type to determine if they are valid.
2681func (s *DescribeTableDataImportJobInput) Validate() error {
2682	invalidParams := request.ErrInvalidParams{Context: "DescribeTableDataImportJobInput"}
2683	if s.JobId == nil {
2684		invalidParams.Add(request.NewErrParamRequired("JobId"))
2685	}
2686	if s.JobId != nil && len(*s.JobId) < 1 {
2687		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
2688	}
2689	if s.TableId == nil {
2690		invalidParams.Add(request.NewErrParamRequired("TableId"))
2691	}
2692	if s.TableId != nil && len(*s.TableId) < 36 {
2693		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
2694	}
2695	if s.WorkbookId == nil {
2696		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
2697	}
2698	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
2699		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
2700	}
2701
2702	if invalidParams.Len() > 0 {
2703		return invalidParams
2704	}
2705	return nil
2706}
2707
2708// SetJobId sets the JobId field's value.
2709func (s *DescribeTableDataImportJobInput) SetJobId(v string) *DescribeTableDataImportJobInput {
2710	s.JobId = &v
2711	return s
2712}
2713
2714// SetTableId sets the TableId field's value.
2715func (s *DescribeTableDataImportJobInput) SetTableId(v string) *DescribeTableDataImportJobInput {
2716	s.TableId = &v
2717	return s
2718}
2719
2720// SetWorkbookId sets the WorkbookId field's value.
2721func (s *DescribeTableDataImportJobInput) SetWorkbookId(v string) *DescribeTableDataImportJobInput {
2722	s.WorkbookId = &v
2723	return s
2724}
2725
2726type DescribeTableDataImportJobOutput struct {
2727	_ struct{} `type:"structure"`
2728
2729	// The metadata about the job that was submitted for import.
2730	//
2731	// JobMetadata is a required field
2732	JobMetadata *TableDataImportJobMetadata `locationName:"jobMetadata" type:"structure" required:"true"`
2733
2734	// The current status of the import job.
2735	//
2736	// JobStatus is a required field
2737	JobStatus *string `locationName:"jobStatus" type:"string" required:"true" enum:"TableDataImportJobStatus"`
2738
2739	// A message providing more details about the current status of the import job.
2740	//
2741	// Message is a required field
2742	Message *string `locationName:"message" type:"string" required:"true"`
2743}
2744
2745// String returns the string representation
2746func (s DescribeTableDataImportJobOutput) String() string {
2747	return awsutil.Prettify(s)
2748}
2749
2750// GoString returns the string representation
2751func (s DescribeTableDataImportJobOutput) GoString() string {
2752	return s.String()
2753}
2754
2755// SetJobMetadata sets the JobMetadata field's value.
2756func (s *DescribeTableDataImportJobOutput) SetJobMetadata(v *TableDataImportJobMetadata) *DescribeTableDataImportJobOutput {
2757	s.JobMetadata = v
2758	return s
2759}
2760
2761// SetJobStatus sets the JobStatus field's value.
2762func (s *DescribeTableDataImportJobOutput) SetJobStatus(v string) *DescribeTableDataImportJobOutput {
2763	s.JobStatus = &v
2764	return s
2765}
2766
2767// SetMessage sets the Message field's value.
2768func (s *DescribeTableDataImportJobOutput) SetMessage(v string) *DescribeTableDataImportJobOutput {
2769	s.Message = &v
2770	return s
2771}
2772
2773// An object that contains the options relating to the destination of the import
2774// request.
2775type DestinationOptions struct {
2776	_ struct{} `type:"structure"`
2777
2778	// A map of the column id to the import properties for each column.
2779	ColumnMap map[string]*SourceDataColumnProperties `locationName:"columnMap" type:"map"`
2780}
2781
2782// String returns the string representation
2783func (s DestinationOptions) String() string {
2784	return awsutil.Prettify(s)
2785}
2786
2787// GoString returns the string representation
2788func (s DestinationOptions) GoString() string {
2789	return s.String()
2790}
2791
2792// Validate inspects the fields of the type to determine if they are valid.
2793func (s *DestinationOptions) Validate() error {
2794	invalidParams := request.ErrInvalidParams{Context: "DestinationOptions"}
2795	if s.ColumnMap != nil {
2796		for i, v := range s.ColumnMap {
2797			if v == nil {
2798				continue
2799			}
2800			if err := v.Validate(); err != nil {
2801				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ColumnMap", i), err.(request.ErrInvalidParams))
2802			}
2803		}
2804	}
2805
2806	if invalidParams.Len() > 0 {
2807		return invalidParams
2808	}
2809	return nil
2810}
2811
2812// SetColumnMap sets the ColumnMap field's value.
2813func (s *DestinationOptions) SetColumnMap(v map[string]*SourceDataColumnProperties) *DestinationOptions {
2814	s.ColumnMap = v
2815	return s
2816}
2817
2818// A single item in a batch that failed to perform the intended action because
2819// of an error preventing it from succeeding.
2820type FailedBatchItem struct {
2821	_ struct{} `type:"structure"`
2822
2823	// The error message that indicates why the batch item failed.
2824	//
2825	// ErrorMessage is a required field
2826	ErrorMessage *string `locationName:"errorMessage" type:"string" required:"true"`
2827
2828	// The id of the batch item that failed. This is the batch item id for the BatchCreateTableRows
2829	// and BatchUpsertTableRows operations and the row id for the BatchUpdateTableRows
2830	// and BatchDeleteTableRows operations.
2831	//
2832	// Id is a required field
2833	Id *string `locationName:"id" min:"1" type:"string" required:"true"`
2834}
2835
2836// String returns the string representation
2837func (s FailedBatchItem) String() string {
2838	return awsutil.Prettify(s)
2839}
2840
2841// GoString returns the string representation
2842func (s FailedBatchItem) GoString() string {
2843	return s.String()
2844}
2845
2846// SetErrorMessage sets the ErrorMessage field's value.
2847func (s *FailedBatchItem) SetErrorMessage(v string) *FailedBatchItem {
2848	s.ErrorMessage = &v
2849	return s
2850}
2851
2852// SetId sets the Id field's value.
2853func (s *FailedBatchItem) SetId(v string) *FailedBatchItem {
2854	s.Id = &v
2855	return s
2856}
2857
2858// An object that represents a filter formula along with the id of the context
2859// row under which the filter function needs to evaluate.
2860type Filter struct {
2861	_ struct{} `type:"structure"`
2862
2863	// The optional contextRowId attribute can be used to specify the row id of
2864	// the context row if the filter formula contains unqualified references to
2865	// table columns and needs a context row to evaluate them successfully.
2866	ContextRowId *string `locationName:"contextRowId" min:"77" type:"string"`
2867
2868	// A formula representing a filter function that returns zero or more matching
2869	// rows from a table. Valid formulas in this field return a list of rows from
2870	// a table. The most common ways of writing a formula to return a list of rows
2871	// are to use the FindRow() or Filter() functions. Any other formula that returns
2872	// zero or more rows is also acceptable. For example, you can use a formula
2873	// that points to a cell that contains a filter function.
2874	//
2875	// Formula is a required field
2876	Formula *string `locationName:"formula" type:"string" required:"true" sensitive:"true"`
2877}
2878
2879// String returns the string representation
2880func (s Filter) String() string {
2881	return awsutil.Prettify(s)
2882}
2883
2884// GoString returns the string representation
2885func (s Filter) GoString() string {
2886	return s.String()
2887}
2888
2889// Validate inspects the fields of the type to determine if they are valid.
2890func (s *Filter) Validate() error {
2891	invalidParams := request.ErrInvalidParams{Context: "Filter"}
2892	if s.ContextRowId != nil && len(*s.ContextRowId) < 77 {
2893		invalidParams.Add(request.NewErrParamMinLen("ContextRowId", 77))
2894	}
2895	if s.Formula == nil {
2896		invalidParams.Add(request.NewErrParamRequired("Formula"))
2897	}
2898
2899	if invalidParams.Len() > 0 {
2900		return invalidParams
2901	}
2902	return nil
2903}
2904
2905// SetContextRowId sets the ContextRowId field's value.
2906func (s *Filter) SetContextRowId(v string) *Filter {
2907	s.ContextRowId = &v
2908	return s
2909}
2910
2911// SetFormula sets the Formula field's value.
2912func (s *Filter) SetFormula(v string) *Filter {
2913	s.Formula = &v
2914	return s
2915}
2916
2917type GetScreenDataInput struct {
2918	_ struct{} `type:"structure"`
2919
2920	// The ID of the app that contains the screem.
2921	//
2922	// AppId is a required field
2923	AppId *string `locationName:"appId" min:"36" type:"string" required:"true"`
2924
2925	// The number of results to be returned on a single page. Specify a number between
2926	// 1 and 100. The maximum value is 100.
2927	//
2928	// This parameter is optional. If you don't specify this parameter, the default
2929	// page size is 100.
2930	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
2931
2932	// This parameter is optional. If a nextToken is not specified, the API returns
2933	// the first page of data.
2934	//
2935	// Pagination tokens expire after 1 hour. If you use a token that was returned
2936	// more than an hour back, the API will throw ValidationException.
2937	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
2938
2939	// The ID of the screen.
2940	//
2941	// ScreenId is a required field
2942	ScreenId *string `locationName:"screenId" min:"36" type:"string" required:"true"`
2943
2944	// Variables are optional and are needed only if the screen requires them to
2945	// render correctly. Variables are specified as a map where the key is the name
2946	// of the variable as defined on the screen. The value is an object which currently
2947	// has only one property, rawValue, which holds the value of the variable to
2948	// be passed to the screen.
2949	Variables map[string]*VariableValue `locationName:"variables" type:"map" sensitive:"true"`
2950
2951	// The ID of the workbook that contains the screen.
2952	//
2953	// WorkbookId is a required field
2954	WorkbookId *string `locationName:"workbookId" min:"36" type:"string" required:"true"`
2955}
2956
2957// String returns the string representation
2958func (s GetScreenDataInput) String() string {
2959	return awsutil.Prettify(s)
2960}
2961
2962// GoString returns the string representation
2963func (s GetScreenDataInput) GoString() string {
2964	return s.String()
2965}
2966
2967// Validate inspects the fields of the type to determine if they are valid.
2968func (s *GetScreenDataInput) Validate() error {
2969	invalidParams := request.ErrInvalidParams{Context: "GetScreenDataInput"}
2970	if s.AppId == nil {
2971		invalidParams.Add(request.NewErrParamRequired("AppId"))
2972	}
2973	if s.AppId != nil && len(*s.AppId) < 36 {
2974		invalidParams.Add(request.NewErrParamMinLen("AppId", 36))
2975	}
2976	if s.MaxResults != nil && *s.MaxResults < 1 {
2977		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
2978	}
2979	if s.NextToken != nil && len(*s.NextToken) < 1 {
2980		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
2981	}
2982	if s.ScreenId == nil {
2983		invalidParams.Add(request.NewErrParamRequired("ScreenId"))
2984	}
2985	if s.ScreenId != nil && len(*s.ScreenId) < 36 {
2986		invalidParams.Add(request.NewErrParamMinLen("ScreenId", 36))
2987	}
2988	if s.WorkbookId == nil {
2989		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
2990	}
2991	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
2992		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
2993	}
2994	if s.Variables != nil {
2995		for i, v := range s.Variables {
2996			if v == nil {
2997				continue
2998			}
2999			if err := v.Validate(); err != nil {
3000				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Variables", i), err.(request.ErrInvalidParams))
3001			}
3002		}
3003	}
3004
3005	if invalidParams.Len() > 0 {
3006		return invalidParams
3007	}
3008	return nil
3009}
3010
3011// SetAppId sets the AppId field's value.
3012func (s *GetScreenDataInput) SetAppId(v string) *GetScreenDataInput {
3013	s.AppId = &v
3014	return s
3015}
3016
3017// SetMaxResults sets the MaxResults field's value.
3018func (s *GetScreenDataInput) SetMaxResults(v int64) *GetScreenDataInput {
3019	s.MaxResults = &v
3020	return s
3021}
3022
3023// SetNextToken sets the NextToken field's value.
3024func (s *GetScreenDataInput) SetNextToken(v string) *GetScreenDataInput {
3025	s.NextToken = &v
3026	return s
3027}
3028
3029// SetScreenId sets the ScreenId field's value.
3030func (s *GetScreenDataInput) SetScreenId(v string) *GetScreenDataInput {
3031	s.ScreenId = &v
3032	return s
3033}
3034
3035// SetVariables sets the Variables field's value.
3036func (s *GetScreenDataInput) SetVariables(v map[string]*VariableValue) *GetScreenDataInput {
3037	s.Variables = v
3038	return s
3039}
3040
3041// SetWorkbookId sets the WorkbookId field's value.
3042func (s *GetScreenDataInput) SetWorkbookId(v string) *GetScreenDataInput {
3043	s.WorkbookId = &v
3044	return s
3045}
3046
3047type GetScreenDataOutput struct {
3048	_ struct{} `type:"structure"`
3049
3050	// Provides the pagination token to load the next page if there are more results
3051	// matching the request. If a pagination token is not present in the response,
3052	// it means that all data matching the query has been loaded.
3053	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
3054
3055	// A map of all the rows on the screen keyed by block name.
3056	//
3057	// Results is a required field
3058	Results map[string]*ResultSet `locationName:"results" type:"map" required:"true"`
3059
3060	// Indicates the cursor of the workbook at which the data returned by this workbook
3061	// is read. Workbook cursor keeps increasing with every update and the increments
3062	// are not sequential.
3063	//
3064	// WorkbookCursor is a required field
3065	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
3066}
3067
3068// String returns the string representation
3069func (s GetScreenDataOutput) String() string {
3070	return awsutil.Prettify(s)
3071}
3072
3073// GoString returns the string representation
3074func (s GetScreenDataOutput) GoString() string {
3075	return s.String()
3076}
3077
3078// SetNextToken sets the NextToken field's value.
3079func (s *GetScreenDataOutput) SetNextToken(v string) *GetScreenDataOutput {
3080	s.NextToken = &v
3081	return s
3082}
3083
3084// SetResults sets the Results field's value.
3085func (s *GetScreenDataOutput) SetResults(v map[string]*ResultSet) *GetScreenDataOutput {
3086	s.Results = v
3087	return s
3088}
3089
3090// SetWorkbookCursor sets the WorkbookCursor field's value.
3091func (s *GetScreenDataOutput) SetWorkbookCursor(v int64) *GetScreenDataOutput {
3092	s.WorkbookCursor = &v
3093	return s
3094}
3095
3096// An object that has details about the source of the data that was submitted
3097// for import.
3098type ImportDataSource struct {
3099	_ struct{} `type:"structure"`
3100
3101	// The configuration parameters for the data source of the import
3102	//
3103	// DataSourceConfig is a required field
3104	DataSourceConfig *ImportDataSourceConfig `locationName:"dataSourceConfig" type:"structure" required:"true"`
3105}
3106
3107// String returns the string representation
3108func (s ImportDataSource) String() string {
3109	return awsutil.Prettify(s)
3110}
3111
3112// GoString returns the string representation
3113func (s ImportDataSource) GoString() string {
3114	return s.String()
3115}
3116
3117// Validate inspects the fields of the type to determine if they are valid.
3118func (s *ImportDataSource) Validate() error {
3119	invalidParams := request.ErrInvalidParams{Context: "ImportDataSource"}
3120	if s.DataSourceConfig == nil {
3121		invalidParams.Add(request.NewErrParamRequired("DataSourceConfig"))
3122	}
3123	if s.DataSourceConfig != nil {
3124		if err := s.DataSourceConfig.Validate(); err != nil {
3125			invalidParams.AddNested("DataSourceConfig", err.(request.ErrInvalidParams))
3126		}
3127	}
3128
3129	if invalidParams.Len() > 0 {
3130		return invalidParams
3131	}
3132	return nil
3133}
3134
3135// SetDataSourceConfig sets the DataSourceConfig field's value.
3136func (s *ImportDataSource) SetDataSourceConfig(v *ImportDataSourceConfig) *ImportDataSource {
3137	s.DataSourceConfig = v
3138	return s
3139}
3140
3141// An object that contains the configuration parameters for the data source
3142// of an import request.
3143type ImportDataSourceConfig struct {
3144	_ struct{} `type:"structure"`
3145
3146	// The URL from which source data will be downloaded for the import request.
3147	DataSourceUrl *string `locationName:"dataSourceUrl" min:"1" type:"string"`
3148}
3149
3150// String returns the string representation
3151func (s ImportDataSourceConfig) String() string {
3152	return awsutil.Prettify(s)
3153}
3154
3155// GoString returns the string representation
3156func (s ImportDataSourceConfig) GoString() string {
3157	return s.String()
3158}
3159
3160// Validate inspects the fields of the type to determine if they are valid.
3161func (s *ImportDataSourceConfig) Validate() error {
3162	invalidParams := request.ErrInvalidParams{Context: "ImportDataSourceConfig"}
3163	if s.DataSourceUrl != nil && len(*s.DataSourceUrl) < 1 {
3164		invalidParams.Add(request.NewErrParamMinLen("DataSourceUrl", 1))
3165	}
3166
3167	if invalidParams.Len() > 0 {
3168		return invalidParams
3169	}
3170	return nil
3171}
3172
3173// SetDataSourceUrl sets the DataSourceUrl field's value.
3174func (s *ImportDataSourceConfig) SetDataSourceUrl(v string) *ImportDataSourceConfig {
3175	s.DataSourceUrl = &v
3176	return s
3177}
3178
3179// An object that contains the attributes of the submitter of the import job.
3180type ImportJobSubmitter struct {
3181	_ struct{} `type:"structure"`
3182
3183	// The email id of the submitter of the import job, if available.
3184	Email *string `locationName:"email" min:"3" type:"string" sensitive:"true"`
3185
3186	// The AWS user ARN of the submitter of the import job, if available.
3187	UserArn *string `locationName:"userArn" min:"20" type:"string"`
3188}
3189
3190// String returns the string representation
3191func (s ImportJobSubmitter) String() string {
3192	return awsutil.Prettify(s)
3193}
3194
3195// GoString returns the string representation
3196func (s ImportJobSubmitter) GoString() string {
3197	return s.String()
3198}
3199
3200// SetEmail sets the Email field's value.
3201func (s *ImportJobSubmitter) SetEmail(v string) *ImportJobSubmitter {
3202	s.Email = &v
3203	return s
3204}
3205
3206// SetUserArn sets the UserArn field's value.
3207func (s *ImportJobSubmitter) SetUserArn(v string) *ImportJobSubmitter {
3208	s.UserArn = &v
3209	return s
3210}
3211
3212// An object that contains the options specified by the sumitter of the import
3213// request.
3214type ImportOptions struct {
3215	_ struct{} `type:"structure"`
3216
3217	// Options relating to parsing delimited text. Required if dataFormat is DELIMITED_TEXT.
3218	DelimitedTextOptions *DelimitedTextImportOptions `locationName:"delimitedTextOptions" type:"structure"`
3219
3220	// Options relating to the destination of the import request.
3221	DestinationOptions *DestinationOptions `locationName:"destinationOptions" type:"structure"`
3222}
3223
3224// String returns the string representation
3225func (s ImportOptions) String() string {
3226	return awsutil.Prettify(s)
3227}
3228
3229// GoString returns the string representation
3230func (s ImportOptions) GoString() string {
3231	return s.String()
3232}
3233
3234// Validate inspects the fields of the type to determine if they are valid.
3235func (s *ImportOptions) Validate() error {
3236	invalidParams := request.ErrInvalidParams{Context: "ImportOptions"}
3237	if s.DelimitedTextOptions != nil {
3238		if err := s.DelimitedTextOptions.Validate(); err != nil {
3239			invalidParams.AddNested("DelimitedTextOptions", err.(request.ErrInvalidParams))
3240		}
3241	}
3242	if s.DestinationOptions != nil {
3243		if err := s.DestinationOptions.Validate(); err != nil {
3244			invalidParams.AddNested("DestinationOptions", err.(request.ErrInvalidParams))
3245		}
3246	}
3247
3248	if invalidParams.Len() > 0 {
3249		return invalidParams
3250	}
3251	return nil
3252}
3253
3254// SetDelimitedTextOptions sets the DelimitedTextOptions field's value.
3255func (s *ImportOptions) SetDelimitedTextOptions(v *DelimitedTextImportOptions) *ImportOptions {
3256	s.DelimitedTextOptions = v
3257	return s
3258}
3259
3260// SetDestinationOptions sets the DestinationOptions field's value.
3261func (s *ImportOptions) SetDestinationOptions(v *DestinationOptions) *ImportOptions {
3262	s.DestinationOptions = v
3263	return s
3264}
3265
3266// There were unexpected errors from the server.
3267type InternalServerException struct {
3268	_            struct{}                  `type:"structure"`
3269	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3270
3271	Message_ *string `locationName:"message" type:"string"`
3272}
3273
3274// String returns the string representation
3275func (s InternalServerException) String() string {
3276	return awsutil.Prettify(s)
3277}
3278
3279// GoString returns the string representation
3280func (s InternalServerException) GoString() string {
3281	return s.String()
3282}
3283
3284func newErrorInternalServerException(v protocol.ResponseMetadata) error {
3285	return &InternalServerException{
3286		RespMetadata: v,
3287	}
3288}
3289
3290// Code returns the exception type name.
3291func (s *InternalServerException) Code() string {
3292	return "InternalServerException"
3293}
3294
3295// Message returns the exception's message.
3296func (s *InternalServerException) Message() string {
3297	if s.Message_ != nil {
3298		return *s.Message_
3299	}
3300	return ""
3301}
3302
3303// OrigErr always returns nil, satisfies awserr.Error interface.
3304func (s *InternalServerException) OrigErr() error {
3305	return nil
3306}
3307
3308func (s *InternalServerException) Error() string {
3309	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3310}
3311
3312// Status code returns the HTTP status code for the request's response error.
3313func (s *InternalServerException) StatusCode() int {
3314	return s.RespMetadata.StatusCode
3315}
3316
3317// RequestID returns the service's response RequestID for request.
3318func (s *InternalServerException) RequestID() string {
3319	return s.RespMetadata.RequestID
3320}
3321
3322type InvokeScreenAutomationInput struct {
3323	_ struct{} `type:"structure"`
3324
3325	// The ID of the app that contains the screen automation.
3326	//
3327	// AppId is a required field
3328	AppId *string `location:"uri" locationName:"appId" min:"36" type:"string" required:"true"`
3329
3330	// The request token for performing the automation action. Request tokens help
3331	// to identify duplicate requests. If a call times out or fails due to a transient
3332	// error like a failed network connection, you can retry the call with the same
3333	// request token. The service ensures that if the first call using that request
3334	// token is successfully performed, the second call will return the response
3335	// of the previous call rather than performing the action again.
3336	//
3337	// Note that request tokens are valid only for a few minutes. You cannot use
3338	// request tokens to dedupe requests spanning hours or days.
3339	ClientRequestToken *string `locationName:"clientRequestToken" min:"32" type:"string"`
3340
3341	// The row ID for the automation if the automation is defined inside a block
3342	// with source or list.
3343	RowId *string `locationName:"rowId" min:"77" type:"string"`
3344
3345	// The ID of the automation action to be performed.
3346	//
3347	// ScreenAutomationId is a required field
3348	ScreenAutomationId *string `location:"uri" locationName:"automationId" min:"36" type:"string" required:"true"`
3349
3350	// The ID of the screen that contains the screen automation.
3351	//
3352	// ScreenId is a required field
3353	ScreenId *string `location:"uri" locationName:"screenId" min:"36" type:"string" required:"true"`
3354
3355	// Variables are specified as a map where the key is the name of the variable
3356	// as defined on the screen. The value is an object which currently has only
3357	// one property, rawValue, which holds the value of the variable to be passed
3358	// to the screen. Any variables defined in a screen are required to be passed
3359	// in the call.
3360	Variables map[string]*VariableValue `locationName:"variables" type:"map" sensitive:"true"`
3361
3362	// The ID of the workbook that contains the screen automation.
3363	//
3364	// WorkbookId is a required field
3365	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
3366}
3367
3368// String returns the string representation
3369func (s InvokeScreenAutomationInput) String() string {
3370	return awsutil.Prettify(s)
3371}
3372
3373// GoString returns the string representation
3374func (s InvokeScreenAutomationInput) GoString() string {
3375	return s.String()
3376}
3377
3378// Validate inspects the fields of the type to determine if they are valid.
3379func (s *InvokeScreenAutomationInput) Validate() error {
3380	invalidParams := request.ErrInvalidParams{Context: "InvokeScreenAutomationInput"}
3381	if s.AppId == nil {
3382		invalidParams.Add(request.NewErrParamRequired("AppId"))
3383	}
3384	if s.AppId != nil && len(*s.AppId) < 36 {
3385		invalidParams.Add(request.NewErrParamMinLen("AppId", 36))
3386	}
3387	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 32 {
3388		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 32))
3389	}
3390	if s.RowId != nil && len(*s.RowId) < 77 {
3391		invalidParams.Add(request.NewErrParamMinLen("RowId", 77))
3392	}
3393	if s.ScreenAutomationId == nil {
3394		invalidParams.Add(request.NewErrParamRequired("ScreenAutomationId"))
3395	}
3396	if s.ScreenAutomationId != nil && len(*s.ScreenAutomationId) < 36 {
3397		invalidParams.Add(request.NewErrParamMinLen("ScreenAutomationId", 36))
3398	}
3399	if s.ScreenId == nil {
3400		invalidParams.Add(request.NewErrParamRequired("ScreenId"))
3401	}
3402	if s.ScreenId != nil && len(*s.ScreenId) < 36 {
3403		invalidParams.Add(request.NewErrParamMinLen("ScreenId", 36))
3404	}
3405	if s.WorkbookId == nil {
3406		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
3407	}
3408	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
3409		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
3410	}
3411	if s.Variables != nil {
3412		for i, v := range s.Variables {
3413			if v == nil {
3414				continue
3415			}
3416			if err := v.Validate(); err != nil {
3417				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Variables", i), err.(request.ErrInvalidParams))
3418			}
3419		}
3420	}
3421
3422	if invalidParams.Len() > 0 {
3423		return invalidParams
3424	}
3425	return nil
3426}
3427
3428// SetAppId sets the AppId field's value.
3429func (s *InvokeScreenAutomationInput) SetAppId(v string) *InvokeScreenAutomationInput {
3430	s.AppId = &v
3431	return s
3432}
3433
3434// SetClientRequestToken sets the ClientRequestToken field's value.
3435func (s *InvokeScreenAutomationInput) SetClientRequestToken(v string) *InvokeScreenAutomationInput {
3436	s.ClientRequestToken = &v
3437	return s
3438}
3439
3440// SetRowId sets the RowId field's value.
3441func (s *InvokeScreenAutomationInput) SetRowId(v string) *InvokeScreenAutomationInput {
3442	s.RowId = &v
3443	return s
3444}
3445
3446// SetScreenAutomationId sets the ScreenAutomationId field's value.
3447func (s *InvokeScreenAutomationInput) SetScreenAutomationId(v string) *InvokeScreenAutomationInput {
3448	s.ScreenAutomationId = &v
3449	return s
3450}
3451
3452// SetScreenId sets the ScreenId field's value.
3453func (s *InvokeScreenAutomationInput) SetScreenId(v string) *InvokeScreenAutomationInput {
3454	s.ScreenId = &v
3455	return s
3456}
3457
3458// SetVariables sets the Variables field's value.
3459func (s *InvokeScreenAutomationInput) SetVariables(v map[string]*VariableValue) *InvokeScreenAutomationInput {
3460	s.Variables = v
3461	return s
3462}
3463
3464// SetWorkbookId sets the WorkbookId field's value.
3465func (s *InvokeScreenAutomationInput) SetWorkbookId(v string) *InvokeScreenAutomationInput {
3466	s.WorkbookId = &v
3467	return s
3468}
3469
3470type InvokeScreenAutomationOutput struct {
3471	_ struct{} `type:"structure"`
3472
3473	// The updated workbook cursor after performing the automation action.
3474	//
3475	// WorkbookCursor is a required field
3476	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
3477}
3478
3479// String returns the string representation
3480func (s InvokeScreenAutomationOutput) String() string {
3481	return awsutil.Prettify(s)
3482}
3483
3484// GoString returns the string representation
3485func (s InvokeScreenAutomationOutput) GoString() string {
3486	return s.String()
3487}
3488
3489// SetWorkbookCursor sets the WorkbookCursor field's value.
3490func (s *InvokeScreenAutomationOutput) SetWorkbookCursor(v int64) *InvokeScreenAutomationOutput {
3491	s.WorkbookCursor = &v
3492	return s
3493}
3494
3495type ListTableColumnsInput struct {
3496	_ struct{} `type:"structure"`
3497
3498	// This parameter is optional. If a nextToken is not specified, the API returns
3499	// the first page of data.
3500	//
3501	// Pagination tokens expire after 1 hour. If you use a token that was returned
3502	// more than an hour back, the API will throw ValidationException.
3503	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
3504
3505	// The ID of the table whose columns are being retrieved.
3506	//
3507	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
3508	//
3509	// TableId is a required field
3510	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
3511
3512	// The ID of the workbook that contains the table whose columns are being retrieved.
3513	//
3514	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
3515	//
3516	// WorkbookId is a required field
3517	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
3518}
3519
3520// String returns the string representation
3521func (s ListTableColumnsInput) String() string {
3522	return awsutil.Prettify(s)
3523}
3524
3525// GoString returns the string representation
3526func (s ListTableColumnsInput) GoString() string {
3527	return s.String()
3528}
3529
3530// Validate inspects the fields of the type to determine if they are valid.
3531func (s *ListTableColumnsInput) Validate() error {
3532	invalidParams := request.ErrInvalidParams{Context: "ListTableColumnsInput"}
3533	if s.NextToken != nil && len(*s.NextToken) < 1 {
3534		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
3535	}
3536	if s.TableId == nil {
3537		invalidParams.Add(request.NewErrParamRequired("TableId"))
3538	}
3539	if s.TableId != nil && len(*s.TableId) < 36 {
3540		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
3541	}
3542	if s.WorkbookId == nil {
3543		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
3544	}
3545	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
3546		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
3547	}
3548
3549	if invalidParams.Len() > 0 {
3550		return invalidParams
3551	}
3552	return nil
3553}
3554
3555// SetNextToken sets the NextToken field's value.
3556func (s *ListTableColumnsInput) SetNextToken(v string) *ListTableColumnsInput {
3557	s.NextToken = &v
3558	return s
3559}
3560
3561// SetTableId sets the TableId field's value.
3562func (s *ListTableColumnsInput) SetTableId(v string) *ListTableColumnsInput {
3563	s.TableId = &v
3564	return s
3565}
3566
3567// SetWorkbookId sets the WorkbookId field's value.
3568func (s *ListTableColumnsInput) SetWorkbookId(v string) *ListTableColumnsInput {
3569	s.WorkbookId = &v
3570	return s
3571}
3572
3573type ListTableColumnsOutput struct {
3574	_ struct{} `type:"structure"`
3575
3576	// Provides the pagination token to load the next page if there are more results
3577	// matching the request. If a pagination token is not present in the response,
3578	// it means that all data matching the request has been loaded.
3579	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
3580
3581	// The list of columns in the table.
3582	//
3583	// TableColumns is a required field
3584	TableColumns []*TableColumn `locationName:"tableColumns" type:"list" required:"true"`
3585
3586	// Indicates the cursor of the workbook at which the data returned by this request
3587	// is read. Workbook cursor keeps increasing with every update and the increments
3588	// are not sequential.
3589	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long"`
3590}
3591
3592// String returns the string representation
3593func (s ListTableColumnsOutput) String() string {
3594	return awsutil.Prettify(s)
3595}
3596
3597// GoString returns the string representation
3598func (s ListTableColumnsOutput) GoString() string {
3599	return s.String()
3600}
3601
3602// SetNextToken sets the NextToken field's value.
3603func (s *ListTableColumnsOutput) SetNextToken(v string) *ListTableColumnsOutput {
3604	s.NextToken = &v
3605	return s
3606}
3607
3608// SetTableColumns sets the TableColumns field's value.
3609func (s *ListTableColumnsOutput) SetTableColumns(v []*TableColumn) *ListTableColumnsOutput {
3610	s.TableColumns = v
3611	return s
3612}
3613
3614// SetWorkbookCursor sets the WorkbookCursor field's value.
3615func (s *ListTableColumnsOutput) SetWorkbookCursor(v int64) *ListTableColumnsOutput {
3616	s.WorkbookCursor = &v
3617	return s
3618}
3619
3620type ListTableRowsInput struct {
3621	_ struct{} `type:"structure"`
3622
3623	// The maximum number of rows to return in each page of the results.
3624	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
3625
3626	// This parameter is optional. If a nextToken is not specified, the API returns
3627	// the first page of data.
3628	//
3629	// Pagination tokens expire after 1 hour. If you use a token that was returned
3630	// more than an hour back, the API will throw ValidationException.
3631	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
3632
3633	// This parameter is optional. If one or more row ids are specified in this
3634	// list, then only the specified row ids are returned in the result. If no row
3635	// ids are specified here, then all the rows in the table are returned.
3636	RowIds []*string `locationName:"rowIds" min:"1" type:"list"`
3637
3638	// The ID of the table whose rows are being retrieved.
3639	//
3640	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
3641	//
3642	// TableId is a required field
3643	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
3644
3645	// The ID of the workbook that contains the table whose rows are being retrieved.
3646	//
3647	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
3648	//
3649	// WorkbookId is a required field
3650	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
3651}
3652
3653// String returns the string representation
3654func (s ListTableRowsInput) String() string {
3655	return awsutil.Prettify(s)
3656}
3657
3658// GoString returns the string representation
3659func (s ListTableRowsInput) GoString() string {
3660	return s.String()
3661}
3662
3663// Validate inspects the fields of the type to determine if they are valid.
3664func (s *ListTableRowsInput) Validate() error {
3665	invalidParams := request.ErrInvalidParams{Context: "ListTableRowsInput"}
3666	if s.MaxResults != nil && *s.MaxResults < 1 {
3667		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
3668	}
3669	if s.NextToken != nil && len(*s.NextToken) < 1 {
3670		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
3671	}
3672	if s.RowIds != nil && len(s.RowIds) < 1 {
3673		invalidParams.Add(request.NewErrParamMinLen("RowIds", 1))
3674	}
3675	if s.TableId == nil {
3676		invalidParams.Add(request.NewErrParamRequired("TableId"))
3677	}
3678	if s.TableId != nil && len(*s.TableId) < 36 {
3679		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
3680	}
3681	if s.WorkbookId == nil {
3682		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
3683	}
3684	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
3685		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
3686	}
3687
3688	if invalidParams.Len() > 0 {
3689		return invalidParams
3690	}
3691	return nil
3692}
3693
3694// SetMaxResults sets the MaxResults field's value.
3695func (s *ListTableRowsInput) SetMaxResults(v int64) *ListTableRowsInput {
3696	s.MaxResults = &v
3697	return s
3698}
3699
3700// SetNextToken sets the NextToken field's value.
3701func (s *ListTableRowsInput) SetNextToken(v string) *ListTableRowsInput {
3702	s.NextToken = &v
3703	return s
3704}
3705
3706// SetRowIds sets the RowIds field's value.
3707func (s *ListTableRowsInput) SetRowIds(v []*string) *ListTableRowsInput {
3708	s.RowIds = v
3709	return s
3710}
3711
3712// SetTableId sets the TableId field's value.
3713func (s *ListTableRowsInput) SetTableId(v string) *ListTableRowsInput {
3714	s.TableId = &v
3715	return s
3716}
3717
3718// SetWorkbookId sets the WorkbookId field's value.
3719func (s *ListTableRowsInput) SetWorkbookId(v string) *ListTableRowsInput {
3720	s.WorkbookId = &v
3721	return s
3722}
3723
3724type ListTableRowsOutput struct {
3725	_ struct{} `type:"structure"`
3726
3727	// The list of columns in the table whose row data is returned in the result.
3728	//
3729	// ColumnIds is a required field
3730	ColumnIds []*string `locationName:"columnIds" min:"1" type:"list" required:"true"`
3731
3732	// Provides the pagination token to load the next page if there are more results
3733	// matching the request. If a pagination token is not present in the response,
3734	// it means that all data matching the request has been loaded.
3735	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
3736
3737	// The list of row ids included in the request that were not found in the table.
3738	RowIdsNotFound []*string `locationName:"rowIdsNotFound" min:"1" type:"list"`
3739
3740	// The list of rows in the table. Note that this result is paginated, so this
3741	// list contains a maximum of 100 rows.
3742	//
3743	// Rows is a required field
3744	Rows []*TableRow `locationName:"rows" type:"list" required:"true"`
3745
3746	// Indicates the cursor of the workbook at which the data returned by this request
3747	// is read. Workbook cursor keeps increasing with every update and the increments
3748	// are not sequential.
3749	//
3750	// WorkbookCursor is a required field
3751	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
3752}
3753
3754// String returns the string representation
3755func (s ListTableRowsOutput) String() string {
3756	return awsutil.Prettify(s)
3757}
3758
3759// GoString returns the string representation
3760func (s ListTableRowsOutput) GoString() string {
3761	return s.String()
3762}
3763
3764// SetColumnIds sets the ColumnIds field's value.
3765func (s *ListTableRowsOutput) SetColumnIds(v []*string) *ListTableRowsOutput {
3766	s.ColumnIds = v
3767	return s
3768}
3769
3770// SetNextToken sets the NextToken field's value.
3771func (s *ListTableRowsOutput) SetNextToken(v string) *ListTableRowsOutput {
3772	s.NextToken = &v
3773	return s
3774}
3775
3776// SetRowIdsNotFound sets the RowIdsNotFound field's value.
3777func (s *ListTableRowsOutput) SetRowIdsNotFound(v []*string) *ListTableRowsOutput {
3778	s.RowIdsNotFound = v
3779	return s
3780}
3781
3782// SetRows sets the Rows field's value.
3783func (s *ListTableRowsOutput) SetRows(v []*TableRow) *ListTableRowsOutput {
3784	s.Rows = v
3785	return s
3786}
3787
3788// SetWorkbookCursor sets the WorkbookCursor field's value.
3789func (s *ListTableRowsOutput) SetWorkbookCursor(v int64) *ListTableRowsOutput {
3790	s.WorkbookCursor = &v
3791	return s
3792}
3793
3794type ListTablesInput struct {
3795	_ struct{} `type:"structure"`
3796
3797	// The maximum number of tables to return in each page of the results.
3798	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
3799
3800	// This parameter is optional. If a nextToken is not specified, the API returns
3801	// the first page of data.
3802	//
3803	// Pagination tokens expire after 1 hour. If you use a token that was returned
3804	// more than an hour back, the API will throw ValidationException.
3805	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
3806
3807	// The ID of the workbook whose tables are being retrieved.
3808	//
3809	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
3810	//
3811	// WorkbookId is a required field
3812	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
3813}
3814
3815// String returns the string representation
3816func (s ListTablesInput) String() string {
3817	return awsutil.Prettify(s)
3818}
3819
3820// GoString returns the string representation
3821func (s ListTablesInput) GoString() string {
3822	return s.String()
3823}
3824
3825// Validate inspects the fields of the type to determine if they are valid.
3826func (s *ListTablesInput) Validate() error {
3827	invalidParams := request.ErrInvalidParams{Context: "ListTablesInput"}
3828	if s.MaxResults != nil && *s.MaxResults < 1 {
3829		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
3830	}
3831	if s.NextToken != nil && len(*s.NextToken) < 1 {
3832		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
3833	}
3834	if s.WorkbookId == nil {
3835		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
3836	}
3837	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
3838		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
3839	}
3840
3841	if invalidParams.Len() > 0 {
3842		return invalidParams
3843	}
3844	return nil
3845}
3846
3847// SetMaxResults sets the MaxResults field's value.
3848func (s *ListTablesInput) SetMaxResults(v int64) *ListTablesInput {
3849	s.MaxResults = &v
3850	return s
3851}
3852
3853// SetNextToken sets the NextToken field's value.
3854func (s *ListTablesInput) SetNextToken(v string) *ListTablesInput {
3855	s.NextToken = &v
3856	return s
3857}
3858
3859// SetWorkbookId sets the WorkbookId field's value.
3860func (s *ListTablesInput) SetWorkbookId(v string) *ListTablesInput {
3861	s.WorkbookId = &v
3862	return s
3863}
3864
3865type ListTablesOutput struct {
3866	_ struct{} `type:"structure"`
3867
3868	// Provides the pagination token to load the next page if there are more results
3869	// matching the request. If a pagination token is not present in the response,
3870	// it means that all data matching the request has been loaded.
3871	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
3872
3873	// The list of tables in the workbook.
3874	//
3875	// Tables is a required field
3876	Tables []*Table `locationName:"tables" type:"list" required:"true"`
3877
3878	// Indicates the cursor of the workbook at which the data returned by this request
3879	// is read. Workbook cursor keeps increasing with every update and the increments
3880	// are not sequential.
3881	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long"`
3882}
3883
3884// String returns the string representation
3885func (s ListTablesOutput) String() string {
3886	return awsutil.Prettify(s)
3887}
3888
3889// GoString returns the string representation
3890func (s ListTablesOutput) GoString() string {
3891	return s.String()
3892}
3893
3894// SetNextToken sets the NextToken field's value.
3895func (s *ListTablesOutput) SetNextToken(v string) *ListTablesOutput {
3896	s.NextToken = &v
3897	return s
3898}
3899
3900// SetTables sets the Tables field's value.
3901func (s *ListTablesOutput) SetTables(v []*Table) *ListTablesOutput {
3902	s.Tables = v
3903	return s
3904}
3905
3906// SetWorkbookCursor sets the WorkbookCursor field's value.
3907func (s *ListTablesOutput) SetWorkbookCursor(v int64) *ListTablesOutput {
3908	s.WorkbookCursor = &v
3909	return s
3910}
3911
3912type QueryTableRowsInput struct {
3913	_ struct{} `type:"structure"`
3914
3915	// An object that represents a filter formula along with the id of the context
3916	// row under which the filter function needs to evaluate.
3917	//
3918	// FilterFormula is a required field
3919	FilterFormula *Filter `locationName:"filterFormula" type:"structure" required:"true"`
3920
3921	// The maximum number of rows to return in each page of the results.
3922	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
3923
3924	// This parameter is optional. If a nextToken is not specified, the API returns
3925	// the first page of data.
3926	//
3927	// Pagination tokens expire after 1 hour. If you use a token that was returned
3928	// more than an hour back, the API will throw ValidationException.
3929	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
3930
3931	// The ID of the table whose rows are being queried.
3932	//
3933	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
3934	//
3935	// TableId is a required field
3936	TableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
3937
3938	// The ID of the workbook whose table rows are being queried.
3939	//
3940	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
3941	//
3942	// WorkbookId is a required field
3943	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
3944}
3945
3946// String returns the string representation
3947func (s QueryTableRowsInput) String() string {
3948	return awsutil.Prettify(s)
3949}
3950
3951// GoString returns the string representation
3952func (s QueryTableRowsInput) GoString() string {
3953	return s.String()
3954}
3955
3956// Validate inspects the fields of the type to determine if they are valid.
3957func (s *QueryTableRowsInput) Validate() error {
3958	invalidParams := request.ErrInvalidParams{Context: "QueryTableRowsInput"}
3959	if s.FilterFormula == nil {
3960		invalidParams.Add(request.NewErrParamRequired("FilterFormula"))
3961	}
3962	if s.MaxResults != nil && *s.MaxResults < 1 {
3963		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
3964	}
3965	if s.NextToken != nil && len(*s.NextToken) < 1 {
3966		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
3967	}
3968	if s.TableId == nil {
3969		invalidParams.Add(request.NewErrParamRequired("TableId"))
3970	}
3971	if s.TableId != nil && len(*s.TableId) < 36 {
3972		invalidParams.Add(request.NewErrParamMinLen("TableId", 36))
3973	}
3974	if s.WorkbookId == nil {
3975		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
3976	}
3977	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
3978		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
3979	}
3980	if s.FilterFormula != nil {
3981		if err := s.FilterFormula.Validate(); err != nil {
3982			invalidParams.AddNested("FilterFormula", err.(request.ErrInvalidParams))
3983		}
3984	}
3985
3986	if invalidParams.Len() > 0 {
3987		return invalidParams
3988	}
3989	return nil
3990}
3991
3992// SetFilterFormula sets the FilterFormula field's value.
3993func (s *QueryTableRowsInput) SetFilterFormula(v *Filter) *QueryTableRowsInput {
3994	s.FilterFormula = v
3995	return s
3996}
3997
3998// SetMaxResults sets the MaxResults field's value.
3999func (s *QueryTableRowsInput) SetMaxResults(v int64) *QueryTableRowsInput {
4000	s.MaxResults = &v
4001	return s
4002}
4003
4004// SetNextToken sets the NextToken field's value.
4005func (s *QueryTableRowsInput) SetNextToken(v string) *QueryTableRowsInput {
4006	s.NextToken = &v
4007	return s
4008}
4009
4010// SetTableId sets the TableId field's value.
4011func (s *QueryTableRowsInput) SetTableId(v string) *QueryTableRowsInput {
4012	s.TableId = &v
4013	return s
4014}
4015
4016// SetWorkbookId sets the WorkbookId field's value.
4017func (s *QueryTableRowsInput) SetWorkbookId(v string) *QueryTableRowsInput {
4018	s.WorkbookId = &v
4019	return s
4020}
4021
4022type QueryTableRowsOutput struct {
4023	_ struct{} `type:"structure"`
4024
4025	// The list of columns in the table whose row data is returned in the result.
4026	//
4027	// ColumnIds is a required field
4028	ColumnIds []*string `locationName:"columnIds" min:"1" type:"list" required:"true"`
4029
4030	// Provides the pagination token to load the next page if there are more results
4031	// matching the request. If a pagination token is not present in the response,
4032	// it means that all data matching the request has been loaded.
4033	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
4034
4035	// The list of rows in the table that match the query filter.
4036	//
4037	// Rows is a required field
4038	Rows []*TableRow `locationName:"rows" type:"list" required:"true"`
4039
4040	// Indicates the cursor of the workbook at which the data returned by this request
4041	// is read. Workbook cursor keeps increasing with every update and the increments
4042	// are not sequential.
4043	//
4044	// WorkbookCursor is a required field
4045	WorkbookCursor *int64 `locationName:"workbookCursor" type:"long" required:"true"`
4046}
4047
4048// String returns the string representation
4049func (s QueryTableRowsOutput) String() string {
4050	return awsutil.Prettify(s)
4051}
4052
4053// GoString returns the string representation
4054func (s QueryTableRowsOutput) GoString() string {
4055	return s.String()
4056}
4057
4058// SetColumnIds sets the ColumnIds field's value.
4059func (s *QueryTableRowsOutput) SetColumnIds(v []*string) *QueryTableRowsOutput {
4060	s.ColumnIds = v
4061	return s
4062}
4063
4064// SetNextToken sets the NextToken field's value.
4065func (s *QueryTableRowsOutput) SetNextToken(v string) *QueryTableRowsOutput {
4066	s.NextToken = &v
4067	return s
4068}
4069
4070// SetRows sets the Rows field's value.
4071func (s *QueryTableRowsOutput) SetRows(v []*TableRow) *QueryTableRowsOutput {
4072	s.Rows = v
4073	return s
4074}
4075
4076// SetWorkbookCursor sets the WorkbookCursor field's value.
4077func (s *QueryTableRowsOutput) SetWorkbookCursor(v int64) *QueryTableRowsOutput {
4078	s.WorkbookCursor = &v
4079	return s
4080}
4081
4082// The request timed out.
4083type RequestTimeoutException struct {
4084	_            struct{}                  `type:"structure"`
4085	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4086
4087	Message_ *string `locationName:"message" type:"string"`
4088}
4089
4090// String returns the string representation
4091func (s RequestTimeoutException) String() string {
4092	return awsutil.Prettify(s)
4093}
4094
4095// GoString returns the string representation
4096func (s RequestTimeoutException) GoString() string {
4097	return s.String()
4098}
4099
4100func newErrorRequestTimeoutException(v protocol.ResponseMetadata) error {
4101	return &RequestTimeoutException{
4102		RespMetadata: v,
4103	}
4104}
4105
4106// Code returns the exception type name.
4107func (s *RequestTimeoutException) Code() string {
4108	return "RequestTimeoutException"
4109}
4110
4111// Message returns the exception's message.
4112func (s *RequestTimeoutException) Message() string {
4113	if s.Message_ != nil {
4114		return *s.Message_
4115	}
4116	return ""
4117}
4118
4119// OrigErr always returns nil, satisfies awserr.Error interface.
4120func (s *RequestTimeoutException) OrigErr() error {
4121	return nil
4122}
4123
4124func (s *RequestTimeoutException) Error() string {
4125	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4126}
4127
4128// Status code returns the HTTP status code for the request's response error.
4129func (s *RequestTimeoutException) StatusCode() int {
4130	return s.RespMetadata.StatusCode
4131}
4132
4133// RequestID returns the service's response RequestID for request.
4134func (s *RequestTimeoutException) RequestID() string {
4135	return s.RespMetadata.RequestID
4136}
4137
4138// A Workbook, Table, App, Screen or Screen Automation was not found with the
4139// given ID.
4140type ResourceNotFoundException struct {
4141	_            struct{}                  `type:"structure"`
4142	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4143
4144	Message_ *string `locationName:"message" type:"string"`
4145}
4146
4147// String returns the string representation
4148func (s ResourceNotFoundException) String() string {
4149	return awsutil.Prettify(s)
4150}
4151
4152// GoString returns the string representation
4153func (s ResourceNotFoundException) GoString() string {
4154	return s.String()
4155}
4156
4157func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
4158	return &ResourceNotFoundException{
4159		RespMetadata: v,
4160	}
4161}
4162
4163// Code returns the exception type name.
4164func (s *ResourceNotFoundException) Code() string {
4165	return "ResourceNotFoundException"
4166}
4167
4168// Message returns the exception's message.
4169func (s *ResourceNotFoundException) Message() string {
4170	if s.Message_ != nil {
4171		return *s.Message_
4172	}
4173	return ""
4174}
4175
4176// OrigErr always returns nil, satisfies awserr.Error interface.
4177func (s *ResourceNotFoundException) OrigErr() error {
4178	return nil
4179}
4180
4181func (s *ResourceNotFoundException) Error() string {
4182	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4183}
4184
4185// Status code returns the HTTP status code for the request's response error.
4186func (s *ResourceNotFoundException) StatusCode() int {
4187	return s.RespMetadata.StatusCode
4188}
4189
4190// RequestID returns the service's response RequestID for request.
4191func (s *ResourceNotFoundException) RequestID() string {
4192	return s.RespMetadata.RequestID
4193}
4194
4195// A single row in the ResultSet.
4196type ResultRow struct {
4197	_ struct{} `type:"structure"`
4198
4199	// List of all the data cells in a row.
4200	//
4201	// DataItems is a required field
4202	DataItems []*DataItem `locationName:"dataItems" type:"list" required:"true"`
4203
4204	// The ID for a particular row.
4205	RowId *string `locationName:"rowId" min:"77" type:"string"`
4206}
4207
4208// String returns the string representation
4209func (s ResultRow) String() string {
4210	return awsutil.Prettify(s)
4211}
4212
4213// GoString returns the string representation
4214func (s ResultRow) GoString() string {
4215	return s.String()
4216}
4217
4218// SetDataItems sets the DataItems field's value.
4219func (s *ResultRow) SetDataItems(v []*DataItem) *ResultRow {
4220	s.DataItems = v
4221	return s
4222}
4223
4224// SetRowId sets the RowId field's value.
4225func (s *ResultRow) SetRowId(v string) *ResultRow {
4226	s.RowId = &v
4227	return s
4228}
4229
4230// ResultSet contains the results of the request for a single block or list
4231// defined on the screen.
4232type ResultSet struct {
4233	_ struct{} `type:"structure"`
4234
4235	// List of headers for all the data cells in the block. The header identifies
4236	// the name and default format of the data cell. Data cells appear in the same
4237	// order in all rows as defined in the header. The names and formats are not
4238	// repeated in the rows. If a particular row does not have a value for a data
4239	// cell, a blank value is used.
4240	//
4241	// For example, a task list that displays the task name, due date and assigned
4242	// person might have headers [ { "name": "Task Name"}, {"name": "Due Date",
4243	// "format": "DATE"}, {"name": "Assigned", "format": "CONTACT"} ]. Every row
4244	// in the result will have the task name as the first item, due date as the
4245	// second item and assigned person as the third item. If a particular task does
4246	// not have a due date, that row will still have a blank value in the second
4247	// element and the assigned person will still be in the third element.
4248	//
4249	// Headers is a required field
4250	Headers []*ColumnMetadata `locationName:"headers" type:"list" required:"true"`
4251
4252	// List of rows returned by the request. Each row has a row Id and a list of
4253	// data cells in that row. The data cells will be present in the same order
4254	// as they are defined in the header.
4255	//
4256	// Rows is a required field
4257	Rows []*ResultRow `locationName:"rows" type:"list" required:"true"`
4258}
4259
4260// String returns the string representation
4261func (s ResultSet) String() string {
4262	return awsutil.Prettify(s)
4263}
4264
4265// GoString returns the string representation
4266func (s ResultSet) GoString() string {
4267	return s.String()
4268}
4269
4270// SetHeaders sets the Headers field's value.
4271func (s *ResultSet) SetHeaders(v []*ColumnMetadata) *ResultSet {
4272	s.Headers = v
4273	return s
4274}
4275
4276// SetRows sets the Rows field's value.
4277func (s *ResultSet) SetRows(v []*ResultRow) *ResultSet {
4278	s.Rows = v
4279	return s
4280}
4281
4282// The request caused service quota to be breached.
4283type ServiceQuotaExceededException struct {
4284	_            struct{}                  `type:"structure"`
4285	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4286
4287	Message_ *string `locationName:"message" type:"string"`
4288}
4289
4290// String returns the string representation
4291func (s ServiceQuotaExceededException) String() string {
4292	return awsutil.Prettify(s)
4293}
4294
4295// GoString returns the string representation
4296func (s ServiceQuotaExceededException) GoString() string {
4297	return s.String()
4298}
4299
4300func newErrorServiceQuotaExceededException(v protocol.ResponseMetadata) error {
4301	return &ServiceQuotaExceededException{
4302		RespMetadata: v,
4303	}
4304}
4305
4306// Code returns the exception type name.
4307func (s *ServiceQuotaExceededException) Code() string {
4308	return "ServiceQuotaExceededException"
4309}
4310
4311// Message returns the exception's message.
4312func (s *ServiceQuotaExceededException) Message() string {
4313	if s.Message_ != nil {
4314		return *s.Message_
4315	}
4316	return ""
4317}
4318
4319// OrigErr always returns nil, satisfies awserr.Error interface.
4320func (s *ServiceQuotaExceededException) OrigErr() error {
4321	return nil
4322}
4323
4324func (s *ServiceQuotaExceededException) Error() string {
4325	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4326}
4327
4328// Status code returns the HTTP status code for the request's response error.
4329func (s *ServiceQuotaExceededException) StatusCode() int {
4330	return s.RespMetadata.StatusCode
4331}
4332
4333// RequestID returns the service's response RequestID for request.
4334func (s *ServiceQuotaExceededException) RequestID() string {
4335	return s.RespMetadata.RequestID
4336}
4337
4338// Remote service is unreachable.
4339type ServiceUnavailableException struct {
4340	_            struct{}                  `type:"structure"`
4341	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4342
4343	Message_ *string `locationName:"message" type:"string"`
4344}
4345
4346// String returns the string representation
4347func (s ServiceUnavailableException) String() string {
4348	return awsutil.Prettify(s)
4349}
4350
4351// GoString returns the string representation
4352func (s ServiceUnavailableException) GoString() string {
4353	return s.String()
4354}
4355
4356func newErrorServiceUnavailableException(v protocol.ResponseMetadata) error {
4357	return &ServiceUnavailableException{
4358		RespMetadata: v,
4359	}
4360}
4361
4362// Code returns the exception type name.
4363func (s *ServiceUnavailableException) Code() string {
4364	return "ServiceUnavailableException"
4365}
4366
4367// Message returns the exception's message.
4368func (s *ServiceUnavailableException) Message() string {
4369	if s.Message_ != nil {
4370		return *s.Message_
4371	}
4372	return ""
4373}
4374
4375// OrigErr always returns nil, satisfies awserr.Error interface.
4376func (s *ServiceUnavailableException) OrigErr() error {
4377	return nil
4378}
4379
4380func (s *ServiceUnavailableException) Error() string {
4381	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4382}
4383
4384// Status code returns the HTTP status code for the request's response error.
4385func (s *ServiceUnavailableException) StatusCode() int {
4386	return s.RespMetadata.StatusCode
4387}
4388
4389// RequestID returns the service's response RequestID for request.
4390func (s *ServiceUnavailableException) RequestID() string {
4391	return s.RespMetadata.RequestID
4392}
4393
4394// An object that contains the properties for importing data to a specific column
4395// in a table.
4396type SourceDataColumnProperties struct {
4397	_ struct{} `type:"structure"`
4398
4399	// The index of the column in the input file.
4400	ColumnIndex *int64 `locationName:"columnIndex" min:"1" type:"integer"`
4401}
4402
4403// String returns the string representation
4404func (s SourceDataColumnProperties) String() string {
4405	return awsutil.Prettify(s)
4406}
4407
4408// GoString returns the string representation
4409func (s SourceDataColumnProperties) GoString() string {
4410	return s.String()
4411}
4412
4413// Validate inspects the fields of the type to determine if they are valid.
4414func (s *SourceDataColumnProperties) Validate() error {
4415	invalidParams := request.ErrInvalidParams{Context: "SourceDataColumnProperties"}
4416	if s.ColumnIndex != nil && *s.ColumnIndex < 1 {
4417		invalidParams.Add(request.NewErrParamMinValue("ColumnIndex", 1))
4418	}
4419
4420	if invalidParams.Len() > 0 {
4421		return invalidParams
4422	}
4423	return nil
4424}
4425
4426// SetColumnIndex sets the ColumnIndex field's value.
4427func (s *SourceDataColumnProperties) SetColumnIndex(v int64) *SourceDataColumnProperties {
4428	s.ColumnIndex = &v
4429	return s
4430}
4431
4432type StartTableDataImportJobInput struct {
4433	_ struct{} `type:"structure"`
4434
4435	// The request token for performing the update action. Request tokens help to
4436	// identify duplicate requests. If a call times out or fails due to a transient
4437	// error like a failed network connection, you can retry the call with the same
4438	// request token. The service ensures that if the first call using that request
4439	// token is successfully performed, the second call will not perform the action
4440	// again.
4441	//
4442	// Note that request tokens are valid only for a few minutes. You cannot use
4443	// request tokens to dedupe requests spanning hours or days.
4444	//
4445	// ClientRequestToken is a required field
4446	ClientRequestToken *string `locationName:"clientRequestToken" min:"32" type:"string" required:"true"`
4447
4448	// The format of the data that is being imported. Currently the only option
4449	// supported is "DELIMITED_TEXT".
4450	//
4451	// DataFormat is a required field
4452	DataFormat *string `locationName:"dataFormat" type:"string" required:"true" enum:"ImportSourceDataFormat"`
4453
4454	// The source of the data that is being imported. The size of source must be
4455	// no larger than 100 MB. Source must have no more than 100,000 cells and no
4456	// more than 1,000 rows.
4457	//
4458	// DataSource is a required field
4459	DataSource *ImportDataSource `locationName:"dataSource" type:"structure" required:"true"`
4460
4461	// The ID of the table where the rows are being imported.
4462	//
4463	// If a table with the specified id could not be found, this API throws ResourceNotFoundException.
4464	//
4465	// DestinationTableId is a required field
4466	DestinationTableId *string `location:"uri" locationName:"tableId" min:"36" type:"string" required:"true"`
4467
4468	// The options for customizing this import request.
4469	//
4470	// ImportOptions is a required field
4471	ImportOptions *ImportOptions `locationName:"importOptions" type:"structure" required:"true"`
4472
4473	// The ID of the workbook where the rows are being imported.
4474	//
4475	// If a workbook with the specified id could not be found, this API throws ResourceNotFoundException.
4476	//
4477	// WorkbookId is a required field
4478	WorkbookId *string `location:"uri" locationName:"workbookId" min:"36" type:"string" required:"true"`
4479}
4480
4481// String returns the string representation
4482func (s StartTableDataImportJobInput) String() string {
4483	return awsutil.Prettify(s)
4484}
4485
4486// GoString returns the string representation
4487func (s StartTableDataImportJobInput) GoString() string {
4488	return s.String()
4489}
4490
4491// Validate inspects the fields of the type to determine if they are valid.
4492func (s *StartTableDataImportJobInput) Validate() error {
4493	invalidParams := request.ErrInvalidParams{Context: "StartTableDataImportJobInput"}
4494	if s.ClientRequestToken == nil {
4495		invalidParams.Add(request.NewErrParamRequired("ClientRequestToken"))
4496	}
4497	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 32 {
4498		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 32))
4499	}
4500	if s.DataFormat == nil {
4501		invalidParams.Add(request.NewErrParamRequired("DataFormat"))
4502	}
4503	if s.DataSource == nil {
4504		invalidParams.Add(request.NewErrParamRequired("DataSource"))
4505	}
4506	if s.DestinationTableId == nil {
4507		invalidParams.Add(request.NewErrParamRequired("DestinationTableId"))
4508	}
4509	if s.DestinationTableId != nil && len(*s.DestinationTableId) < 36 {
4510		invalidParams.Add(request.NewErrParamMinLen("DestinationTableId", 36))
4511	}
4512	if s.ImportOptions == nil {
4513		invalidParams.Add(request.NewErrParamRequired("ImportOptions"))
4514	}
4515	if s.WorkbookId == nil {
4516		invalidParams.Add(request.NewErrParamRequired("WorkbookId"))
4517	}
4518	if s.WorkbookId != nil && len(*s.WorkbookId) < 36 {
4519		invalidParams.Add(request.NewErrParamMinLen("WorkbookId", 36))
4520	}
4521	if s.DataSource != nil {
4522		if err := s.DataSource.Validate(); err != nil {
4523			invalidParams.AddNested("DataSource", err.(request.ErrInvalidParams))
4524		}
4525	}
4526	if s.ImportOptions != nil {
4527		if err := s.ImportOptions.Validate(); err != nil {
4528			invalidParams.AddNested("ImportOptions", err.(request.ErrInvalidParams))
4529		}
4530	}
4531
4532	if invalidParams.Len() > 0 {
4533		return invalidParams
4534	}
4535	return nil
4536}
4537
4538// SetClientRequestToken sets the ClientRequestToken field's value.
4539func (s *StartTableDataImportJobInput) SetClientRequestToken(v string) *StartTableDataImportJobInput {
4540	s.ClientRequestToken = &v
4541	return s
4542}
4543
4544// SetDataFormat sets the DataFormat field's value.
4545func (s *StartTableDataImportJobInput) SetDataFormat(v string) *StartTableDataImportJobInput {
4546	s.DataFormat = &v
4547	return s
4548}
4549
4550// SetDataSource sets the DataSource field's value.
4551func (s *StartTableDataImportJobInput) SetDataSource(v *ImportDataSource) *StartTableDataImportJobInput {
4552	s.DataSource = v
4553	return s
4554}
4555
4556// SetDestinationTableId sets the DestinationTableId field's value.
4557func (s *StartTableDataImportJobInput) SetDestinationTableId(v string) *StartTableDataImportJobInput {
4558	s.DestinationTableId = &v
4559	return s
4560}
4561
4562// SetImportOptions sets the ImportOptions field's value.
4563func (s *StartTableDataImportJobInput) SetImportOptions(v *ImportOptions) *StartTableDataImportJobInput {
4564	s.ImportOptions = v
4565	return s
4566}
4567
4568// SetWorkbookId sets the WorkbookId field's value.
4569func (s *StartTableDataImportJobInput) SetWorkbookId(v string) *StartTableDataImportJobInput {
4570	s.WorkbookId = &v
4571	return s
4572}
4573
4574type StartTableDataImportJobOutput struct {
4575	_ struct{} `type:"structure"`
4576
4577	// The id that is assigned to this import job. Future requests to find out the
4578	// status of this import job need to send this id in the appropriate parameter
4579	// in the request.
4580	//
4581	// JobId is a required field
4582	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
4583
4584	// The status of the import job immediately after submitting the request.
4585	//
4586	// JobStatus is a required field
4587	JobStatus *string `locationName:"jobStatus" type:"string" required:"true" enum:"TableDataImportJobStatus"`
4588}
4589
4590// String returns the string representation
4591func (s StartTableDataImportJobOutput) String() string {
4592	return awsutil.Prettify(s)
4593}
4594
4595// GoString returns the string representation
4596func (s StartTableDataImportJobOutput) GoString() string {
4597	return s.String()
4598}
4599
4600// SetJobId sets the JobId field's value.
4601func (s *StartTableDataImportJobOutput) SetJobId(v string) *StartTableDataImportJobOutput {
4602	s.JobId = &v
4603	return s
4604}
4605
4606// SetJobStatus sets the JobStatus field's value.
4607func (s *StartTableDataImportJobOutput) SetJobStatus(v string) *StartTableDataImportJobOutput {
4608	s.JobStatus = &v
4609	return s
4610}
4611
4612// An object representing the properties of a table in a workbook.
4613type Table struct {
4614	_ struct{} `type:"structure"`
4615
4616	// The id of the table.
4617	TableId *string `locationName:"tableId" min:"36" type:"string"`
4618
4619	// The name of the table.
4620	TableName *string `locationName:"tableName" type:"string"`
4621}
4622
4623// String returns the string representation
4624func (s Table) String() string {
4625	return awsutil.Prettify(s)
4626}
4627
4628// GoString returns the string representation
4629func (s Table) GoString() string {
4630	return s.String()
4631}
4632
4633// SetTableId sets the TableId field's value.
4634func (s *Table) SetTableId(v string) *Table {
4635	s.TableId = &v
4636	return s
4637}
4638
4639// SetTableName sets the TableName field's value.
4640func (s *Table) SetTableName(v string) *Table {
4641	s.TableName = &v
4642	return s
4643}
4644
4645// An object that contains attributes about a single column in a table
4646type TableColumn struct {
4647	_ struct{} `type:"structure"`
4648
4649	// The column level format that is applied in the table. An empty value in this
4650	// field means that the column format is the default value 'AUTO'.
4651	Format *string `locationName:"format" type:"string" enum:"Format"`
4652
4653	// The id of the column in the table.
4654	TableColumnId *string `locationName:"tableColumnId" min:"36" type:"string"`
4655
4656	// The name of the column in the table.
4657	TableColumnName *string `locationName:"tableColumnName" type:"string"`
4658}
4659
4660// String returns the string representation
4661func (s TableColumn) String() string {
4662	return awsutil.Prettify(s)
4663}
4664
4665// GoString returns the string representation
4666func (s TableColumn) GoString() string {
4667	return s.String()
4668}
4669
4670// SetFormat sets the Format field's value.
4671func (s *TableColumn) SetFormat(v string) *TableColumn {
4672	s.Format = &v
4673	return s
4674}
4675
4676// SetTableColumnId sets the TableColumnId field's value.
4677func (s *TableColumn) SetTableColumnId(v string) *TableColumn {
4678	s.TableColumnId = &v
4679	return s
4680}
4681
4682// SetTableColumnName sets the TableColumnName field's value.
4683func (s *TableColumn) SetTableColumnName(v string) *TableColumn {
4684	s.TableColumnName = &v
4685	return s
4686}
4687
4688// The metadata associated with the table data import job that was submitted.
4689type TableDataImportJobMetadata struct {
4690	_ struct{} `type:"structure"`
4691
4692	// The source of the data that was submitted for import.
4693	//
4694	// DataSource is a required field
4695	DataSource *ImportDataSource `locationName:"dataSource" type:"structure" required:"true"`
4696
4697	// The options that was specified at the time of submitting the import request.
4698	//
4699	// ImportOptions is a required field
4700	ImportOptions *ImportOptions `locationName:"importOptions" type:"structure" required:"true"`
4701
4702	// The timestamp when the job was submitted for import.
4703	//
4704	// SubmitTime is a required field
4705	SubmitTime *time.Time `locationName:"submitTime" type:"timestamp" required:"true"`
4706
4707	// Details about the submitter of the import request.
4708	//
4709	// Submitter is a required field
4710	Submitter *ImportJobSubmitter `locationName:"submitter" type:"structure" required:"true"`
4711}
4712
4713// String returns the string representation
4714func (s TableDataImportJobMetadata) String() string {
4715	return awsutil.Prettify(s)
4716}
4717
4718// GoString returns the string representation
4719func (s TableDataImportJobMetadata) GoString() string {
4720	return s.String()
4721}
4722
4723// SetDataSource sets the DataSource field's value.
4724func (s *TableDataImportJobMetadata) SetDataSource(v *ImportDataSource) *TableDataImportJobMetadata {
4725	s.DataSource = v
4726	return s
4727}
4728
4729// SetImportOptions sets the ImportOptions field's value.
4730func (s *TableDataImportJobMetadata) SetImportOptions(v *ImportOptions) *TableDataImportJobMetadata {
4731	s.ImportOptions = v
4732	return s
4733}
4734
4735// SetSubmitTime sets the SubmitTime field's value.
4736func (s *TableDataImportJobMetadata) SetSubmitTime(v time.Time) *TableDataImportJobMetadata {
4737	s.SubmitTime = &v
4738	return s
4739}
4740
4741// SetSubmitter sets the Submitter field's value.
4742func (s *TableDataImportJobMetadata) SetSubmitter(v *ImportJobSubmitter) *TableDataImportJobMetadata {
4743	s.Submitter = v
4744	return s
4745}
4746
4747// An object that contains attributes about a single row in a table
4748type TableRow struct {
4749	_ struct{} `type:"structure"`
4750
4751	// A list of cells in the table row. The cells appear in the same order as the
4752	// columns of the table.
4753	//
4754	// Cells is a required field
4755	Cells []*Cell `locationName:"cells" type:"list" required:"true"`
4756
4757	// The id of the row in the table.
4758	//
4759	// RowId is a required field
4760	RowId *string `locationName:"rowId" min:"77" type:"string" required:"true"`
4761}
4762
4763// String returns the string representation
4764func (s TableRow) String() string {
4765	return awsutil.Prettify(s)
4766}
4767
4768// GoString returns the string representation
4769func (s TableRow) GoString() string {
4770	return s.String()
4771}
4772
4773// SetCells sets the Cells field's value.
4774func (s *TableRow) SetCells(v []*Cell) *TableRow {
4775	s.Cells = v
4776	return s
4777}
4778
4779// SetRowId sets the RowId field's value.
4780func (s *TableRow) SetRowId(v string) *TableRow {
4781	s.RowId = &v
4782	return s
4783}
4784
4785// Tps(transactions per second) rate reached.
4786type ThrottlingException struct {
4787	_            struct{}                  `type:"structure"`
4788	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4789
4790	Message_ *string `locationName:"message" type:"string"`
4791}
4792
4793// String returns the string representation
4794func (s ThrottlingException) String() string {
4795	return awsutil.Prettify(s)
4796}
4797
4798// GoString returns the string representation
4799func (s ThrottlingException) GoString() string {
4800	return s.String()
4801}
4802
4803func newErrorThrottlingException(v protocol.ResponseMetadata) error {
4804	return &ThrottlingException{
4805		RespMetadata: v,
4806	}
4807}
4808
4809// Code returns the exception type name.
4810func (s *ThrottlingException) Code() string {
4811	return "ThrottlingException"
4812}
4813
4814// Message returns the exception's message.
4815func (s *ThrottlingException) Message() string {
4816	if s.Message_ != nil {
4817		return *s.Message_
4818	}
4819	return ""
4820}
4821
4822// OrigErr always returns nil, satisfies awserr.Error interface.
4823func (s *ThrottlingException) OrigErr() error {
4824	return nil
4825}
4826
4827func (s *ThrottlingException) Error() string {
4828	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4829}
4830
4831// Status code returns the HTTP status code for the request's response error.
4832func (s *ThrottlingException) StatusCode() int {
4833	return s.RespMetadata.StatusCode
4834}
4835
4836// RequestID returns the service's response RequestID for request.
4837func (s *ThrottlingException) RequestID() string {
4838	return s.RespMetadata.RequestID
4839}
4840
4841// Data needed to create a single row in a table as part of the BatchCreateTableRows
4842// request.
4843type UpdateRowData struct {
4844	_ struct{} `type:"structure"`
4845
4846	// A map representing the cells to update in the given row. The key is the column
4847	// id of the cell and the value is the CellInput object that represents the
4848	// data to set in that cell.
4849	//
4850	// CellsToUpdate is a required field
4851	CellsToUpdate map[string]*CellInput `locationName:"cellsToUpdate" min:"1" type:"map" required:"true"`
4852
4853	// The id of the row that needs to be updated.
4854	//
4855	// RowId is a required field
4856	RowId *string `locationName:"rowId" min:"77" type:"string" required:"true"`
4857}
4858
4859// String returns the string representation
4860func (s UpdateRowData) String() string {
4861	return awsutil.Prettify(s)
4862}
4863
4864// GoString returns the string representation
4865func (s UpdateRowData) GoString() string {
4866	return s.String()
4867}
4868
4869// Validate inspects the fields of the type to determine if they are valid.
4870func (s *UpdateRowData) Validate() error {
4871	invalidParams := request.ErrInvalidParams{Context: "UpdateRowData"}
4872	if s.CellsToUpdate == nil {
4873		invalidParams.Add(request.NewErrParamRequired("CellsToUpdate"))
4874	}
4875	if s.CellsToUpdate != nil && len(s.CellsToUpdate) < 1 {
4876		invalidParams.Add(request.NewErrParamMinLen("CellsToUpdate", 1))
4877	}
4878	if s.RowId == nil {
4879		invalidParams.Add(request.NewErrParamRequired("RowId"))
4880	}
4881	if s.RowId != nil && len(*s.RowId) < 77 {
4882		invalidParams.Add(request.NewErrParamMinLen("RowId", 77))
4883	}
4884
4885	if invalidParams.Len() > 0 {
4886		return invalidParams
4887	}
4888	return nil
4889}
4890
4891// SetCellsToUpdate sets the CellsToUpdate field's value.
4892func (s *UpdateRowData) SetCellsToUpdate(v map[string]*CellInput) *UpdateRowData {
4893	s.CellsToUpdate = v
4894	return s
4895}
4896
4897// SetRowId sets the RowId field's value.
4898func (s *UpdateRowData) SetRowId(v string) *UpdateRowData {
4899	s.RowId = &v
4900	return s
4901}
4902
4903// Data needed to upsert rows in a table as part of a single item in the BatchUpsertTableRows
4904// request.
4905type UpsertRowData struct {
4906	_ struct{} `type:"structure"`
4907
4908	// An external identifier that represents a single item in the request that
4909	// is being upserted as part of the BatchUpsertTableRows request. This can be
4910	// any string that you can use to identify the item in the request. The BatchUpsertTableRows
4911	// API puts the batch item id in the results to allow you to link data in the
4912	// request to data in the results.
4913	//
4914	// BatchItemId is a required field
4915	BatchItemId *string `locationName:"batchItemId" min:"1" type:"string" required:"true"`
4916
4917	// A map representing the cells to update for the matching rows or an appended
4918	// row. The key is the column id of the cell and the value is the CellInput
4919	// object that represents the data to set in that cell.
4920	//
4921	// CellsToUpdate is a required field
4922	CellsToUpdate map[string]*CellInput `locationName:"cellsToUpdate" min:"1" type:"map" required:"true"`
4923
4924	// The filter formula to use to find existing matching rows to update. The formula
4925	// needs to return zero or more rows. If the formula returns 0 rows, then a
4926	// new row will be appended in the target table. If the formula returns one
4927	// or more rows, then the returned rows will be updated.
4928	//
4929	// Note that the filter formula needs to return rows from the target table for
4930	// the upsert operation to succeed. If the filter formula has a syntax error
4931	// or it doesn't evaluate to zero or more rows in the target table for any one
4932	// item in the input list, then the entire BatchUpsertTableRows request fails
4933	// and no updates are made to the table.
4934	//
4935	// Filter is a required field
4936	Filter *Filter `locationName:"filter" type:"structure" required:"true"`
4937}
4938
4939// String returns the string representation
4940func (s UpsertRowData) String() string {
4941	return awsutil.Prettify(s)
4942}
4943
4944// GoString returns the string representation
4945func (s UpsertRowData) GoString() string {
4946	return s.String()
4947}
4948
4949// Validate inspects the fields of the type to determine if they are valid.
4950func (s *UpsertRowData) Validate() error {
4951	invalidParams := request.ErrInvalidParams{Context: "UpsertRowData"}
4952	if s.BatchItemId == nil {
4953		invalidParams.Add(request.NewErrParamRequired("BatchItemId"))
4954	}
4955	if s.BatchItemId != nil && len(*s.BatchItemId) < 1 {
4956		invalidParams.Add(request.NewErrParamMinLen("BatchItemId", 1))
4957	}
4958	if s.CellsToUpdate == nil {
4959		invalidParams.Add(request.NewErrParamRequired("CellsToUpdate"))
4960	}
4961	if s.CellsToUpdate != nil && len(s.CellsToUpdate) < 1 {
4962		invalidParams.Add(request.NewErrParamMinLen("CellsToUpdate", 1))
4963	}
4964	if s.Filter == nil {
4965		invalidParams.Add(request.NewErrParamRequired("Filter"))
4966	}
4967	if s.Filter != nil {
4968		if err := s.Filter.Validate(); err != nil {
4969			invalidParams.AddNested("Filter", err.(request.ErrInvalidParams))
4970		}
4971	}
4972
4973	if invalidParams.Len() > 0 {
4974		return invalidParams
4975	}
4976	return nil
4977}
4978
4979// SetBatchItemId sets the BatchItemId field's value.
4980func (s *UpsertRowData) SetBatchItemId(v string) *UpsertRowData {
4981	s.BatchItemId = &v
4982	return s
4983}
4984
4985// SetCellsToUpdate sets the CellsToUpdate field's value.
4986func (s *UpsertRowData) SetCellsToUpdate(v map[string]*CellInput) *UpsertRowData {
4987	s.CellsToUpdate = v
4988	return s
4989}
4990
4991// SetFilter sets the Filter field's value.
4992func (s *UpsertRowData) SetFilter(v *Filter) *UpsertRowData {
4993	s.Filter = v
4994	return s
4995}
4996
4997// An object that represents the result of a single upsert row request.
4998type UpsertRowsResult struct {
4999	_ struct{} `type:"structure"`
5000
5001	// The list of row ids that were changed as part of an upsert row operation.
5002	// If the upsert resulted in an update, this list could potentially contain
5003	// multiple rows that matched the filter and hence got updated. If the upsert
5004	// resulted in an append, this list would only have the single row that was
5005	// appended.
5006	//
5007	// RowIds is a required field
5008	RowIds []*string `locationName:"rowIds" min:"1" type:"list" required:"true"`
5009
5010	// The result of the upsert action.
5011	//
5012	// UpsertAction is a required field
5013	UpsertAction *string `locationName:"upsertAction" type:"string" required:"true" enum:"UpsertAction"`
5014}
5015
5016// String returns the string representation
5017func (s UpsertRowsResult) String() string {
5018	return awsutil.Prettify(s)
5019}
5020
5021// GoString returns the string representation
5022func (s UpsertRowsResult) GoString() string {
5023	return s.String()
5024}
5025
5026// SetRowIds sets the RowIds field's value.
5027func (s *UpsertRowsResult) SetRowIds(v []*string) *UpsertRowsResult {
5028	s.RowIds = v
5029	return s
5030}
5031
5032// SetUpsertAction sets the UpsertAction field's value.
5033func (s *UpsertRowsResult) SetUpsertAction(v string) *UpsertRowsResult {
5034	s.UpsertAction = &v
5035	return s
5036}
5037
5038// Request is invalid. The message in the response contains details on why the
5039// request is invalid.
5040type ValidationException struct {
5041	_            struct{}                  `type:"structure"`
5042	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5043
5044	Message_ *string `locationName:"message" type:"string"`
5045}
5046
5047// String returns the string representation
5048func (s ValidationException) String() string {
5049	return awsutil.Prettify(s)
5050}
5051
5052// GoString returns the string representation
5053func (s ValidationException) GoString() string {
5054	return s.String()
5055}
5056
5057func newErrorValidationException(v protocol.ResponseMetadata) error {
5058	return &ValidationException{
5059		RespMetadata: v,
5060	}
5061}
5062
5063// Code returns the exception type name.
5064func (s *ValidationException) Code() string {
5065	return "ValidationException"
5066}
5067
5068// Message returns the exception's message.
5069func (s *ValidationException) Message() string {
5070	if s.Message_ != nil {
5071		return *s.Message_
5072	}
5073	return ""
5074}
5075
5076// OrigErr always returns nil, satisfies awserr.Error interface.
5077func (s *ValidationException) OrigErr() error {
5078	return nil
5079}
5080
5081func (s *ValidationException) Error() string {
5082	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5083}
5084
5085// Status code returns the HTTP status code for the request's response error.
5086func (s *ValidationException) StatusCode() int {
5087	return s.RespMetadata.StatusCode
5088}
5089
5090// RequestID returns the service's response RequestID for request.
5091func (s *ValidationException) RequestID() string {
5092	return s.RespMetadata.RequestID
5093}
5094
5095// The input variables to the app to be used by the InvokeScreenAutomation action
5096// request.
5097type VariableValue struct {
5098	_ struct{} `type:"structure" sensitive:"true"`
5099
5100	// Raw value of the variable.
5101	//
5102	// RawValue is a required field
5103	RawValue *string `locationName:"rawValue" type:"string" required:"true"`
5104}
5105
5106// String returns the string representation
5107func (s VariableValue) String() string {
5108	return awsutil.Prettify(s)
5109}
5110
5111// GoString returns the string representation
5112func (s VariableValue) GoString() string {
5113	return s.String()
5114}
5115
5116// Validate inspects the fields of the type to determine if they are valid.
5117func (s *VariableValue) Validate() error {
5118	invalidParams := request.ErrInvalidParams{Context: "VariableValue"}
5119	if s.RawValue == nil {
5120		invalidParams.Add(request.NewErrParamRequired("RawValue"))
5121	}
5122
5123	if invalidParams.Len() > 0 {
5124		return invalidParams
5125	}
5126	return nil
5127}
5128
5129// SetRawValue sets the RawValue field's value.
5130func (s *VariableValue) SetRawValue(v string) *VariableValue {
5131	s.RawValue = &v
5132	return s
5133}
5134
5135const (
5136	// FormatAuto is a Format enum value
5137	FormatAuto = "AUTO"
5138
5139	// FormatNumber is a Format enum value
5140	FormatNumber = "NUMBER"
5141
5142	// FormatCurrency is a Format enum value
5143	FormatCurrency = "CURRENCY"
5144
5145	// FormatDate is a Format enum value
5146	FormatDate = "DATE"
5147
5148	// FormatTime is a Format enum value
5149	FormatTime = "TIME"
5150
5151	// FormatDateTime is a Format enum value
5152	FormatDateTime = "DATE_TIME"
5153
5154	// FormatPercentage is a Format enum value
5155	FormatPercentage = "PERCENTAGE"
5156
5157	// FormatText is a Format enum value
5158	FormatText = "TEXT"
5159
5160	// FormatAccounting is a Format enum value
5161	FormatAccounting = "ACCOUNTING"
5162
5163	// FormatContact is a Format enum value
5164	FormatContact = "CONTACT"
5165
5166	// FormatRowlink is a Format enum value
5167	FormatRowlink = "ROWLINK"
5168)
5169
5170// Format_Values returns all elements of the Format enum
5171func Format_Values() []string {
5172	return []string{
5173		FormatAuto,
5174		FormatNumber,
5175		FormatCurrency,
5176		FormatDate,
5177		FormatTime,
5178		FormatDateTime,
5179		FormatPercentage,
5180		FormatText,
5181		FormatAccounting,
5182		FormatContact,
5183		FormatRowlink,
5184	}
5185}
5186
5187const (
5188	// ImportDataCharacterEncodingUtf8 is a ImportDataCharacterEncoding enum value
5189	ImportDataCharacterEncodingUtf8 = "UTF-8"
5190
5191	// ImportDataCharacterEncodingUsAscii is a ImportDataCharacterEncoding enum value
5192	ImportDataCharacterEncodingUsAscii = "US-ASCII"
5193
5194	// ImportDataCharacterEncodingIso88591 is a ImportDataCharacterEncoding enum value
5195	ImportDataCharacterEncodingIso88591 = "ISO-8859-1"
5196
5197	// ImportDataCharacterEncodingUtf16be is a ImportDataCharacterEncoding enum value
5198	ImportDataCharacterEncodingUtf16be = "UTF-16BE"
5199
5200	// ImportDataCharacterEncodingUtf16le is a ImportDataCharacterEncoding enum value
5201	ImportDataCharacterEncodingUtf16le = "UTF-16LE"
5202
5203	// ImportDataCharacterEncodingUtf16 is a ImportDataCharacterEncoding enum value
5204	ImportDataCharacterEncodingUtf16 = "UTF-16"
5205)
5206
5207// ImportDataCharacterEncoding_Values returns all elements of the ImportDataCharacterEncoding enum
5208func ImportDataCharacterEncoding_Values() []string {
5209	return []string{
5210		ImportDataCharacterEncodingUtf8,
5211		ImportDataCharacterEncodingUsAscii,
5212		ImportDataCharacterEncodingIso88591,
5213		ImportDataCharacterEncodingUtf16be,
5214		ImportDataCharacterEncodingUtf16le,
5215		ImportDataCharacterEncodingUtf16,
5216	}
5217}
5218
5219const (
5220	// ImportSourceDataFormatDelimitedText is a ImportSourceDataFormat enum value
5221	ImportSourceDataFormatDelimitedText = "DELIMITED_TEXT"
5222)
5223
5224// ImportSourceDataFormat_Values returns all elements of the ImportSourceDataFormat enum
5225func ImportSourceDataFormat_Values() []string {
5226	return []string{
5227		ImportSourceDataFormatDelimitedText,
5228	}
5229}
5230
5231const (
5232	// TableDataImportJobStatusSubmitted is a TableDataImportJobStatus enum value
5233	TableDataImportJobStatusSubmitted = "SUBMITTED"
5234
5235	// TableDataImportJobStatusInProgress is a TableDataImportJobStatus enum value
5236	TableDataImportJobStatusInProgress = "IN_PROGRESS"
5237
5238	// TableDataImportJobStatusCompleted is a TableDataImportJobStatus enum value
5239	TableDataImportJobStatusCompleted = "COMPLETED"
5240
5241	// TableDataImportJobStatusFailed is a TableDataImportJobStatus enum value
5242	TableDataImportJobStatusFailed = "FAILED"
5243)
5244
5245// TableDataImportJobStatus_Values returns all elements of the TableDataImportJobStatus enum
5246func TableDataImportJobStatus_Values() []string {
5247	return []string{
5248		TableDataImportJobStatusSubmitted,
5249		TableDataImportJobStatusInProgress,
5250		TableDataImportJobStatusCompleted,
5251		TableDataImportJobStatusFailed,
5252	}
5253}
5254
5255const (
5256	// UpsertActionUpdated is a UpsertAction enum value
5257	UpsertActionUpdated = "UPDATED"
5258
5259	// UpsertActionAppended is a UpsertAction enum value
5260	UpsertActionAppended = "APPENDED"
5261)
5262
5263// UpsertAction_Values returns all elements of the UpsertAction enum
5264func UpsertAction_Values() []string {
5265	return []string{
5266		UpsertActionUpdated,
5267		UpsertActionAppended,
5268	}
5269}
5270