Get upload URL for a file part

/upload/multipart/{upload_id}/part/{part_number}

This call returns the signed URL required to upload a part of a multipart upload. Once you have obtained this URL for your file part, you can make a PUT request to it with the file part as the request body.

https://api.sb.biodatacatalyst.nhlbi.nih.gov/v2/upload/multipart/{upload_id}/part/{part_number}

Request

Example request

GET /v2/upload/multipart/0rand0mQtmDILPCn1Gnhm8NC9qInFSzAo08sGG3AQmGzFXjmsw0Q9OlH55jTMcEg/part/1 HTTP/1.1
Host: api.sb.biodatacatalyst.nhlbi.nih.gov
X-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74
curl -s -H "X-SBG-Auth-Token: 3259c50e1ac5426ea8f1273259740f74" -H "content-type: application/json" -X GET "https://api.sb.biodatacatalyst.nhlbi.nih.gov/v2/upload/multipart/EXAMPLE_ID/part/1"

Header Fields

NameDescription
X-SBG-Auth-Token
required
Your authentication token.
Content-Type
required
application/json

Path parameters

NameDescription
upload_idThe ID for the upload, returned by the call to initialize a multipart upload.
part_numberThe number of the file part you are uploading. Part numbers start from 1.

Response

See a list of response codes that may be contained in the body of the response.

Response body

The response object contains information about the URL to which you should upload the file part, The information is structured using the following key-value pairs.

KeyData typeDescription
methodStringThe HTTP method to use when making the HTTP part upload request.
urlStringThe URL to which to make the HTTP part upload request.
expiresIntegerThe timestamp in Coordinated Universal Time (UTC) by when the HTTP part upload request should be made.

Warning: this timestamp includes microseconds. If your programming environment prefers second-based UTC timestamp format (also known as UNIX time, POSIX time or epoch time), simply divide this number by 1000.
headersObjectA map of headers and values that should be set when making the HTTP part upload request.
reportObjectSee the Structure of the report object section below for an explanation of the report object.
success_codesArray of IntegersA list of status codes returned by the HTTP part upload request that should be recognized as success.
A successful part upload request should be reported back to the API in a call to report an uploaded file part by passing the information collected from the report object.

Structure of the report object

This object instructs you which pieces of information need to be collected from a successful response to the HTTP part upload request.

KeyData typeDescription
headersArray of StringsA list of HTTP headers whose values should be collected from a successful response to the HTTP part upload request.
bodyObjectReserved for future use

Example response body

{
  "method": "PUT",
  "url": "https://bucket.s3.amazonaws.com/bd5e95d9-12b3-789c-45b6-34d8696571a9%2BCanFam3.1.dna_rm.toplevel.fa.gz?uploadId=lEXAMPLEWqHsCNj9IKV4VytwZOy0.4ZKFPDD73Cw6I745a3xFXKZLHrqDi0kZt0jTm25PYJqNfEJDF9OaJ6Xvg8vLv9K7SJ.RLiCczfy6ieGCJzNQd78vmSK3a9Bkgx2&partNumber=1&AWSAccessKeyId=AKIAJF4ANIHWSEXAMPLE&Expires=1459113561&Signature=3rand0m960C11jkmjX24WApZwNo%3D",
  "expires": "2016-02-27T15:55:38Z",
  "headers": {},
  "report": {
    "success_codes": [
      200
    ],
    "headers": [
      "ETag"
    ]
  }
}