Skip to content

feat(preprod): Add upload-options endpoint for snapshot uploads#108312

Draft
lcian wants to merge 2 commits intomasterfrom
feat/preprod-upload-options-endpoint
Draft

feat(preprod): Add upload-options endpoint for snapshot uploads#108312
lcian wants to merge 2 commits intomasterfrom
feat/preprod-upload-options-endpoint

Conversation

@lcian
Copy link
Member

@lcian lcian commented Feb 16, 2026

New project-scoped endpoint (/preprodartifacts/snapshots/upload-options/) that returns all configuration needed by sentry-cli to upload preprod snapshots in a single request.

Currently the CLI requires multiple API calls to gather upload configuration (org details for region URL, retention settings, org/project IDs for objectstore scoping). This endpoint centralizes that into a single response containing:

  • objectstoreUploadUrl: base URL for the objectstore proxy endpoint
  • objectstoreScopes: org and project IDs for constructing objectstore Usecase
  • objectstoreToken: placeholder for future scoped token generation
  • retentionDays: snapshot retention (hardcoded at 396 days, matching retention endpoint)

The endpoint uses the same permission model as the snapshot endpoint (ProjectReleasePermission) and is gated behind the organizations:preprod-snapshots feature flag.

New project-scoped endpoint that returns all configuration needed by
sentry-cli to upload preprod snapshots in a single request, reducing
round-trips from multiple API calls to one.
@github-actions github-actions bot added the Scope: Backend Automatically applied to PRs that change backend components label Feb 16, 2026
"orgId": organization.id,
"projectId": project.id,
},
"objectstoreToken": "placeholder",
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not implemented yet.

@github-actions github-actions bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Feb 16, 2026
@github-actions
Copy link
Contributor

🚨 Warning: This pull request contains Frontend and Backend changes!

It's discouraged to make changes to Sentry's Frontend and Backend in a single pull request. The Frontend and Backend are not atomically deployed. If the changes are interdependent of each other, they must be separated into two pull requests and be made forward or backwards compatible, such that the Backend or Frontend can be safely deployed independently.

Have questions? Please ask in the #discuss-dev-infra channel.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Backend Automatically applied to PRs that change backend components Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants