Protocol Documentation

Table of Contents

oss.proto

Top

The file defined base on s3 protocol, to get an in-depth walkthrough of this file, see:

https://docs.aws.amazon.com/s3/index.html

https://github.com/aws/aws-sdk-go-v2

[gRPC Service] ObjectStorageService

ObjectStorageService is an abstraction for blob storage or so called "object storage", such as alibaba cloud OSS, such as AWS S3.

You invoke ObjectStorageService API to do some CRUD operations on your binary file, e.g. query my file, delete my file, etc.

Method NameRequest TypeResponse TypeDescription
PutObject PutObjectInput stream PutObjectOutput

Object CRUD API Adds an object to a bucket. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html

GetObject GetObjectInput GetObjectOutput stream

Retrieves objects. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html

DeleteObject DeleteObjectInput DeleteObjectOutput

Delete objects. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html

CopyObject CopyObjectInput CopyObjectOutput

Creates a copy of an object that is already stored in oss server. Refer https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/API/API_CopyObject.html

DeleteObjects DeleteObjectsInput DeleteObjectsOutput

Delete multiple objects from a bucket. Refer https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/API/API_DeleteObjects.html

ListObjects ListObjectsInput ListObjectsOutput

Returns some or all (up to 1,000) of the objects in a bucket. Refer https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/API/API_ListObjects.html

HeadObject HeadObjectInput HeadObjectOutput

The HEAD action retrieves metadata from an object without returning the object itself. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html

IsObjectExist IsObjectExistInput IsObjectExistOutput

This action used to check if the file exists.

PutObjectTagging PutObjectTaggingInput PutObjectTaggingOutput

Object Tagging API Sets the supplied tag-set to an object that already exists in a bucket. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html

DeleteObjectTagging DeleteObjectTaggingInput DeleteObjectTaggingOutput

Removes the entire tag set from the specified object. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html

GetObjectTagging GetObjectTaggingInput GetObjectTaggingOutput

Returns the tag-set of an object. Refer https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/API/API_GetObjectTagging.html

GetObjectCannedAcl GetObjectCannedAclInput GetObjectCannedAclOutput

Returns object canned acl. Refer https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#CannedACL

PutObjectCannedAcl PutObjectCannedAclInput PutObjectCannedAclOutput

Set object canned acl. Refer https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#CannedACL

CreateMultipartUpload CreateMultipartUploadInput CreateMultipartUploadOutput

Object Multipart Operation API Initiates a multipart upload and returns an upload ID. Refer https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/API/API_CreateMultipartUpload.html

UploadPart UploadPartInput stream UploadPartOutput

Uploads a part in a multipart upload. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html

UploadPartCopy UploadPartCopyInput UploadPartCopyOutput

Uploads a part by copying data from an existing object as data source. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html

CompleteMultipartUpload CompleteMultipartUploadInput CompleteMultipartUploadOutput

Completes a multipart upload by assembling previously uploaded parts. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html

AbortMultipartUpload AbortMultipartUploadInput AbortMultipartUploadOutput

This action aborts a multipart upload. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html

ListMultipartUploads ListMultipartUploadsInput ListMultipartUploadsOutput

This action lists in-progress multipart uploads. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html

ListParts ListPartsInput ListPartsOutput

Lists the parts that have been uploaded for a specific multipart upload. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html

ListObjectVersions ListObjectVersionsInput ListObjectVersionsOutput

Returns metadata about all versions of the objects in a bucket. Refer https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectVersions.html

SignURL SignURLInput SignURLOutput

A presigned URL gives you access to the object identified in the URL, provided that the creator of the presigned URL has permissions to access that object. Refer https://docs.aws.amazon.com/AmazonS3/latest/userguide/PresignedUrlUploadObject.html

UpdateDownloadBandwidthRateLimit UpdateBandwidthRateLimitInput .google.protobuf.Empty

This action used to set download bandwidth limit speed. Refer https://github.com/aliyun/aliyun-oss-go-sdk/blob/master/oss/client.go#L2106

UpdateUploadBandwidthRateLimit UpdateBandwidthRateLimitInput .google.protobuf.Empty

This action used to set upload bandwidth limit speed. Refer https://github.com/aliyun/aliyun-oss-go-sdk/blob/master/oss/client.go#L2096

AppendObject AppendObjectInput stream AppendObjectOutput

This action is used to append object. Refer https://help.aliyun.com/document_detail/31981.html or https://github.com/minio/minio-java/issues/980

RestoreObject RestoreObjectInput RestoreObjectOutput

Restores an archived copy of an object back. Refer https://docs.aws.amazon.com/zh_cn/AmazonS3/latest/API/API_RestoreObject.html

AbortMultipartUploadInput

AbortMultipartUploadInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

expected_bucket_owner string

The account ID of the expected bucket owner

request_payer string

Confirms that the requester knows that they will be charged for the request.

