Update a Project

PUT /api/0/projects/{organization_id_or_slug}/{project_id_or_slug}/

Update various attributes and configurable settings for the given project.

Note that solely having the project:read scope restricts updatable settings to isBookmarked, autofixAutomationTuning, seerScannerAutomation, preprodSizeStatusChecksEnabled, preprodSizeStatusChecksRules, preprodSizePrCommentsEnabled, preprodSizePrCommentsRules, preprodSizeEnabledQuery, preprodDistributionEnabledQuery, preprodSizeEnabledByCustomer, preprodDistributionEnabledByCustomer, and preprodDistributionPrCommentsEnabledByCustomer.

Path Parameters

organization_id_or_slug (string)
REQUIRED

The ID or slug of the organization the resource belongs to.

project_id_or_slug (string)
REQUIRED

The ID or slug of the project the resource belongs to. Project slugs are unique within each organization.

Body Parameters

digestsMinDelay (integer)
REQUIRED

Minimum time in seconds to wait before sending an issue digest email.

digestsMaxDelay (integer)
REQUIRED

Maximum time in seconds to wait before sending an issue digest email.

securityToken (string)
REQUIRED

Token sent with security reports (CSP, Expect-CT, HPKP) so Sentry can verify their origin.

securityTokenHeader (string)
REQUIRED

Name of the header carrying the security token on inbound security reports.

isBookmarked (boolean)

Enables starring the project within the projects tab. Can be updated with project:read permission.

autofixAutomationTuning (string)

How aggressively Seer runs Autofix on new issues. Can be updated with project:read permission.

  • off
  • super_low
  • low
  • medium
  • high
  • always
seerScannerAutomation (boolean)

Let Seer scan new issues automatically. Can be updated with project:read permission.

preprodSizeStatusChecksEnabled (boolean)

Enable preprod size status checks. Can be updated with project:read permission.

preprodSizeStatusChecksRules (object)

Rules controlling when preprod size status checks fail. Can be updated with project:read permission.

preprodSizePrCommentsEnabled (boolean)

Enable preprod size PR comments. Can be updated with project:read permission.

preprodSizePrCommentsRules (object)

Rules controlling which preprod size changes are posted as PR comments. Can be updated with project:read permission.

preprodSnapshotStatusChecksEnabled (boolean)

Enable preprod snapshot status checks.

preprodSnapshotStatusChecksFailOnAdded (boolean)

Fail the preprod snapshot status check when snapshots are added.

preprodSnapshotStatusChecksFailOnRemoved (boolean)

Fail the preprod snapshot status check when snapshots are removed.

preprodSnapshotStatusChecksFailOnChanged (boolean)

Fail the preprod snapshot status check when snapshots change.

preprodSnapshotStatusChecksFailOnRenamed (boolean)

Fail the preprod snapshot status check when snapshots are renamed.

preprodSizeEnabledByCustomer (boolean)

Enable preprod size analysis. Can be updated with project:read permission.

preprodDistributionEnabledByCustomer (boolean)

Enable preprod build distribution. Can be updated with project:read permission.

preprodDistributionPrCommentsEnabledByCustomer (boolean)

Post preprod distribution updates as PR comments. Can be updated with project:read permission.

preprodSnapshotPrCommentsEnabled (boolean)

Post preprod snapshot changes as PR comments.

preprodSnapshotPrCommentsPostOnAdded (boolean)

Include added snapshots in preprod snapshot PR comments.

preprodSnapshotPrCommentsPostOnRemoved (boolean)

Include removed snapshots in preprod snapshot PR comments.

preprodSnapshotPrCommentsPostOnChanged (boolean)

Include changed snapshots in preprod snapshot PR comments.

preprodSnapshotPrCommentsPostOnRenamed (boolean)

Include renamed snapshots in preprod snapshot PR comments.

preprodSizeEnabledQuery (string)

Query selecting which preprod builds are size-analyzed. Can be updated with project:read permission.

preprodDistributionEnabledQuery (string)

Query selecting which preprod builds are distributed. Can be updated with project:read permission.

name (string)

The name for the project

slug (string)

Uniquely identifies a project and is used for the interface.

platform (string)

The platform for the project

subjectPrefix (string)

Custom prefix for emails from this project.

subjectTemplate (string)

The email subject to use (excluding the prefix) for individual alerts. Here are the list of variables you can use:

  • $title
  • $shortID
  • $projectID
  • $orgID
  • ${tag:key} - such as ${tag:environment} or ${tag:release}.
resolveAge (integer)

Automatically resolve an issue if it hasn't been seen for this many hours. Set to 0 to disable auto-resolve.

