Running Albato Triggers and Actions via API (beta)
This documentation provides a step-by-step guide on how to run a partner’s API trigger or action once using Albato’s Universal API.
Beta Version: This API is currently available in beta. Please note that some features may change or be updated after the pilot program.
Table of Contents
- Overview
- Step Sequence
- General Information
- Step 1. Get Partner List
- Step 2. Create Partner Connection
- Step 3. Get Triggers and Actions
- Step 4. Get Trigger/Action Field Schema
- Step 5. Run Trigger or Action
Overview
Albato’s Universal API allows you to launch API triggers and actions of any partner without creating a permanent automation. This guide describes how to perform a one-time execution.
Important Limitation: Universal API only supports working with actions, tools, and API triggers. Webhook triggers are not supported at this time.
Step Sequence
To run a one-time execution of a partner’s API trigger or action:
- Request the list of Albato partners and get the required
partnerId. - Create a connection for the selected partner.
- Request the list of triggers and actions and get the required
triggerActionId. - Request the field schema for the trigger/action.
- Send a request to run the trigger/action.
General Information
-
All requests must use the master account token.
Obtain an authToken using the user's email and password.
Request:
POST https://uapi.albato.com/user/auth -
Contact your Albato manager to set up a master account.
Step 1. Get Partner List
Goal: Find the required partner and get its partnerId.
Request:
GET /partners/infoSupports filtering by partner name.
Recommendations:
- Use a name filter:
filter[title][like]. - Filter out
deprecatedpartners — they are no longer supported.
Result: You receive the partnerId (e.g., HubSpot).
Step 2. Create Partner Connection
Goal: Create a connection to the partner and obtain credentialId.
Recommendation:
The easiest way is to create the connection via a link. Complete all required steps and save the credentialId.
Step 3. Get Triggers and Actions
Goal: Select the required trigger/action and obtain its triggerActionId.
Request:
GET /partners/trigger-actions/infoFilters:
partnerId(from Step 1).isAction(to get only triggers or only actions).
Result: A list of available triggers/actions with triggerActionId.
Select and save the needed one (e.g., Create new Contact).
Step 4. Get Trigger/Action Field Schema
Goal: Get the variable descriptions for the trigger/action.
Request:
POST /partners/trigger-actions/{triggerActionId}/run/infoResult:
The response contains triggerAction object with:
variables— list of top-level variables.rowSections— sections with arrays of objects.
Interpreting the Schema
-
Variable type is defined by
type. -
Possible
typevalues:Value Type 1 String 2 Integer 3 Decimal 4 Boolean 5 DateTime (unix time stamp) 6 Phone 7 File 8 Date 9 Nullable Boolean 100+n Array, element type n -
isEditable: only these fields can be used in request payload (runnerData). -
isRequired: must be filled. -
data[]: dictionary of acceptable values.
Sample Schema Response (fragment):
{
"triggerAction": {
"variables": [
{
"type": 1,
"name": "name",
"label": "The name",
"isRequired": true,
"isEditable": true
},
{
"type": 1,
"name": "visible_to",
"label": "Visibility - ID",
"isEditable": true,
"data": [
{
"key": "1",
"label": "Owner & followers"
},
{
"key": "3",
"label": "Entire company"
}
]
}
],
"rowSections": [
{
"name": "email",
"label": "Emails",
"variables": [
{
"type": 1,
"name": "value",
"label": "Email",
"isEditable": true
},
{
"type": 1,
"name": "label",
"label": "Email type - ID",
"isEditable": true,
"data": [
{
"key": "work",
"label": "Work"
},
{
"key": "home",
"label": "Home"
}
]
}
]
}
]
}
}Building credentialData
credentialDatacredentialData stores connection data:
- Position
"0"= yourcredentialId.
Example:
{
"credentialData": {
"0": { "value": 12345 }
}
}Building runnerData
runnerDatarunnerData stores the launch data. Keys = schema variable names.
Without rowSections:
{
"runnerData": {
"name": "Demo Person",
"visible_to": "3",
"cf__custom_field_1": "Value for field 1"
}
}With rowSections:
{
"runnerData": {
"email": [
{ "value": "[email protected]", "label": "work", "primary": "1" }
],
"phone": [
{ "value_": "777-777-7777", "label_": "work", "primary_": "0" }
]
}
}Step 5. Run Trigger or Action
Goal: Execute the selected trigger/action with payload.
Execution modes:
- Sync:
/partners/trigger-actions/:triggerActionId/run/sync - Async:
/partners/trigger-actions/:triggerActionId/run/async
Parameters:
triggerActionId(from Step 3).credentialId(from Step 2).- Only editable variables (see schema in Step 4).
Example Payload:
{
"credentialData": {
"0": { "value": 12345 }
},
"runnerData": {
"name": "Demo Person",
"visible_to": "3",
"cf__custom_field_1": "Value 1",
"cf__custom_field_2": "Value 2",
"email": [
{ "value": "[email protected]", "label": "work", "primary": "1" }
],
"phone": [
{ "value_": "777-777-7777", "label_": "work", "primary_": "0" }
]
}
}Updated 26 days ago
