Operations (sample payloads)

Main operations
Copy

Batch create records
Copy

Create a batch of new records in Salesforce. (Max 200).

Sample Input

1
{
2
"object": "Account",
3
"batch_create_list": [
4
[
5
{
6
"key": "Name",
7
"value": "Acme Corporation"
8
},
9
{
10
"key": "Industry",
11
"value": "Technology"
12
},
13
{
14
"key": "AnnualRevenue",
15
"value": 5000000
16
}
17
],
18
[
19
{
20
"key": "Name",
21
"value": "Global Enterprises"
22
},
23
{
24
"key": "Industry",
25
"value": "Manufacturing"
26
},
27
{
28
"key": "AnnualRevenue",
29
"value": 10000000
30
}
31
]
32
],
33
"error_handling": "rollback_fail"
34
}

Sample Output

1
{
2
"hasErrors": false,
3
"results": [
4
{
5
"id": "001XXXXXXXXXXXXXXX",
6
"success": true,
7
"errors": []
8
},
9
{
10
"id": "001YYYYYYYYYYYYYYY",
11
"success": true,
12
"errors": []
13
}
14
]
15
}

Batch delete records
Copy

Delete a batch of records in Salesforce. (Max 200).

Sample Input

1
{
2
"object": "Lead",
3
"batch_delete_list": [
4
"00Q1234567890ABC",
5
"00Q2345678901DEF",
6
"00Q3456789012GHI"
7
],
8
"error_handling": "rollback_fail"
9
}

Sample Output

1
{
2
"hasErrors": false,
3
"results": [
4
{
5
"id": "00Q1234567890ABC",
6
"success": true,
7
"errors": []
8
},
9
{
10
"id": "00Q2345678901DEF",
11
"success": true,
12
"errors": []
13
},
14
{
15
"id": "00Q3456789012GHI",
16
"success": true,
17
"errors": []
18
}
19
]
20
}

Batch update records
Copy

Update a batch of records in Salesforce. (Max 200).

Sample Input

1
{
2
"object": "Account",
3
"batch_update_list": [
4
{
5
"object_id": "0015000000ABC123",
6
"fields": [
7
{
8
"key": "Name",
9
"value": "Updated Account Name"
10
},
11
{
12
"key": "Industry",
13
"value": "Technology"
14
}
15
]
16
},
17
{
18
"object_id": "0015000000XYZ789",
19
"fields": [
20
{
21
"key": "NumberOfEmployees",
22
"value": 500
23
},
24
{
25
"key": "AnnualRevenue",
26
"value": 10000000
27
}
28
]
29
}
30
],
31
"error_handling": "rollback_fail",
32
"enable_assignment_rules": "false"
33
}

Sample Output

1
{
2
"hasErrors": false,
3
"results": [
4
{
5
"id": "0015000000ABC123",
6
"success": true,
7
"errors": []
8
},
9
{
10
"id": "0015000000XYZ789",
11
"success": true,
12
"errors": []
13
}
14
]
15
}

Bulk update records
Copy

Bulk update records using the Salesforce Bulk API. Record data should be in CSV format.

Sample Input

1
{
2
"object": "Account",
3
"csv_file": {
4
"content": "Id,Name,BillingStreet,BillingCity,BillingState,BillingPostalCode,BillingCountry\n001XXXXXXXXXXXXXXX,Acme Corp,123 Main St,San Francisco,CA,94105,USA\n001YYYYYYYYYYYYYYY,Global Tech,456 Market St,New York,NY,10001,USA\n001ZZZZZZZZZZZZZZZ,Euro Innovations,789 Oxford St,London,,W1D 2HG,UK"
5
},
6
"ext_field_name": "Id",
7
"delimiter": "COMMA",
8
"line_end": "LF"
9
}

Sample Output

1
{
2
"id": "751XXXXXXXXXXXXXXX",
3
"operation": "update",
4
"object": "Account",
5
"createdById": "005XXXXXXXXXXXXXXX",
6
"createdDate": "2023-06-15T14:30:45.000+0000",
7
"systemModstamp": "2023-06-15T14:30:45.000+0000",
8
"state": "Completed",
9
"concurrencyMode": "Parallel",
10
"contentType": "CSV",
11
"apiVersion": 57
12
}

Bulk upsert records
Copy

Bulk upsert records using the Salesforce Bulk API. Record data should be in CSV format

Sample Input

1
{
2
"object": "Contact",
3
"csv_file": {
4
"content": "FirstName,LastName,Email,Phone,ExternalId__c\nJohn,Doe,john.doe@example.com,+1234567890,EXT001\nJane,Smith,jane.smith@example.com,+1987654321,EXT002\n"
5
},
6
"ext_field_name": "ExternalId__c",
7
"delimiter": "COMMA",
8
"line_end": "LF"
9
}

Sample Output

1
{
2
"id": "7502E000000cXXXQAM",
3
"operation": "upsert",
4
"object": "Contact",
5
"createdById": "0052E00000GkMXXQAZ",
6
"createdDate": "2023-04-15T10:30:45.000Z",
7
"systemModstamp": "2023-04-15T10:30:45.000Z",
8
"state": "Completed",
9
"externalIdFieldName": "ExternalId__c",
10
"concurrencyMode": "Parallel",
11
"contentType": "CSV",
12
"apiVersion": 57
13
}

Convert Lead
Copy

Convert a lead into an account, contact and/or opportunity

Sample Input

1
{
2
"id": "00Q1234567890ABCDE",
3
"status": "Converted",
4
"opportunity": {
5
"opportunity_name": "New Business Opportunity"
6
},
7
"account_id": "0011234567890ABCDE",
8
"contact_id": "0031234567890ABCDE",
9
"owner_id": "0051234567890ABCDE",
10
"do_not_create_opportunity": false,
11
"send_notification": true,
12
"overwrite_lead_source": false
13
}

Sample Output

1
{
2
"result": {
3
"accountId": "0011234567890ABCDE",
4
"contactId": "0031234567890ABCDE",
5
"leadId": "00Q1234567890ABCDE",
6
"opportunityId": "0061234567890ABCDE",
7
"success": "true"
8
}
9
}

Count records
Copy

Count the number of records that match a given set of conditions.

Sample Input

1
{
2
"object": "Lead",
3
"conditions": [
4
{
5
"field": "Industry",
6
"operator": "Equal to",
7
"value": "Technology"
8
},
9
{
10
"field": "AnnualRevenue",
11
"operator": "Greater than",
12
"value": 1000000
13
}
14
],
15
"conditions_type": "Match all conditions"
16
}

Sample Output

1
{
2
"count": 42
3
}

Create amendment quote
Copy

Create an amendment quote for a contract.

Sample Input

1
{
2
"salesforce_contract_id": "8001a000001abcDAAQ"
3
}

Sample Output

1
{
2
"ui_original_record": {
3
"cloneRecordIfNoCache": true,
4
"cacheName": "AmendmentQuote",
5
"cacheId": "8001a000001abcDAAQ",
6
"cachedOriginalRecordPath": [
7
"record"
8
]
9
},
10
"record": {
11
"attributes": {
12
"type": "SBQQ__Quote__c",
13
"url": "/services/data/v53.0/sobjects/SBQQ__Quote__c/0Q01a000001XyZCAA0"
14
},
15
"Id": "0Q01a000001XyZCAA0",
16
"Name": "Q-00001234",
17
"SBQQ__Type__c": "Amendment",
18
"SBQQ__Account__c": "0011a00000ABCdEFGH",
19
"SBQQ__ExpirationDate__c": "2023-12-31",
20
"SBQQ__StartDate__c": "2023-07-01",
21
"SBQQ__EndDate__c": "2024-06-30",
22
"SBQQ__MasterContract__c": "8001a000001abcDAAQ",
23
"SBQQ__NetAmount__c": 15000,
24
"SBQQ__CustomerAmount__c": 15000,
25
"SBQQ__ContractingMethod__c": "By Subscription End Date",
26
"SBQQ__Unopened__c": true,
27
"SBQQ__LineItemCount__c": 2,
28
"SBQQ__PaymentTerms__c": "Net 30",
29
"SBQQ__WatermarkShown__c": false,
30
"SBQQ__Status__c": "Draft",
31
"SBQQ__Primary__c": true,
32
"SBQQ__LineItemsGrouped__c": false,
33
"SBQQ__Opportunity2__c": "0061a00000ABCdEFGH",
34
"SBQQ__Account__r": {
35
"attributes": {
36
"type": "Account",
37
"url": "/services/data/v53.0/sobjects/Account/0011a00000ABCdEFGH"
38
},
39
"Id": "0011a00000ABCdEFGH",
40
"Name": "Acme Corp",
41
"SBQQ__RenewalModel__c": "Contract Based",
42
"SBQQ__RenewalPricingMethod__c": "Same"
43
},
44
"SBQQ__MasterContract__r": {
45
"attributes": {
46
"type": "Contract",
47
"url": "/services/data/v53.0/sobjects/Contract/8001a000001abcDAAQ"
48
},
49
"Id": "8001a000001abcDAAQ",
50
"ContractNumber": "00001234"
51
},
52
"SBQQ__Opportunity2__r": {
53
"attributes": {
54
"type": "Opportunity",
55
"url": "/services/data/v53.0/sobjects/Opportunity/0061a00000ABCdEFGH"
56
},
57
"Id": "0061a00000ABCdEFGH",
58
"SBQQ__PrimaryQuote__c": "0Q01a000001XyZCAA0",
59
"AccountId": "0011a00000ABCdEFGH"
60
},
61
"SBQQ__CustomerDiscount__c": "0",
62
"SBQQ__MarkupRate__c": "0",
63
"SBQQ__PartnerDiscount__c": "0",
64
"SBQQ__SubscriptionTerm__c": "12",
65
"SBQQ__BillingFrequency__c": "Annual",
66
"SBQQ__RenewalTerm__c": "12",
67
"SBQQ__RenewalUpliftRate__c": "3"
68
},
69
"nextKey": 1,
70
"netTotal": 15000,
71
"lineItems": [
72
{
73
"record": {
74
"attributes": {
75
"type": "SBQQ__QuoteLine__c",
76
"url": "/services/data/v53.0/sobjects/SBQQ__QuoteLine__c/0QL1a000001XyZCAA0"
77
},
78
"Id": "0QL1a000001XyZCAA0"
79
}
80
}
81
],
82
"lineItemGroups": [],
83
"isPartial": false,
84
"hasMultiSegmentLines": false,
85
"customerTotal": 15000,
86
"channelDiscountsOffList": false,
87
"calculationRequired": true,
88
"applyPartnerDiscountFirst": false,
89
"applyAdditionalDiscountLast": false
90
}

