---
title: "Acquire permission & location to upload files"
method: POST
path: "/api/v3/aws_post_tokens"
tags: ["aws post tokens"]
---

# Acquire permission & location to upload files

`POST /api/v3/aws_post_tokens`

The storage used by Fieldwire, Amazon S3, allows a user to directly post files to it, without having to go through a Fieldwire server.

[https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-UsingHTTPPOST.html](https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-UsingHTTPPOST.html)

The post S3 token contains all the information you need to use this functionality and has a 1 day expiry. After receiving one, you simply have to create a POST request that contains all the fields of the post S3 token, and add a "file" field with your file content and send it directly to AWS (to the post_address contained in the token).

The only action you can do on Fieldwire API with post S3 token is to request one.

It is highly recommended to look at the two demo client applications:
- Ruby: [https://github.com/Fieldwire/fieldwire_ruby_sample](https://github.com/Fieldwire/fieldwire_ruby_sample)
- Java: [https://github.com/Fieldwire/fieldwire_java_sample](https://github.com/Fieldwire/fieldwire_java_sample)

Both contain examples of post S3 token usage.

## Headers

- `Fieldwire-Version` string, date, required

## Response `201`

Successful response

- AwsPresignedPost — Entity that carries the required information to upload a single file to Fieldwire's S3
  - `post_address` string, required — The URL where the file could be uploaded
  - `post_parameters` object, required — Schema for post parameters
    - `acl` string, required — The ACL setting for this file
    - `key` string, required — Key of the object to be uploaded (includes the filename passed in)
    - `policy` string, required — Policy for the upload
    - `x-amz-algorithm` string, required — AWS specific parameter that should be passed along in the upload
    - `x-amz-credential` string, required — AWS specific parameter that should be passed along in the upload
    - `x-amz-date` string, required — AWS specific parameter that should be passed along in the upload
    - `x-amz-meta-original-filename` string, required — AWS specific parameter that should be passed along in the upload
    - `x-amz-signature` string, required — AWS specific parameter that should be passed along in the upload

---

[API](https://skmtc.dev/fieldwire/apis/fieldwire-super-api.md) · [All operations](https://skmtc.dev/fieldwire/apis/fieldwire-super-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fieldwire/fieldwire-super-api/revisions/66ee1c20b92d/schema)
