Authentication
WRITE API
- Write
READ API
- Read
PLATFORM API
- OAuth
- Project
- Provider App
- Integration
- Revision
- Installation
- Objects & Fields
- Operation
- Provider
- API Key
- Connection
- Group
- Consumer
- Destination
- Upload URL
- Org
- User
- Billing Account
Batch upsert a group of integrations
curl --request PUT \
--url https://api.withampersand.com/v1/projects/{projectIdOrName}/integrations:batch \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '{
"sourceZipUrl": "<string>",
"sourceYaml": "<string>"
}'
[
{
"id": "integration-123",
"projectId": "project-456",
"name": "read-accounts",
"provider": "salesforce",
"createTime": "2023-11-07T05:31:56Z",
"updateTime": "2023-11-07T05:31:56Z",
"latestRevision": {
"id": "revision-id-1",
"specVersion": "1.0.0",
"createTime": "2023-11-07T05:31:56Z",
"content": {
"name": "<string>",
"displayName": "<string>",
"provider": "<string>",
"read": {
"objects": [
{
"objectName": "<string>",
"destination": "<string>",
"schedule": "<string>",
"mapToName": "people",
"mapToDisplayName": "People",
"requiredFields": [
{
"fieldName": "<string>",
"mapToName": "account_id",
"mapToDisplayName": "Account ID"
}
],
"optionalFields": [
{
"fieldName": "<string>",
"mapToName": "account_id",
"mapToDisplayName": "Account ID"
}
],
"optionalFieldsAuto": "all",
"backfill": {
"defaultPeriod": {
"days": 30,
"fullHistory": false
}
},
"delivery": {
"mode": "auto",
"pageSize": 275
}
}
]
},
"write": {
"objects": [
{
"objectName": "<string>",
"inheritMapping": true,
"valueDefaults": {
"allowAnyFields": true
}
}
]
},
"proxy": {
"enabled": true
},
"subscribe": {
"objects": [
{
"objectName": "<string>",
"destination": "<string>",
"inheritFieldsAndMapping": true,
"createEvent": {
"enabled": "always"
},
"updateEvent": {
"enabled": "always",
"watchFieldsAuto": "all",
"requiredWatchFields": [
[
"name",
"domain"
]
]
},
"deleteEvent": {
"enabled": "always"
},
"associationChangeEvent": {
"enabled": "always",
"includeFullRecords": true
},
"otherEvents": [
[
"object.merged",
"object.restored"
]
]
}
]
}
}
}
}
]
Authorizations
Path Parameters
Body
The source of the integrations to upsert. One of sourceZipUrl or sourceYaml is required.
URL of where a zip of the source files can be downloaded (e.g. Google Cloud Storage URL).
A YAML string that defines the integrations.
Response
The integration ID.
"integration-123"
The Ampersand project ID.
"project-456"
The integration name.
"read-accounts"
The SaaS provider that this integration connects to.
"salesforce"
The time the integration was created.
The revision ID.
"revision-id-1"
The spec version string.
"1.0.0"
The time the revision was created.
An object name to map to.
"people"
A display name to map to.
"People"
all
If true, the write object will inherit the mapping from the read object. If false, the write object will have no mapping.
true
Configuration to set default write values for object fields.
If true, the integration will inherit the fields and mapping from the read object.
true
Non-standard events that the integration will subscribe to.
The time the integration was last updated.
Was this page helpful?
curl --request PUT \
--url https://api.withampersand.com/v1/projects/{projectIdOrName}/integrations:batch \
--header 'Content-Type: application/json' \
--header 'X-Api-Key: <api-key>' \
--data '{
"sourceZipUrl": "<string>",
"sourceYaml": "<string>"
}'
[
{
"id": "integration-123",
"projectId": "project-456",
"name": "read-accounts",
"provider": "salesforce",
"createTime": "2023-11-07T05:31:56Z",
"updateTime": "2023-11-07T05:31:56Z",
"latestRevision": {
"id": "revision-id-1",
"specVersion": "1.0.0",
"createTime": "2023-11-07T05:31:56Z",
"content": {
"name": "<string>",
"displayName": "<string>",
"provider": "<string>",
"read": {
"objects": [
{
"objectName": "<string>",
"destination": "<string>",
"schedule": "<string>",
"mapToName": "people",
"mapToDisplayName": "People",
"requiredFields": [
{
"fieldName": "<string>",
"mapToName": "account_id",
"mapToDisplayName": "Account ID"
}
],
"optionalFields": [
{
"fieldName": "<string>",
"mapToName": "account_id",
"mapToDisplayName": "Account ID"
}
],
"optionalFieldsAuto": "all",
"backfill": {
"defaultPeriod": {
"days": 30,
"fullHistory": false
}
},
"delivery": {
"mode": "auto",
"pageSize": 275
}
}
]
},
"write": {
"objects": [
{
"objectName": "<string>",
"inheritMapping": true,
"valueDefaults": {
"allowAnyFields": true
}
}
]
},
"proxy": {
"enabled": true
},
"subscribe": {
"objects": [
{
"objectName": "<string>",
"destination": "<string>",
"inheritFieldsAndMapping": true,
"createEvent": {
"enabled": "always"
},
"updateEvent": {
"enabled": "always",
"watchFieldsAuto": "all",
"requiredWatchFields": [
[
"name",
"domain"
]
]
},
"deleteEvent": {
"enabled": "always"
},
"associationChangeEvent": {
"enabled": "always",
"includeFullRecords": true
},
"otherEvents": [
[
"object.merged",
"object.restored"
]
]
}
]
}
}
}
}
]