Create custom field
Copy

Create custom field metadata. Single or multiple fields can be created.

Sample Input

1
{
2
"custom_fields": [
3
{
4
"full_name": "Account.CustomerPriority__c",
5
"custom_field_parameters": [
6
{
7
"key": "type",
8
"value": "Picklist"
9
},
10
{
11
"key": "label",
12
"value": "Customer Priority"
13
},
14
{
15
"key": "description",
16
"value": "Priority level of the customer"
17
}
18
],
19
"value_set": {
20
"sorted": true,
21
"value": [
22
{
23
"full_name": "High",
24
"default": false,
25
"label": "High"
26
},
27
{
28
"full_name": "Medium",
29
"default": true,
30
"label": "Medium"
31
},
32
{
33
"full_name": "Low",
34
"default": false,
35
"label": "Low"
36
}
37
],
38
"value_set_parameters": [
39
{
40
"key": "restricted",
41
"value": "true"
42
}
43
]
44
}
45
},
46
{
47
"full_name": "Account.LastContactDate__c",
48
"custom_field_parameters": [
49
{
50
"key": "type",
51
"value": "Date"
52
},
53
{
54
"key": "label",
55
"value": "Last Contact Date"
56
},
57
{
58
"key": "description",
59
"value": "Date of last contact with the customer"
60
}
61
]
62
}
63
]
64
}

Sample Output

1
{
2
"result": [
3
{
4
"fullName": "Account.CustomerPriority__c",
5
"success": true
6
},
7
{
8
"fullName": "Account.LastContactDate__c",
9
"success": true
10
}
11
]
12
}

Create query job
Copy

Creates a query job.

Sample Input

1
{
2
"operation": "query",
3
"query": "SELECT Id, Name, Email FROM Lead WHERE CreatedDate = LAST_WEEK",
4
"content_type": "CSV",
5
"column_delimiter": "COMMA",
6
"line_ending": "LF"
7
}

Sample Output

1
{
2
"id": "7502E000004ULxeQAG",
3
"operation": "query",
4
"object": "Lead",
5
"createdById": "0052E00000GHI9kQAH",
6
"createdDate": "2023-06-15T14:32:09.000+0000",
7
"systemModstamp": "2023-06-15T14:32:09.000+0000",
8
"state": "UploadComplete",
9
"concurrencyMode": "Parallel",
10
"contentType": "CSV",
11
"apiVersion": 57,
12
"lineEnding": "LF",
13
"columnDelimiter": "COMMA"
14
}

Create record
Copy

Create a new record in Salesforce.

Sample Input

1
{
2
"object": "Lead",
3
"fields": [
4
{
5
"key": "FirstName",
6
"value": "John"
7
},
8
{
9
"key": "LastName",
10
"value": "Doe"
11
},
12
{
13
"key": "Company",
14
"value": "Acme Corp"
15
},
16
{
17
"key": "Email",
18
"value": "john.doe@example.com"
19
},
20
{
21
"key": "Phone",
22
"value": "555-123-4567"
23
}
24
],
25
"enable_assignment_rules": "true"
26
}

Sample Output

1
{
2
"id": "00Q1a000001XYZaBC",
3
"success": true,
4
"errors": []
5
}

Create/update record
Copy

Create a record if a record with the "lookup value" doesn't already exist. Update it if it does exist.

Sample Input

1
{
2
"object": "Lead",
3
"lookup_field": "Email",
4
"lookup_value": "john.doe@example.com",
5
"fields": [
6
{
7
"key": "FirstName",
8
"value": "John"
9
},
10
{
11
"key": "LastName",
12
"value": "Doe"
13
},
14
{
15
"key": "Company",
16
"value": "Acme Corp"
17
},
18
{
19
"key": "Phone",
20
"value": "555-123-4567"
21
}
22
],
23
"enable_assignment_rules": "true"
24
}

Sample Output

1
{
2
"id": "00Q1a000001XYZaBC",
3
"success": true,
4
"created": false
5
}

Create/update record using ID
Copy

Create a record if a record with the 'lookup value' doesn't already exist. Update it if it does exist. If there is no external ID to reference, insert a new record using ID as the External ID.

Sample Input

1
{
2
"object": "Account",
3
"lookup_field": "AccountNumber",
4
"lookup_value": "ACC123456",
5
"fields": [
6
{
7
"key": "Name",
8
"value": "Acme Corporation"
9
},
10
{
11
"key": "Industry",
12
"value": "Technology"
13
},
14
{
15
"key": "AnnualRevenue",
16
"value": 5000000
17
},
18
{
19
"key": "NumberOfEmployees",
20
"value": 250
21
},
22
{
23
"key": "Website",
24
"value": "https://www.acmecorp.com"
25
}
26
]
27
}

Sample Output

1
{
2
"id": "001A000001XYZ123",
3
"success": true,
4
"created": false
5
}

Delete custom field
Copy

Delete custom field metadata. Single or multiple fields can be deleted in a single operation.

Sample Input

1
{
2
"custom_field_names": [
3
"Account.CustomRevenue__c",
4
"Contact.LoyaltyScore__c",
5
"Opportunity.ProjectedROI__c"
6
]
7
}

Sample Output

1
{
2
"result": [
3
{
4
"fullName": "Account.CustomRevenue__c",
5
"success": true
6
},
7
{
8
"fullName": "Contact.LoyaltyScore__c",
9
"success": true
10
},
11
{
12
"fullName": "Opportunity.ProjectedROI__c",
13
"success": false
14
}
15
]
16
}

Delete query job
Copy

Deletes a query job.

Sample Input

1
{
2
"query_job_id": "7015f000002WBgAAM"
3
}

Sample Output

1
{
2
"success": true
3
}

Delete record
Copy

Delete a record in Salesforce, using it's unique object id.

Sample Input

1
{
2
"object": "Account",
3
"object_id": "001A000001KnJbIIAV"
4
}

Sample Output

1
{
2
"success": true
3
}

Describe object (advanced)
Copy

Describes the raw structure of an object in Salesforce.

Sample Input

1
{
2
"object": "Account"
3
}

Sample Output

1
{
2
"activateable": false,
3
"createable": true,
4
"custom": false,
5
"customSetting": false,
6
"deletable": true,
7
"deprecatedAndHidden": false,
8
"feedEnabled": true,
9
"hasSubtypes": false,
10
"isSubtype": false,
11
"keyPrefix": "001",
12
"label": "Account",
13
"labelPlural": "Accounts",
14
"layoutable": true,
15
"mergeable": true,
16
"mruEnabled": true,
17
"name": "Account",
18
"queryable": true,
19
"replicateable": true,
20
"retrieveable": true,
21
"searchable": true,
22
"triggerable": true,
23
"undeletable": true,
24
"updateable": true,
25
"fields": [
26
{
27
"name": "Name",
28
"type": "string",
29
"label": "Account Name",
30
"length": 255,
31
"createable": true,
32
"updateable": true,
33
"nillable": false,
34
"defaultedOnCreate": false,
35
"custom": false,
36
"calculated": false,
37
"externalId": false,
38
"filterable": true,
39
"groupable": true,
40
"sortable": true
41
},
42
{
43
"name": "Type",
44
"type": "picklist",
45
"label": "Account Type",
46
"createable": true,
47
"updateable": true,
48
"nillable": true,
49
"defaultedOnCreate": false,
50
"custom": false,
51
"calculated": false,
52
"externalId": false,
53
"filterable": true,
54
"groupable": true,
55
"sortable": true,
56
"picklistValues": [
57
{
58
"active": true,
59
"defaultValue": false,
60
"label": "Prospect",
61
"value": "Prospect"
62
},
63
{
64
"active": true,
65
"defaultValue": false,
66
"label": "Customer",
67
"value": "Customer"
68
}
69
]
70
}
71
],
72
"childRelationships": [
73
{
74
"cascadeDelete": true,
75
"childSObject": "Contact",
76
"field": "AccountId",
77
"relationshipName": "Contacts"
78
}
79
],
80
"recordTypeInfos": [
81
{
82
"active": true,
83
"available": true,
84
"defaultRecordTypeMapping": true,
85
"master": true,
86
"name": "Master",
87
"recordTypeId": "012000000000000AAA"
88
}
89
],
90
"urls": {
91
"compactLayouts": "/services/data/v53.0/sobjects/Account/describe/compactLayouts",
92
"rowTemplate": "/services/data/v53.0/sobjects/Account/{ID}",
93
"approvalLayouts": "/services/data/v53.0/sobjects/Account/describe/approvalLayouts",
94
"uiDetailTemplate": "https://na1.salesforce.com/{ID}",
95
"uiEditTemplate": "https://na1.salesforce.com/{ID}/e",
96
"describe": "/services/data/v53.0/sobjects/Account/describe",
97
"layouts": "/services/data/v53.0/sobjects/Account/describe/layouts",
98
"sobject": "/services/data/v53.0/sobjects/Account"
99
}
100
}

