Entity Pipeline

Varsha Neelesh
Varsha Neelesh
  • Updated

List Functions

Gets a list of all functions. Filter by scope for ENTITY or ATTRIBUTE pipelines. Default scope is ENTITY.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Query Params

 Name
 Type
 Required
scope

Scope to filter the functions by - ENTITY or ATTRIBUTE

string
required-table (1).svg

Example

Request Sample

curl --request GET --url https://api.syncari.com/api/v1/pipeline/functions \
--header 'Accept: application/json' \
--header 'Authorization: FTON46895FBIl' \
--header 'Content-Type: application/json' \
--header 'clientRequestId: 123456789' \
--header 'syncariId: VBKIUF'

 

Response Sample

{
  "success": true,
  "requestId": "9591480035",
  "timestamp": "2022-06-02T15:58:43.429641Z",
  "cursorToken": "NjI5OGRlMmU4ZDMyZmE1NTliNzE3NWFm",
  "result": [
    {
      "id": "6298de318d32fa559b7175d1",
      "createdBy": null,
      "createdAt": null,
      "updatedBy": null,
      "updatedAt": null,
      "apiName": "advancedAttachRecord",
      "displayName": "Attach Record",
      "description": null,
      "helpSummary": "Used to attach an incoming record from the source Synapse to an existing Syncari record according to your criteria.",
      "outputType": {
        "name": "object",
        "javaType": "java.lang.Object"
      },
      "scope": "ENTITY",
      "type": "STANDARD",
      "configuration": [
        {
          "name": "attachPredicate",
          "label": "Lookup Syncari Record To Attach",
          "helpSummary": "Add the conditions that will be used to lookup an existing Syncari record, which will then be attached to the incoming record. If right side value of any condition is null or empty, no existing records will be matched. This is to avoid accidentally looking up records that have empty values for a field and assuming they are a match.",
          "datatype": {
            "name": "predicate",
            "javaType": "java.lang.String"
          },
          "defaultValue": "",
          "helpText": "Add the conditions that will be used to lookup an existing Syncari record, which will then be attached to the incoming record. If right side value of any condition is null or empty, no existing records will be matched. This is to avoid accidentally looking up records that have empty values for a field and assuming they are a match.",
          "configuration": [],
          "additionalProperties": {
            "fieldSet": "conditionFields"
          },
          "required": true
        },
        {
          "name": "field",
          "label": "Field",
          "helpSummary": null,
          "datatype": {
            "name": "picklist",
            "javaType": "java.lang.Object"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {
            "fieldSet": "conditionFields"
          },
          "required": false
        },
        {
          "name": "operator",
          "label": "Operator",
          "helpSummary": null,
          "datatype": {
            "name": "picklist",
            "javaType": "java.lang.Object"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {
            "fieldSet": "conditionFields",
            "dependsOn": {
              "dependantField": "configuration.field",
              "dependantType": "Operator"
            }
          },
          "required": false
        },
        {
          "name": "value",
          "label": "Value",
          "helpSummary": null,
          "datatype": {
            "name": "string",
            "javaType": "java.lang.String"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {
            "fieldSet": "conditionFields"
          },
          "required": false
        }
      ]
    }
  ]
}

 


List Actions

Gets a list of all actions. Filter by scope for ENTITY or ATTRIBUTE pipelines. Default scope is ENTITY .

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Query Params

 Name
 Type
 Required
scope

Scope to filter the functions by - ENTITY or ATTRIBUTE

string
required-table (1).svg

Example

Request Sample

curl --request GET --url https://api.syncari.com/api/v1/pipeline/actions \
--header 'Accept: application/json' \
--header 'Authorization: FTON46895FBIl' \
--header 'Content-Type: application/json' \
--header 'clientRequestId: 123456789' \
--header 'syncariId: VBKIUF'

Response Sample

{
  "success": true,
  "requestId": "5967092741",
  "timestamp": "2022-06-02T15:47:11.894571Z",
  "cursorToken": "NjI5OGRiNzE4ZDMyZmE1NGY2N2ZjNzJh",
  "result": [
    {
      "id": "6298db718d32fa54f67fc72e",
      "createdBy": null,
      "createdAt": null,
      "updatedBy": null,
      "updatedAt": null,
      "apiName": "addToHubspotList",
      "displayName": "Add To Hubspot List",
      "description": null,
      "helpSummary": "Add a contact to a Hubspot list.",
      "outputType": null,
      "scope": "ENTITY_AND_ATTRIBUTE",
      "type": "STANDARD",
      "configuration": [
        {
          "name": "synapseId",
          "label": "Synapse",
          "helpSummary": "Choose a Hubspot synapse.",
          "datatype": {
            "javaType": "java.lang.Object",
            "name": "picklist"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {
            "type": "Synapse",
            "synapseType": "hubspot"
          },
          "required": true
        },
        {
          "name": "listId",
          "label": "List Id",
          "helpSummary": "Id of the Hubspot List.",
          "datatype": {
            "javaType": "java.lang.String",
            "name": "string"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {},
          "required": true
        },
        {
          "name": "valueType",
          "label": "Type",
          "helpSummary": "The type of the value being added (Contact Id or Email Address)",
          "datatype": {
            "javaType": "java.lang.Object",
            "name": "picklist"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {
            "values": [
              {
                "label": "Contact Id",
                "value": "contactId"
              },
              {
                "label": "Email Address",
                "value": "email"
              }
            ]
          },
          "required": true
        },
        {
          "name": "value",
          "label": "Value",
          "helpSummary": "Contact Id or Email Address (can be a token too)",
          "datatype": {
            "javaType": "java.lang.String",
            "name": "string"
          },
          "defaultValue": "",
          "helpText": null,
          "configuration": [],
          "additionalProperties": {},
          "required": true
        }
      ]
    }
  ]
}

 


List Entity Pipelines

Gets a list of all pipelines based on status.

 

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg
Query Parameters
Name Type Required Notes
cursorToken string  

Use the value from last response to get the next set of records

limit integer  

Limit the number of the records to be returned

status string  

Status of the pipeline

Allowed values:
published|draft

Default : published

Example

Request Sample

curl --request GET --url https://api.syncari.com/api/v1/pipelines\
--header 'Accept: application/json' \
--header 'Authorization: FTON46895FBIl' \
--header 'Content-Type: application/json' \
--header 'clientRequestId: 123456789' \
--header 'syncariId: VBKIUF'

Response Sample

{
  "success": true,
  "requestId": "9571081918",
  "timestamp": "2022-03-02T05:11:24.931386Z",
  "cursorToken": "NjIxYzYzZmY3MmMwOGQwMDAxNDZmYmEx",
  "result": [
    {
      "id": "621c63ff72c08d000146fba1",
      "name": "Account",
      "createdBy": null,
      "createdAt": null,
      "updatedBy": "61e7410057a5230001cf8fb2",
      "updatedAt": "2022-02-28T05:56:15.779+00:00",
      "entityId": "61dde49c3358d44665aec1e3",
      "parentId": "62086e72adbccc00019373e9",
      "scope": "ENTITY",
      "lastSyncTime": null,
      "syncStatus": null,
      "draftStatus": "DRAFT",
      "nodes": [
        {
          "id": "62086e72adbccc00019373ea",
          "name": "Account",
          "label": "Account",
          "subLabel": "Syncari",
          "configuration": {
            "entityId": "61dde49c3358d44665aec1e3",
            "synapseId": null,
            "enableDeduplicate": false,
            "dataAuthorityStrategy": "NONE"
          },
          "nodeType": "CORE_ENTITY",
          "location": {
            "x": "842",
            "y": "399"
          }
        },
        {
          "id": "62189860d6d85d037a6c0e4f",
          "name": " Customer",
          "label": "Sync from  Customer",
          "subLabel": "Netsuite",
          "configuration": {
            "schedule": "* * * * * *",
            "entityId": "621896e75ba2fe0001349b31",
            "sourceParams": {},
            "synapseId": "621896985ba2fe00013499e3",
            "destinationParams": {}
          },
          "nodeType": "ENTITY_SOURCE",
          "location": {
            "x": "170",
            "y": "442"
          }
        },
        {
          "id": "6218991cd6d85d037a6c1377",
          "name": "Attach Record",
          "label": "Attach Record",
          "subLabel": "",
          "configuration": {
            "functionId": "61dde4a03358d44665aec45c",
            "attachPredicate": {
              "predicates": [
                {
                  "left": {
                    "value": "61dde49c3358d44665aec212",
                    "label": "Syncari: Domain",
                    "type": "variable",
                    "datatype": "string",
                    "picklistGroup": "Existing Record"
                  },
                  "operator": "eq",
                  "right": {
                    "value": "{{Netsuite.customer.custentitydomain}}",
                    "type": "literal"
                  },
                  "predicateId": "6218996fd6d85d037a6c1561"
                }
              ],
              "groupPredicateId": "6218996fd6d85d037a6c1562",
              "operator": "AND"
            },
            "graphVersion": "NEW",
            "description": "",
            "value": ""
          },
          "nodeType": "FUNCTION",
          "location": {
            "x": "485",
            "y": "442"
          }
        },
        {
          "id": "621899abd6d85d037a6c162a",
          "name": " Account",
          "label": "Sync from  Account",
          "subLabel": "Salesforce",
          "configuration": {
            "schedule": "",
            "account_syncari_src_predicate": null,
            "entityId": "61e7856a57a5230001cf93ef",
            "sourceParams": {},
            "synapseId": "61e74a5657a5230001cf91be",
            "destinationParams": {}
          },
          "nodeType": "ENTITY_SOURCE",
          "location": {
            "x": "169",
            "y": "309"
          }
        },
        {
          "id": "621899abd6d85d037a6c15fd",
          "name": "Attach Record",
          "label": "Attach Record",
          "subLabel": "",
          "configuration": {
            "functionId": "61dde4a03358d44665aec45c",
            "attachPredicate": {
              "predicates": [
                {
                  "left": {
                    "value": "61dde49c3358d44665aec212",
                    "label": "Syncari: Domain",
                    "type": "variable",
                    "datatype": "string",
                    "picklistGroup": "Existing Record"
                  },
                  "operator": "eq",
                  "right": {
                    "value": "{{Salesforce.Account.Website}}",
                    "type": "literal"
                  },
                  "predicateId": "621899f0d6d85d037a6c1969"
                }
              ],
              "groupPredicateId": "621899f0d6d85d037a6c196a",
              "operator": "AND"
            },
            "graphVersion": "NEW",
            "description": "",
            "value": ""
          },
          "nodeType": "FUNCTION",
          "location": {
            "x": "483",
            "y": "309"
          }
        },
        {
          "id": "62189a6ed6d85d037a6c1976",
          "name": "Only Referrals",
          "label": "Only Referrals",
          "subLabel": "",
          "configuration": {
            "predicate": {
              "predicates": [
                {
                  "left": {
                    "value": "61dde49c3358d44665aec20b",
                    "label": "Account Source (AccountSource)",
                    "type": "variable",
                    "datatype": "picklist",
                    "picklistGroup": "Account (syncari)"
                  },
                  "operator": "eq",
                  "right": {
                    "value": "Referrals 1 ",
                    "type": "literal"
                  },
                  "predicateId": "62189aeed6d85d037a6c1b13",
                  "name": "predicate"
                }
              ],
              "groupPredicateId": "62189aeed6d85d037a6c1b14",
              "operator": "AND"
            },
            "functionId": "61dde49c3358d44665aec36a",
            "graphVersion": "NEW",
            "description": "",
            "value": ""
          },
          "nodeType": "FUNCTION",
          "location": {
            "x": "841",
            "y": "495"
          }
        },
        {
          "id": "62189b3dd6d85d037a6c1b57",
          "name": " Customer",
          "label": "Sync to  Customer",
          "subLabel": "Netsuite",
          "configuration": {
            "acceptsDeletesFrom": [],
            "entityId": "621896e75ba2fe0001349b31",
            "synapseId": "621896985ba2fe00013499e3"
          },
          "nodeType": "ENTITY_SINK",
          "location": {
            "x": "1217",
            "y": "495"
          }
        },
        {
          "id": "62189b72d6d85d037a6c1cb9",
          "name": " Account",
          "label": "Sync to  Account",
          "subLabel": "Salesforce",
          "configuration": {
            "acceptsDeletesFrom": [],
            "entityId": "61e7856a57a5230001cf93ef",
            "synapseId": "61e74a5657a5230001cf91be"
          },
          "nodeType": "ENTITY_SINK",
          "location": {
            "x": "1219",
            "y": "397"
          }
        }
      ],
      "edges": [
        {
          "id": "143c3b1d",
          "source": {
            "nodeId": "62189860d6d85d037a6c0e4f",
            "datatype": "object",
            "anchor": "1"
          },
          "destination": {
            "nodeId": "6218991cd6d85d037a6c1377",
            "datatype": "object",
            "anchor": "3"
          }
        },
        {
          "id": "7096b469",
          "source": {
            "nodeId": "6218991cd6d85d037a6c1377",
            "datatype": "object",
            "anchor": "1"
          },
          "destination": {
            "nodeId": "62086e72adbccc00019373ea",
            "datatype": "object",
            "anchor": "3"
          }
        },
        {
          "id": "f40c9ebc",
          "source": {
            "nodeId": "621899abd6d85d037a6c162a",
            "datatype": "object",
            "anchor": "1"
          },
          "destination": {
            "nodeId": "621899abd6d85d037a6c15fd",
            "datatype": "object",
            "anchor": "3"
          }
        },
        {
          "id": "0f1ba5ea",
          "source": {
            "nodeId": "621899abd6d85d037a6c15fd",
            "datatype": "object",
            "anchor": "1"
          },
          "destination": {
            "nodeId": "62086e72adbccc00019373ea",
            "datatype": "object",
            "anchor": "3"
          }
        },
        {
          "id": "d40347f4",
          "source": {
            "nodeId": "62086e72adbccc00019373ea",
            "datatype": "object",
            "anchor": "2"
          },
          "destination": {
            "nodeId": "62189a6ed6d85d037a6c1976",
            "datatype": "object",
            "anchor": "0"
          }
        },
        {
          "id": "e892037a",
          "source": {
            "nodeId": "62189a6ed6d85d037a6c1976",
            "datatype": "object",
            "anchor": "1"
          },
          "destination": {
            "nodeId": "62189b3dd6d85d037a6c1b57",
            "datatype": "object",
            "anchor": "3"
          }
        },
        {
          "id": "d8352a86",
          "source": {
            "nodeId": "62086e72adbccc00019373ea",
            "datatype": "object",
            "anchor": "1"
          },
          "destination": {
            "nodeId": "62189b72d6d85d037a6c1cb9",
            "datatype": "object",
            "anchor": "3"
          }
        }
      ]
    }
  ]
}

 


Get Entity Pipeline By Id

Gets an entity pipeline by its id.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg
Path Parameters
Name Type Required
pipelineId string required-table (1).svg

Example

Request Sample

curl --request GET --url https://api.syncari.com/api/v1/pipelines/{pipelineId} \
--header 'Accept: application/json' \
--header 'Authorization: FTON46895FBIl' \
--header 'Content-Type: application/json' \
--header 'clientRequestId: 123456789' \
--header 'syncariId: VBKIUF'

Response Sample

{
  "success": true,
  "requestId": "8293242948",
  "timestamp": "2022-03-02T05:13:05.318222Z",
  "result": {
    "id": "62086e72adbccc00019373e9",
    "name": "Account",
    "createdBy": null,
    "createdAt": null,
    "updatedBy": "61e7410057a5230001cf8fb2",
    "updatedAt": "2022-03-02T05:13:03.874+00:00",
    "entityId": "61dde49c3358d44665aec1e3",
    "parentId": null,
    "scope": "ENTITY",
    "lastSyncTime": "2022-02-28T05:55:58.979Z",
    "syncStatus": "RUNNING",
    "draftStatus": "APPROVED",
    "nodes": [
      {
        "id": "62086e72adbccc00019373ea",
        "name": "Account",
        "label": "Account",
        "subLabel": "Syncari",
        "configuration": {
          "entityId": "61dde49c3358d44665aec1e3",
          "synapseId": null,
          "enableDeduplicate": false,
          "dataAuthorityStrategy": "NONE"
        },
        "nodeType": "CORE_ENTITY",
        "location": {
          "x": "842",
          "y": "399"
        }
      },
      {
        "id": "62189860d6d85d037a6c0e4f",
        "name": " Customer",
        "label": "Sync from  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "schedule": "* * * * * *",
          "entityId": "621896e75ba2fe0001349b31",
          "sourceParams": {},
          "synapseId": "621896985ba2fe00013499e3",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "170",
          "y": "442"
        }
      },
      {
        "id": "6218991cd6d85d037a6c1377",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Netsuite.customer.custentitydomain}}",
                  "type": "literal"
                },
                "predicateId": "6218996fd6d85d037a6c1561"
              }
            ],
            "groupPredicateId": "6218996fd6d85d037a6c1562",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "485",
          "y": "442"
        }
      },
      {
        "id": "621899abd6d85d037a6c162a",
        "name": " Account",
        "label": "Sync from  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "schedule": "",
          "account_syncari_src_predicate": null,
          "entityId": "61e7856a57a5230001cf93ef",
          "sourceParams": {},
          "synapseId": "61e74a5657a5230001cf91be",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "169",
          "y": "309"
        }
      },
      {
        "id": "621899abd6d85d037a6c15fd",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Salesforce.Account.Website}}",
                  "type": "literal"
                },
                "predicateId": "621899f0d6d85d037a6c1969"
              }
            ],
            "groupPredicateId": "621899f0d6d85d037a6c196a",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "483",
          "y": "309"
        }
      },
      {
        "id": "62189a6ed6d85d037a6c1976",
        "name": "Only Referrals",
        "label": "Only Referrals",
        "subLabel": "",
        "configuration": {
          "predicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec20b",
                  "label": "Account Source (AccountSource)",
                  "type": "variable",
                  "datatype": "picklist",
                  "picklistGroup": "Account (syncari)"
                },
                "operator": "eq",
                "right": {
                  "value": "Referrals 1 ",
                  "type": "literal"
                },
                "predicateId": "62189aeed6d85d037a6c1b13",
                "name": "predicate"
              }
            ],
            "groupPredicateId": "62189aeed6d85d037a6c1b14",
            "operator": "AND"
          },
          "functionId": "61dde49c3358d44665aec36a",
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "841",
          "y": "495"
        }
      },
      {
        "id": "62189b3dd6d85d037a6c1b57",
        "name": " Customer",
        "label": "Sync to  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "621896e75ba2fe0001349b31",
          "synapseId": "621896985ba2fe00013499e3"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1217",
          "y": "495"
        }
      },
      {
        "id": "62189b72d6d85d037a6c1cb9",
        "name": " Account",
        "label": "Sync to  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "61e7856a57a5230001cf93ef",
          "synapseId": "61e74a5657a5230001cf91be"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1219",
          "y": "397"
        }
      }
    ],
    "edges": [
      {
        "id": "143c3b1d",
        "source": {
          "nodeId": "62189860d6d85d037a6c0e4f",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "6218991cd6d85d037a6c1377",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "7096b469",
        "source": {
          "nodeId": "6218991cd6d85d037a6c1377",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "f40c9ebc",
        "source": {
          "nodeId": "621899abd6d85d037a6c162a",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621899abd6d85d037a6c15fd",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "0f1ba5ea",
        "source": {
          "nodeId": "621899abd6d85d037a6c15fd",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "d40347f4",
        "source": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "2"
        },
        "destination": {
          "nodeId": "62189a6ed6d85d037a6c1976",
          "datatype": "object",
          "anchor": "0"
        }
      },
      {
        "id": "e892037a",
        "source": {
          "nodeId": "62189a6ed6d85d037a6c1976",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62189b3dd6d85d037a6c1b57",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "d8352a86",
        "source": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62189b72d6d85d037a6c1cb9",
          "datatype": "object",
          "anchor": "3"
        }
      }
    ]
  }
}

 


Create Entity Pipeline

Create a new entity pipeline using this api. New nodes, the id for nodes and nodeId for edges is required. Please start the id with "New nodeId: user-assigned-id". This id needs to correspond with the correct nodeId on edges. This user assigned id will be replaced with a Syncari id.

Schedule on source nodes uses cron format with seconds. It consists of 6 space separated values. In order seconds, minutes, hour, day of the month, month, day of the week. For example: 0/15 1 2 3 4 5 translates to: Every 15 seconds, at 1 minutes past the hour, between 02:00 AM and 02:59 AM, on day 3 of the month, and on Friday, only in April (UTC).

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Body (application/json)

Name Type Required Notes
name string required-table (1).svg  
entityId string required-table (1).svg  

nodes

id

name

label

sublabel

configuration

    entityId

    synapseId

    enableDeduplicate

    dataAuthorityStrategy

nodeType

location

edges

    source

        nodeId

        datatype

        anchor

    destination

        nodeId

        datatype

        anchor

array[object]

string

string

string

string

object

string

string

boolean

string

string

object

array[object]

object

string

string

string

object

string

string

string

required-table (1).svg

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

label is used to set the label for function and action nodes

 

sublabel is used to set the subLabel for function and action nodes

 

anchor relates to the arrows connecting nodes in UI. The numbering goes from 0 to 3 with 0 corresponding to the top of the node and the numbers moving clockwise.

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' \
  --data '{
  "name": "Program",
  "entityId": "62006f167a476c0807a0732c",
  "nodes": [
    {
      "id": "New nodeId: 1",
      "name": "Program",
      "label": "Program",
      "subLabel": "Syncari",
      "configuration": {
        "entityId": "62006f167a476c0807a0732c",
        "synapseId": null,
        "enableDeduplicate": false,
        "dataAuthorityStrategy": "NONE"
      },
      "nodeType": "CORE_ENTITY",
      "location": {}
    },
    {
      "id": "New nodeId: 2",
      "name": "Program",
      "label": "Sync from Program",
      "subLabel": "Active Marketo",
      "configuration": {
        "schedule": "",
        "entityId": "62006e8f7a476c0807a06fde",
        "sourceParams": {},
        "synapseId": "61f8a7ce9dcaf01a0f2576bf",
        "destinationParams": {}
      },
      "nodeType": "ENTITY_SOURCE",
      "location": {
        "y": "400",
        "x": "300"
      }
    },
    {
      "id": "New nodeId: 3",
      "name": "Program",
      "label": "Sync to Program",
      "subLabel": "Active Marketo",
      "configuration": {
        "acceptsDeletesFrom": [],
        "entityId": "62006e8f7a476c0807a06fde",
        "synapseId": "61f8a7ce9dcaf01a0f2576bf"
      },
      "nodeType": "ENTITY_SINK",
      "location": {
        "y": "400",
        "x": "900"
      }
    }
  ],
  "edges": [
    {
      "source": {
        "nodeId": "New nodeId: 2",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "New nodeId: 1",
        "datatype": "object",
        "anchor": "3"
      }
    },
    {
      "source": {
        "nodeId": "New nodeId: 1",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "New nodeId: 3",
        "datatype": "object",
        "anchor": "3"
      }
    }
  ]
}'

Response Sample

{
  "success": true,
  "requestId": "8293242948",
  "timestamp": "2022-03-02T05:13:05.318222Z",
  "result": {
    "id": "62086e72adbccc00019373e9",
    "name": "Account",
    "createdBy": null,
    "createdAt": null,
    "updatedBy": "61e7410057a5230001cf8fb2",
    "updatedAt": "2022-03-02T05:13:03.874+00:00",
    "entityId": "61dde49c3358d44665aec1e3",
    "parentId": null,
    "scope": "ENTITY",
    "lastSyncTime": "2022-02-28T05:55:58.979Z",
    "syncStatus": "RUNNING",
    "draftStatus": "APPROVED",
    "nodes": [
      {
        "id": "62086e72adbccc00019373ea",
        "name": "Account",
        "label": "Account",
        "subLabel": "Syncari",
        "configuration": {
          "entityId": "61dde49c3358d44665aec1e3",
          "synapseId": null,
          "enableDeduplicate": false,
          "dataAuthorityStrategy": "NONE"
        },
        "nodeType": "CORE_ENTITY",
        "location": {
          "x": "842",
          "y": "399"
        }
      },
      {
        "id": "62189860d6d85d037a6c0e4f",
        "name": " Customer",
        "label": "Sync from  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "schedule": "* * * * * *",
          "entityId": "621896e75ba2fe0001349b31",
          "sourceParams": {},
          "synapseId": "621896985ba2fe00013499e3",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "170",
          "y": "442"
        }
      },
      {
        "id": "6218991cd6d85d037a6c1377",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Netsuite.customer.custentitydomain}}",
                  "type": "literal"
                },
                "predicateId": "6218996fd6d85d037a6c1561"
              }
            ],
            "groupPredicateId": "6218996fd6d85d037a6c1562",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "485",
          "y": "442"
        }
      },
      {
        "id": "621899abd6d85d037a6c162a",
        "name": " Account",
        "label": "Sync from  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "schedule": "",
          "account_syncari_src_predicate": null,
          "entityId": "61e7856a57a5230001cf93ef",
          "sourceParams": {},
          "synapseId": "61e74a5657a5230001cf91be",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "169",
          "y": "309"
        }
      },
      {
        "id": "621899abd6d85d037a6c15fd",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Salesforce.Account.Website}}",
                  "type": "literal"
                },
                "predicateId": "621899f0d6d85d037a6c1969"
              }
            ],
            "groupPredicateId": "621899f0d6d85d037a6c196a",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "483",
          "y": "309"
        }
      },
      {
        "id": "62189a6ed6d85d037a6c1976",
        "name": "Only Referrals",
        "label": "Only Referrals",
        "subLabel": "",
        "configuration": {
          "predicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec20b",
                  "label": "Account Source (AccountSource)",
                  "type": "variable",
                  "datatype": "picklist",
                  "picklistGroup": "Account (syncari)"
                },
                "operator": "eq",
                "right": {
                  "value": "Referrals 1 ",
                  "type": "literal"
                },
                "predicateId": "62189aeed6d85d037a6c1b13",
                "name": "predicate"
              }
            ],
            "groupPredicateId": "62189aeed6d85d037a6c1b14",
            "operator": "AND"
          },
          "functionId": "61dde49c3358d44665aec36a",
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "841",
          "y": "495"
        }
      },
      {
        "id": "62189b3dd6d85d037a6c1b57",
        "name": " Customer",
        "label": "Sync to  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "621896e75ba2fe0001349b31",
          "synapseId": "621896985ba2fe00013499e3"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1217",
          "y": "495"
        }
      },
      {
        "id": "62189b72d6d85d037a6c1cb9",
        "name": " Account",
        "label": "Sync to  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "61e7856a57a5230001cf93ef",
          "synapseId": "61e74a5657a5230001cf91be"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1219",
          "y": "397"
        }
      }
    ],
    "edges": [
      {
        "id": "143c3b1d",
        "source": {
          "nodeId": "62189860d6d85d037a6c0e4f",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "6218991cd6d85d037a6c1377",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "7096b469",
        "source": {
          "nodeId": "6218991cd6d85d037a6c1377",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "f40c9ebc",
        "source": {
          "nodeId": "621899abd6d85d037a6c162a",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621899abd6d85d037a6c15fd",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "0f1ba5ea",
        "source": {
          "nodeId": "621899abd6d85d037a6c15fd",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "d40347f4",
        "source": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "2"
        },
        "destination": {
          "nodeId": "62189a6ed6d85d037a6c1976",
          "datatype": "object",
          "anchor": "0"
        }
      },
      {
        "id": "e892037a",
        "source": {
          "nodeId": "62189a6ed6d85d037a6c1976",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62189b3dd6d85d037a6c1b57",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "d8352a86",
        "source": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62189b72d6d85d037a6c1cb9",
          "datatype": "object",
          "anchor": "3"
        }
      }
    ]
  }
}

 


Replace Entity Pipeline

Replaces an existing entity pipeline. This works only on a draft.

When adding a new node, the id for nodes and nodeId for edges is required. Please start the id with "New nodeId: user-assigned-id". This id needs to correspond with the correct nodeId on edges. This user assigned id will be replaced with a Syncari id.

Schedule on source nodes uses cron format with seconds. It consistents of 6 space separated values. In order seconds, minutes, hour, day of the month, month, day of the week. For example: 0/15 1 2 3 4 5 translates to: Every 15 seconds, at 1 minutes past the hour, between 02:00 AM and 02:59 AM, on day 3 of the month, and on Friday, only in April (UTC).

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be replaced

string
required-table (1).svg

Body (application/json)

Name Type Required Notes
name string required-table (1).svg  
entityId string required-table (1).svg  

nodes

id

name

label

sublabel

configuration

    entityId

    synapseId

    enableDeduplicate

    dataAuthorityStrategy

nodeType

location

edges

    source

        nodeId

        datatype

        anchor

    destination

        nodeId

        datatype

        anchor

array[object]

string

string

string

string

object

string

string

boolean

string

string

object

array[object]

object

string

string

string

object

string

string

string

required-table (1).svg

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

label is used to set the label for function and action nodes

 

sublabel is used to set the subLabel for function and action nodes

 

Anchor relates to the arrows connecting nodes in UI. The numbering goes from 0 to 3 with 0 corresponding to the top of the node and the numbers moving clockwise.

Example

Request Sample

curl --request PUT \
  --url https://api.syncari.com/api/v1/pipelines/pipelineId \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'syncariId: ' \
  --data '{
  "nodes": [
    {
      "id": "621f08139a5b1300015ade4a",
      "name": "Only Referrals",
      "label": "Only Referrals",
      "subLabel": "",
      "configuration": {
        "predicate": {
          "predicates": [
            {
              "left": {
                "value": "61dde49c3358d44665aec20b",
                "label": "Account Source (AccountSource)",
                "type": "variable",
                "datatype": "picklist",
                "picklistGroup": "Account (syncari)"
              },
              "operator": "eq",
              "right": {
                "value": "Referrals 1 ",
                "type": "literal"
              },
              "predicateId": "62189aeed6d85d037a6c1b13",
              "name": "predicate"
            }
          ],
          "groupPredicateId": "62189aeed6d85d037a6c1b14",
          "operator": "AND"
        },
        "functionId": "61dde49c3358d44665aec36a",
        "graphVersion": "NEW",
        "description": "",
        "value": ""
      },
      "nodeType": "FUNCTION",
      "location": {
        "x": "841",
        "y": "495"
      }
    },
    {
      "id": "621f08139a5b1300015ade45",
      "name": "Account",
      "label": "Account",
      "subLabel": "Syncari",
      "configuration": {
        "entityId": "61dde49c3358d44665aec1e3",
        "synapseId": null,
        "enableDeduplicate": false,
        "dataAuthorityStrategy": "NONE"
      },
      "nodeType": "CORE_ENTITY",
      "location": {
        "x": "842",
        "y": "399"
      }
    },
    {
      "id": "621f08139a5b1300015ade49",
      "name": "Attach Record",
      "label": "Attach Record",
      "subLabel": "",
      "configuration": {
        "functionId": "61dde4a03358d44665aec45c",
        "attachPredicate": {
          "predicates": [
            {
              "left": {
                "value": "61dde49c3358d44665aec212",
                "label": "Syncari: Domain",
                "type": "variable",
                "datatype": "string",
                "picklistGroup": "Existing Record"
              },
              "operator": "eq",
              "right": {
                "value": "{{Salesforce.Account.Website}}",
                "type": "literal"
              },
              "predicateId": "621899f0d6d85d037a6c1969"
            }
          ],
          "groupPredicateId": "621899f0d6d85d037a6c196a",
          "operator": "AND"
        },
        "graphVersion": "NEW",
        "description": "",
        "value": ""
      },
      "nodeType": "FUNCTION",
      "location": {
        "x": "483",
        "y": "309"
      }
    },
    {
      "id": "621f08139a5b1300015ade47",
      "name": "Attach Record",
      "label": "Attach Record",
      "subLabel": "",
      "configuration": {
        "functionId": "61dde4a03358d44665aec45c",
        "attachPredicate": {
          "predicates": [
            {
              "left": {
                "value": "61dde49c3358d44665aec212",
                "label": "Syncari: Domain",
                "type": "variable",
                "datatype": "string",
                "picklistGroup": "Existing Record"
              },
              "operator": "eq",
              "right": {
                "value": "{{Netsuite.customer.custentitydomain}}",
                "type": "literal"
              },
              "predicateId": "6218996fd6d85d037a6c1561"
            }
          ],
          "groupPredicateId": "6218996fd6d85d037a6c1562",
          "operator": "AND"
        },
        "graphVersion": "NEW",
        "description": "",
        "value": ""
      },
      "nodeType": "FUNCTION",
      "location": {
        "x": "485",
        "y": "442"
      }
    },
    {
      "id": "621f08139a5b1300015ade48",
      "name": " Account",
      "label": "Sync from  Account",
      "subLabel": "Salesforce",
      "configuration": {
        "schedule": "",
        "account_syncari_src_predicate": null,
        "entityId": "61e7856a57a5230001cf93ef",
        "sourceParams": {},
        "synapseId": "61e74a5657a5230001cf91be",
        "destinationParams": {}
      },
      "nodeType": "ENTITY_SOURCE",
      "location": {
        "x": "169",
        "y": "309"
      }
    },
    {
      "id": "621f08139a5b1300015ade4c",
      "name": " Account",
      "label": "Sync to  Account",
      "subLabel": "Salesforce",
      "configuration": {
        "acceptsDeletesFrom": [],
        "entityId": "61e7856a57a5230001cf93ef",
        "synapseId": "61e74a5657a5230001cf91be"
      },
      "nodeType": "ENTITY_SINK",
      "location": {
        "x": "1219",
        "y": "397"
      }
    },
    {
      "id": "621f08139a5b1300015ade46",
      "name": " Customer",
      "label": "Sync from  Customer",
      "subLabel": "Netsuite",
      "configuration": {
        "schedule": "* * * * * *",
        "entityId": "621896e75ba2fe0001349b31",
        "sourceParams": {},
        "synapseId": "621896985ba2fe00013499e3",
        "destinationParams": {}
      },
      "nodeType": "ENTITY_SOURCE",
      "location": {
        "x": "170",
        "y": "442"
      }
    },
    {
      "id": "621f08139a5b1300015ade4b",
      "name": " Customer",
      "label": "Sync to  Customer",
      "subLabel": "Netsuite",
      "configuration": {
        "acceptsDeletesFrom": [],
        "entityId": "621896e75ba2fe0001349b31",
        "synapseId": "621896985ba2fe00013499e3"
      },
      "nodeType": "ENTITY_SINK",
      "location": {
        "x": "1217",
        "y": "495"
      }
    }
  ],
  "edges": [
    {
      "id": "621f08139a5b1300015ade4d",
      "source": {
        "nodeId": "621f08139a5b1300015ade46",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade47",
        "datatype": "object",
        "anchor": "3"
      }
    },
    {
      "id": "621f08139a5b1300015ade4e",
      "source": {
        "nodeId": "621f08139a5b1300015ade47",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade45",
        "datatype": "object",
        "anchor": "3"
      }
    },
    {
      "id": "621f08139a5b1300015ade4f",
      "source": {
        "nodeId": "621f08139a5b1300015ade48",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade49",
        "datatype": "object",
        "anchor": "3"
      }
    },
    {
      "id": "621f08139a5b1300015ade50",
      "source": {
        "nodeId": "621f08139a5b1300015ade49",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade45",
        "datatype": "object",
        "anchor": "3"
      }
    },
    {
      "id": "621f08139a5b1300015ade51",
      "source": {
        "nodeId": "621f08139a5b1300015ade45",
        "datatype": "object",
        "anchor": "2"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade4a",
        "datatype": "object",
        "anchor": "0"
      }
    },
    {
      "id": "621f08139a5b1300015ade52",
      "source": {
        "nodeId": "621f08139a5b1300015ade4a",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade4b",
        "datatype": "object",
        "anchor": "3"
      }
    },
    {
      "id": "621f08139a5b1300015ade53",
      "source": {
        "nodeId": "621f08139a5b1300015ade45",
        "datatype": "object",
        "anchor": "1"
      },
      "destination": {
        "nodeId": "621f08139a5b1300015ade4c",
        "datatype": "object",
        "anchor": "3"
      }
    }
  ]
}'