highlightContext (object)

A JSON mapping of context types to lists of strings for their keys. E.g. {'user': ['id', 'email']}

highlightTags (array(string))

A list of strings with tag keys to highlight on this project's issues. E.g. ['release', 'environment']

verifySSL (boolean)

Verify SSL certificates when delivering outbound webhooks and service hooks.

defaultEnvironment (string)

Environment selected by default when viewing this project.

dataScrubber (boolean)

Remove known sensitive values from events before storing them.

dataScrubberDefaults (boolean)

Also scrub Sentry's built-in list of sensitive field names.

sensitiveFields (array(string))

Additional field names to scrub from events, beyond the defaults.

safeFields (array(string))

Field names to exempt from scrubbing, including the built-in defaults.

storeCrashReports (integer)

Number of native crash report files to store per issue. Use -1 for unlimited or 0 to store none.

relayPiiConfig (string)

Advanced data scrubbing rules, as a JSON string, applied before events are stored.

builtinSymbolSources (array(string))

Identifiers of Sentry-hosted symbol sources to use when symbolicating events.

symbolSources (string)

Custom symbol sources, as a JSON string, to use when symbolicating events.

scrubIPAddresses (boolean)

Discard client IP addresses rather than storing them on events.

groupingConfig (string)

Identifier of the grouping algorithm used to assign events to issues.

groupingEnhancements (string)

Grouping enhancement rules, as a newline-delimited config string, adjusting which stack frames contribute to an issue.

fingerprintingRules (string)

Fingerprinting rules, as a newline-delimited config string, controlling how events are grouped into issues.

secondaryGroupingConfig (string)

Grouping algorithm run alongside the primary one during a grouping migration.

secondaryGroupingExpiry (integer)

Unix timestamp after which the secondary grouping algorithm stops running.

scrapeJavaScript (boolean)

Allow Sentry to fetch source files and source maps from your servers.

enableAutoReleaseCreation (boolean)

Automatically create releases from ingested events. When disabled, releases must be created manually (e.g. via the Sentry CLI).

allowedDomains (array(string))

Origins permitted to send events to this project. Use * to allow any.

copy_from_project (integer)

ID of a project whose settings, teams, and keys should be copied into this one.

targetSampleRate (number)

Target proportion of transactions to retain, from 0 to 1. Requires manual dynamic sampling mode.

dynamicSamplingBiases (array(object))

Per-bias toggles adjusting which transactions dynamic sampling favors retaining.

tempestFetchScreenshots (boolean)

Fetch screenshots attached to console crash reports. Requires the Tempest feature.

scmSourceContextEnabled (boolean)

Enable on-demand source context fetching from SCM integrations for stack traces.

debugFilesRole (string)

The role required to download debug information files, ProGuard mappings and source maps. If not set, inherits from organization setting.

  • member - Member
  • admin - Admin
  • manager - Manager
  • owner - Owner

Scopes

<auth_token> requires one of the following scopes:
  • project:admin
  • project:read
  • project:write
Copied
curl https://sentry.io/api/0/projects/{organization_id_or_slug}/{project_id_or_slug}/ \
 -H 'Authorization: Bearer <auth_token>' \
 -X PUT \
 -H 'Content-Type: application/json' \
 -d '{}'