Download attachment
Copy

Downloads a file attachment from Salesforce, for use in other connectors.

Sample Input

1
{
2
"attachment_id": "00P1a000001Wy3YEAS"
3
}

Sample Output

1
{
2
"file": {
3
"name": "sales_report_q2.pdf",
4
"url": "https://instance.salesforce.com/services/data/v53.0/sobjects/Attachment/00P1a000001Wy3YEAS/Body",
5
"mime_type": "application/pdf",
6
"expires": 1623456789
7
}
8
}

Download file
Copy

Downloads a file from Salesforce.

Sample Input

1
{
2
"content_version_id": "068R00000000001AAA"
3
}

Sample Output

1
{
2
"file": {
3
"name": "Sales_Report_Q2_2023.pdf",
4
"url": "https://instance.salesforce.com/services/data/v53.0/sobjects/ContentVersion/068R00000000001AAA/VersionData",
5
"mime_type": "application/pdf",
6
"expires": 1623456789
7
}
8
}

Execute report async
Copy

Runs an instance of a report asynchronously with or without filters.

Sample Input

1
{
2
"report_id": "00O1a2b3c4d5e6f7g8",
3
"has_detail_rows": true,
4
"has_record_count": true,
5
"show_grand_total": true,
6
"show_subtotals": true,
7
"report_filters": [
8
{
9
"field_value": {
10
"column": "Amount",
11
"operator": "greaterThan",
12
"value": "10000",
13
"is_run_page_editable": true
14
}
15
}
16
],
17
"sort_by": {
18
"sort_column": "CloseDate",
19
"sort_order": "Desc"
20
},
21
"standard_date_filter": {
22
"column": "CloseDate",
23
"start_date": "2023-01-01T00:00:00Z",
24
"end_date": "2023-12-31T23:59:59Z"
25
}
26
}

Sample Output

1
{
2
"completionDate": "2023-05-15T14:30:45Z",
3
"hasDetailRows": true,
4
"id": "0691a2b3c4d5e6f7g8",
5
"ownerId": "0051a2b3c4d5e6f7g8",
6
"queryable": true,
7
"requestDate": "2023-05-15T14:30:15Z",
8
"status": "Success",
9
"url": "/services/data/v53.0/analytics/reports/0691a2b3c4d5e6f7g8"
10
}

Execute report query
Copy

Returns report data without saving changes to an existing report or creating a new one.

Sample Input

1
{
2
"report_type": "OpportunityReport",
3
"name": "Sales Pipeline Report",
4
"developer_name": "Sales_Pipeline_Report",
5
"folder_id": "00lxx000000abcdEAA",
6
"has_detail_rows": true,
7
"has_record_count": true,
8
"show_grand_total": true,
9
"show_subtotals": true,
10
"currency": "USD",
11
"detail_columns": [
12
"Name",
13
"Amount",
14
"StageName",
15
"CloseDate",
16
"AccountName"
17
],
18
"aggregates": [
19
"RowCount",
20
"Amount"
21
],
22
"report_filters": [
23
{
24
"field_value": {
25
"column": "StageName",
26
"operator": "notEqual",
27
"value": "Closed Won",
28
"is_run_page_editable": true
29
}
30
},
31
{
32
"field_value": {
33
"column": "Amount",
34
"operator": "greaterThan",
35
"value": "10000",
36
"is_run_page_editable": true
37
}
38
}
39
],
40
"report_boolean_filter": "1 AND 2",
41
"scope": "everything",
42
"sort_by": {
43
"sort_column": "Amount",
44
"sort_order": "Desc"
45
},
46
"groupings_down": [
47
{
48
"name": "StageName",
49
"sort_order": "Asc"
50
}
51
],
52
"standard_date_filter": {
53
"column": "CloseDate",
54
"start_date": "2023-01-01T00:00:00Z",
55
"end_date": "2023-12-31T23:59:59Z"
56
}
57
}

Sample Output

1
{
2
"attributes": {
3
"describeUrl": "/services/data/v53.0/analytics/reports/00Oxx0000012345AAA/describe",
4
"instancesUrl": "/services/data/v53.0/analytics/reports/00Oxx0000012345AAA/instances",
5
"reportId": "00Oxx0000012345AAA",
6
"reportName": "Sales Pipeline Report",
7
"type": "Report"
8
},
9
"allData": true,
10
"factMap": {
11
"T!T": {
12
"aggregates": [
13
{
14
"label": "Record Count",
15
"value": 150
16
},
17
{
18
"label": "Total Amount",
19
"value": 2500000
20
}
21
]
22
}
23
},
24
"groupingsDown": {
25
"groupings": [
26
{
27
"key": "Prospecting",
28
"label": "Prospecting",
29
"value": "Prospecting"
30
},
31
{
32
"key": "Qualification",
33
"label": "Qualification",
34
"value": "Qualification"
35
},
36
{
37
"key": "Proposal",
38
"label": "Proposal",
39
"value": "Proposal"
40
},
41
{
42
"key": "Negotiation",
43
"label": "Negotiation",
44
"value": "Negotiation"
45
}
46
]
47
},
48
"hasDetailRows": true,
49
"reportExtendedMetadata": {
50
"aggregateColumnInfo": {
51
"u!LAST_NAME": {
52
"dataType": "string",
53
"label": "Last Name"
54
}
55
},
56
"detailColumnInfo": {
57
"LAST_NAME": {
58
"dataType": "string",
59
"entityColumnName": "LastName",
60
"label": "Last Name"
61
}
62
},
63
"groupingColumnInfo": {
64
"TYPE": {
65
"dataType": "string",
66
"groupingLevel": 1,
67
"label": "Type"
68
}
69
}
70
},
71
"reportMetadata": {
72
"aggregates": [
73
"RowCount",
74
"Amount"
75
],
76
"currency": "USD",
77
"detailColumns": [
78
"Name",
79
"Amount",
80
"StageName",
81
"CloseDate",
82
"AccountName"
83
],
84
"developerName": "Sales_Pipeline_Report",
85
"folderId": "00lxx000000abcdEAA",
86
"groupingsDown": [
87
{
88
"name": "StageName",
89
"sortOrder": "Asc"
90
}
91
],
92
"hasDetailRows": true,
93
"hasRecordCount": true,
94
"id": "00Oxx0000012345AAA",
95
"name": "Sales Pipeline Report",
96
"reportBooleanFilter": "1 AND 2",
97
"reportFilters": [
98
{
99
"column": "StageName",
100
"operator": "notEqual",
101
"value": "Closed Won"
102
},
103
{
104
"column": "Amount",
105
"operator": "greaterThan",
106
"value": "10000"
107
}
108
],
109
"reportFormat": "TABULAR",
110
"reportType": {
111
"label": "Opportunities",
112
"type": "OpportunityReport"
113
},
114
"scope": "everything",
115
"showGrandTotal": true,
116
"showSubtotals": true,
117
"sortBy": [
118
{
119
"sortColumn": "Amount",
120
"sortOrder": "Desc"
121
}
122
],
123
"standardDateFilter": {
124
"column": "CloseDate",
125
"startDate": "2023-01-01T00:00:00Z",
126
"endDate": "2023-12-31T23:59:59Z"
127
}
128
}
129
}

Execute report sync
Copy

Runs a report immediately with or without changing filters, groupings, or aggregates and returns the latest summary data with or without details for your level of access.

Sample Input

1
{
2
"report_id": "00O1a2b3c4d5e6f7g8",
3
"has_detail_rows": true,
4
"has_record_count": true,
5
"show_grand_total": true,
6
"show_subtotals": true,
7
"report_filters": [
8
{
9
"field_value": {
10
"column": "AMOUNT",
11
"operator": "greaterThan",
12
"value": "10000",
13
"is_run_page_editable": true
14
}
15
}
16
],
17
"sort_by": {
18
"sort_column": "CLOSE_DATE",
19
"sort_order": "Desc"
20
},
21
"groupings_down": [
22
{
23
"name": "ACCOUNT.NAME",
24
"sort_order": "Asc"
25
}
26
],
27
"standard_date_filter": {
28
"column": "CLOSE_DATE",
29
"start_date": "2023-01-01T00:00:00Z",
30
"end_date": "2023-12-31T23:59:59Z"
31
}
32
}