Response Sample

{
  "success": true,
  "requestId": "4297410641",
  "timestamp": "2022-03-02T06:01:15.137909Z",
  "result": {
    "id": "621f08139a5b1300015ade44",
    "name": "Account",
    "createdBy": "61e7410057a5230001cf8fb2",
    "createdAt": "2022-03-02T06:00:51.756+00:00",
    "updatedBy": "61e7410057a5230001cf8fb2",
    "updatedAt": "2022-03-02T06:00:51.756+00:00",
    "entityId": "61dde49c3358d44665aec1e3",
    "parentId": "62086e72adbccc00019373e9",
    "scope": "ENTITY",
    "lastSyncTime": null,
    "syncStatus": null,
    "draftStatus": "DRAFT",
    "nodes": [
      {
        "id": "621f08139a5b1300015ade4a",
        "name": "Only Referrals",
        "label": "Only Referrals",
        "subLabel": "",
        "configuration": {
          "predicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec20b",
                  "label": "Account Source (AccountSource)",
                  "type": "variable",
                  "datatype": "picklist",
                  "picklistGroup": "Account (syncari)"
                },
                "operator": "eq",
                "right": {
                  "value": "Referrals 1 ",
                  "type": "literal"
                },
                "predicateId": "62189aeed6d85d037a6c1b13",
                "name": "predicate"
              }
            ],
            "groupPredicateId": "62189aeed6d85d037a6c1b14",
            "operator": "AND"
          },
          "functionId": "61dde49c3358d44665aec36a",
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "841",
          "y": "495"
        }
      },
      {
        "id": "621f08139a5b1300015ade45",
        "name": "Account",
        "label": "Account",
        "subLabel": "Syncari",
        "configuration": {
          "entityId": "61dde49c3358d44665aec1e3",
          "synapseId": null,
          "enableDeduplicate": false,
          "dataAuthorityStrategy": "NONE"
        },
        "nodeType": "CORE_ENTITY",
        "location": {
          "x": "842",
          "y": "399"
        }
      },
      {
        "id": "621f08139a5b1300015ade49",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Salesforce.Account.Website}}",
                  "type": "literal"
                },
                "predicateId": "621899f0d6d85d037a6c1969"
              }
            ],
            "groupPredicateId": "621899f0d6d85d037a6c196a",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "483",
          "y": "309"
        }
      },
      {
        "id": "621f08139a5b1300015ade47",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Netsuite.customer.custentitydomain}}",
                  "type": "literal"
                },
                "predicateId": "6218996fd6d85d037a6c1561"
              }
            ],
            "groupPredicateId": "6218996fd6d85d037a6c1562",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "485",
          "y": "442"
        }
      },
      {
        "id": "621f08139a5b1300015ade48",
        "name": " Account",
        "label": "Sync from  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "schedule": "",
          "account_syncari_src_predicate": null,
          "entityId": "61e7856a57a5230001cf93ef",
          "sourceParams": {},
          "synapseId": "61e74a5657a5230001cf91be",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "169",
          "y": "309"
        }
      },
      {
        "id": "621f08139a5b1300015ade4c",
        "name": " Account",
        "label": "Sync to  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "61e7856a57a5230001cf93ef",
          "synapseId": "61e74a5657a5230001cf91be"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1219",
          "y": "397"
        }
      },
      {
        "id": "621f08139a5b1300015ade46",
        "name": " Customer",
        "label": "Sync from  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "schedule": "* * * * * *",
          "entityId": "621896e75ba2fe0001349b31",
          "sourceParams": {},
          "synapseId": "621896985ba2fe00013499e3",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "170",
          "y": "442"
        }
      },
      {
        "id": "621f08139a5b1300015ade4b",
        "name": " Customer",
        "label": "Sync to  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "621896e75ba2fe0001349b31",
          "synapseId": "621896985ba2fe00013499e3"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1217",
          "y": "495"
        }
      }
    ],
    "edges": [
      {
        "id": "621f08139a5b1300015ade4d",
        "source": {
          "nodeId": "621f08139a5b1300015ade46",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade47",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "621f08139a5b1300015ade4e",
        "source": {
          "nodeId": "621f08139a5b1300015ade47",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade45",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "621f08139a5b1300015ade4f",
        "source": {
          "nodeId": "621f08139a5b1300015ade48",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade49",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "621f08139a5b1300015ade50",
        "source": {
          "nodeId": "621f08139a5b1300015ade49",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade45",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "621f08139a5b1300015ade51",
        "source": {
          "nodeId": "621f08139a5b1300015ade45",
          "datatype": "object",
          "anchor": "2"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade4a",
          "datatype": "object",
          "anchor": "0"
        }
      },
      {
        "id": "621f08139a5b1300015ade52",
        "source": {
          "nodeId": "621f08139a5b1300015ade4a",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade4b",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "621f08139a5b1300015ade53",
        "source": {
          "nodeId": "621f08139a5b1300015ade45",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621f08139a5b1300015ade4c",
          "datatype": "object",
          "anchor": "3"
        }
      }
    ]
  }
}

 


Delete Entity Pipeline

Deletes a pipeline.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be replaced

string
required-table (1).svg

Example

Request Sample

curl --request DELETE \
  --url https://api.syncari.com/api/v1/pipelines/pipelineId \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'clientRequestId: ' \
  --header 'syncariId: '

Response Sample

{
  "success": true,
  "requestId": "5952036550",
  "timestamp": "2022-03-11T00:45:19.608764Z",
  "result": {
    "id": "62133e068ae978b210fdb543",
    "name": "Ticket",
    "createdBy": "61e2a0f134a0f06932046bab",
    "createdAt": "2022-02-21T07:23:50.605+00:00",
    "updatedBy": "61e2a0f134a0f06932046bab",
    "updatedAt": "2022-02-21T07:23:50.605+00:00",
    "entityId": "61e2a1e234a0f06966a197c0",
    "parentId": null,
    "scope": "ENTITY",
    "lastSyncTime": null,
    "syncStatus": null,
    "draftStatus": "DELETED",
    "nodes": [],
    "edges": []
  }
}

 


Test Entity Pipeline

Runs a live test on a pipeline using external ids or a time range.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be tested

string
required-table (1).svg

Body

 Name
 Type
 Required
startTime
string
required-table (1).svg
endTime
string
required-table (1).svg
limit
string
required-table (1).svg
externalRecordIds
object
required-table (1).svg

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines/2245/test \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' \
  --data '{
  "startTime": "2021-06-12T23:10:09.339+00:00",
  "endTime": "2021-11-12T23:10:09.339+00:00",
  "limit": "10"
}'

Response Sample

{
  "success": true,
  "requestId": "1234abcd",
  "timestamp": "2022-02-04T06:13:43.734597Z",
  "result": {
    "id": "5ee40b5107b11100015557de"
  }
}

 


Validate Entity Pipeline

Validates a given pipeline. API will return 409 for conflicts along with a list of error messages.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be validated

string
required-table (1).svg

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines/1234/validate \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' 

Response Sample

{
  "success": true,
  "requestId": "1234abcd",
  "timestamp": "2022-02-04T06:13:43.734597Z",
  "result": {
    "id": "5ee40b5107b11100015557de",
"validationStatus": "success" } }

 


Publish Entity Pipeline

Publish a draft pipeline. Publishing a pipeline makes it live. Data will start flowing from connected sources and into destinations, if any.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be published

string
required-table (1).svg

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines/233/publish \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' 

Response Sample

{
  "success": true,
  "requestId": "8293242948",
  "timestamp": "2022-03-02T05:13:05.318222Z",
  "result": {
    "id": "62086e72adbccc00019373e9",
    "name": "Account",
    "createdBy": null,
    "createdAt": null,
    "updatedBy": "61e7410057a5230001cf8fb2",
    "updatedAt": "2022-03-02T05:13:03.874+00:00",
    "entityId": "61dde49c3358d44665aec1e3",
    "parentId": null,
    "scope": "ENTITY",
    "lastSyncTime": "2022-02-28T05:55:58.979Z",
    "syncStatus": "RUNNING",
    "draftStatus": "APPROVED",
    "nodes": [
      {
        "id": "62086e72adbccc00019373ea",
        "name": "Account",
        "label": "Account",
        "subLabel": "Syncari",
        "configuration": {
          "entityId": "61dde49c3358d44665aec1e3",
          "synapseId": null,
          "enableDeduplicate": false,
          "dataAuthorityStrategy": "NONE"
        },
        "nodeType": "CORE_ENTITY",
        "location": {
          "x": "842",
          "y": "399"
        }
      },
      {
        "id": "62189860d6d85d037a6c0e4f",
        "name": " Customer",
        "label": "Sync from  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "schedule": "* * * * * *",
          "entityId": "621896e75ba2fe0001349b31",
          "sourceParams": {},
          "synapseId": "621896985ba2fe00013499e3",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "170",
          "y": "442"
        }
      },
      {
        "id": "6218991cd6d85d037a6c1377",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Netsuite.customer.custentitydomain}}",
                  "type": "literal"
                },
                "predicateId": "6218996fd6d85d037a6c1561"
              }
            ],
            "groupPredicateId": "6218996fd6d85d037a6c1562",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "485",
          "y": "442"
        }
      },
      {
        "id": "621899abd6d85d037a6c162a",
        "name": " Account",
        "label": "Sync from  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "schedule": "",
          "account_syncari_src_predicate": null,
          "entityId": "61e7856a57a5230001cf93ef",
          "sourceParams": {},
          "synapseId": "61e74a5657a5230001cf91be",
          "destinationParams": {}
        },
        "nodeType": "ENTITY_SOURCE",
        "location": {
          "x": "169",
          "y": "309"
        }
      },
      {
        "id": "621899abd6d85d037a6c15fd",
        "name": "Attach Record",
        "label": "Attach Record",
        "subLabel": "",
        "configuration": {
          "functionId": "61dde4a03358d44665aec45c",
          "attachPredicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec212",
                  "label": "Syncari: Domain",
                  "type": "variable",
                  "datatype": "string",
                  "picklistGroup": "Existing Record"
                },
                "operator": "eq",
                "right": {
                  "value": "{{Salesforce.Account.Website}}",
                  "type": "literal"
                },
                "predicateId": "621899f0d6d85d037a6c1969"
              }
            ],
            "groupPredicateId": "621899f0d6d85d037a6c196a",
            "operator": "AND"
          },
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "483",
          "y": "309"
        }
      },
      {
        "id": "62189a6ed6d85d037a6c1976",
        "name": "Only Referrals",
        "label": "Only Referrals",
        "subLabel": "",
        "configuration": {
          "predicate": {
            "predicates": [
              {
                "left": {
                  "value": "61dde49c3358d44665aec20b",
                  "label": "Account Source (AccountSource)",
                  "type": "variable",
                  "datatype": "picklist",
                  "picklistGroup": "Account (syncari)"
                },
                "operator": "eq",
                "right": {
                  "value": "Referrals 1 ",
                  "type": "literal"
                },
                "predicateId": "62189aeed6d85d037a6c1b13",
                "name": "predicate"
              }
            ],
            "groupPredicateId": "62189aeed6d85d037a6c1b14",
            "operator": "AND"
          },
          "functionId": "61dde49c3358d44665aec36a",
          "graphVersion": "NEW",
          "description": "",
          "value": ""
        },
        "nodeType": "FUNCTION",
        "location": {
          "x": "841",
          "y": "495"
        }
      },
      {
        "id": "62189b3dd6d85d037a6c1b57",
        "name": " Customer",
        "label": "Sync to  Customer",
        "subLabel": "Netsuite",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "621896e75ba2fe0001349b31",
          "synapseId": "621896985ba2fe00013499e3"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1217",
          "y": "495"
        }
      },
      {
        "id": "62189b72d6d85d037a6c1cb9",
        "name": " Account",
        "label": "Sync to  Account",
        "subLabel": "Salesforce",
        "configuration": {
          "acceptsDeletesFrom": [],
          "entityId": "61e7856a57a5230001cf93ef",
          "synapseId": "61e74a5657a5230001cf91be"
        },
        "nodeType": "ENTITY_SINK",
        "location": {
          "x": "1219",
          "y": "397"
        }
      }
    ],
    "edges": [
      {
        "id": "143c3b1d",
        "source": {
          "nodeId": "62189860d6d85d037a6c0e4f",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "6218991cd6d85d037a6c1377",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "7096b469",
        "source": {
          "nodeId": "6218991cd6d85d037a6c1377",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "f40c9ebc",
        "source": {
          "nodeId": "621899abd6d85d037a6c162a",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "621899abd6d85d037a6c15fd",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "0f1ba5ea",
        "source": {
          "nodeId": "621899abd6d85d037a6c15fd",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "d40347f4",
        "source": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "2"
        },
        "destination": {
          "nodeId": "62189a6ed6d85d037a6c1976",
          "datatype": "object",
          "anchor": "0"
        }
      },
      {
        "id": "e892037a",
        "source": {
          "nodeId": "62189a6ed6d85d037a6c1976",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62189b3dd6d85d037a6c1b57",
          "datatype": "object",
          "anchor": "3"
        }
      },
      {
        "id": "d8352a86",
        "source": {
          "nodeId": "62086e72adbccc00019373ea",
          "datatype": "object",
          "anchor": "1"
        },
        "destination": {
          "nodeId": "62189b72d6d85d037a6c1cb9",
          "datatype": "object",
          "anchor": "3"
        }
      }
    ]
  }
}
}

 