upload_id string

Upload ID that identifies the multipart upload. This member is required.

AbortMultipartUploadOutput

AbortMultipartUploadOutput

FieldTypeLabelDescription
request_charged string

If present, indicates that the requester was successfully charged for the request.

AppendObjectInput

AppendObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

body bytes

Object content

position int64

Append start position

acl string

Object ACL

cache_control string

Sets the Cache-Control header of the response.

content_disposition string

Sets the Content-Disposition header of the response

content_encoding string

Sets the Content-Encoding header of the response

content_md5 string

The base64-encoded 128-bit MD5 digest of the part data.

expires int64

Sets the Expires header of the response

storage_class string

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

server_side_encryption string

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

meta string

Object metadata

tags AppendObjectInput.TagsEntry repeated

Object tags

AppendObjectInput.TagsEntry

FieldTypeLabelDescription
key string

value string

AppendObjectOutput

AppendObjectOutput

FieldTypeLabelDescription
append_position int64

Next append position

CSVInput

CSVInput

FieldTypeLabelDescription
allow_quoted_record_delimiter bool

Specifies that CSV field values may contain quoted record delimiters and such records should be allowed. Default value is FALSE. Setting this value to TRUE may lower performance.

comments string

A single character used to indicate that a row should be ignored when the character is present at the start of that row. You can specify any character to indicate a comment line.

field_delimiter string

A single character used to separate individual fields in a record. You can specify an arbitrary delimiter.

file_header_info string

Describes the first line of input. Valid values are: * NONE: First line is not a header. * IGNORE: First line is a header, but you can't use the header values to indicate the column in an expression. You can use column position (such as _1, _2, …) to indicate the column (SELECT s._1 FROM OBJECT s). * Use: First line is a header, and you can use the header value to identify a column in an expression (SELECT "name" FROM OBJECT).

quote_character string

A single character used for escaping when the field delimiter is part of the value. For example, if the value is a, b, Amazon S3 wraps this field value in quotation marks, as follows: " a , b ". Type: String Default: " Ancestors: CSV

quote_escape_character string

A single character used for escaping the quotation mark character inside an already escaped value. For example, the value """ a , b """ is parsed as " a , b ".

record_delimiter string

A single character used to separate individual records in the input. Instead of the default value, you can specify an arbitrary delimiter.

CSVOutput

CSVOutput

FieldTypeLabelDescription
field_delimiter string

The value used to separate individual fields in a record. You can specify an arbitrary delimiter.

quote_character string

A single character used for escaping when the field delimiter is part of the value. For example, if the value is a, b, Amazon S3 wraps this field value in quotation marks, as follows: " a , b ".

quote_escape_character string

The single character used for escaping the quote character inside an already escaped value.

quote_fields string

Indicates whether to use quotation marks around output fields. * ALWAYS: Always use quotation marks for output fields. * ASNEEDED: Use quotation marks for output fields when needed.

record_delimiter string

A single character used to separate individual records in the output. Instead of the default value, you can specify an arbitrary delimiter.

CompleteMultipartUploadInput

CompleteMultipartUploadInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

upload_id string

ID for the initiated multipart upload. This member is required.

request_payer string

Confirms that the requester knows that they will be charged for the request.

expected_bucket_owner string

Expected bucket owner

multipart_upload CompletedMultipartUpload

The container for the multipart upload request information.

CompleteMultipartUploadOutput

CompleteMultipartUploadOutput

FieldTypeLabelDescription
bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

bucket_key_enabled bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

etag string

Entity tag that identifies the newly created object's data

expiration string

If the object expiration is configured, this will contain the expiration date (expiry-date) and rule ID (rule-id). The value of rule-id is URL-encoded.

location string

The URI that identifies the newly created object.

request_charged string

If present, indicates that the requester was successfully charged for the request.

sse_kms_keyId string

If present, specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric customer managed key that was used for the object.

server_side_encryption string

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

version_id string

Version ID of the newly created object, in case the bucket has versioning turned on.

CompletedMultipartUpload

CompletedMultipartUpload

FieldTypeLabelDescription
parts CompletedPart repeated

Array of CompletedPart data types.

CompletedPart

CompletedPart

FieldTypeLabelDescription
etag string

Entity tag returned when the part was uploaded.

part_number int32

Part number that identifies the part. This is a positive integer between 1 and 10,000.

CopyObjectInput

CopyObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The name of the destination bucket. When using this action with an access point This member is required.

key string

The key of the destination object. This member is required.

copy_source CopySource

CopySource

tagging CopyObjectInput.TaggingEntry repeated

The tag-set for the object destination object this value must be used in conjunction with the TaggingDirective. The tag-set must be encoded as URL Query parameters.

expires int64

The date and time at which the object is no longer cacheable.

metadata_directive string

Specifies whether the metadata is copied from the source object or replaced with metadata provided in the request.