Sample Output

1
{
2
"attributes": {
3
"describeUrl": "/services/data/v53.0/analytics/reports/00O1a2b3c4d5e6f7g8/describe",
4
"instancesUrl": "/services/data/v53.0/analytics/reports/00O1a2b3c4d5e6f7g8/instances",
5
"reportId": "00O1a2b3c4d5e6f7g8",
6
"reportName": "High Value Opportunities",
7
"type": "Report"
8
},
9
"allData": true,
10
"factMap": {
11
"T!T": {
12
"aggregates": [
13
{
14
"label": "Record Count",
15
"value": 150
16
},
17
{
18
"label": "Total Amount",
19
"value": 2500000
20
}
21
]
22
}
23
},
24
"groupingsDown": {
25
"groupings": [
26
{
27
"key": "0011000001gPb9zAAC",
28
"label": "Acme Corporation",
29
"value": "Acme Corporation"
30
},
31
{
32
"key": "0011000001gPb9zAAD",
33
"label": "Global Tech Industries",
34
"value": "Global Tech Industries"
35
}
36
]
37
},
38
"hasDetailRows": true,
39
"reportMetadata": {
40
"aggregates": [
41
"RowCount",
42
"Amount"
43
],
44
"currency": "USD",
45
"detailColumns": [
46
"OPPORTUNITY_NAME",
47
"AMOUNT",
48
"CLOSE_DATE",
49
"STAGE_NAME"
50
],
51
"groupingsDown": [
52
{
53
"name": "ACCOUNT.NAME",
54
"sortOrder": "Asc",
55
"dateGranularity": null
56
}
57
],
58
"id": "00O1a2b3c4d5e6f7g8",
59
"name": "High Value Opportunities",
60
"reportFilters": [
61
{
62
"column": "AMOUNT",
63
"operator": "greaterThan",
64
"value": "10000"
65
}
66
],
67
"reportFormat": "SUMMARY",
68
"reportType": {
69
"label": "Opportunities",
70
"type": "Opportunity"
71
},
72
"scope": "organization",
73
"showGrandTotal": true,
74
"showSubtotals": true,
75
"sortBy": [
76
{
77
"sortColumn": "CLOSE_DATE",
78
"sortOrder": "Desc"
79
}
80
],
81
"standardDateFilter": {
82
"column": "CLOSE_DATE",
83
"startDate": "2023-01-01",
84
"endDate": "2023-12-31"
85
}
86
}
87
}

Find records
Copy

Find a list of records in Salesforce.

Sample Input

1
{
2
"object": "Contact",
3
"fields": [
4
"FirstName",
5
"LastName",
6
"Email",
7
"Phone"
8
],
9
"conditions": [
10
{
11
"field": "LastName",
12
"operator": "Equal to",
13
"value": "Smith"
14
},
15
{
16
"field": "CreatedDate",
17
"operator": "Greater than",
18
"value": "2023-01-01T00:00:00Z"
19
}
20
],
21
"conditions_type": "Match all conditions",
22
"limit": 10,
23
"sort_by": "LastName",
24
"sort_direction": "ASC",
25
"include_all_fields": false
26
}

Sample Output

1
{
2
"total": 3,
3
"next_page_offset": null,
4
"records": [
5
{
6
"FirstName": "John",
7
"LastName": "Smith",
8
"Email": "john.smith@example.com",
9
"Phone": "555-123-4567"
10
},
11
{
12
"FirstName": "Jane",
13
"LastName": "Smith",
14
"Email": "jane.smith@example.com",
15
"Phone": "555-987-6543"
16
},
17
{
18
"FirstName": "Michael",
19
"LastName": "Smith",
20
"Email": "michael.smith@example.com",
21
"Phone": "555-246-8135"
22
}
23
]
24
}

Locate customers’ preferences for consent across multiple records.

Sample Input

1
{
2
"action_identifier": {
3
"multiaction": [
4
"email",
5
"phone",
6
"mailing"
7
]
8
},
9
"list_of_ids": [
10
"0035000001BpH8IAAV",
11
"john.doe@example.com",
12
"0035000001CqK9JAAV"
13
],
14
"aggregated_consent": true,
15
"date_time": "2023-06-15T14:30:00Z",
16
"purpose": "Marketing campaign",
17
"verbose": true
18
}

Sample Output

1
{
2
"aggregatedConsent": {
3
"result": "PROCEED",
4
"proceed": {
5
"geotrackResult": "PROCEED",
6
"geotrack": "ALLOWED"
7
},
8
"aggregatedExplanation": [
9
{
10
"originalId": "0035000001BpH8IAAV",
11
"explanations": [
12
{
13
"objectConsulted": "Contact",
14
"status": "ALLOWED",
15
"purpose": "Marketing campaign",
16
"recordId": "0035000001BpH8IAAV",
17
"value": "OPT_IN"
18
},
19
{
20
"objectConsulted": "Contact",
21
"status": "ALLOWED",
22
"purpose": "Marketing campaign",
23
"recordId": "0035000001BpH8IAAV",
24
"value": "OPT_IN"
25
},
26
{
27
"objectConsulted": "Contact",
28
"status": "ALLOWED",
29
"purpose": "Marketing campaign",
30
"recordId": "0035000001BpH8IAAV",
31
"value": "OPT_IN"
32
}
33
]
34
},
35
{
36
"originalId": "john.doe@example.com",
37
"explanations": [
38
{
39
"objectConsulted": "Contact",
40
"status": "ALLOWED",
41
"purpose": "Marketing campaign",
42
"recordId": "0035000001DqL0KAAV",
43
"value": "OPT_IN"
44
},
45
{
46
"objectConsulted": "Contact",
47
"status": "ALLOWED",
48
"purpose": "Marketing campaign",
49
"recordId": "0035000001DqL0KAAV",
50
"value": "OPT_IN"
51
},
52
{
53
"objectConsulted": "Contact",
54
"status": "NOT_ALLOWED",
55
"purpose": "Marketing campaign",
56
"recordId": "0035000001DqL0KAAV",
57
"value": "OPT_OUT"
58
}
59
]
60
},
61
{
62
"originalId": "0035000001CqK9JAAV",
63
"explanations": [
64
{
65
"objectConsulted": "Contact",
66
"status": "ALLOWED",
67
"purpose": "Marketing campaign",
68
"recordId": "0035000001CqK9JAAV",
69
"value": "OPT_IN"
70
},
71
{
72
"objectConsulted": "Contact",
73
"status": "ALLOWED",
74
"purpose": "Marketing campaign",
75
"recordId": "0035000001CqK9JAAV",
76
"value": "OPT_IN"
77
},
78
{
79
"objectConsulted": "Contact",
80
"status": "ALLOWED",
81
"purpose": "Marketing campaign",
82
"recordId": "0035000001CqK9JAAV",
83
"value": "OPT_IN"
84
}
85
]
86
}
87
]
88
}
89
}

Get instance results
Copy

Retrieves results of an asynchronous report run.

Sample Input

1
{
2
"report_id": "00O1a000006Mw5XEAS",
3
"instance_id": "00O1a000006Mw5XEAS-2023-05-15T10:30:00Z"
4
}

Sample Output

1
{
2
"attributes": {
3
"completionDate": "2023-05-15T10:31:15Z",
4
"id": "00O1a000006Mw5XEAS-2023-05-15T10:30:00Z",
5
"ownerId": "0051a000000FHNeAAO",
6
"reportId": "00O1a000006Mw5XEAS",
7
"reportName": "Opportunities by Type",
8
"requestDate": "2023-05-15T10:30:00Z",
9
"status": "Success",
10
"type": "ReportInstance"
11
},
12
"allData": true,
13
"factMap": {
14
"T!T": {
15
"aggregates": [
16
{
17
"label": "Record Count",
18
"value": 150
19
},
20
{
21
"label": "Total Amount",
22
"value": 1250000
23
}
24
],
25
"rows": [
26
{
27
"dataCells": [
28
{
29
"label": "New Customer",
30
"value": "New Customer"
31
},
32
{
33
"label": "75",
34
"value": "75"
35
},
36
{
37
"label": "$750,000",
38
"value": "750000"
39
}
40
]
41
},
42
{
43
"dataCells": [
44
{
45
"label": "Existing Customer - Upgrade",
46
"value": "Existing Customer - Upgrade"
47
},
48
{
49
"label": "50",
50
"value": "50"
51
},
52
{
53
"label": "$375,000",
54
"value": "375000"
55
}
56
]
57
},
58
{
59
"dataCells": [
60
{
61
"label": "Existing Customer - Replacement",
62
"value": "Existing Customer - Replacement"
63
},
64
{
65
"label": "25",
66
"value": "25"
67
},
68
{
69
"label": "$125,000",
70
"value": "125000"
71
}
72
]
73
}
74
]
75
}
76
},
77
"groupingsDown": {
78
"groupings": [
79
{
80
"value": "New Customer",
81
"key": "New Customer",
82
"label": "New Customer"
83
},
84
{
85
"value": "Existing Customer - Upgrade",
86
"key": "Existing Customer - Upgrade",
87
"label": "Existing Customer - Upgrade"
88
},
89
{
90
"value": "Existing Customer - Replacement",
91
"key": "Existing Customer - Replacement",
92
"label": "Existing Customer - Replacement"
93
}
94
]
95
},
96
"hasDetailRows": true,
97
"reportMetadata": {
98
"aggregates": [
99
"RowCount",
100
"Amount"
101
],
102
"currency": "USD",
103
"description": "Opportunities grouped by Type",
104
"detailColumns": [
105
"OPPORTUNITY_NAME",
106
"AMOUNT",
107
"CLOSE_DATE",
108
"STAGE_NAME"
109
],
110
"developerName": "Opportunities_by_Type",
111
"groupingsDown": [
112
{
113
"name": "TYPE",
114
"sortOrder": "Asc"
115
}
116
],
117
"id": "00O1a000006Mw5XEAS",
118
"name": "Opportunities by Type",
119
"reportFormat": "SUMMARY",
120
"reportType": {
121
"label": "Opportunities",
122
"type": "Opportunity"
123
},
124
"showGrandTotal": true,
125
"showSubtotals": true
126
}
127
}

