Synapse Pipeline Job

The Synapse Pipeline job type triggers a pipeline in an Azure Synapse Analytics workspace through the Synapse data-plane REST API (POST /pipelines/{name}/createRun). The pipeline is identified by its name — Polysync stores that in the Job's External Id. The API shape mirrors Azure Data Factory pipelines.

This job type is supported on the Azure Synapse Pipelines platform.

Required job fields

  • External Id — the pipeline name as defined in the Synapse workspace.
  • Job TypeSynapse Pipeline (set automatically on import).

Job discovery

GET https://{workspaceName}.dev.azuresynapse.net/pipelines?api-version=2020-12-01 lists every pipeline in the workspace. Each pipeline's properties.parameters block becomes the Job's parameter schema (with Synapse types String, Int, Bool, SecureString mapped to the matching Polysync data type).

Parameter handling

Polysync POSTs the parameter object as the request body to pipelines/{name}/createRun:

{
  "<parameter-name-1>": <typed-value>,
  "<parameter-name-2>": <typed-value>
}
Direction Sent in createRun Updated from response
(all) (not supported)

Direction is not honoured for this job type — every Polysync parameter is forwarded as-is. Synapse pipelines have no equivalent of ADF's pipelineReturnValue, so output parameters are not supported.

Match the parameter's Data Type to the Synapse pipeline parameter's type (String, Int, Bool, SecureString) — the serializer renders the right JSON token at run time.

Execution flow

  1. Polysync POSTs the parameter body to pipelines/{name}/createRun?api-version=2020-12-01.

  2. The response runId becomes the Polysync RunId.

  3. Status is polled via GET pipelineruns/{runId}?api-version=2020-12-01 and decoded:

    Synapse status Polysync status
    Succeeded / Success / Completed Success
    Failed / Failure / Error Failed
    Cancelled / Canceled Cancelled
    Queued / Pending Starting
    InProgress / Running Running
    (other) Unknown
  4. Cancel is supported via POST pipelineruns/{runId}/cancel?api-version=2020-12-01.

Monitor URL

https://web.azuresynapse.net/en/monitoring/pipelineruns/{runId}
  ?workspace=/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}
   /providers/Microsoft.Synapse/workspaces/{workspaceName}

Best practices

  • Set the right Data Type per parameter so the JSON body uses the correct token shape (Synapse Int parameters refuse string values).
  • For values that need to remain in a Vault, use a SecureString pipeline parameter on the Synapse side and a Secret Polysync parameter on this side — Polysync's secret resolution still happens before serialization.

Troubleshooting

  • PipelineNotFound — the External Id is not a pipeline in the workspace. Re-import from the Platform editor.
  • 401/403 on createRun — the identity used by the Platform is missing the Synapse Contributor role (or Microsoft.Synapse/workspaces/pipelines/createRun/action) on the workspace.
  • Run failed with parameter type error — the Polysync parameter's Data Type does not match the Synapse pipeline parameter type. Edit the Polysync parameter and set the matching type.