Uploading Segments to S3

If a segment file is over 10 Mb in size, the file needs to be uploaded to a Beeswax S3 bucket. To upload your segment files to S3, you need to complete the following steps:

1. Provide your Beeswax account representative with your AWS Identity & Access Management (IAM) Amazon Resource Name (ARN). (Link to AWS documentation)

2. Beeswax will notify you once your permissions have been added to the Beeswax bucket policy.

NOTE: Please do not try uploading the files before receiving notification from your Beeswax account representative as Beeswax will have to update permissions as well. Once notified, you can start writing to your designated S3 folder.

3. Upload the segment file to the Beeswax S3 path

Example: (e.g. S3://beeswax-data-us-east-1/user-list/<customer_buzz_key>/).

The placeholder <customer_buzz_key> must be replaced with your actual buzz key.

Note: Ensure you have not forgotten the forward-slash at the end when specifying the bucket in your command/code. Omitting this may result in the Access Denied error.

4. Perform the following command via AWS Command Line Interface (CLI) to provide proper permissions to Beeswax for the file: 

	 aws s3api put-object-acl \

	    --bucket beeswax-data-us-east-1 \
	    --key user-list/<customer_buzz_key>/file_name.txt \
	    --acl bucket-owner-full-control \
	    --region us-east-1
Note: The placeholder <customer_buzz_key> must be replaced with your actual buzz key
5. Execute a segment_upload POST call via Buzz API that refers to the file location on S3. An example call can be found below:It should look something like:
curl -X POST "https://<customer_buzz_key>.api.beeswax.com/rest/segment_upload" -b cookies.txt -d '{"segment_file_list":["s3://beeswax-data-us-east-1/user-list/<customer_buzz_key>/file_name.txt"],"account_id":2,"file_format":"DELIMITED","user_id_type":"OTHER_MOBILE_ID","segment_key_type":"DEFAULT"}'
Note: The placeholder <customer_buzz_key> must be replaced with your actual buzz keyIf uploading users to the EMEA region, you will need to include a "continent":"EMEA" field and value in your payload.
6. You will be able to track the progress of the processing of the file in the Segment Uploads screen of the UI.
Find more detail on the API call  here.
Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us