Get job info
Copy

Get details about a bulk data processing job

Sample Input

1
{
2
"job_id": "7502E00000PGsabQAD"
3
}

Sample Output

1
{
2
"id": "7502E00000PGsabQAD",
3
"operation": "insert",
4
"object": "Account",
5
"createdById": "0052E00000GHI9kQAH",
6
"createdDate": "2023-06-15T14:32:09.000+0000",
7
"systemModstamp": "2023-06-15T14:32:09.000+0000",
8
"state": "Completed",
9
"externalIdFieldName": null,
10
"concurrencyMode": "Parallel",
11
"contentType": "CSV",
12
"apiVersion": 57,
13
"jobType": "V2Ingest",
14
"contentUrl": "/services/data/v57.0/jobs/ingest/7502E00000PGsabQAD/batches",
15
"lineEnding": "LF",
16
"columnDelimiter": "COMMA",
17
"retries": 0,
18
"totalProcessingTime": 1250,
19
"apiActiveProcessingTime": 1000,
20
"apexProcessingTime": 250
21
}

Get job successful record results
Copy

Retrieve a list of successfully processed records for a completed job as a CSV file.

Sample Input

1
{
2
"job_id": "7502E00000PGcJnQAL"
3
}

Sample Output

1
{
2
"file": {
3
"name": "successful_records_7502E00000PGcJnQAL.csv",
4
"url": "https://instance.salesforce.com/services/data/v53.0/jobs/ingest/7502E00000PGcJnQAL/successfulResults",
5
"mime_type": "text/csv",
6
"expires": 1623456789
7
}
8
}

Get omni-channel presence status
Copy

Get the presence status of an omni-channel

Sample Input

1
{
2
"omni_channel_presence_status_id": "0N5B0000000CaWWKA0"
3
}

Sample Output

1
{
2
"total": 1,
3
"next_page_offset": null,
4
"records": [
5
{
6
"Id": "0N5B0000000CaWWKA0",
7
"DeveloperName": "Available",
8
"MasterLabel": "Available",
9
"Language": "en_US"
10
}
11
]
12
}

Get picklist item details
Copy

Retrieves details for a specific picklist item from a given object and field name.

Sample Input

1
{
2
"object": "Account",
3
"field_name": "Industry",
4
"picklist_item_name": "Technology"
5
}

Sample Output

1
{
2
"active": true,
3
"defaultValue": false,
4
"label": "Technology",
5
"validFor": "0123456789ABCDEF",
6
"value": "Technology"
7
}

Get query job
Copy

Gets information about one query job.

Sample Input

1
{
2
"query_job_id": "7502E000004UbTEQA0"
3
}

Sample Output

1
{
2
"id": "7502E000004UbTEQA0",
3
"operation": "query",
4
"object": "Account",
5
"createdById": "0052E00000GHvZQQA1",
6
"createdDate": "2023-06-15T14:32:09.000Z",
7
"systemModstamp": "2023-06-15T14:32:11.000Z",
8
"state": "Completed",
9
"concurrencyMode": "Parallel",
10
"contentType": "CSV",
11
"apiVersion": 57,
12
"jobType": "V2Query",
13
"lineEnding": "LF",
14
"columnDelimiter": "COMMA",
15
"numberRecordsProcessed": 5000,
16
"retries": 0,
17
"totalProcessingTime": 1234
18
}

Get query job results
Copy

Returns a CSV file with the results of a completed query job.

Sample Input

1
{
2
"query_job_id": "7504W00000ABCDEFGHIj",
3
"file_name": "sales_report",
4
"results_locator": "01gD000000V6NRZIA3-1",
5
"max_records": 500
6
}

Sample Output

1
{
2
"file": {
3
"name": "sales_report.csv",
4
"url": "https://instance.salesforce.com/services/data/v53.0/jobs/query/7504W00000ABCDEFGHIj/results?locator=01gD000000V6NRZIA3-1",
5
"mime_type": "text/csv",
6
"expires": 1623456789
7
}
8
}

Get Record Object Description
Copy

Get the description of a record type, given the unique ID of the record of that type in Salesforce.

Sample Input

1
{
2
"record_id": "001D000000IqhSLIAZ"
3
}

Sample Output

1
{
2
"result": {
3
"activateable": false,
4
"createable": true,
5
"custom": false,
6
"customSetting": false,
7
"deletable": true,
8
"deprecatedAndHidden": false,
9
"feedEnabled": true,
10
"hasSubtypes": false,
11
"isSubtype": false,
12
"keyPrefix": "001",
13
"label": "Account",
14
"labelPlural": "Accounts",
15
"layoutable": true,
16
"mergeable": true,
17
"mruEnabled": true,
18
"name": "Account",
19
"queryable": true,
20
"replicateable": true,
21
"retrieveable": true,
22
"searchable": true,
23
"triggerable": true,
24
"undeletable": true,
25
"updateable": true,
26
"urls": {
27
"compactLayouts": "/services/data/v53.0/sobjects/Account/describe/compactLayouts",
28
"rowTemplate": "/services/data/v53.0/sobjects/Account/{ID}",
29
"approvalLayouts": "/services/data/v53.0/sobjects/Account/describe/approvalLayouts",
30
"listviews": "/services/data/v53.0/sobjects/Account/listviews",
31
"describe": "/services/data/v53.0/sobjects/Account/describe",
32
"quickActions": "/services/data/v53.0/sobjects/Account/quickActions",
33
"layouts": "/services/data/v53.0/sobjects/Account/describe/layouts",
34
"sobject": "/services/data/v53.0/sobjects/Account"
35
}
36
}
37
}

Get user info
Copy

Get details about the authenticated Salesforce user.

Sample Input

1
{
2
"identity_url": "https://login.salesforce.com/id/00D3X000000pNvUUAU/0053X00000A7o3VQAR"
3
}

Sample Output

1
{
2
"id": "https://login.salesforce.com/id/00D3X000000pNvUUAU/0053X00000A7o3VQAR",
3
"asserted_user": true,
4
"user_id": "0053X00000A7o3VQAR",
5
"organization_id": "00D3X000000pNvUUAU",
6
"username": "john.doe@example.com",
7
"nick_name": "jdoe",
8
"display_name": "John Doe",
9
"email": "john.doe@example.com",
10
"email_verified": true,
11
"first_name": "John",
12
"last_name": "Doe",
13
"timezone": "America/Los_Angeles",
14
"photos": {
15
"picture": "https://c.salesforce.com/profilephoto/005/F",
16
"thumbnail": "https://c.salesforce.com/profilephoto/005/T"
17
},
18
"addr_street": "123 Main St",
19
"addr_city": "San Francisco",
20
"addr_state": "CA",
21
"addr_country": "USA",
22
"addr_zip": "94105",
23
"mobile_phone": "+1 (415) 555-1234",
24
"mobile_phone_verified": true,
25
"status": {
26
"created_date": "2023-05-15T10:30:00.000Z",
27
"body": "Working on a new project"
28
},
29
"urls": {
30
"enterprise": "https://na1.salesforce.com/services/Soap/c/54.0/00D3X000000pNvU",
31
"metadata": "https://na1.salesforce.com/services/Soap/m/54.0/00D3X000000pNvU",
32
"partner": "https://na1.salesforce.com/services/Soap/u/54.0/00D3X000000pNvU",
33
"rest": "https://na1.salesforce.com/services/data/v54.0/",
34
"sobjects": "https://na1.salesforce.com/services/data/v54.0/sobjects/",
35
"search": "https://na1.salesforce.com/services/data/v54.0/search/",
36
"query": "https://na1.salesforce.com/services/data/v54.0/query/",
37
"recent": "https://na1.salesforce.com/services/data/v54.0/recent/",
38
"profile": "https://na1.salesforce.com/0053X00000A7o3VQAR",
39
"feeds": "https://na1.salesforce.com/services/data/v54.0/chatter/feeds",
40
"groups": "https://na1.salesforce.com/services/data/v54.0/chatter/groups",
41
"users": "https://na1.salesforce.com/services/data/v54.0/chatter/users",
42
"feed_items": "https://na1.salesforce.com/services/data/v54.0/chatter/feed-items",
43
"feed_elements": "https://na1.salesforce.com/services/data/v54.0/chatter/feed-elements"
44
},
45
"active": true,
46
"user_type": "Standard",
47
"language": "en_US",
48
"locale": "en_US",
49
"utcOffset": -28800000,
50
"last_modified_date": "2023-05-15T14:45:30.000Z"
51
}

