Module Values.SelectObjectContentRequestSource

Learn Amazon S3 Select is no longer available to new customers. Existing customers of Amazon S3 Select can continue to use the feature as usual. Learn more Request to filter the contents of an Amazon S3 object based on a simple Structured Query Language (SQL) statement. In the request, along with the SQL expression, you must specify a data serialization format (JSON or CSV) of the object. Amazon S3 uses this to parse object data into records. It returns only records that match the specified SQL expression. You must also specify the data serialization format for the response. For more information, see S3Select API Documentation.

Sourcetype nonrec t = {
  1. bucket : BucketName.t;
    (*

    The S3 bucket.

    *)
  2. key : ObjectKey.t;
    (*

    The object key.

    *)
  3. sSECustomerAlgorithm : SSECustomerAlgorithm.t option;
    (*

    The server-side encryption (SSE) algorithm used to encrypt the object. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

    *)
  4. sSECustomerKey : SSECustomerKey.t option;
    (*

    The server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

    *)
  5. sSECustomerKeyMD5 : SSECustomerKeyMD5.t option;
    (*

    The MD5 server-side encryption (SSE) customer managed key. This parameter is needed only when the object was created using a checksum algorithm. For more information, see Protecting data using SSE-C keys in the Amazon S3 User Guide.

    *)
  6. expression : Expression.t;
    (*

    The expression that is used to query the object.

    *)
  7. expressionType : ExpressionType.t;
    (*

    The type of the provided expression (for example, SQL).

    *)
  8. requestProgress : RequestProgress.t option;
    (*

    Specifies if periodic request progress information should be enabled.

    *)
  9. inputSerialization : InputSerialization.t;
    (*

    Describes the format of the data in the object that is being queried.

    *)
  10. outputSerialization : OutputSerialization.t;
    (*

    Describes the format of the data that you want Amazon S3 to return in response.

    *)
  11. scanRange : ScanRange.t option;
    (*

    Specifies the byte range of the object to get the records from. A record is processed when its first byte is contained by the range. This parameter is optional, but when specified, it must not be empty. See RFC 2616, Section 14.35.1 about how to specify the start and end of the range. ScanRangemay be used in the following ways: <scanrange><start>50</start><end>100</end></scanrange> - process only the records starting between the bytes 50 and 100 (inclusive, counting from zero) <scanrange><start>50</start></scanrange> - process only the records starting after the byte 50 <scanrange><end>50</end></scanrange> - process only the records within the last 50 bytes of the file.

    *)
  12. expectedBucketOwner : AccountId.t option;
    (*

    The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code 403 Forbidden (access denied).

    *)
}
Sourceval context_ : string
Sourceval make : ?sSECustomerAlgorithm:??? -> ?sSECustomerKey:??? -> ?sSECustomerKeyMD5:??? -> ?requestProgress:??? -> ?scanRange:??? -> ?expectedBucketOwner:??? -> bucket:BucketName.t -> key:ObjectKey.t -> expression:Expression.t -> expressionType:ExpressionType.t -> inputSerialization:InputSerialization.t -> outputSerialization:OutputSerialization.t -> unit -> t
Sourceval to_value : t -> [> `Structure of (string * [> `Enum of string | `String of BucketName.t | `Structure of (string * [> `Boolean of EnableRequestProgress.t | `Enum of string | `Long of Start.t | `Structure of (string * [> `Boolean of AllowQuotedRecordDelimiter.t | `Enum of string | `String of Comments.t ]) list ]) list ]) list ]
Sourceval to_query : t -> Awso.Client.Query.t
Sourceval of_xml : Awso.Xml.t -> t
Sourceval of_string : string -> t
Sourceval of_json : Yojson.Safe.t -> t
Sourceval to_json : t -> Yojson.Safe.t