All resources
Build4 min read

Calling external systems with connectors

Call REST, GraphQL and SOAP services or send email straight from a service task — configured, not coded.

In short

  • 01

    Four connectors today: HTTP, GraphQL, SOAP and Email.

  • 02

    Credentials stay in a connection or secret, never in the diagram.

  • 03

    Map process variables in and response fields out.

For a simple call to another system you do not need to write a worker. A connector turns a service task into a configured call.

Process variables
Input mapping
Connector call
Output mapping
Process variables

Available connectors

ConnectorUse it forFails the task when
HTTPREST APIs and webhooksThe call fails or times out
GraphQLGraphQL queries and mutationsThe response contains errors
SOAPSOAP 1.1 web servicesThe service returns a SOAP fault
EmailSending mail over SMTPThe mail server rejects the message
A SQL connector is not available yet. For databases and anything else, write a job worker.

Mapping data in and out

Each connector input gets its value from one of three places.

SourceValue comes fromUse it for
VariableA process variableData that changes per instance, such as an email address
SecretA named secret, looked up when the task runsAPI keys and passwords
LiteralA fixed value typed in the diagramConstants such as a subject line

The output mapping does the reverse: it names which response fields to keep and which process variables to store them in.

<bpmn:serviceTask id="notify-approver"
    orkovia:connectorType="email"
    orkovia:connectorInputMapping='{"to": {"source": "VARIABLE", "value": "approverEmail"},
                                    "apiKey": {"source": "SECRET", "value": "smtp-credentials"}}'
    orkovia:connectorOutputMapping='{"messageId": "notificationId"}'
    orkovia:connectorRetryPolicy='{"maxAttempts": 3, "retryDelayMillis": 500}'/>

Connections

A connection stores the address and credentials of a system once, per environment. Tasks point at the connection, so the diagram stays the same between test and production. You can enable, disable and test a connection from Studio.

Testing a connection checks that it is completely configured. It does not make a live call to the other system.

Retries

Give a connector task a retry policy — a number of attempts and a delay between them. Without one, the task is tried once.

See it on your own process

Book a walkthrough with the Orkovia team.

Request a Demo