List jobs
Copy

Retrieve a list of jobs created by bulk data operations e.g. Bulk upsert records

Sample Input

1
{
2
"next_records_url": "https://yourInstance.salesforce.com/services/data/v53.0/jobs/ingest/nextRecords/00000000000000"
3
}

Sample Output

1
{
2
"done": false,
3
"nextRecordsUrl": "https://yourInstance.salesforce.com/services/data/v53.0/jobs/ingest/nextRecords/00000000000001",
4
"records": [
5
{
6
"id": "7500x000002YzKAAA0",
7
"operation": "insert",
8
"object": "Account",
9
"createdById": "0050x000001234AAA",
10
"createdDate": "2023-06-15T14:30:00.000Z",
11
"systemModstamp": "2023-06-15T14:30:05.000Z",
12
"state": "Open",
13
"externalIdFieldName": null,
14
"concurrencyMode": "Parallel",
15
"contentType": "CSV",
16
"apiVersion": 53,
17
"jobType": "V2Ingest",
18
"contentUrl": "https://yourInstance.salesforce.com/services/data/v53.0/jobs/ingest/7500x000002YzKAAA0/batches",
19
"lineEnding": "LF",
20
"columnDelimiter": "COMMA"
21
},
22
{
23
"id": "7500x000002YzKBAA0",
24
"operation": "upsert",
25
"object": "Contact",
26
"createdById": "0050x000001234AAA",
27
"createdDate": "2023-06-15T15:45:00.000Z",
28
"systemModstamp": "2023-06-15T15:45:10.000Z",
29
"state": "UploadComplete",
30
"externalIdFieldName": "Email",
31
"concurrencyMode": "Parallel",
32
"contentType": "CSV",
33
"apiVersion": 53,
34
"jobType": "V2Ingest",
35
"contentUrl": "https://yourInstance.salesforce.com/services/data/v53.0/jobs/ingest/7500x000002YzKBAA0/batches",
36
"lineEnding": "LF",
37
"columnDelimiter": "COMMA"
38
}
39
]
40
}

List query jobs
Copy

Gets information about all query jobs.

Sample Input

1
{
2
"pk_chunking_enabled": true,
3
"job_type": "V2Query",
4
"concurrency_mode": "Parallel",
5
"query_locator": "01gD0000002HU6KIAW-500000"
6
}

Sample Output

1
{
2
"done": true,
3
"nextRecordsUrl": null,
4
"records": [
5
{
6
"id": "7500x000002YzEhAAK",
7
"operation": "query",
8
"object": "Account",
9
"createdById": "005D0000001AQISIA4",
10
"createdDate": "2023-06-15T14:32:18.000+0000",
11
"systemModstamp": "2023-06-15T14:32:18.000+0000",
12
"state": "Complete",
13
"concurrencyMode": "Parallel",
14
"contentType": "CSV",
15
"apiVersion": 57,
16
"jobType": "V2Query",
17
"lineEnding": "LF",
18
"columnDelimiter": "COMMA"
19
},
20
{
21
"id": "7500x000002YzEiAAK",
22
"operation": "query",
23
"object": "Contact",
24
"createdById": "005D0000001AQISIA4",
25
"createdDate": "2023-06-15T14:33:05.000+0000",
26
"systemModstamp": "2023-06-15T14:33:05.000+0000",
27
"state": "InProgress",
28
"concurrencyMode": "Parallel",
29
"contentType": "CSV",
30
"apiVersion": 57,
31
"jobType": "V2Query",
32
"lineEnding": "LF",
33
"columnDelimiter": "COMMA"
34
}
35
]
36
}

List report fields
Copy

Retrieves report fields available for specified reports.

Sample Input

1
{
2
"report_id": "00O1a2b3c4d5e6f7g",
3
"intersect_with": [
4
"00O2b3c4d5e6f7g8h",
5
"00O3c4d5e6f7g8h9i"
6
]
7
}

Sample Output

1
{
2
"displayGroups": {
3
"ContactList": [
4
{
5
"columns": {
6
"ACCOUNT.ADDRESS1_LINE1": {
7
"allowedInCustomDetailFormula": true,
8
"bucketable": false,
9
"dataType": "string",
10
"filterValues": [],
11
"filterable": true,
12
"inactiveFilterValues": [],
13
"isCustom": false,
14
"isLookup": false,
15
"label": "Billing Street",
16
"maxLength": 255,
17
"uniqueCountable": false
18
},
19
"ACCOUNT.NAME": {
20
"allowedInCustomDetailFormula": true,
21
"bucketable": true,
22
"dataType": "string",
23
"entityColumnName": "NAME",
24
"filterValues": [],
25
"filterable": true,
26
"inactiveFilterValues": [],
27
"isCustom": false,
28
"isLookup": false,
29
"label": "Account Name",
30
"maxLength": 255,
31
"uniqueCountable": true
32
}
33
},
34
"label": "Account Information",
35
"labelSuffix": null
36
}
37
]
38
},
39
"equivalentFieldIndices": {
40
"ACCOUNT.NAME": 1,
41
"ACCOUNT.ADDRESS1_LINE1": 0
42
},
43
"equivalentFields": [
44
{
45
"ContactList": [
46
{
47
"name": "ACCOUNT.ADDRESS1_LINE1"
48
},
49
{
50
"name": "ACCOUNT.NAME"
51
}
52
]
53
}
54
],
55
"mergedGroups": [
56
"ContactList"
57
]
58
}

List report instances
Copy

Returns a list of instances for a report.

Sample Input

1
{
2
"report_id": "00OD0000001leaMMAQ"
3
}

Sample Output

1
{
2
"results": [
3
{
4
"id": "0RSD0000001GzGOGA0",
5
"status": "Success",
6
"url": "/services/data/v53.0/analytics/reports/00OD0000001leaMMAQ/instances/0RSD0000001GzGOGA0",
7
"ownerId": "005D0000001AoBZIA0",
8
"hasDetailRows": true,
9
"completionDate": "2023-05-15T14:30:22.000Z",
10
"queryable": true,
11
"requestDate": "2023-05-15T14:30:20.000Z"
12
},
13
{
14
"id": "0RSD0000001GzGPGA0",
15
"status": "Success",
16
"url": "/services/data/v53.0/analytics/reports/00OD0000001leaMMAQ/instances/0RSD0000001GzGPGA0",
17
"ownerId": "005D0000001AoBZIA0",
18
"hasDetailRows": true,
19
"completionDate": "2023-05-14T09:15:45.000Z",
20
"queryable": true,
21
"requestDate": "2023-05-14T09:15:43.000Z"
22
}
23
]
24
}

List report types
Copy

Return a list of report types.

Sample Input

1
{}

Sample Output

1
{
2
"results": [
3
{
4
"label": "Accounts",
5
"reportTypes": [
6
{
7
"describeUrl": "/services/data/v53.0/analytics/reportTypes/Account",
8
"description": "Accounts: Standard report type for Account objects",
9
"isHidden": false,
10
"isHistorical": false,
11
"label": "Accounts",
12
"supportsJoinedFormat": true,
13
"type": "Account"
14
},
15
{
16
"describeUrl": "/services/data/v53.0/analytics/reportTypes/AccountContactRole",
17
"description": "Account Contact Roles: Standard report type for Account Contact Role objects",
18
"isHidden": false,
19
"isHistorical": false,
20
"label": "Account Contact Roles",
21
"supportsJoinedFormat": true,
22
"type": "AccountContactRole"
23
}
24
]
25
},
26
{
27
"label": "Opportunities",
28
"reportTypes": [
29
{
30
"describeUrl": "/services/data/v53.0/analytics/reportTypes/Opportunity",
31
"description": "Opportunities: Standard report type for Opportunity objects",
32
"isHidden": false,
33
"isHistorical": false,
34
"label": "Opportunities",
35
"supportsJoinedFormat": true,
36
"type": "Opportunity"
37
},
38
{
39
"describeUrl": "/services/data/v53.0/analytics/reportTypes/OpportunityContactRole",
40
"description": "Opportunity Contact Roles: Standard report type for Opportunity Contact Role objects",
41
"isHidden": false,
42
"isHistorical": false,
43
"label": "Opportunity Contact Roles",
44
"supportsJoinedFormat": true,
45
"type": "OpportunityContactRole"
46
}
47
]
48
}
49
]
50
}

List reports
Copy

Retrieves a list of up to 200 reports that you recently viewed.

Sample Input

1
{}

Sample Output

