For AI agents: a documentation index is available at /docs/llms.txt. Append .md to any page URL for markdown, or send Accept: text/markdown.
Get survey
/v1/projects/{project_id}/surveys/{survey_id}Authorizations
Authorizationstringrequiredhttp
Path parameters
project_idstringrequiredAmplitude project identifier, backed by the canonical app ID.
12345pattern: ^[0-9]+$survey_idstringrequiredSurvey nudge identifier.
pattern: ^[0-9]+$Query parameters
include_unpublished_changesbooleanWhen true, return the latest draft (unpublished edits) when one exists. Default false returns the live published survey.
falseResponse
application/jsondataobjectrequiredShow child attributes
idstringrequiredNumeric nudge identifier.
pattern: ^[0-9]+$objectstringrequiredproject_idstringrequiredpattern: ^[0-9]+$typestringrequiredplatformstringrequiredTarget platform. Guides and surveys without an explicit platform are
returned as web.
webiosandroidreact-nativedesktopfluttertitlestringrequirednullabledescriptionstringnullableis_archivedbooleanrequiredpriorityintegerrequiredTrigger precedence (4 = urgent, 1 = low).
min: 1max: 4statusstringrequiredDerived rollout state. Read-only on API responses.
draftpublishedtestingscheduledscheduled-activescheduled-inactiveexperiment-runningexperiment-inactivearchivedstatus_descriptionstringrequiredkeystringrequiredFeature flag key that controls delivery. Matches the
[Guides-Surveys] Key property on SDK-tracked guide and survey events,
so use it to join events to this guide or survey.
nullablestart_atstringrequiredScheduled start of the live flag. null when no start is scheduled.
format: date-timenullableend_atstringrequiredScheduled end of the live flag. null when no end is scheduled.
format: date-timenullableurlstringrequiredAdmin URL for the guide or survey.
format: uripage_target_segmentsunknown[]Page URL targeting rules. Empty means globally eligible.
tagsstring[]created_bystringnullablelast_modified_bystringnullablecreated_atstringrequiredformat: date-timenullableupdated_atstringrequiredformat: date-timenullablelatest_versionintegerrequiredMonotonic version for optimistic concurrency. Send the value from the latest GET on PATCH; a stale value returns 409.
temporarily_hide_page_target_segmentsunknown[]hide_if_page_targeting_not_metbooleantrigger_configunknownWhen and how the nudge triggers.
lifecycleunknownFrequency and display lifecycle rules.
dismissiblebooleansnoozablebooleansnoozable_on_all_stepsbooleansnooze_durationunknownSnooze duration configuration.
snooze_labelstringnullabletemplate_sourcestringnullableshow_step_counterbooleanstep_counter_formatstringnullabletheme_idstringTheme applied to this guide or survey. null means the project's
default theme for the platform. Fetch it with the Themes API.
nullablepattern: ^[0-9]+$variantsobject[]idstringrequiredvariantstringrequiredVariant key within the nudge.
display_titlestringnullabledisplay_descriptionstringnullablesnooze_labelstringnullabledone_labelstringnullablestepsobject[]idstringrequiredtitlestringnullableform_factorobjectLayout object for a step. type selects the form factor; additional keys
are layout-specific.
typestringrequiredStep presentation layout. Required layout keys and allowed values differ by form factor.
bannercardchecklistmodalpinpopovertooltipcontentunknownStep body content (structure varies by form factor).
content_v2objectBlock-builder layout: a tree of layout containers whose children
are containers or content blocks, including the step's title block.
Present only on steps built in the block builder. When present, the
dashboard and SDK render this tree, not title and content.
Not accepted on create or update.
sort_keyintegernullableexperiment_variantsobject[]Read-only experiment variant keys when the nudge is experiment-backed.
keystringrequirednamestringnullabledescriptionstringnullablepayloadunknownOptional JSON payload associated with the experiment variant.
flag_configoneOfThe Experiment feature flag that delivers this nudge, in the same
shape as the Feature Flags API. Includes audience targeting
(target_segments) and rollout. With
include_unpublished_changes=true, draft rollout and targeting
settings are applied over the live flag.
objectnullidstringproject_idstringpattern: ^[0-9]+$keystringnamestringdescriptionstringnullabledeploymentsstring[]Deployment IDs associated with this flag. Managed via the create/update deployment fields, not set directly on this field.
enabledbooleanevaluation_modestringlocalremotevariantsobject[]keystringrequiredStable variant key. The value off is reserved.
pattern: ^[A-Za-z0-9_-]+$namestringnullabledescriptionstringnullablepayloadunknownOptional JSON payload returned by evaluation.
bucketing_keystringBucketing key used for assignment. Never null in responses; defaults to amplitude_id when not explicitly set.
bucketing_saltstringnullablebucketing_unitstringnullablerollout_percentageintegermin: 0max: 100rollout_weightsobjectVariant-keyed rollout weights. Values may be normalized to sum to 100 (percentages) or expressed as unnormalized relative weights (for example { "control": 1, "treatment": 1 } for an even split). Weights are non-negative and may be fractional.
target_segmentsobject[]namestringnullableconditionsobject[]requiredgroup_typestringnullablepropstringrequiredProperty name or cohort identifier being targeted.
min length: 1prop_typestringNamespace of the targeted property, for example user, event, or group. Omitted for conditions that target a cohort rather than a property.
nullableopstringrequiredTargeting operator applied to the property values.
isis notcontainsdoes not containlessless or equalgreatergreater or equalset isset is notset containsset does not containglob matchglob does not matchtypestringrequiredCondition type, for example property or cohort.
valuesstring[]requiredAt least one value to match against. Conditions with no values are rejected.
percentageintegerSegment rollout percentage.
nullablemin: 0max: 100rollout_weightsobjectVariant-keyed rollout weights. Values may be normalized to sum to 100 (percentages) or expressed as unnormalized relative weights (for example { "control": 1, "treatment": 1 } for an even split). Weights are non-negative and may be fractional.
bucketing_keystringnullabletestersobject[]variant_keystringrequiredvaluesstring[]requiredUser IDs, device IDs, or cohort identifiers included in this variant. At most 2000 entries per variant (the limit is 10 when the entries are cohort identifiers).
ownersstring[]tagsstring[]created_bystringnullablelast_modified_bystringnullablecreated_atstringformat: date-timenullableupdated_atstringformat: date-timenullableparent_dependenciesobjectoperatorstringrequiredallanyflagsobject[]requiredflag_idstringrequiredallowed_variantsstring[]linksobject[]urlstringrequiredformat: urititlestringrequiredversionintegerServer-managed config version used for optimistic concurrency.
archivedbooleanWhether the resource is archived. Set via the archive (DELETE) operation.
urlstringformat: urinullableobjectstringResource-type discriminator. Always feature_flag.
Was this helpful?