Pause Entity Pipeline

Pauses a running pipeline.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be paused

string
required-table (1).svg

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines/34666/pause \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' 

Response Sample

{
  "success": true,
  "requestId": "1234abcd",
  "timestamp": "2022-02-04T06:13:43.734597Z",
  "result": {
    "syncStatus": "PAUSING"
  }
}

 


Resume Entity Pipeline

Resumes a paused pipeline.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be resumed

string
required-table (1).svg

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines/33455/resume \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' 

Response Sample

{
  "success": true,
  "requestId": "1234abcd",
  "timestamp": "2022-02-04T06:13:43.734597Z",
  "result": {
    "syncStatus": "RUNNING"
  }
}

 


Resync Entity Pipeline

Initiates a resync of historical data for an entity pipeline.

Request

Headers

 Name
 Type
 Required
syncariId

Id of the instance the API is to be run against

string
 
clientRequestId
Client side request id to be used for idempotency in the future

 

string
required-table (1).svg

Path Params

 Name
 Type
 Required
pipelineId

Id of the pipeline to be resynced

string
required-table (1).svg

 

Body (application/json)

Name Type Required Notes
entityIds
array[string] required-table (1).svg List of entity IDs where syncari should start resyncing data for.
fromDate
datetime  
Format: yyy-mm-ddThh:mm:ssZ
toDate
datetime

 

Format: yyy-mm-ddThh:mm:ssZ

Example

Request Sample

curl --request POST \
  --url https://api.syncari.com/api/v1/pipelines/34666/resync \
  --header 'Accept: application/json' \
  --header 'Authorization: ' \
  --header 'Content-Type: application/json' \
  --header 'clientRequestId: ' \
  --header 'syncariId: ' \
  --data '{
    "entityIds": ["12d12dd23f"],
    "fromDate": "1975-01-01T00:00:00Z",
    "toDate": "2023-11-23T10:05:45Z"
  }'

Response Sample

{
  "success": true,
  "requestId": "1234abcd",
  "timestamp": "2022-02-04T06:13:43.734597Z",
  "result": {
    "resyncStatus": "queued"
  }
}

 

 

 

Share this

Was this article helpful?

0 out of 0 found this helpful