Uploads

Request metadata upload

Request a presigned URL to upload a metadata artifact for a build. Requires builds:create scope.

POST/upload/metadata/request

Authorization

bearerAuth
AuthorizationBearer <token>

API key. Bearer authentication header of the form Bearer <token>, where <token> is your Workspace or Application API key.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request a presigned URL for a metadata artifact. Provide either build_id or primary_pending_upload_id.

Response Body

application/json

application/json

curl -X POST "https://example.comupload/metadata/request" \  -H "Authorization: Bearer YOUR_API_KEY" \  -H "Content-Type: application/json" \  -d @- <<'EOF'{  "filename": "Info.plist",  "size_bytes": 4096}EOF
{  "message": "Temporary presigned URL generated for metadata artifact upload.",  "metadata_pending_upload_id": "550e8400-e29b-41d4-a716-446655440001",  "metadata_identified_filetype": "Info.plist",  "presigned_upload_data": {    "url": "https://buildstash.s3.amazonaws.com/aBc1234/xYz9876/example.exe?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAEXAMPLE%2F20250615%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20250615T143000Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=abc123",    "headers": {      "Content-Type": "application/octet-stream",      "Content-Length": 4096    }  }}
Empty
{  "message": "Unauthorized"}