metadata CopyObjectInput.MetadataEntry repeated

A map of metadata to store with the object in S3.

CopyObjectInput.MetadataEntry

FieldTypeLabelDescription
key string

value string

CopyObjectInput.TaggingEntry

FieldTypeLabelDescription
key string

value string

CopyObjectOutput

CopyObjectOutput

FieldTypeLabelDescription
copy_object_result CopyObjectResult

Container for all response elements.

version_id string

Version ID of the newly created copy.

expiration string

If the object expiration is configured, the response includes this header.

CopyObjectResult

CopyObjectResult

FieldTypeLabelDescription
etag string

Returns the ETag of the new object. The ETag reflects only changes to the contents of an object, not its metadata.

last_modified int64

Creation date of the object.

CopyPartResult

CopyPartResult

FieldTypeLabelDescription
etag string

Entity tag of the object.

last_modified int64

Last modified time

CopySource

CopySource

FieldTypeLabelDescription
copy_source_bucket string

source object bucket name

copy_source_key string

source object name

copy_source_version_id string

source object version

CreateMultipartUploadInput

CreateMultipartUploadInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

acl string

The canned ACL to apply to the object. This action is not supported by Amazon S3 on Outposts.

bucket_key_enabled bool

Specifies whether Amazon S3 should use an S3 Bucket Key for object encryption with server-side encryption using AWS KMS (SSE-KMS). Setting this header to true causes Amazon S3 to use an S3 Bucket Key for object encryption with SSE-KMS. Specifying this header with a PUT action doesn’t affect bucket-level settings for S3 Bucket Key.

cache_control string

Specifies caching behavior along the request/reply chain

content_disposition string

Specifies presentational information for the object

content_encoding string

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

content_language string

The language the content is in.

content_type string

A standard MIME type describing the format of the object data.

expected_bucket_owner string

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

expires int64

The date and time at which the object is no longer cacheable.

grant_full_control string

Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object. This action is not supported by Amazon S3 on Outposts.

grant_read string

Allows grantee to read the object data and its metadata. This action is not supported by Amazon S3 on Outposts.

grant_read_acp string

Allows grantee to read the object ACL. This action is not supported by Amazon S3 on Outposts.

grant_write_acp string

Allows grantee to write the ACL for the applicable object. This action is not supported by Amazon S3 on Outposts.

meta_data CreateMultipartUploadInput.MetaDataEntry repeated

A map of metadata to store with the object

object_lock_legal_hold_status string

Specifies whether you want to apply a legal hold to the uploaded object

object_lock_mode string

Specifies the Object Lock mode that you want to apply to the uploaded object

object_lock_retain_until_date int64

Specifies the date and time when you want the Object Lock to expire

request_payer string

Confirms that the requester knows that they will be charged for the request

sse_customer_algorithm string

Specifies the algorithm to use to when encrypting the object (for example, AES256).

sse_customer_key string

Specifies the customer-provided encryption key to use in encrypting data

sse_customer_key_md5 string

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321

sse_kms_encryption_context string

Specifies the Amazon Web Services KMS Encryption Context to use for object encryption

sse_kms_key_id string

Specifies the ID of the symmetric customer managed key to use for object encryption

server_side_encryption string

The server-side encryption algorithm used when storing this object

storage_class string

By default, oss store uses the STANDARD Storage Class to store newly created objects

tagging CreateMultipartUploadInput.TaggingEntry repeated

The tag-set for the object. The tag-set must be encoded as URL Query parameters.

website_redirect_location string

If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL.

CreateMultipartUploadInput.MetaDataEntry

FieldTypeLabelDescription
key string

value string

CreateMultipartUploadInput.TaggingEntry

FieldTypeLabelDescription
key string

value string

CreateMultipartUploadOutput

CreateMultipartUploadOutput

FieldTypeLabelDescription
bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

abort_date int64

If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, the response includes this header

abort_rule_id string

It identifies the applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.

bucket_key_enabled bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

request_charged string

If present, indicates that the requester was successfully charged for the request.

sse_customer_algorithm string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

sse_customer_key_md5 string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

sse_kms_encryption_context string

If present, specifies the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a base64-encoded UTF-8 string holding JSON with the encryption context key-value pairs.

sse_kms_key_id string

If present, specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric customer managed key that was used for the object.

server_side_encryption string

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

upload_id string

ID for the initiated multipart upload.

Delete

Delete

FieldTypeLabelDescription
objects ObjectIdentifier repeated

ObjectIdentifier

quiet bool

Element to enable quiet mode for the request. When you add this element, you must set its value to true.

DeleteMarkerEntry

DeleteMarkerEntry

FieldTypeLabelDescription
is_latest bool

Specifies whether the object is (true) or is not (false) the latest version of an object.

key string

Name of the object key. This member is required.

last_modified int64

Date and time the object was last modified.

owner Owner

Owner

