protocol
s3_protocol
S3-compatible client facade predicates.
logtalk_load(s3(loader))staticPublic predicates
list_buckets/2
Lists accessible buckets.
staticlist_buckets(Buckets,Options)list_buckets(-compound,+list(compound)) - one_or_errorOptions is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_credentials,missing)domain_error(s3_http_status,Status)
Option
credentials/1: Required access credentials ascredentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)).Option
session_token/1: Optional session token for temporary credentials.Option
region/1: AWS region to use whenendpoint/1is absent. Defaults tous-east-1.Option
endpoint/1: Optional custom S3-compatible endpoint URL.Option
addressing_style/1: Endpoint addressing style, eithervirtual_hostedorpath. Defaults tovirtual_hosted.Option
headers/1: Optional extra normalized HTTP request headers.Option
version/1: HTTP protocol version ashttp(Major, Minor). Defaults tohttp(1,1).Option
properties/1: Optional extra normalized HTTP request properties.Option
connection_options/1: Optional transport-specific HTTP client options.Option
payload_hash_mode/1: Payload signing mode, eithersignedorunsigned. Defaults tosigned.Option
request_time/1: Optional explicit local request time asdate_time(Year, Month, Day, Hours, Minutes, Seconds).Option
utc_offset_seconds/1: UTC offset used to derive the signing time from the local clock. Defaults to0.Option
amz_date/1: Optional explicit AWS SigV4 timestamp overriding any derived request time.
head_bucket/3
Returns response metadata for a bucket.
statichead_bucket(Bucket,Metadata,Options)head_bucket(+atom,-compound,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options: Supported options are the standard S3 request options:
credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)), optionalsession_token(Token),region(Region), optional customendpoint(URL),addressing_style(virtual_hosted|path), optionalheaders(Headers),version(http(Major, Minor)), optionalproperties(Properties), optionalconnection_options(ConnectionOptions),payload_hash_mode(signed|unsigned), optionalrequest_time(date_time(...)),utc_offset_seconds(OffsetSeconds), and optional explicitamz_date(AmzDate).
list_objects_v2/4
Lists bucket objects using the ListObjectsV2 API.
staticlist_objects_v2(Bucket,Request,Listing,Options)list_objects_v2(+atom,+compound,-compound,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorRequest is a variable:instantiation_errorOption of the request option list is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Option of the request option list is neither a variable nor a compound term:type_error(compound,Option)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Request is not a valid ListObjectsV2 request term or option list:domain_error(s3_list_objects_request,Request)Option of the request option list is a compound term but not a valid ListObjectsV2 request option:domain_error(s3_list_objects_request_option,Option)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options:
Optionsaccepts the standard S3 request options:credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)), optionalsession_token(Token),region(Region), optional customendpoint(URL),addressing_style(virtual_hosted|path), optionalheaders(Headers),version(http(Major, Minor)), optionalproperties(Properties), optionalconnection_options(ConnectionOptions),payload_hash_mode(signed|unsigned), optionalrequest_time(date_time(...)),utc_offset_seconds(OffsetSeconds), and optional explicitamz_date(AmzDate). TheRequestargument carries the ListObjectsV2-specific request options.
head_object/4
Returns response metadata for an object.
statichead_object(Bucket,Key,Metadata,Options)head_object(+atom,+atom,-compound,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options: Supported options are the standard S3 request options:
credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)), optionalsession_token(Token),region(Region), optional customendpoint(URL),addressing_style(virtual_hosted|path), optionalheaders(Headers),version(http(Major, Minor)), optionalproperties(Properties), optionalconnection_options(ConnectionOptions),payload_hash_mode(signed|unsigned), optionalrequest_time(date_time(...)),utc_offset_seconds(OffsetSeconds), and optional explicitamz_date(AmzDate).
get_object/5
Fetches an object into a local file path and returns its response metadata as a separate argument.
staticget_object(Bucket,Key,File,Properties,Options)get_object(+atom,+atom,+atom,-compound,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorFile is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)File is neither a variable nor an atom:type_error(atom,File)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)File exists but is not a writable file:domain_error(file([],[write]),File)Directory exists but is not writable:domain_error(directory([write]),Directory)Directory does not exist:existence_error(directory,Directory)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options: Supported options are:
credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey))for access credentials;session_token(Token)for temporary credentials;region(Region)for the AWS region, defaulting tous-east-1whenendpoint/1is absent;endpoint(URL)for a custom S3-compatible endpoint;addressing_style(virtual_hosted|path)for endpoint addressing, defaulting tovirtual_hosted;headers(Headers)for extra normalized request headers;version(http(Major, Minor))for the HTTP protocol version, defaulting tohttp(1,1);properties(Properties)for extra normalized HTTP request properties;connection_options(ConnectionOptions)for transport-specific HTTP client options;payload_hash_mode(signed|unsigned)for payload signing, defaulting tosigned;request_time(date_time(...))for an explicit local request time;utc_offset_seconds(OffsetSeconds)for deriving UTC from the local clock, defaulting to0; andamz_date(AmzDate)for an explicit AWS SigV4 timestamp overriding time derivation.
put_object/6
Uploads a local file path and returns the object ETag and response metadata as separate arguments.
staticput_object(Bucket,Key,File,ETag,Properties,Options)put_object(+atom,+atom,+atom,-atom,-compound,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorFile is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)File is neither a variable nor an atom:type_error(atom,File)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)File exists but is not a readable file:domain_error(file([],[read]),File)File does not exist:existence_error(file,File)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options: Supported options are the standard S3 request options:
credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)), optionalsession_token(Token),region(Region), optional customendpoint(URL),addressing_style(virtual_hosted|path), optionalheaders(Headers),version(http(Major, Minor)), optionalproperties(Properties), optionalconnection_options(ConnectionOptions),payload_hash_mode(signed|unsigned), optionalrequest_time(date_time(...)),utc_offset_seconds(OffsetSeconds), and optional explicitamz_date(AmzDate).
delete_object/4
Deletes an object, returning delete_result(Properties).
staticdelete_object(Bucket,Key,Result,Options)delete_object(+atom,+atom,-compound,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options: Supported options are the standard S3 request options:
credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)), optionalsession_token(Token),region(Region), optional customendpoint(URL),addressing_style(virtual_hosted|path), optionalheaders(Headers),version(http(Major, Minor)), optionalproperties(Properties), optionalconnection_options(ConnectionOptions),payload_hash_mode(signed|unsigned), optionalrequest_time(date_time(...)),utc_offset_seconds(OffsetSeconds), and optional explicitamz_date(AmzDate).
copy_object/5
Copies an object from a source bucket/key into the destination bucket/key, returning copy_result(ETag, Properties).
staticcopy_object(Source,Bucket,Key,Result,Options)copy_object(+compound,+atom,+atom,-compound,+list(compound)) - one_or_errorSource is a variable:instantiation_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorSource is a variable:instantiation_errorSource is neither a variable nor a compound term:type_error(compound,Source)Bucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)Source is neither a variable nor an atom:type_error(atom,VersionId)Source is a compound term but not a valid copy source term:domain_error(s3_copy_source,Source)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Source is an atom but not a valid version identifier:domain_error(s3_version_id,VersionId)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_http_status,Status)
Options: Supported options are the standard S3 request options:
credentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)), optionalsession_token(Token),region(Region), optional customendpoint(URL),addressing_style(virtual_hosted|path), optionalheaders(Headers),version(http(Major, Minor)), optionalproperties(Properties), optionalconnection_options(ConnectionOptions),payload_hash_mode(signed|unsigned), optionalrequest_time(date_time(...)),utc_offset_seconds(OffsetSeconds), and optional explicitamz_date(AmzDate).
presigned_get_object/4
Generates a presigned URL for downloading an object with an external HTTP client.
staticpresigned_get_object(Bucket,Key,URL,Options)presigned_get_object(+atom,+atom,-atom,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_credentials,missing)domain_error(s3_presign_expires,Expires)domain_error(s3_presign_payload_hash,Hash)
Option
credentials/1: Required access credentials ascredentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)).Option
session_token/1: Optional session token for temporary credentials.Option
region/1: AWS region to use whenendpoint/1is absent. Defaults tous-east-1.Option
endpoint/1: Optional custom S3-compatible endpoint URL.Option
addressing_style/1: Endpoint addressing style, eithervirtual_hostedorpath. Defaults tovirtual_hosted.Option
headers/1: Optional extra normalized request headers. When present they are signed into the URL and must be reproduced by the eventual caller.Option
payload_hash_mode/1: Presigned URLs default topayload_hash_mode(unsigned). Usesignedtogether withpayload_hash/1to sign a precomputed payload hash.Option
payload_hash/1: Precomputed hexadecimal SHA-256 payload hash required whenpayload_hash_mode(signed)is selected.Option
request_time/1: Optional explicit local request time asdate_time(Year, Month, Day, Hours, Minutes, Seconds).Option
utc_offset_seconds/1: UTC offset used to derive the signing time from the local clock. Defaults to0.Option
amz_date/1: Optional explicit AWS SigV4 timestamp overriding any derived request time.Option
expires/1: Presigned URL lifetime in seconds. Defaults to900and must not exceed604800.
presigned_put_object/4
Generates a presigned URL for uploading an object with an external HTTP client.
staticpresigned_put_object(Bucket,Key,URL,Options)presigned_put_object(+atom,+atom,-atom,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_credentials,missing)domain_error(s3_presign_expires,Expires)domain_error(s3_presign_payload_hash,Hash)
Option
credentials/1: Required access credentials ascredentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)).Option
session_token/1: Optional session token for temporary credentials.Option
region/1: AWS region to use whenendpoint/1is absent. Defaults tous-east-1.Option
endpoint/1: Optional custom S3-compatible endpoint URL.Option
addressing_style/1: Endpoint addressing style, eithervirtual_hostedorpath. Defaults tovirtual_hosted.Option
headers/1: Optional extra normalized request headers. When present they are signed into the URL and must be reproduced by the eventual caller.Option
payload_hash_mode/1: Presigned URLs default topayload_hash_mode(unsigned). Usesignedtogether withpayload_hash/1to sign a precomputed payload hash.Option
payload_hash/1: Precomputed hexadecimal SHA-256 payload hash required whenpayload_hash_mode(signed)is selected.Option
request_time/1: Optional explicit local request time asdate_time(Year, Month, Day, Hours, Minutes, Seconds).Option
utc_offset_seconds/1: UTC offset used to derive the signing time from the local clock. Defaults to0.Option
amz_date/1: Optional explicit AWS SigV4 timestamp overriding any derived request time.Option
expires/1: Presigned URL lifetime in seconds. Defaults to900and must not exceed604800.
presigned_post_object/4
Generates a presigned URL for a POST request to an object with an external HTTP client.
staticpresigned_post_object(Bucket,Key,URL,Options)presigned_post_object(+atom,+atom,-atom,+list(compound)) - one_or_errorBucket is a variable:instantiation_errorKey is a variable:instantiation_errorBucket is neither a variable nor an atom:type_error(atom,Bucket)Key is neither a variable nor an atom:type_error(atom,Key)Bucket is an atom but not a valid S3 bucket:domain_error(s3_bucket,Bucket)Options is a variable:instantiation_errorOptions is neither a variable nor a list:type_error(list,Options)Option of the list Options is a variable:instantiation_errorOption of the list Options is neither a variable nor a compound term:type_error(compound,Option)Option of the list Options is a compound term but not a valid option:domain_error(option,Option)Options contains an invalid S3 client option:domain_error(s3_client_option,Option)domain_error(s3_credentials,missing)domain_error(s3_presign_expires,Expires)domain_error(s3_presign_payload_hash,Hash)
Option
credentials/1: Required access credentials ascredentials(access_key_id(AccessKeyId), secret_access_key(SecretAccessKey)).Option
session_token/1: Optional session token for temporary credentials.Option
region/1: AWS region to use whenendpoint/1is absent. Defaults tous-east-1.Option
endpoint/1: Optional custom S3-compatible endpoint URL.Option
addressing_style/1: Endpoint addressing style, eithervirtual_hostedorpath. Defaults tovirtual_hosted.Option
headers/1: Optional extra normalized request headers. When present they are signed into the URL and must be reproduced by the eventual caller.Option
payload_hash_mode/1: Presigned URLs default topayload_hash_mode(unsigned). Usesignedtogether withpayload_hash/1to sign a precomputed payload hash.Option
payload_hash/1: Precomputed hexadecimal SHA-256 payload hash required whenpayload_hash_mode(signed)is selected.Option
request_time/1: Optional explicit local request time asdate_time(Year, Month, Day, Hours, Minutes, Seconds).Option
utc_offset_seconds/1: UTC offset used to derive the signing time from the local clock. Defaults to0.Option
amz_date/1: Optional explicit AWS SigV4 timestamp overriding any derived request time.Option
expires/1: Presigned URL lifetime in seconds. Defaults to900and must not exceed604800.
Protected predicates
(none)
Private predicates
(none)
Operators
(none)