The Outbound API block is enabled per environment. If the marketer does not see it in the orchestration canvas, contact your Lobyco representative.
At a glance
When the block fires
The block runs each time a customer reaches it in a flow. It must sit downstream of an event block, because that event supplies the data the block sends. The flow itself can be segmentation-based or event-driven, for exampleSegment → Challenge → [event] → OutboundAPI. The only requirement is that an event block comes somewhere before it.
The triggering event can be any of a growing set of platform and activity events. Today that includes customer sign-up, game won, game lost, challenge completed and offer assigned. Lobyco adds event types over time, so treat the list as open.
One event for one customer produces one HTTP request. A failed request affects only that customer’s journey; other customers in the flow continue. The call is one-way. Lobyco records your endpoint’s response for troubleshooting, but the response does not change the flow.
How a request is built
Each time a customer passes through the block, Lobyco:- Takes the event data produced by the upstream event block, for example a sign-up or a purchase event.
- Enriches it with the full customer profile, the purchase details, or both, but only if your templates reference them. See Placeholders.
- Renders the URL, the header values and the body, replacing every placeholder with real data.
- Authenticates: obtains an OAuth2 bearer token, builds a basic auth header, or attaches your custom headers.
- Sends the HTTP request to your endpoint.
- Records the outcome in the run details: status code, response body and response time.
Configuration
Lobyco validates the configuration when the flow is saved. The URL and the method are checked, an inline authentication must be complete, and a referenced integration must exist and not be deleted.
Testing the block
The block’s configuration dialog has a Test button. It sends one real request with the current configuration, authentication included, and shows the status code, the response time and the response body. Use it to confirm credentials and payload shape before publishing the flow, against a test endpoint or a pre-production environment.Placeholders
The URL, the header values and the body are Liquid templates. A placeholder is a property in double curly braces:Data sources
The placeholder namespace for a customer is calledmember, like the API and the memberId field behind it.
Enrichment is automatic and on demand. Lobyco scans your templates and calls the Members API or the Purchase API only when a template references
member. or purchase.. If the required id is missing from the event, or the lookup returns no data, the block fails and no request is sent.
Example body
Supported Liquid features
Conditionals and loops work too. Loops are capped at 10,000 iterations.
Authentication
Three authentication types are supported. Store the credentials once as an Integration in the Lobyco Admin Portal and reference it from any number of flows. Lobyco recommends this over inline credentials. Integration secrets are encrypted at rest with AES-256-GCM, always masked in the UI and in API responses, and rotated in one place. The admin portal also has a Test action that makes a real call with the configured credentials.OAuth2 client credentials
For platforms that issue short-lived bearer tokens, such as Salesforce.
Your identity provider receives this token request:
access_token and expires_in, in seconds. Lobyco then calls your endpoint with Authorization: Bearer {access_token}.
Tokens are cached for 90% of expires_in and reused across executions with the same credentials, so your token endpoint is not called on every event. If expires_in is missing or zero, the token is not cached and is requested per call.
Basic auth
For platforms that authenticate with a username and password, or a key and secret pair, such as Bloomreach private API groups. Lobyco base64-encodesusername:password and sends Authorization: Basic {encoded} on every request.
Custom headers
For platforms that use a static API-key header, such as Iterable’sApi-Key or Adobe’s X-Api-Key. Configure one or more headers, and mark sensitive values as secret so they are encrypted and masked. Every configured header is attached to every request.
What your endpoint must do
- Respond within 5 seconds. The timeout per attempt is 5 seconds by default; Lobyco can change it per environment. If your handling is slow, accept the request, respond, and process it asynchronously.
- Return a 2xx status for success. Any 2xx counts as success. Everything else marks the block execution as failed. Redirects are followed as a standard HTTP client would, with the authentication headers set on the first request.
- Be idempotent. Failed attempts are retried, so the same event can reach your endpoint more than once. Lobyco does not send an idempotency key today. Deduplicate on an identifier from the event payload, such as a receipt id or an activity id.
- Expect UTF-8 JSON when a body is configured. The content type is
application/json; charset=utf-8.
Retries and timeouts
Lobyco retries transient failures only: HTTP
5xx, HTTP 408, network errors and timeouts. Other non-success statuses, such as 400, 401 and 404, are not retried and fail the block at once. The same policy applies to OAuth2 token requests. Lobyco can tune the defaults per environment.
What Lobyco records
For every execution Lobyco records the status code, the response body and the response time in the run details. Flow operators see this data when troubleshooting, so do not return sensitive data in your response body.Security and restrictions
- Private networks are blocked. The target URL and the OAuth2 token URL must not resolve, directly or through DNS, to a private or link-local address. That covers
127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,169.254.0.0/16and Lobyco’s internal ranges. Lobyco checks this when the flow is saved and again at execution time, after placeholders are resolved. - Allowed methods are
GET,POST,PUT,DELETEandPATCH. - The body content type is fixed at
application/json; charset=utf-8. Form-urlencoded, XML and multipart cannot be configured, and aContent-Typecustom header is ignored. - Secrets stay secret. OAuth2 client secrets, basic auth passwords and secret custom headers are encrypted at rest, and no Lobyco API or UI returns them in plain text.
Example setups
Each setup is the same short sequence. Create a credential in the external platform, create an integration in the Lobyco Admin Portal, and point the block at the endpoint.Salesforce, with OAuth2 client credentials
- In Salesforce, create a connected app with the client credentials flow enabled, and note the consumer key and secret.
- In the Lobyco Admin Portal, create an Integration of type OAuth2 Client Credentials. The token URL is
https://{your-domain}.my.salesforce.com/services/oauth2/token, the client ID is the consumer key, and the client secret is the consumer secret. - In the Outbound API block, reference the integration and configure the REST endpoint, for example
POST https://{your-domain}.my.salesforce.com/services/data/v60.0/sobjects/Lead/. Build the JSON body fromeventandmemberplaceholders.
Bloomreach, with basic auth
- In Bloomreach, open Project Settings → Access Management → API → API Groups and create a Private API group with the permissions your flow needs. Copy the API key id and the API secret.
- Create a Basic Auth integration with the API key id as the username and the API secret as the password.
- Point the block at the endpoint, for example
POST https://api.exponea.com/track/v2/projects/{projectToken}/customers/events.
/track/v2/... and the consent fetch, also work with a Custom Headers integration carrying Authorization: Token <api_token>, marked secret. Private endpoints, such as /data/v2/... and /api/v2/..., require basic auth. Default to basic auth if your flow touches anything beyond tracking.
API-key platforms, with custom headers
For Iterable, Adobe or your own webhook receiver, create a Custom Headers integration with the vendor’s key header, such asApi-Key or X-Api-Key. Mark the value as secret and reference the integration from the block.
Related
- InboundAPI integration — the other direction, where your system starts a flow.
- Events — the JSON Schemas of the event payloads the
eventplaceholders draw on. - Block reference — what the marketer configures on the Outbound API block.