version_id string

Version ID of an object.

DeleteObjectInput

DeleteObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name to which the DEL action was initiated This member is required.

key string

Object key for which the DEL action was initiated. This member is required.

request_payer string

Confirms that the requester knows that they will be charged for the request.

version_id string

VersionId used to reference a specific version of the object.

DeleteObjectOutput

DeleteObjectOutput

FieldTypeLabelDescription
delete_marker bool

Specifies whether the versioned object that was permanently deleted was (true) or was not (false) a delete marker.

request_charged string

If present, indicates that the requester was successfully charged for the request.

version_id string

Returns the version ID of the delete marker created as a result of the DELETE operation.

DeleteObjectTaggingInput

DeleteObjectTaggingInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the objects from which to remove the tags.

key string

The key that identifies the object in the bucket from which to remove all tags. This member is required.

version_id string

The versionId of the object that the tag-set will be removed from.

expected_bucket_owner string

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

DeleteObjectTaggingOutput

DeleteObjectTaggingOutput

FieldTypeLabelDescription
version_id string

The versionId of the object the tag-set was removed from.

result_metadata DeleteObjectTaggingOutput.ResultMetadataEntry repeated

Metadata pertaining to the operation's result.

DeleteObjectTaggingOutput.ResultMetadataEntry

FieldTypeLabelDescription
key string

value string

DeleteObjectsInput

DeleteObjectsInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

delete Delete

Delete objects

request_payer string

Confirms that the requester knows that they will be charged for the request.

DeleteObjectsOutput

DeleteObjectsOutput

FieldTypeLabelDescription
deleted DeletedObject repeated

DeletedObject

DeletedObject

DeletedObject

FieldTypeLabelDescription
delete_marker bool

Specifies whether the versioned object that was permanently deleted was (true) or was not (false) a delete marker. In a simple DELETE, this header indicates whether (true) or not (false) a delete marker was created.

delete_marker_version_id string

The version ID of the delete marker created as a result of the DELETE operation. If you delete a specific object version, the value returned by this header is the version ID of the object version deleted.

key string

The name of the deleted object.

version_id string

The version ID of the deleted object.

GetObjectCannedAclInput

GetObjectCannedAclInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

version_id string

VersionId used to reference a specific version of the object

GetObjectCannedAclOutput

GetObjectCannedAclOutput

FieldTypeLabelDescription
canned_acl string

Object CannedACL

owner Owner

Owner

request_charged string

If present, indicates that the requester was successfully charged for the request.

GetObjectInput

GetObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Key of the object to get This member is required

expected_bucket_owner string

The account ID of the expected bucket owner

if_match string

Return the object only if its entity tag (ETag) is the same as the one specified

if_modified_since int64

Return the object only if it has been modified since the specified time

if_none_match string

Return the object only if its entity tag (ETag) is different from the one specified

if_unmodified_since int64

Return the object only if it has not been modified since the specified time

part_number int64

Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively performs a 'ranged' GET request for the part specified. Useful for downloading just a part of an object.

start int64

Downloads the specified range bytes of an object start is used to specify the location where the file starts

end int64

end is used to specify the location where the file end

request_payer string

Confirms that the requester knows that they will be charged for the request.

response_cache_control string

Sets the Cache-Control header of the response.

response_content_disposition string

Sets the Content-Disposition header of the response

response_content_encoding string

Sets the Content-Encoding header of the response

response_content_language string

Sets the Content-Language header of the response

response_content_type string

Sets the Content-Type header of the response

response_expires string

Sets the Expires header of the response

sse_customer_algorithm string

Specifies the algorithm to use to when decrypting the object (for example,AES256)

sse_customer_key string

Specifies the customer-provided encryption key for Amazon S3 used to encrypt the data. This value is used to decrypt the object when recovering it and must match the one used when storing the data. The key must be appropriate for use with the algorithm specified in the x-amz-server-side-encryption-customer-algorithm header

sse_customer_key_md5 string

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321 Amazon S3 uses this header for a message integrity check to ensure that the encryption key was transmitted without error.

version_id string

VersionId used to reference a specific version of the object

accept_encoding string

Specify Accept-Encoding, aws not supported now

signed_url string

Specify the signed url of object, user can get object with signed url without ak、sk

GetObjectOutput

GetObjectOutput

FieldTypeLabelDescription
body bytes

Object data.

cache_control string

Specifies caching behavior along the request/reply chain.

content_disposition string

Specifies presentational information for the object.

content_encoding string

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

content_language string

The language the content is in.

content_length int64

Size of the body in bytes.

content_range string

The portion of the object returned in the response.

content_type string

A standard MIME type describing the format of the object data.

delete_marker bool

Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

etag string

An entity tag (ETag) is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

expiration string

If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL-encoded.

expires string

The date and time at which the object is no longer cacheable.

last_modified int64

Creation date of the object.

version_id string

