Skip to main content
POST
/
v2
/
entity-ingestion-configs
Create Entity Ingestion Config
curl --request POST \
  --url https://public.api.serval.com/v2/entity-ingestion-configs \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "teamId": "<string>",
  "appInstanceId": "<string>",
  "workflowId": "<string>",
  "enabled": true,
  "syncDeletions": true,
  "internalEntityTypeId": "<string>",
  "initialFieldMappings": [
    {
      "internalFieldId": "<string>",
      "externalFieldPath": "<string>"
    }
  ]
}
'
{
  "data": {
    "id": "<string>",
    "appInstanceId": "<string>",
    "workflowId": "<string>",
    "enabled": true,
    "createdAt": "2023-11-07T05:31:56Z",
    "updatedAt": "2023-11-07T05:31:56Z",
    "teamId": "<string>",
    "serviceName": "<string>",
    "workflowName": "<string>",
    "isWorkflowPublished": true,
    "hasIngestionContext": true,
    "syncDeletions": true,
    "internalEntityTypeId": "<string>"
  }
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
teamId
string

The ID of the team.

appInstanceId
string

The ID of the app instance (e.g., a ServiceNow connection).

workflowId
string

The ID of the workflow that performs the entity sync.

enabled
boolean | null

Whether the ingestion config is enabled. Defaults to true.

syncDeletions
boolean | null

Whether to sync deletions. Defaults to false.

internalEntityTypeId
string

The entity type ID that this ingestion populates.

initialFieldMappings
InitialFieldMapping · object[]

Optional initial field mappings to create alongside the ingestion config. When provided, field mappings are created automatically so data flows from external fields into entity type fields without requiring separate inference or manual configuration.

Response

Success

data
data · object

The created ingestion config.