Skip to main content

Provision a survey

Provisioning creates or updates a Ramon survey for an opaque external survey ID. It returns the public values needed to configure the browser embed.

curl --request PUT \
"https://api.getramon.com/integrations/v1/surveys/customer-experience-2026" \
--header "Authorization: Bearer YOUR_INTEGRATION_KEY" \
--header "Content-Type: application/json" \
--data '{"name":"Customer experience survey"}'

externalSurveyId is a stable value chosen by your platform, scoped to the organization that owns the integration key. Ramon stores it as an opaque string. If one organization connects multiple systems, namespace the value in your own client, URL-encode it as a single path segment, and keep it stable for the life of the survey. The request body requires a non-empty name.

Response and idempotency

{
"data": {
"surveyId": "65c000000000000000000001",
"trackingKey": "65c000000000000000000001",
"collectorApiUrl": "https://api.getramon.com",
"embedScriptUrl": "https://embed.getramon.com/ramon.js"
}
}

Repeated calls for the same organization and external survey ID reuse the same surveyId. A changed name updates the Ramon survey without changing its ID. Store surveyId with your integration settings and use the returned public values in the browser embed.