RESPONSESCHEMA
Copied
{ "id": "4505278496", "slug": "pump-station", "name": "Pump Station", "platform": "python", "dateCreated": "2021-01-14T22:08:52.711809Z", "isBookmarked": false, "isMember": true, "features": [ "alert-filters", "custom-inbound-filters", "discard-groups", "minidump", "rate-limits", "servicehooks", "similarity-indexing", "similarity-indexing-v2", "similarity-view", "similarity-view-v2" ], "firstEvent": "2021-01-14T22:08:52.711809Z", "firstTransactionEvent": true, "access": [ "member:read", "event:read", "project:admin", "team:write", "project:write", "team:admin", "project:read", "org:integrations", "org:read", "project:releases", "team:read", "alerts:write", "event:admin", "event:write", "alerts:read" ], "hasAccess": true, "hasMinifiedStackTrace": false, "hasFeedbacks": false, "hasMonitors": false, "hasNewFeedbacks": false, "hasProfiles": false, "hasReplays": false, "hasFlags": false, "hasSessions": false, "hasInsightsHttp": true, "hasInsightsDb": false, "hasInsightsAssets": true, "hasInsightsAppStart": false, "hasInsightsScreenLoad": false, "hasInsightsVitals": false, "hasInsightsCaches": false, "hasInsightsQueues": false, "hasInsightsAgentMonitoring": false, "hasInsightsMCP": false, "hasLogs": false, "hasTraceMetrics": false, "isInternal": false, "isPublic": false, "avatar": { "avatarType": "letter_avatar", "avatarUuid": null }, "color": "#3f70bf", "status": "active", "team": { "id": "2", "name": "Powerful Abolitionist", "slug": "powerful-abolitionist" }, "teams": [ { "id": "2", "name": "Powerful Abolitionist", "slug": "powerful-abolitionist" } ], "latestRelease": { "version": "backend@3e90a5d9e767ebcfa70e921d7a7ff6c037461168" }, "options": { "sentry:transaction_name_cluster_rules": [], "digests:mail:maximum_delay": 600, "sentry:scrub_defaults": false, "sentry:scrape_javascript": true, "mail:subject_prefix": "", "sentry:relay_pii_config": null, "sentry:scrub_data": false, "sentry:token": "e84c8c0fb1c121e988558785885f9cde", "sentry:resolve_age": 168, "sentry:grouping_config": "newstyle:2012-12-31", "quotas:spike-protection-disabled": false, "sentry:store_crash_reports": 5, "digests:mail:minimum_delay": 180, "sentry:secondary_grouping_config": "newstyle:2012-11-21", "sentry:secondary_grouping_expiry": 147555024, "sentry:builtin_symbol_sources": [ "ios", "android", "chromium" ], "sentry:origins": [ "getsentry.com", "app.getsentry.com", "www.getsentry.com", "sentry.io" ], "sentry:sensitive_fields": [ "sudo" ], "sentry:scrub_ip_address": false, "sentry:default_environment": "prod", "sentry:verify_ssl": true, "sentry:csp_ignored_sources_defaults": true, "sentry:csp_ignored_sources": "", "filters:blacklisted_ips": "", "filters:react-hydration-errors": true, "filters:chunk-load-error": true, "filters:releases": "", "filters:error_messages": "", "feedback:branding": true }, "digestsMinDelay": 180, "digestsMaxDelay": 600, "subjectPrefix": "", "allowedDomains": [ "getsentry.com", "app.getsentry.com", "www.getsentry.com", "sentry.io" ], "resolveAge": 168, "dataScrubber": false, "dataScrubberDefaults": false, "safeFields": [], "storeCrashReports": 5, "sensitiveFields": [ "sudo" ], "subjectTemplate": "$shortID - $title", "securityToken": "e84c8c0fb1c121e988558785885f9cde", "securityTokenHeader": null, "verifySSL": true, "scrubIPAddresses": false, "scrapeJavaScript": true, "groupingConfig": "newstyle:2012-12-31", "groupingEnhancements": "", "derivedGroupingEnhancements": "", "secondaryGroupingExpiry": 1687010243, "secondaryGroupingConfig": "newstyle:2012-11-21", "fingerprintingRules": "", "organization": { "id": "1", "slug": "sentry", "status": { "id": "active", "name": "active" }, "name": "Sentry", "dateCreated": "2014-12-15T04:06:24.263571Z", "isEarlyAdopter": true, "allowMemberInvite": true, "allowMemberProjectCreation": true, "allowSuperuserAccess": false, "require2FA": false, "avatar": { "avatarType": "upload", "avatarUuid": "24f6f762f7a7473888b259c566da5adb" }, "features": [ "discover-basic", "incidents", "uptime", "monitors" ], "links": { "organizationUrl": "https://sentry.sentry.io", "regionUrl": "https://us.sentry.io" }, "hasAuthProvider": true }, "platforms": [ "native", "other", "python" ], "processingIssues": 0, "defaultEnvironment": "prod", "relayPiiConfig": null, "builtinSymbolSources": [ "ios", "android", "chromium" ], "dynamicSamplingBiases": [ { "id": "boostEnvironments", "active": true }, { "id": "boostLatestRelease", "active": true }, { "id": "ignoreHealthChecks", "active": true }, { "id": "boostKeyTransactions", "active": true }, { "id": "boostLowVolumeTransactions", "active": true }, { "id": "boostReplayId", "active": true }, { "id": "recalibrationRule", "active": true } ], "symbolSources": "[]", "tempestFetchScreenshots": false, "debugFilesRole": null, "isDynamicallySampled": true, "enableAutoReleaseCreation": true, "autofixAutomationTuning": "off", "seerScannerAutomation": true, "seerNightshiftTweaks": null, "highlightTags": [], "highlightContext": {}, "highlightPreset": { "tags": [], "context": {} }, "scmSourceContextEnabled": false }
Was this helpful?