Version of the object.

tag_count int64

The number of tags, if any, on the object.

storage_class string

Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

parts_count int64

The count of parts this object has. This value is only returned if you specify partNumber in your request and the object was uploaded as a multipart upload.

metadata GetObjectOutput.MetadataEntry repeated

A map of metadata to store with the object in S3. Map keys will be normalized to lower-case.

GetObjectOutput.MetadataEntry

FieldTypeLabelDescription
key string

value string

GetObjectTaggingInput

GetObjectTaggingInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object for which to get the tagging information. This member is required.

key string

Object key for which to get the tagging information. This member is required.

version_id string

The versionId of the object for which to get the tagging information.

expected_bucket_owner string

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

request_payer string

Confirms that the requester knows that they will be charged for the request.

GetObjectTaggingOutput

GetObjectTaggingOutput

FieldTypeLabelDescription
tags GetObjectTaggingOutput.TagsEntry repeated

Contains the tag set. This member is required.

version_id string

The versionId of the object for which you got the tagging information.

result_metadata GetObjectTaggingOutput.ResultMetadataEntry repeated

Metadata pertaining to the operation's result.

GetObjectTaggingOutput.ResultMetadataEntry

FieldTypeLabelDescription
key string

value string

GetObjectTaggingOutput.TagsEntry

FieldTypeLabelDescription
key string

value string

GlacierJobParameters

GlacierJobParameters

FieldTypeLabelDescription
tier string

Retrieval tier at which the restore will be processed. This member is required.

HeadObjectInput

HeadObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

checksum_mode string

To retrieve the checksum, this parameter must be enabled

expected_bucket_owner string

The account ID of the expected bucket owner

if_match string

Return the object only if its entity tag (ETag) is the same as the one specified; otherwise, return a 412 (precondition failed) error.

if_modified_since int64

Return the object only if it has been modified since the specified time; otherwise, return a 304 (not modified) error.

if_none_match string

Return the object only if its entity tag (ETag) is different from the one specified

if_unmodified_since int64

Return the object only if it has not been modified since the specified time;

part_number int32

Part number of the object being read. This is a positive integer between 1 and 10,000. Effectively performs a 'ranged' HEAD request for the part specified. Useful querying about the size of the part and the number of parts in this object.

request_payer string

Confirms that the requester knows that they will be charged for the request.

sse_customer_algorithm string

Specifies the algorithm to use to when encrypting the object (for example, AES256).

sse_customer_key string

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data

sse_customer_key_md5 string

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.

version_id string

VersionId used to reference a specific version of the object.

with_details bool

Return object details meta

HeadObjectOutput

HeadObjectOutput

FieldTypeLabelDescription
result_metadata HeadObjectOutput.ResultMetadataEntry repeated

Metadata pertaining to the operation's result.

HeadObjectOutput.ResultMetadataEntry

FieldTypeLabelDescription
key string

value string

Initiator

Initiator

FieldTypeLabelDescription
display_name string

Initiator name

id string

Initiator id

InputSerialization

InputSerialization

FieldTypeLabelDescription
csv CSVInput

Describes the serialization of a CSV-encoded object.

compression_type string

Specifies object's compression format. Valid values: NONE, GZIP, BZIP2. Default Value: NONE.

json string

Specifies JSON as object's input serialization format.

IsObjectExistInput

IsObjectExistInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

version_id string

Object version id

IsObjectExistOutput

IsObjectExistOutput

FieldTypeLabelDescription
file_exist bool

Object exist or not

ListMultipartUploadsInput

ListMultipartUploadsInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

delimiter string

Character you use to group keys. All keys that contain the same string between the prefix, if specified, and the first occurrence of the delimiter after the prefix are grouped under a single result element, CommonPrefixes. If you don't specify the prefix parameter, then the substring starts at the beginning of the key. The keys that are grouped under CommonPrefixes result element are not returned elsewhere in the response.

encoding_type string

Requests Amazon S3 to encode the object keys in the response and specifies the encoding method to use. An object key may contain any Unicode character;

expected_bucket_owner string

The account ID of the expected bucket owner

key_marker string

Together with upload-id-marker, this parameter specifies the multipart upload after which listing should begin. If upload-id-marker is not specified, only the keys lexicographically greater than the specified key-marker will be included in the list. If upload-id-marker is specified, any multipart uploads for a key equal to the key-marker might also be included, provided those multipart uploads have upload IDs lexicographically greater than the specified upload-id-marker.

max_uploads int64

Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the response body. 1,000 is the maximum number of uploads that can be returned in a response.

prefix string

