Synchronous Record Validation
Quickly validate your payloads synchronously in development mode before you commit
records to the lake.
This method provides synchronous validation of object payloads in order to give immediate feedback about the API integration. The feature is intended to be used during the development phase only. For requests that fail validation, the API response provides the necessary details to fix the request payload. For requests that pass validation, payloads aren’t persisted downstream.
- URI
- /api/v1/ingest/sources/{name}/{object-name}/actions/test
- Available since release
- Salesforce CDP v1.0, Salesforce v51.0
- Formats
- JSON
- HTTP methods
- POST
- Authentication
- Authorization: Bearer access_token
- Request body
-
1curl --location --request POST 'https://{instance_url}/api/v1/ingest/sources/ntotest/exercises/actions/test' \ 2--header 'Authorization: Bearer {access_token}' \ 3--header 'Content-Type: application/json' \ 4--data-raw '{ 5"data": [ 6{"id": "f19cae7e-5cdb-41ce-92ba-539afea04f9d","contact_name": "Joe Smith","created_date": "2021-07-22T08:57:08.118Z","tax_exempt": false,"ship_address": "9818 Main","total": 77506,"tax_rate": 84,"modified_date": "2021-07-05T09:31:44.457Z"},{"id": "48c8b6a6-8179-4a15-ba19-ec5c8206ce28","contact_name": "Tina Smith","created_date":"2021-07-08T22:57:02.008Z","tax_exempt": false,"ship_address": "245 Main","total": 16986,"tax_rate": 61,"modified_date": "2021-07-03T06:20:52.886Z"} 7 8] 9} 10' - Request parameters
-
Parameter Description Content-Type application/json name Name of the Ingest API data connector. object-name Name of the resource type to send to Customer Data Platform. - Response body
-
1{ 2 "timestamp": "2021-08-20T16:34:26.047666Z", 3 "error": "Bad Request", 4 "message": "Bad Request: JSON is properly formatted but has a mismatch with Schema.", 5 "path": "uri=/api/v1/ingest/sources/ecomm/Orders/actions/test", 6 "tenantId": "{tenantId}", 7 "internalErrorCode": "COMMON_ERROR_GENERIC", 8 "details": { 9 "validationReport": [{ 10 "record": "{\"contact_name\":\"Joe Smith\",\"total\":77506,\"tax_exempt\":false,\"id\":\"f19cae7e-5cdb-41ce-92ba-539afea04f9d\",\"created_date\":\"2021-07-22T08:57:08.118Z\",\"ship_address\":\"9818 Main\",\"modified_date\":\"2021-07-05T09:31:44.457Z\",\"tax_rate\":84}", 11 "causingExceptions": ["#/id: expected type: Number, found: String"] 12 }, { 13 "record": "{\"contact_name\":\"Tina Smith\",\"total\":16986,\"tax_exempt\":false,\"id\":\"48c8b6a6-8179-4a15-ba19-ec5c8206ce28\",\"created_date\":\"2021-07-08T22:57:02.008Z\",\"ship_address\":\"245 Main\",\"modified_date\":\"2021-07-03T06:20:52.886Z\",\"tax_rate\":61}", 14 "causingExceptions": ["#/id: expected type: Number, found: String"] 15 }] 16 } 17}If the request body fails validation, examine the validationReport in the response body to figure out which records failed and what the reasons were for the failure.