Skip to main content
Trace file management (feature-gated: enable_trace_routes)

Endpoints


List tracesets

GET /api/v1/tracesets List all tracesets in the workspace. Supports pagination and filtering by status.

Parameters

Responses

200 - List of tracesets
401 - Unauthorized 403 - Forbidden - not a member of workspace

Upload a traceset (small file)

POST /api/v1/tracesets Upload a trace file directly. For files larger than 100MB, use the upload-url endpoint instead.

Parameters

Request Body

Responses

200 - Traceset already exists (de-duplicated)
201 - Traceset created successfully
400 - Invalid request (bad format, validation failed) 413 - File too large (use upload-url for files >100MB)

Get pre-signed URLs for large file upload

POST /api/v1/tracesets/upload-url Initiate a multipart upload and get pre-signed URLs for each part. Use this for files larger than 100MB.

Request Body

Responses

200 - Pre-signed URLs generated
400 - Invalid request (invalid/duplicate filenames, path traversal, invalid role, file count exceeds limit, description/tags/metadata exceeds size limits, file too large)

Complete multipart upload

POST /api/v1/tracesets/upload-url/complete Complete a multipart upload after all parts have been uploaded. This endpoint is idempotent - calling it multiple times with the same uploadId returns the same traceset.

Request Body

Responses

200 - Traceset already exists (idempotent retry)
201 - Traceset created successfully
400 - Invalid request (missing/unexpected files, bad parts, empty ETags, failed session) 404 - Upload session not found 409 - Upload session is already being completed by another request 410 - Upload session has expired 500 - Server error (S3 failure, database error, checksum unavailable)

Get traceset details

GET /api/v1/tracesets/{id} Get detailed information about a traceset including files, metadata status, and library hash.

Parameters

Responses

200 - Traceset details
404 - Traceset not found

Delete a traceset

DELETE /api/v1/tracesets/{id} Soft delete a traceset. The traceset will be marked as deleted and cleaned up after TTL expires. Does not affect the library if other tracesets reference it.

Parameters

Responses

204 - Traceset deleted successfully 404 - Traceset not found

Get download URL

GET /api/v1/tracesets/{id}/download Get a pre-signed URL to download traceset files. Resets TTL on access. Protected by auth proxy.

Parameters

Responses

200 - Download URL
404 - Traceset not found

Promote traceset scope

POST /api/v1/tracesets/{id}/promote Promote a traceset from workspace to tenant scope, or from tenant to public scope. Requires status=ready. Idempotent if already at target scope.

Parameters

Request Body

Responses

200 - Promotion result
400 - Invalid target scope 404 - Traceset not found 409 - Traceset not ready for promotion 412 - Promotion precondition failed (invalid transition, missing metadata)

Resolve traceset

GET /api/v1/tracesets/{id}/resolve Resolves a traceset to its S3 paths and DRA (Data Resource Accessor) mounting information for use by the simulation orchestrator. The response format depends on the library layout: CAS (content-addressed) layout returns individual file S3 keys; prefix layout returns a file count and root path.

Parameters

Responses

200 - Resolved traceset with S3 paths and DRA mount info
400 - Traceset cannot be resolved (no files, missing library entry for prefix layout)
404 - Traceset not found

Validate traceset

POST /api/v1/tracesets/{id}/validate Validate traceset format and optionally correlate with topology.

Parameters

Request Body

Responses

200 - Validation result
404 - Traceset not found