{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"CFM Transaction APIs V3 — Developer Guide","description":"Sprinklr offers robust, convenient, and simple RESTful Web service APIs to integrate data from Sprinklr to any external system.","keywords":["Sprinklr API","Sprinklr Developer Portal","OAuth 2.0","RESTful API","Social Media API","Customer Experience API","Unified-CXM","Social Listening API"]},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"cfm-transaction-apis-v3--developer-guide","__idx":0},"children":["CFM Transaction APIs V3 — Developer Guide"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Applies to:"]}," Sprinklr Customer Feedback Management (CFM) Transaction APIs V3 (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions"]},")"]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["V2 API reference:"]}," ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://dev.sprinklr.com/cfm-transaction-apis"},"children":["CFM Transaction APIs | Sprinklr Developer Portal"]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"1-overview","__idx":1},"children":["1. Overview"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["transaction"]}," is a CFM-specific record that documents a single customer interaction at a specific moment in time — a purchase, a refund, a service visit, a support contact, or a loyalty redemption. Transactions are contained within a user profile and carry a unique set of metadata stored as key-value pairs in ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transaction Fields"]},". Because each interaction is stored independently rather than overwriting the profile, a customer who shops twice produces two transactions, and each one can drive its own survey distribution."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Transactions are grouped into ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transaction Groups"]},": a named set of transactions created in the CFM Persona App under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Audience Management → Transaction"]},". Survey workflows subscribe to one or more transaction groups, and a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Transaction Record Event"]}," workflow fires every time a new transaction is ingested into a subscribed group."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The CFM Transaction APIs V3 expose three operations on a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["single resource path"]}," — ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions"]}," — differentiated by HTTP method:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Operation"},"children":["Operation"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Method"},"children":["Method"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Path"},"children":["Path"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"operationId"},"children":["operationId"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create transactions in a group"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SurveyTransactionApiV3_createTransactions"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Fetch a transaction by ID"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions?id="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SurveyTransactionApiV3_getTransaction"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Delete a transaction"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions?id="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SurveyTransactionApiV3_deleteTransaction"]}]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["This single-path, method-differentiated shape is the central design change in V3 and matches the pattern already used by Profile V3 (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/profile"]},") and Survey Response V3."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["There is ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["no bulk list operation"]}," on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions"]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}," returns exactly one transaction, addressed by its ID. To enumerate every transaction in a group, use the Search by Entity API."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"11-the-transaction-data-model","__idx":2},"children":["1.1 The transaction data model"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transaction"]}," schema in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sprinklr-v3.yaml"]}," is the single object used both as the request array element on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," and as the response payload on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]},"."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Layer"},"children":["Layer"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Fields"},"children":["Fields"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"What it holds"},"children":["What it holds"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Identity"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["userId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["profileName"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The Sprinklr transaction ID, the profile identifier the transaction attaches to, and the display name"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Grouping"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupType"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The group the transaction lives in, and the group's ingestion type"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Distribution"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distributionChannel"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The channel the survey invitation is sent on"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Metadata"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Arbitrary key-value interaction metadata, mapped to Transaction Fields"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Lifecycle"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["isArchived"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deleted"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["canEdit"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ownerUserId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["lastModifiedUserId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["createdTime"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Ownership, audit, and state flags returned by the platform"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Access control"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["assetPermission"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Asset-level permission object"]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"12-addressing-a-transaction","__idx":3},"children":["1.2 Addressing a transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A transaction is addressed one way only: by its ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Sprinklr transaction ID"]},", returned in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].id"]}," on create — for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["6a88545dd4bb4391d3760b0b"]},". There is no alternate business key. Persist the ID returned by ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," if you intend to fetch or delete the record later."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"13-prerequisites","__idx":4},"children":["1.3 Prerequisites"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Three things must exist before the first API call succeeds."]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["CFM must be enabled in your environment."]}," Per the Sprinklr Developer Portal: ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"CFM must be enabled in your environment before you can utilize these APIs. Please contact your Success Manager for more details.\""]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["A user profile must exist for the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["userId"]},"."]}," A transaction attaches to a profile. If no profile exists for the identifier you send, create one first with the Create Profile API (see the Profile API V3 developer guide). Sprinklr's file-import path creates a profile automatically when one is absent; the supplied endpoint specification for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /surveyTransactions"]}," states the profile is a prerequisite for the API path."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["A transaction group must exist, and it must be of type ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["API"]},"."]}," Create it in the CFM Persona App under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Audience Management → Transaction → Create Transaction Group"]},". Per the Help Center: ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"If you plan to send transactions programmatically from an external system in real time, create a Transaction Group of type API, and setup the API.\""]}," Share the group with the survey projects where the workflow will run — only shared groups are selectable inside workflows. Transactions can only be created ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["inside an existing group"]},"; the API does not create groups."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"2-base-urls-and-environments","__idx":5},"children":["2. Base URLs and environments"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["All API calls are sent to the production endpoint:"]}]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"https://api3.sprinklr.com/{env}/api/v3\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["So the transaction resource in production is:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"https://api3.sprinklr.com/{env}/api/v3/surveyTransactions\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Replace ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{env}"]}," with your assigned environment identifier (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod0"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod2"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod3"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod4"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod5"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod6"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod8"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod11"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod12"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod15"]},"–",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod19"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod21"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["prod24"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["production"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["spr-uat"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["azrqa"]}," — see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://dev.sprinklr.com/apis"},"children":["APIs | Sprinklr Developer Portal"]}," for the authoritative list)."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"3-authentication-and-common-headers","__idx":6},"children":["3. Authentication and common headers"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All CFM Transaction API calls are authenticated with OAuth 2.0. See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://dev.sprinklr.com/api-overview"},"children":["API Overview"]}," for portal registration, API key and secret generation, and the Authorize flow."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Header"},"children":["Header"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Value"},"children":["Value"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Purpose"},"children":["Purpose"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required on"},"children":["Required on"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Authorization"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Bearer {{accessToken}}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Authenticates the user with the server"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["All requests"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Key"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["{{apiKey}}"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Authenticates the application with the server"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["All requests"]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Content-Type"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["application/json"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Declares the request body media type"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Accept"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["application/json"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Declares the acceptable response type"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["All requests"]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"4-create-transactions","__idx":7},"children":["4. Create transactions"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Adds one or more transactions to an existing transaction group. Each transaction represents a single interaction record for a user."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"POST /api/v3/surveyTransactions\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Request schema:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SurveyTransactionsCreateRequestDTO"]}," — ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"Create survey transactions in a transaction group.\""]}," ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"41-request-body","__idx":8},"children":["4.1 Request body"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parameter"},"children":["Parameter"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required"},"children":["Required"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The unique identifier of the transaction group in which the transactions are created. Create the transaction group in your CFM Persona App before calling this API."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transaction"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The list of transactions to be processed."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions[].userId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The identifier of the user profile the transaction attaches to — typically an email address, mobile number, or unique reference ID. A profile must already exist for this value."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions[].profileName"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The display name associated with the profile."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions[].distributionChannel"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Yes"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The channel used to distribute the survey invitation, for example ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EMAIL"]},". See ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#9-reference-values"},"children":["§9"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions[].customProperties"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Object"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Free-form interaction metadata as key-value pairs, mapped to the Transaction Fields configured for the group."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties.orderId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Example custom property — the order identifier for the interaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties.purchaseAmount"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Example custom property — the transaction amount."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties.purchaseCategory"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Example custom property — the product or service category."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["orderId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["purchaseAmount"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["purchaseCategory"]}," are ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["illustrative"]}," custom properties taken from the supplied specification. They are not fixed fields. The keys your group accepts are the Transaction Fields configured for it under ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Global Settings → Transaction Fields"]},"."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"42-example-request","__idx":9},"children":["4.2 Example request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location 'https://api3.sprinklr.com/{env}/api/v3/surveyTransactions' \\\n  --header 'Authorization: Bearer {{accessToken}}' \\\n  --header 'Key: {{apiKey}}' \\\n  --header 'Content-Type: application/json' \\\n  --header 'Accept: application/json' \\\n  --data '{\n    \"transactionGroupId\": \"68adc96c444bb074f1fd28f7\",\n    \"transactions\": [\n      {\n        \"userId\": \"jordan.rivera@example.com\",\n        \"profileName\": \"Jordan Rivera\",\n        \"distributionChannel\": \"EMAIL\",\n        \"customProperties\": {\n          \"orderId\": \"ORD-40219\",\n          \"purchaseAmount\": \"129.00\",\n          \"purchaseCategory\": \"Footwear\"\n        }\n      }\n    ]\n  }'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"43-example-response","__idx":10},"children":["4.3 Example response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"data\": [\n    {\n      \"id\": \"6a88545dd4bb4391d3760b0b\",\n      \"userId\": \"jordan.rivera@example.com\",\n      \"profileName\": \"Jordan Rivera\",\n      \"transactionGroupId\": \"68adc96c444bb074f1fd28f7\",\n      \"distributionChannel\": \"EMAIL\",\n      \"customProperties\": {},\n      \"isArchived\": false,\n      \"ownerUserId\": 66009896,\n      \"createdTime\": \"Aug 21, 2026, 01:36:29 PM\",\n      \"lastModifiedUserId\": 66009896,\n      \"deleted\": false,\n      \"canEdit\": false\n    }\n  ],\n  \"errors\": []\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Illustrative response, reproduced from the supplied specification with the user identifier replaced by a placeholder. No API call was executed to produce it."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Note that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}," is an ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["array"]}," on create — one element per transaction submitted, in request order — whereas ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]}," returns a single object. Read ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].id"]}," and persist it."]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["In the supplied sample, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]}," is returned as an empty object even though the request could carry properties, because the sample request had its properties commented out. Whether ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]}," is echoed back on create is unconfirmed."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"44-response-parameters","__idx":11},"children":["4.4 Response parameters"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parameter"},"children":["Parameter"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The list of transactions created."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].id"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The unique identifier of the created transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].userId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The profile identifier the transaction is attached to."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].profileName"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The display name associated with the profile."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].transactionGroupId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The identifier of the transaction group containing the transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].distributionChannel"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The channel used to distribute the survey invitation."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].customProperties"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Object"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The interaction metadata stored against the transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].isArchived"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Indicates whether the transaction is archived."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].ownerUserId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Long"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The Sprinklr user ID of the transaction owner."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].createdTime"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The creation timestamp of the transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].lastModifiedUserId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Long"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The Sprinklr user ID of the last user to modify the transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].deleted"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Indicates whether the transaction is deleted."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data[].canEdit"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Boolean"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Indicates whether the caller can edit the transaction."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The list of errors. Empty on success."]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"5-fetch-a-transaction","__idx":12},"children":["5. Fetch a transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Retrieves detailed information about a specific transaction using its unique transaction ID. Use it to validate and review transaction attributes, including user details, distribution channel, and status."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"GET /api/v3/surveyTransactions?id={transactionId}\n"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Response schema:"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transaction"]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"51-request-parameters","__idx":13},"children":["5.1 Request parameters"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parameter"},"children":["Parameter"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"In"},"children":["In"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required (spec)"},"children":["Required (spec)"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["required: false"]}," in the OpenAPI specification; ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required"]}," in the supplied endpoint specification"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The unique identifier of the survey transaction to retrieve."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"52-example-request","__idx":14},"children":["5.2 Example request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --location 'https://api3.sprinklr.com/{env}/api/v3/surveyTransactions?id=6a8c446a69baf80612fb63f7' \\\n  --header 'Authorization: Bearer {{accessToken}}' \\\n  --header 'Key: {{apiKey}}' \\\n  --header 'Accept: application/json'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"53-example-response","__idx":15},"children":["5.3 Example response"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"json","header":{"controls":{"copy":{}}},"source":"{\n  \"data\": {\n    \"id\": \"6a8c446a69baf80612fb63f7\",\n    \"userId\": \"jordan.rivera@example.com\",\n    \"profileName\": \"Jordan Rivera\",\n    \"transactionGroupId\": \"68adc96c444bb074f1fd28f7\",\n    \"distributionChannel\": \"EMAIL\",\n    \"customProperties\": {},\n    \"isArchived\": false,\n    \"ownerUserId\": 66009896,\n    \"createdTime\": \"Aug 24, 2026, 01:17:30 PM\",\n    \"lastModifiedUserId\": 66009896,\n    \"deleted\": false,\n    \"canEdit\": false\n  },\n  \"errors\": []\n}\n","lang":"json"},"children":[]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"em","attributes":{},"children":["Illustrative response, reproduced from the supplied specification with the user identifier replaced by a placeholder."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The response parameters are identical to those in ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"#44-response-parameters"},"children":["§4.4"]},", except that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}," is a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["single object"]}," rather than an array."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"54-listing-all-transactions-in-a-group","__idx":16},"children":["5.4 Listing all transactions in a group"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["There is no bulk-list operation on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/api/v3/surveyTransactions"]},". To fetch ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["all"]}," transactions in a transaction group:"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Call the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Search by Entity API"]}," with ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["TRANSACTION"]}," as the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["entityType"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]}," in the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["filters"]}," object."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Read the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cursor"]}," returned in the response."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Pass that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["cursor"]}," to the ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Search by Cursor API"]}," to retrieve the next page, and repeat until the cursor is exhausted."]}]},{"$$mdtype":"Tag","name":"blockquote","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Specification gap."]}," The supplied specification names these two APIs but does not give their paths, request schemas, or the exact ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["filters"]}," syntax for ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]},". The guide cannot document the call without inventing it."]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"6-delete-a-transaction","__idx":17},"children":["6. Delete a transaction"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Deletes a specific transaction using its unique transaction ID."]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"header":{"controls":{"copy":{}}},"source":"DELETE /api/v3/surveyTransactions?id={transactionId}\n"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"61-request-parameters","__idx":18},"children":["6.1 Request parameters"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parameter"},"children":["Parameter"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"In"},"children":["In"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Required (spec)"},"children":["Required (spec)"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["required: false"]}," in the OpenAPI specification; ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Required"]}," in the supplied endpoint specification"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The unique identifier of the survey transaction to delete."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["query"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Undocumented"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Appears in the supplied cURL sample only. Not declared in the OpenAPI specification and not present in any parameter table."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"62-example-request","__idx":19},"children":["6.2 Example request"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"bash","header":{"controls":{"copy":{}}},"source":"curl --request DELETE 'https://api3.sprinklr.com/{env}/api/v3/surveyTransactions?id=6a5e22a5155ab63b8b142d7c' \\\n  --header 'Authorization: Bearer {{accessToken}}' \\\n  --header 'Key: {{apiKey}}' \\\n  --header 'Accept: application/json'\n","lang":"bash"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"63-example-response","__idx":20},"children":["6.3 Example response"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The three sources disagree on what ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE"]}," returns."]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Source"},"children":["Source"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Declared response"},"children":["Declared response"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sprinklr-v3.yaml"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["200 Success"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["application/json"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["schema: {type: string}"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Supplied specification — \"Example Response\""]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["HTTP/1.1 204 (No Content)"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Supplied specification — parameter table"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["A JSON envelope: ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}," (String) ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"Indicates whether the survey transaction was successfully deleted\""]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors"]}," (Array)"]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Documented on the assumption the envelope form is correct:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Parameter"},"children":["Parameter"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["String"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Indicates whether the survey transaction was successfully deleted."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The list of errors. Empty on success."]}]}]}]}]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"7-response-format-and-status-codes","__idx":21},"children":["7. Response format and status codes"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"71-the-response-envelope","__idx":22},"children":["7.1 The response envelope"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["All CFM Transaction V3 responses use the standard ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["APIResponse"]}," envelope declared in `sprinklr-v3:"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Object or Array"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The operation payload. An ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["array"]}," of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transaction"]}," on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]},"; a ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["single"]}," ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Transaction"]}," on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET"]},"; a String on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE"]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Array of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Error"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The list of errors. Empty on success."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["metadata"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["ResponseMetadata"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Response metadata."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"72-status-codes","__idx":23},"children":["7.2 Status codes"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Code"},"children":["Code"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Typical cause"},"children":["Typical cause"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["200"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Success"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The request was processed. Inspect ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors"]}," before assuming a complete success on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]},"."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["400"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Bad Request"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Malformed JSON, a missing required field (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactions"]},"), a missing ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["userId"]}," or ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distributionChannel"]},", or an unrecognised ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]}," key."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["401"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Unauthorized"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Missing, expired, or invalid ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Authorization"]}," token."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["403"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Forbidden"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["The caller lacks permission on the transaction group, the group is not shared with the caller, or CFM is not enabled for the environment."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["404"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Not Found"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["No transaction exists for the supplied ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]},", or the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupId"]}," does not exist."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"73-error-object","__idx":24},"children":["7.3 Error object"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Field"},"children":["Field"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Type"},"children":["Type"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Description"},"children":["Description"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors[]"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Error"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Error entries returned alongside or instead of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]},"."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Because ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," accepts an array, a partial failure is possible in principle — some transactions created, others rejected. No supplied source states whether the operation is atomic per request or per element, or how a partial failure is signalled in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["errors"]},"."]},{"$$mdtype":"Tag","name":"hr","attributes":{},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"8-migrating-from-v2","__idx":25},"children":["8. Migrating from V2"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"81-endpoint-mapping","__idx":26},"children":["8.1 Endpoint mapping"]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"V2 operation"},"children":["V2 operation"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"V3 equivalent"},"children":["V3 equivalent"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Notes"},"children":["Notes"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Create CFM transactions"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /api/v3/surveyTransactions"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Body schema ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["SurveyTransactionsCreateRequestDTO"]},". ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}," is returned as an array."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Fetch CFM transaction"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/v3/surveyTransactions?id="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Single transaction only. No bulk fetch."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Delete CFM transaction"]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE /api/v3/surveyTransactions?id="]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Response shape unsettled."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The structural change is the same one applied across the V3 programme: ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["one resource path, three HTTP methods"]},", replacing three separately-named V2 endpoints. Routing, retry, and observability code that keys on the path must now key on the method as well."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"9-reference-values","__idx":27},"children":["9. Reference values"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"91-distributionchannel","__idx":28},"children":["9.1 ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distributionChannel"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Value"},"children":["Value"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["EMAIL"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Survey invitation distributed by email."]}]}]}]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":3,"id":"92-transactiongrouptype","__idx":29},"children":["9.2 ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupType"]}]},{"$$mdtype":"Tag","name":"div","attributes":{"className":"md-table-wrapper"},"children":[{"$$mdtype":"Tag","name":"table","attributes":{"className":"md"},"children":[{"$$mdtype":"Tag","name":"thead","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Value"},"children":["Value"]},{"$$mdtype":"Tag","name":"th","attributes":{"data-label":"Meaning"},"children":["Meaning"]}]}]},{"$$mdtype":"Tag","name":"tbody","attributes":{},"children":[{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["API"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Transactions are pushed programmatically from an external system. ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["This is the type required for the Create Transactions API."]}]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["UDC"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Transactions are ingested by the Unified Data Connector (SFTP, Amazon S3, GCS, Azure Blob)."]}]},{"$$mdtype":"Tag","name":"tr","attributes":{},"children":[{"$$mdtype":"Tag","name":"td","attributes":{},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["Import"]}]},{"$$mdtype":"Tag","name":"td","attributes":{},"children":["Transactions are loaded by one-time Excel or CSV file import."]}]}]}]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Source: Help Center — ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"Workflows accept three types of transaction groups: Unified Data Connector (UDC), API, and Import.\""]}," The exact string tokens the API returns in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["transactionGroupType"]}," are not declared in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["sprinklr-v3.yaml"]}," (unconstrained ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["type: string"]},") and do not appear in any response sample."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"10-use-cases","__idx":30},"children":["10. Use cases"]},{"$$mdtype":"Tag","name":"ol","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Post-purchase feedback from an e-commerce platform."]}," On order confirmation, ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]}," a transaction carrying ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["orderId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["purchaseAmount"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["purchaseCategory"]}," into an API-type transaction group. A Transaction Record Event workflow subscribed to that group fires and triggers a personalized survey distribution on the channel in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distributionChannel"]},"."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Refund and service-recovery surveys."]}," Push a transaction whenever a refund is processed, tagged with the refund reason in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]},". A workflow decision node branches on the reason and routes high-value refunds to a longer service-recovery survey."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Post-support-interaction surveys."]}," After a support ticket closes, create a transaction carrying ticket status, interaction date, and issue type. Per the Help Center, this lets surveys be ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"dynamically tailored based on the nature of the support interaction, such as a technical issue or an account query.\""]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Multiple surveys for the same customer across separate events."]}," A customer shops at two locations on different days. Create one transaction per visit. Because each transaction is stored independently rather than overwriting the profile, both events survive and each can drive its own targeted survey — the outcome that is impossible with profile fields alone."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Loyalty programme engagement."]}," Create a transaction on each loyalty redemption. A workflow filters on the redemption tier in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]}," and sends a survey focused on the specific benefits the member received."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Service-visit follow-up for field operations."]}," After a technician closes a visit, push a transaction with the visit type and location so the follow-up survey question set matches the work performed."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Pre-flight validation of an ingestion pipeline."]}," After a batch ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST"]},", call ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET ?id="]}," for a sample of returned IDs and assert that ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["userId"]},", ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["distributionChannel"]},", and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["customProperties"]}," match what was sent. This is the documented purpose of the fetch endpoint — ",{"$$mdtype":"Tag","name":"em","attributes":{},"children":["\"validate and review transaction attributes.\""]}]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Correcting a mis-ingested record."]}," A transaction created with a wrong ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["userId"]}," or an incorrect channel would otherwise trigger a survey to the wrong recipient. ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE"]}," it by ID and re-create it correctly. There is no update operation on ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["/surveyTransactions"]}," — correction is delete-and-recreate."]}]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Data-subject erasure requests."]}," When a customer requests deletion of their interaction history, enumerate their transactions via the Search by Entity API and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["DELETE"]}," each by ID. Confirm with the API owner whether this is a hard or soft delete before relying on it for a compliance workflow."]}]}]}]},"headings":[{"value":"CFM Transaction APIs V3 — Developer Guide","id":"cfm-transaction-apis-v3--developer-guide","depth":1},{"value":"1. Overview","id":"1-overview","depth":2},{"value":"1.1 The transaction data model","id":"11-the-transaction-data-model","depth":3},{"value":"1.2 Addressing a transaction","id":"12-addressing-a-transaction","depth":3},{"value":"1.3 Prerequisites","id":"13-prerequisites","depth":3},{"value":"2. Base URLs and environments","id":"2-base-urls-and-environments","depth":2},{"value":"3. Authentication and common headers","id":"3-authentication-and-common-headers","depth":2},{"value":"4. Create transactions","id":"4-create-transactions","depth":2},{"value":"4.1 Request body","id":"41-request-body","depth":3},{"value":"4.2 Example request","id":"42-example-request","depth":3},{"value":"4.3 Example response","id":"43-example-response","depth":3},{"value":"4.4 Response parameters","id":"44-response-parameters","depth":3},{"value":"5. Fetch a transaction","id":"5-fetch-a-transaction","depth":2},{"value":"5.1 Request parameters","id":"51-request-parameters","depth":3},{"value":"5.2 Example request","id":"52-example-request","depth":3},{"value":"5.3 Example response","id":"53-example-response","depth":3},{"value":"5.4 Listing all transactions in a group","id":"54-listing-all-transactions-in-a-group","depth":3},{"value":"6. Delete a transaction","id":"6-delete-a-transaction","depth":2},{"value":"6.1 Request parameters","id":"61-request-parameters","depth":3},{"value":"6.2 Example request","id":"62-example-request","depth":3},{"value":"6.3 Example response","id":"63-example-response","depth":3},{"value":"7. Response format and status codes","id":"7-response-format-and-status-codes","depth":2},{"value":"7.1 The response envelope","id":"71-the-response-envelope","depth":3},{"value":"7.2 Status codes","id":"72-status-codes","depth":3},{"value":"7.3 Error object","id":"73-error-object","depth":3},{"value":"8. Migrating from V2","id":"8-migrating-from-v2","depth":2},{"value":"8.1 Endpoint mapping","id":"81-endpoint-mapping","depth":3},{"value":"9. Reference values","id":"9-reference-values","depth":2},{"value":"9.1 distributionChannel","id":"91-distributionchannel","depth":3},{"value":"9.2 transactionGroupType","id":"92-transactiongrouptype","depth":3},{"value":"10. Use cases","id":"10-use-cases","depth":2}],"frontmatter":{"seo":{"title":"CFM Transaction APIs V3 — Developer Guide"}},"lastModified":"2026-10-23T07:43:19.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/developer-guides-v3/cfm-transaction-api-v3-developer-guide","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}