Luxor PlatformAPI DocumentationCommanderParts
Create part attachment upload URL
Reserves an attachment record and returns a presigned URL. Upload the file bytes with an HTTP PUT to upload_url.
Authorization
LuxorAPIKey authorization<token>
Use your API key here.
In: header
Path Parameters
part_id*string
Part id (uuid).
Format
uuidRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v2/commander/parts/497f6eca-6276-4993-bfeb-53cbbbba6f08/attachments/upload-url" \ -H "Content-Type: application/json" \ -d '{ "filename": "invoice.pdf", "content_type": "application/pdf", "size_bytes": 20481 }'{ "upload_url": "string", "attachment": { "id": "b1a2c3d4-e5f6-7890-abcd-ef1234567890", "part_id": "28c660ae-a12c-4da7-9243-03385b104cf1", "filename": "invoice.pdf", "content_type": "application/pdf", "size_bytes": 20481, "download_url": "string", "uploaded_by": "string", "created_at": "2026-04-20T10:15:00Z" }}{ "statusCode": 400, "code": "FST_ERR_VALIDATION", "error": "Bad Request", "message": "body/end_date Required"}{ "statusCode": 403, "code": "7", "error": "Forbidden", "message": "[permission_denied] site_id does not belong to this workspace"}{ "statusCode": 404, "code": "5", "error": "Not Found", "message": "[not_found] agent not found"}