1
{
2
"results": [
3
{
4
"describeUrl": "/services/data/v53.0/analytics/reports/00O1a2b3c4d5e6f7g/describe",
5
"fieldsUrl": "/services/data/v53.0/analytics/reports/00O1a2b3c4d5e6f7g/fields",
6
"id": "00O1a2b3c4d5e6f7g",
7
"instancesUrl": "/services/data/v53.0/analytics/reports/00O1a2b3c4d5e6f7g/instances",
8
"name": "Closed Sales This Quarter",
9
"url": "/services/data/v53.0/analytics/reports/00O1a2b3c4d5e6f7g"
10
},
11
{
12
"describeUrl": "/services/data/v53.0/analytics/reports/00O2h3i4j5k6l7m8/describe",
13
"fieldsUrl": "/services/data/v53.0/analytics/reports/00O2h3i4j5k6l7m8/fields",
14
"id": "00O2h3i4j5k6l7m8",
15
"instancesUrl": "/services/data/v53.0/analytics/reports/00O2h3i4j5k6l7m8/instances",
16
"name": "Open Opportunities by Stage",
17
"url": "/services/data/v53.0/analytics/reports/00O2h3i4j5k6l7m8"
18
}
19
]
20
}

Merge records
Copy

Merge records into a master record. Be advised if you want to keep values from non-master records the Fields to populate input must be used

Sample Input

1
{
2
"object": "Account",
3
"master_record_id": "001A000001abcDEF",
4
"records_to_merge": [
5
"001A000001ghiJKL",
6
"001A000001mnoPQR"
7
],
8
"fields_to_populate": [
9
{
10
"name": "Description",
11
"value": "Merged account from multiple sources"
12
},
13
{
14
"name": "NumberOfEmployees",
15
"value": 500
16
}
17
],
18
"fields_to_null": [
19
"Fax",
20
"Website"
21
]
22
}

Sample Output

1
{
2
"result": [
3
{
4
"id": "001A000001abcDEF",
5
"mergedRecordIds": [
6
"001A000001ghiJKL",
7
"001A000001mnoPQR"
8
],
9
"success": true
10
}
11
]
12
}

Raw HTTP request (advanced)
Copy

Perform a raw HTTP request with some pre-configuration and processing by the connector, such as authentication.

Sample Input

1
{
2
"method": "GET",
3
"url": {
4
"endpoint": "/services/data/v53.0/query?q=SELECT+Name,Phone,Email+FROM+Contact+LIMIT+5"
5
},
6
"headers": [
7
{
8
"key": "Accept",
9
"value": "application/json"
10
}
11
],
12
"body": {
13
"none": null
14
},
15
"include_raw_body": false,
16
"parse_response": "true"
17
}

Sample Output

1
{
2
"response": {
3
"status_code": 200,
4
"headers": {
5
"Content-Type": "application/json;charset=UTF-8",
6
"Date": "Wed, 15 Mar 2023 10:30:45 GMT"
7
},
8
"body": {
9
"totalSize": 5,
10
"done": true,
11
"records": [
12
{
13
"attributes": {
14
"type": "Contact",
15
"url": "/services/data/v53.0/sobjects/Contact/0031234567890ABC"
16
},
17
"Name": "John Doe",
18
"Phone": "(555) 123-4567",
19
"Email": "john.doe@example.com"
20
},
21
{
22
"attributes": {
23
"type": "Contact",
24
"url": "/services/data/v53.0/sobjects/Contact/0031234567890DEF"
25
},
26
"Name": "Jane Smith",
27
"Phone": "(555) 987-6543",
28
"Email": "jane.smith@example.com"
29
},
30
{
31
"attributes": {
32
"type": "Contact",
33
"url": "/services/data/v53.0/sobjects/Contact/0031234567890GHI"
34
},
35
"Name": "Bob Johnson",
36
"Phone": "(555) 246-8135",
37
"Email": "bob.johnson@example.com"
38
},
39
{
40
"attributes": {
41
"type": "Contact",
42
"url": "/services/data/v53.0/sobjects/Contact/0031234567890JKL"
43
},
44
"Name": "Alice Brown",
45
"Phone": "(555) 369-2580",
46
"Email": "alice.brown@example.com"
47
},
48
{
49
"attributes": {
50
"type": "Contact",
51
"url": "/services/data/v53.0/sobjects/Contact/0031234567890MNO"
52
},
53
"Name": "Charlie Wilson",
54
"Phone": "(555) 147-2589",
55
"Email": "charlie.wilson@example.com"
56
}
57
]
58
}
59
}
60
}

Revoke tokens
Copy

Revokes the access and refresh token used in the auth, which makes the authentication useless

Sample Input

1
{}

Sample Output

1
{
2
"results": [
3
{
4
"AccessToken": {
5
"revoked": true,
6
"invalid": true
7
},
8
"RefreshToken": {
9
"revoked": true,
10
"invalid": true
11
}
12
}
13
]
14
}

Run report (sync)
Copy

Run a report from your Salesforce Reports list.

Sample Input

1
{
2
"report_id": "00O1a2b3c4d5e6f7g"
3
}

Sample Output

1
{
2
"aggregates": [
3
{
4
"key": "total_amount",
5
"keyLabel": "Total Amount",
6
"value": 150000,
7
"valueLabel": "$150,000.00"
8
},
9
{
10
"key": "average_deal_size",
11
"keyLabel": "Average Deal Size",
12
"value": 25000,
13
"valueLabel": "$25,000.00"
14
}
15
],
16
"groupingsDown": {
17
"groupings": [
18
{
19
"key": "industry",
20
"label": "Industry",
21
"value": "Technology",
22
"data": {
23
"aggregates": [
24
{
25
"label": "Total Amount",
26
"value": 75000
27
},
28
{
29
"label": "Average Deal Size",
30
"value": 37500
31
}
32
],
33
"rows": [
34
{
35
"cells": [
36
{
37
"label": "Account Name",
38
"value": "Acme Corp"
39
},
40
{
41
"label": "Amount",
42
"value": "$50,000.00"
43
}
44
]
45
},
46
{
47
"cells": [
48
{
49
"label": "Account Name",
50
"value": "TechGiant Inc"
51
},
52
{
53
"label": "Amount",
54
"value": "$25,000.00"
55
}
56
]
57
}
58
]
59
}
60
},
61
{
62
"key": "industry",
63
"label": "Industry",
64
"value": "Healthcare",
65
"data": {
66
"aggregates": [
67
{
68
"label": "Total Amount",
69
"value": 75000
70
},
71
{
72
"label": "Average Deal Size",
73
"value": 18750
74
}
75
],
76
"rows": [
77
{
78
"cells": [
79
{
80
"label": "Account Name",
81
"value": "MediCare Solutions"
82
},
83
{
84
"label": "Amount",
85
"value": "$30,000.00"
86
}
87
]
88
},
89
{
90
"cells": [
91
{
92
"label": "Account Name",
93
"value": "HealthTech Systems"
94
},
95
{
96
"label": "Amount",
97
"value": "$45,000.00"
98
}
99
]
100
}
101
]
102
}
103
}
104
]
105
},
106
"groupingsAcross": {
107
"groupings": []
108
}
109
}

SOQL Query (advanced)
Copy

Execute a raw SOQL query to extract data from Salesforce.

Sample Input

1
{
2
"query": "SELECT FirstName, LastName FROM Contact WHERE CreatedDate = LAST_WEEK",
3
"batch_size": 100
4
}

Sample Output

1
{
2
"total": 250,
3
"next_page_offset": "eyJsYXN0SWQiOiIwMDMxMjM0NTY3ODkwQUJDREVGIiwibGFzdFZhbHVlIjoiMjAyMy0wNS0yMVQxNDozMDowMC4wMDBaIn0=",
4
"records": [
5
{
6
"FirstName": "John",
7
"LastName": "Doe"
8
},
9
{
10
"FirstName": "Jane",
11
"LastName": "Smith"
12
},
13
{
14
"FirstName": "Michael",
15
"LastName": "Johnson"
16
}
17
]
18
}

SOSL Query (advanced)
Copy

Execute a raw SOSL query to extract data from Salesforce.

Sample Input

1
{
2
"query": "FIND {John} IN NAME FIELDS RETURNING Account(Id, Name), Contact(Id, Name, Phone)",
3
"batch_size": 500
4
}

Sample Output

1
{
2
"searchRecords": [
3
{
4
"attributes": {
5
"type": "Account",
6
"url": "/services/data/v53.0/sobjects/Account/001A000001XYZabCDE"
7
},
8
"Id": "001A000001XYZabCDE",
9
"Name": "John's Plumbing"
10
},
11
{
12
"attributes": {
13
"type": "Contact",
14
"url": "/services/data/v53.0/sobjects/Contact/003B000002WXYcdEFG"
15
},
16
"Id": "003B000002WXYcdEFG",
17
"Name": "John Smith",
18
"Phone": "555-123-4567"
19
}
20
]
21
}

Update custom field
Copy

Update custom field metadata using name.

Sample Input