Lists in-progress uploads only for those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different grouping of keys. (You can think of using prefix to make groups in the same way you'd use a folder in a file system.)

upload_id_marker string

Together with key-marker, specifies the multipart upload after which listing should begin. If key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads for a key equal to the key-marker might be included in the list only if they have an upload ID lexicographically greater than the specified upload-id-marker.

ListMultipartUploadsOutput

ListMultipartUploadsOutput

FieldTypeLabelDescription
bucket string

The bucket name containing the object This member is required

common_prefixes string repeated

If you specify a delimiter in the request, then the result returns each distinct key prefix containing the delimiter in a CommonPrefixes element.

delimiter string

Contains the delimiter you specified in the request. If you don't specify a delimiter in your request, this element is absent from the response.

encoding_type string

Encoding type used by Amazon S3 to encode object keys in the response.

is_truncated bool

Indicates whether the returned list of multipart uploads is truncated. A value of true indicates that the list was truncated. The list can be truncated if the number of multipart uploads exceeds the limit allowed or specified by max uploads.

key_marker string

The key at or after which the listing began.

max_uploads int32

Maximum number of multipart uploads that could have been included in the response.

next_key_marker string

When a list is truncated, this element specifies the value that should be used for the key-marker request parameter in a subsequent request.

next_upload_id_marker string

When a list is truncated, this element specifies the value that should be used for the upload-id-marker request parameter in a subsequent request.

prefix string

When a prefix is provided in the request, this field contains the specified prefix. The result contains only keys starting with the specified prefix.

upload_id_marker string

Upload ID after which listing began.

uploads MultipartUpload repeated

Container for elements related to a particular multipart upload. A response can contain zero or more Upload elements.

ListObjectVersionsInput

ListObjectVersionsInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

delimiter string

A delimiter is a character that you specify to group keys. All keys that contain the same string between the prefix and the first occurrence of the delimiter are grouped under a single result element in CommonPrefixes. These groups are counted as one result against the max-keys limitation. These keys are not returned elsewhere in the response.

encoding_type string

Requests Amazon S3 to encode the object keys in the response and specifies the encoding method to use. An object key may contain any Unicode character;

expected_bucket_owner string

The account ID of the expected bucket owner

key_marker string

Specifies the key to start with when listing objects in a bucket.

max_keys int64

Sets the maximum number of keys returned in the response. By default the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more. If additional keys satisfy the search criteria, but were not returned because max-keys was exceeded, the response contains true. To return the additional keys, see key-marker and version-id-marker.

prefix string

Use this parameter to select only those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different groupings of keys. (You can think of using prefix to make groups in the same way you'd use a folder in a file system.) You can use prefix with delimiter to roll up numerous objects into a single result under CommonPrefixes.

version_id_marker string

Specifies the object version you want to start listing from.

ListObjectVersionsOutput

ListObjectVersionsOutput

FieldTypeLabelDescription
common_prefixes string repeated

All of the keys rolled up into a common prefix count as a single return when calculating the number of returns.

delete_markers DeleteMarkerEntry repeated

Container for an object that is a delete marker.

delimiter string

The delimiter grouping the included keys.

encoding_type string

Encoding type used by Amazon S3 to encode object key names in the XML response.

is_truncated bool

A flag that indicates whether Amazon S3 returned all of the results that satisfied the search criteria

key_marker string

Marks the last key returned in a truncated response.

max_keys int64

Specifies the maximum number of objects to return

name string

The bucket name.

next_key_marker string

When the number of responses exceeds the value of MaxKeys, NextKeyMarker specifies the first key not returned that satisfies the search criteria

next_version_id_marker string

When the number of responses exceeds the value of MaxKeys, NextVersionIdMarker specifies the first object version not returned that satisfies the search criteria.

prefix string

Selects objects that start with the value supplied by this parameter.

version_id_marker string

Marks the last version of the key returned in a truncated response.

versions ObjectVersion repeated

Container for version information.

ListObjectsInput

ListObjectsInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

delimiter string

A delimiter is a character you use to group keys.

encoding_type string

Requests Amazon S3 to encode the object keys in the response and specifies the encoding method to use. An object key may contain any Unicode character; however, XML 1.0 parser cannot parse some characters, such as characters with an ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response.

expected_bucket_owner string

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with the HTTP status code 403 Forbidden (access denied).

marker string

Marker is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. Marker can be any key in the bucket.

maxKeys int32

Sets the maximum number of keys returned in the response. By default the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.

prefix string

Limits the response to keys that begin with the specified prefix.

request_payer string

Confirms that the requester knows that they will be charged for the request.

ListObjectsOutput

ListObjectsOutput

FieldTypeLabelDescription
common_prefixes string repeated

CommonPrefixes

contents Object repeated

Objects contents

delimiter string

Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the MaxKeys value.

encoding_type string

Encoding type used by Amazon S3 to encode object keys in the response.

is_truncated bool

A flag that indicates whether Amazon S3 returned all of the results that satisfied the search criteria.

marker string

Indicates where in the bucket listing begins. Marker is included in the response if it was sent with the request.

max_keys int32

The maximum number of keys returned in the response body.

name string

The bucket name.

next_marker string

When response is truncated (the IsTruncated element value in the response is true), you can use the key name in this field as marker in the subsequent request to get next set of objects.

prefix string

Keys that begin with the indicated prefix.

ListPartsInput

ListPartsInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

expected_bucket_owner string

The account ID of the expected bucket owner

max_parts int64

Sets the maximum number of parts to return

part_number_marker int64

Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.

request_payer string

Confirms that the requester knows that they will be charged for the request.

upload_id string

Upload ID identifying the multipart upload whose parts are being listed.

ListPartsOutput

ListPartsOutput

FieldTypeLabelDescription
bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

upload_id string

Upload ID identifying the multipart upload whose parts are being listed.

next_part_number_marker string

When a list is truncated, this element specifies the last part in the list, as well as the value to use for the part-number-marker request parameter in a subsequent request.

max_parts int64

Maximum number of parts that were allowed in the response.

is_truncated bool

Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.

parts Part repeated

Container for elements related to a particular part. A response can contain zero or more Part elements.

MultipartUpload

MultipartUpload

FieldTypeLabelDescription
initiated int64

Date and time at which the multipart upload was initiated.

initiator Initiator

Identifies who initiated the multipart upload.

key string

Name of the object key. This member is required.

owner Owner

Specifies the owner of the object that is part of the multipart upload.

storage_class string

The class of storage used to store the object.

upload_id string

Upload ID that identifies the multipart upload.

Object

Object

FieldTypeLabelDescription
etag string

The entity tag is a hash of the object

key string

The name that you assign to an object. You use the object key to retrieve the object.

last_modified int64

Creation date of the object.

owner Owner

The owner of the object

size int64

Size in bytes of the object

storage_class string

The class of storage used to store the object.

ObjectIdentifier

ObjectIdentifier

FieldTypeLabelDescription
key string

Key name of the object. This member is required.

version_id string

VersionId for the specific version of the object to delete.

ObjectVersion

ObjectVersion

FieldTypeLabelDescription
etag string

The entity tag is an MD5 hash of that version of the object.

is_latest bool

Specifies whether the object is (true) or is not (false) the latest version of an object.

key string

Name of the object key. This member is required.

last_modified int64

Date and time the object was last modified.

owner Owner

Specifies the owner of the object.

size int64

Size in bytes of the object.

storage_class string

The class of storage used to store the object.

version_id string

Version ID of an object.

OutputLocation

OutPutLocation

FieldTypeLabelDescription
bucket_name string

The name of the bucket where the restore results will be placed. This member is required.

prefix string

The prefix that is prepended to the restore results for this request. This member is required.

OutputSerialization

OutputSerialization

FieldTypeLabelDescription
csv CSVOutput

Describes the serialization of CSV-encoded Select results.

json string

Specifies JSON as request's output serialization format.

Owner

Owner

FieldTypeLabelDescription
display_name string

Owner display name

id string

Owner id

Part

Part

FieldTypeLabelDescription
etag string

Part Etag

last_modified int64

Last modified time

part_number int64

Part number

size int64

Part size

PutObjectCannedAclInput

PutObjectCannedAclInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

acl string

The canned ACL to apply to the object

version_id string

VersionId used to reference a specific version of the object.

PutObjectCannedAclOutput

PutObjectCannedAclOutput

FieldTypeLabelDescription
request_charged string

Request charged

PutObjectInput

PutObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

body bytes

Object data.

bucket string

The bucket name to which the PUT action was initiated This member is required.

key string

Object key for which the PUT action was initiated. This member is required.

acl string

The canned ACL to apply to the object,different oss provider have different acl type

bucket_key_enabled bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

cache_control string

Can be used to specify caching behavior along the request/reply chain.

content_disposition string

Specifies presentational information for the object. For more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1 (http://www.w3.org/Protocols/rfc2616/rfc2616-sec19.html#sec19.5.1).

content_encoding string

Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field. For more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11 (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.11).

expires int64

The date and time at which the object is no longer cacheable. For more information, see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21 (http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.21).

server_side_encryption string

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

signed_url string

Specify the signed url of object, user can put object with signed url without ak、sk

meta PutObjectInput.MetaEntry repeated

A map of metadata to store with the object in S3.

tagging PutObjectInput.TaggingEntry repeated

The tag-set for the object. The tag-set must be encoded as URL Query parameters.

storage_class string

Storage class options.

PutObjectInput.MetaEntry

FieldTypeLabelDescription
key string

value string

PutObjectInput.TaggingEntry

FieldTypeLabelDescription
key string

value string

PutObjectOutput

PutObjectOutput

FieldTypeLabelDescription
bucket_key_enabled bool

Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

etag string

Entity tag for the uploaded object.

expiration string

If the expiration is configured for the object

request_charged string

If present, indicates that the requester was successfully charged for the request.

version_id string

Version of the object.

PutObjectTaggingInput

PutObjectTaggingInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required.

key string

Name of the object key. This member is required.

tags PutObjectTaggingInput.TagsEntry repeated

Container for the TagSet and Tag elements

version_id string

The versionId of the object that the tag-set will be added to.

PutObjectTaggingInput.TagsEntry

FieldTypeLabelDescription
key string

value string

PutObjectTaggingOutput

PutObjectTaggingOutput

FieldTypeLabelDescription
version_id string

The versionId of the object the tag-set was added to.

result_metadata PutObjectTaggingOutput.ResultMetadataEntry repeated

Metadata pertaining to the operation's result.

PutObjectTaggingOutput.ResultMetadataEntry

FieldTypeLabelDescription
key string

value string

RestoreObjectInput

RestoreObjectInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

restore_request RestoreRequest

The information of restoring request.

version_id string

VersionId used to reference a specific version of the object.

RestoreObjectOutput

RestoreObjectOutput

FieldTypeLabelDescription
request_charged string

If present, indicates that the requester was successfully charged for the request.

restore_output_path string

Indicates the path in the provided S3 output location where Select results will be restored to.

RestoreRequest

RestoreRequest

FieldTypeLabelDescription
days int32

Lifetime of the active copy in days.

description string

The optional description for the job.

glacier_job_parameters GlacierJobParameters

S3 Glacier related parameters pertaining to this job.

output_location OutputLocation

Describes the location where the restore job's output is stored.

select_parameters SelectParameters

Describes the parameters for Select job types.

tier string

Retrieval tier at which the restore will be processed.

type string

Type of restore request.

SelectParameters

SelectParameters

FieldTypeLabelDescription
expression string

The expression that is used to query the object. This member is required.

expression_type string

The type of the provided expression (for example, SQL). This member is required.

input_serialization InputSerialization

Describes the serialization format of the object. This member is required.

output_serialization OutputSerialization

Describes how the results of the Select job are serialized. This member is required.

SignURLInput

SignURLInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

method string

the method for sign url, eg. GET、POST

expired_in_sec int64

expire time of the sign url

SignURLOutput

SignURLOutput

FieldTypeLabelDescription
signed_url string

Object signed url

UpdateBandwidthRateLimitInput

UpdateBandwidthRateLimitInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

average_rate_limit_in_bits_per_sec int64

The average upload/download bandwidth rate limit in bits per second.

gateway_resource_name string

Resource name of gateway

UploadPartCopyInput

UploadPartCopyInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

copy_source CopySource

CopySource

part_number int32

Part number of part being copied. This is a positive integer between 1 and 10,000. This member is required.

upload_id string

Upload ID identifying the multipart upload whose part is being copied. This member is required.

start_position int64

The range of bytes to copy from the source object.bytes=start_position-part_size

part_size int64

Part size

UploadPartCopyOutput

UploadPartCopyOutput

FieldTypeLabelDescription
bucket_key_enabled bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

copy_part_result CopyPartResult

Container for all response elements.

copy_source_version_id string

The version of the source object that was copied, if you have enabled versioning on the source bucket.

request_charged string

If present, indicates that the requester was successfully charged for the request.

sse_customer_algorithm string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

sse_customer_key_md5 string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

sse_kms_key_id string

If present, specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric customer managed key that was used for the object.

server_side_encryption string

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

UploadPartInput

UploadPartInput

FieldTypeLabelDescription
store_name string

Required. The name of oss store.

bucket string

The bucket name containing the object This member is required

key string

Name of the object key. This member is required.

body bytes

Object data.

content_length int64

Size of the body in bytes. This parameter is useful when the size of the body cannot be determined automatically.

content_md5 string

The base64-encoded 128-bit MD5 digest of the part data.

expected_bucket_owner string

The account ID of the expected bucket owner

part_number int32

Part number of part being uploaded. This is a positive integer between 1 and 10,000. This member is required.

request_payer string

Confirms that the requester knows that they will be charged for the request.

sse_customer_algorithm string

Specifies the algorithm to use to when encrypting the object (for example, AES256).

sse_customer_key string

Specifies the customer-provided encryption key for Amazon S3 to use in encrypting data

sse_customer_key_md5 string

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.

upload_id string

Upload ID identifying the multipart upload whose part is being uploaded. This member is required.

UploadPartOutput

UploadPartOutput

FieldTypeLabelDescription
bucket_key_enabled bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

etag string

Entity tag for the uploaded object.

request_charged string

If present, indicates that the requester was successfully charged for the request.

sse_customer_algorithm string

Specifies the algorithm to use to when encrypting the object (for example, AES256).

sse_customer_key_md5 string

Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.

sse_kms_key_id string

Specifies the ID of the symmetric customer managed key to use for object encryption

server_side_encryption string

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

Scalar Value Types

.proto TypeNotesC++JavaPythonGoC#PHPRuby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)