1
{
2
"full_name": "Account.CustomField__c",
3
"custom_field_parameters": [
4
{
5
"key": "label",
6
"value": "Updated Custom Field"
7
},
8
{
9
"key": "description",
10
"value": "This is an updated custom field on the Account object"
11
},
12
{
13
"key": "type",
14
"value": "Picklist"
15
},
16
{
17
"key": "required",
18
"value": "false"
19
}
20
],
21
"value_set": {
22
"sorted": true,
23
"value": [
24
{
25
"full_name": "Option1",
26
"default": true,
27
"label": "Option 1"
28
},
29
{
30
"full_name": "Option2",
31
"default": false,
32
"label": "Option 2"
33
},
34
{
35
"full_name": "Option3",
36
"default": false,
37
"label": "Option 3"
38
}
39
],
40
"value_set_parameters": [
41
{
42
"key": "restricted",
43
"value": "true"
44
}
45
]
46
}
47
}

Sample Output

1
{
2
"result": [
3
{
4
"fullName": "Account.CustomField__c",
5
"success": true
6
}
7
]
8
}

Update record
Copy

Update a record in Salesforce.

Sample Input

1
{
2
"object": "Account",
3
"object_id": "0015000000ABCDEF",
4
"fields": [
5
{
6
"key": "Name",
7
"value": "Acme Corporation"
8
},
9
{
10
"key": "Industry",
11
"value": "Technology"
12
},
13
{
14
"key": "AnnualRevenue",
15
"value": 5000000
16
},
17
{
18
"key": "NumberOfEmployees",
19
"value": 250
20
},
21
{
22
"key": "IsActive",
23
"value": true
24
}
25
],
26
"enable_assignment_rules": "false"
27
}

Sample Output

1
{
2
"success": true
3
}

Upload and link a file to a particular record in Salesforce.

Sample Input

1
{
2
"file": {
3
"name": "Q4_Sales_Report.pdf",
4
"size": 2048576,
5
"type": "application/pdf"
6
},
7
"linked_entity_id": "0015000000ABC123",
8
"share_type": "V",
9
"description": "Q4 Sales Report for review"
10
}

Sample Output

1
{
2
"id": "0695000000XYZ789",
3
"success": true,
4
"errors": []
5
}

Update and write consent across multiple records, helping you sync consent across records or populate the new Consent data model.

Sample Input

1
{
2
"action": "email",
3
"id": "john.doe@example.com",
4
"status": "OptIn",
5
"capture_date": "2023-05-15T10:30:00Z",
6
"capture_contact_point_type": "web",
7
"capture_source": "Website Form",
8
"consent_name": "Marketing Email Consent",
9
"create_individual": true,
10
"double_optIn": "2023-05-15T14:45:00Z",
11
"effective_from": "2023-05-16T00:00:00Z",
12
"effective_to": "2024-05-15T23:59:59Z",
13
"individual_name": "John Doe",
14
"purpose_name": "Marketing Communications"
15
}

Sample Output

1
{
2
"0PK5e000000sYX2GAM": {
3
"result": "success",
4
"edited": [
5
{
6
"objectType": "Individual",
7
"field": "HasOptedOutOfEmail",
8
"valueOfField": "false",
9
"id": "0PK5e000000sYX2GAM"
10
},
11
{
12
"objectType": "ContactPointConsent",
13
"field": "Status",
14
"valueOfField": "OptIn",
15
"id": "0PK5e000000sYX3GAM"
16
},
17
{
18
"objectType": "ContactPointConsent",
19
"field": "CaptureDate",
20
"valueOfField": "2023-05-15T10:30:00Z",
21
"id": "0PK5e000000sYX3GAM"
22
},
23
{
24
"objectType": "ContactPointConsent",
25
"field": "EffectiveFrom",
26
"valueOfField": "2023-05-16T00:00:00Z",
27
"id": "0PK5e000000sYX3GAM"
28
},
29
{
30
"objectType": "ContactPointConsent",
31
"field": "EffectiveTo",
32
"valueOfField": "2024-05-15T23:59:59Z",
33
"id": "0PK5e000000sYX3GAM"
34
}
35
]
36
}
37
}

DDL operations
Copy

List query jobs (DDL)
Copy

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping

Sample Input

1
{}

Sample Output

1
{
2
"done": true,
3
"records": [
4
{
5
"Id": "7504W00000ABCDEFGHI",
6
"Operation": "Query",
7
"Object": "Account",
8
"CreatedById": "0054W00000ABCDEFGHI",
9
"CreatedDate": "2023-05-15T10:30:00.000Z",
10
"SystemModstamp": "2023-05-15T10:35:00.000Z",
11
"State": "Complete",
12
"ConcurrencyMode": "Parallel",
13
"ContentType": "CSV",
14
"ApiVersion": "57.0",
15
"LineEnding": "LF",
16
"ColumnDelimiter": "COMMA"
17
},
18
{
19
"Id": "7504W00000JKLMNOPQR",
20
"Operation": "Query",
21
"Object": "Contact",
22
"CreatedById": "0054W00000JKLMNOPQR",
23
"CreatedDate": "2023-05-14T14:45:00.000Z",
24
"SystemModstamp": "2023-05-14T14:50:00.000Z",
25
"State": "Complete",
26
"ConcurrencyMode": "Parallel",
27
"ContentType": "CSV",
28
"ApiVersion": "57.0",
29
"LineEnding": "LF",
30
"ColumnDelimiter": "COMMA"
31
}
32
],
33
"totalSize": 2
34
}

List report fields (DDL)
Copy

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping

Sample Input

1
{}

Sample Output

1
[
2
{
3
"label": "Account Name",
4
"name": "ACCOUNT_NAME",
5
"type": "string"
6
},
7
{
8
"label": "Annual Revenue",
9
"name": "ANNUAL_REVENUE",
10
"type": "currency"
11
},
12
{
13
"label": "Created Date",
14
"name": "CREATED_DATE",
15
"type": "datetime"
16
},
17
{
18
"label": "Industry",
19
"name": "INDUSTRY",
20
"type": "picklist"
21
},
22
{
23
"label": "Number of Employees",
24
"name": "NUMBER_OF_EMPLOYEES",
25
"type": "int"
26
},
27
{
28
"label": "Owner",
29
"name": "OWNER_NAME",
30
"type": "string"
31
},
32
{
33
"label": "Type",
34
"name": "ACCOUNT_TYPE",
35
"type": "picklist"
36
}
37
]

List report fields for standard date filter (DDL)
Copy

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping

Sample Input

1
{}

Sample Output

1
{
2
"options": [
3
{
4
"label": "Created Date",
5
"value": "CreatedDate"
6
},
7
{
8
"label": "Last Modified Date",
9
"value": "LastModifiedDate"
10
},
11
{
12
"label": "Last Activity Date",
13
"value": "LastActivityDate"
14
},
15
{
16
"label": "Close Date",
17
"value": "CloseDate"
18
},
19
{
20
"label": "Next Step Date",
21
"value": "NextStepDate"
22
}
23
]
24
}

List report types (DDL)
Copy

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping

Sample Input

1
{}

Sample Output

1
{
2
"reportTypes": [
3
{
4
"label": "Accounts",
5
"value": "accounts"
6
},
7
{
8
"label": "Opportunities",
9
"value": "opportunities"
10
},
11
{
12
"label": "Leads",
13
"value": "leads"
14
},
15
{
16
"label": "Contacts",
17
"value": "contacts"
18
},
19
{
20
"label": "Cases",
21
"value": "cases"
22
},
23
{
24
"label": "Campaigns",
25
"value": "campaigns"
26
},
27
{
28
"label": "Activities",
29
"value": "activities"
30
},
31
{
32
"label": "Forecasts",
33
"value": "forecasts"
34
},
35
{
36
"label": "Products",
37
"value": "products"
38
},
39
{
40
"label": "Custom Object",
41
"value": "custom_object__c"
42
}
43
]
44
}

List reports (DDL)
Copy

Note that DDL operations can only be called directly by Connectors API, or when using CustomJS in the Embedded solution editor for e.g. DDL-dependent data mapping

Sample Input

1
{}

Sample Output

1
{
2
"reports": [
3
{
4
"id": "00O1a000006Mk7JEAS",
5
"name": "Closed Sales This Quarter",
6
"description": "Shows all closed deals for the current quarter",
7
"type": "tabular",
8
"ownerId": "0051a000000FHJpAAO",
9
"folderName": "Sales Reports",
10
"createdDate": "2023-05-15T09:30:00.000Z",
11
"lastRunDate": "2023-06-01T14:45:00.000Z"
12
},
13
{
14
"id": "00O1a000006Mk7KEAS",
15
"name": "Open Opportunities by Stage",
16
"description": "Displays open opportunities grouped by stage",
17
"type": "summary",
18
"ownerId": "0051a000000FHJqAAO",
19
"folderName": "Pipeline Reports",
20
"createdDate": "2023-04-20T11:15:00.000Z",
21
"lastRunDate": "2023-05-31T16:30:00.000Z"
22
},
23
{
24
"id": "00O1a000006Mk7LEAS",
25
"name": "Lead Source Analysis",
26
"description": "Analyzes lead sources and their conversion rates",
27
"type": "matrix",
28
"ownerId": "0051a000000FHJrAAO",
29
"folderName": "Marketing Reports",
30
"createdDate": "2023-05-01T10:00:00.000Z",
31
"lastRunDate": "2023-06-02T09:00:00.000Z"
32
}
33
]
34
}