Enable Integration Connection: /integration-connections/{connection_uuid}/enable
Purpose
This API enables an existing integration connection that is currently inactive or disabled. It activates the specified integration connection identified by its UUID, allowing it to resume functionality in data synchronization or other integration processes. The response confirms the updated connection status and may include metadata such as integration partner, remote instance details, and credentials. This endpoint is typically used when reactivating previously deactivated connections due to configuration changes, token expirations, or manual disabling.
Use Case
This API is useful for system administrators or integration managers who need to re-enable a previously disabled integration connection. It supports operational workflows such as resuming automated data flows, restoring external system access, or revalidating OAuth tokens after downtime or configuration updates. If the UUID is invalid, the user lacks proper permissions, or authentication fails, the API returns structured error details to assist with resolution and diagnostics.
Path Parameters
Parameter | Type | Description |
---|---|---|
connection_uuid | String | Unique ID of a integration connection |
Query Parameters
No query parameters required for this endpoint.
Request Body
No request body is required for this endpoint.
Response
When the integration connection is successfully enabled, the API returns a confirmation response in JSON format. This response typically includes a simple message indicating that the integration has been activated, such as: "XERO integration has been enable successfully"
. This confirms that the specified connection is now active and ready for use in integration workflows. In the event of an error, such as an invalid or missing connection UUID, insufficient permissions, authentication failure, or a backend issue—the API returns a structured error response containing diagnostic information. This helps developers and administrators troubleshoot the issue effectively.
Response Body
{
"message": "INTEGRATION_NAME integration has been enable successfully"
}
Disable Integration Connection: /integration-connections/{connection_uuid}/disable
Purpose
This API disables an existing integration connection that is currently active. It deactivates the specified integration connection identified by its UUID, preventing it from participating in further data synchronization or integration workflows. The response confirms that the connection has been successfully disabled. This endpoint is typically used in scenarios where an integration must be paused due to maintenance, credential changes, security concerns, or administrative decisions.
Use Case
This API is useful for system administrators or integration managers who need to temporarily or permanently disable a specific integration connection. It supports operational workflows such as halting automated data exchanges, revoking access to third-party systems, or enforcing policy-based integration controls. If the UUID is incorrect, access is denied, or authentication fails, the API returns detailed error responses to help diagnose and resolve the issue.
Path Parameters
Parameter | Type | Description |
---|---|---|
connection_uuid | String | Unique ID of a integration connection |
Query Parameters
No query parameters required for this endpoint.
Request Body
No request body is required for this endpoint.
Response
When the integration connection is successfully disabled, the API returns a confirmation response in JSON format. This response typically includes a simple message indicating that the integration has been deactivated, such as: "XERO integration has been disable successfully"
. This confirms that the specified connection is no longer active and will not participate in further integration workflows. In the event of an error—such as an invalid or missing connection UUID, lack of permissions, failed authentication, or a backend service issue—the API returns a structured error response with diagnostic information to assist developers and administrators in resolving the problem efficiently.
Response Body
{
"message": "INTEGRATION_NAME integration has been disable successfully"
}
Create Partner Function: /integration/{connection_uuid}/partner-function/
Purpose
This API endpoint is used to create a new partner function within a specified integration connection. It registers a configuration that defines how a particular data object (e.g., customer, item) should behave during specific events (e.g., import, update) within the integration. The request body must include all necessary function metadata, such as the function name, direction, object mapping, event name, and description. The partner function is stored under the integration connection identified by the provided connection_uuid
.
Use Case
This API is helpful when setting up integration workflows that require custom rules or automated actions based on external events. For example, a developer can use it to define what should happen when a "customer" object is updated in a connected system like Xero. It's commonly used during integration setup, onboarding new systems, or expanding automation rules. If the connection_uuid
is invalid, authentication fails, or the payload is missing required information, the API will return an error response with helpful diagnostic details.
Path Parameters
Parameter | Type | Description |
---|---|---|
connection_uuid | String | Unique ID of the integration connection |
Query Parameters
No query parameters are required for this endpoint.
Request Body
{
"partner_function": {
"name": "PartnerRole",
"direction": "IMPORT",
"description": "Handles partner data import operations",
"object_name": "CustomerRecord",
"object_mapping": "customer_to_partner",
"event_name": "updateEvent",
"tag": "import_inventory_process"
}
}
Response
When a partner function is successfully created, the API returns a response containing detailed metadata about the newly created integration function. This includes attributes such as the function's unique UUID, name, description, direction (e.g., import or export), associated event name, provider name, object name and mapping, script references (if any), and timestamps for creation and last update. The response is structured as a JSON object reflecting the PartnerFunctionCreateResponseDTO, which encapsulates a PartnerFunctionDTO with all relevant partner function details. If the creation fails due to invalid input, missing required fields, authentication failure, or insufficient permissions, the API returns a structured error response with an error message, backend error details, and raw response data to aid in troubleshooting and resolving the issue.
Response Body
{
"partner_function": {
"uuid": "PARTNER_FUNCTION_UUID",
"name": "PARTNER_FUNCTION_NAME",
"description": "PARTNER_FUNCTION_DESCRIPTION",
"direction": "IMPORT_OR_EXPORT",
"event_name": "EVENT_NAME",
"provider_name": "INTEGRATION_PROVIDER_NAME",
"object_name": "OBJECT_NAME",
"mapping_id": "MAPPING_ID",
"enabled": "BOOLEAN_STRING",
"pre_run_script_id": "PRE_RUN_SCRIPT_ID",
"post_run_script_id": "POST_RUN_SCRIPT_ID",
"tag": "TAG_VALUE",
"created": "CREATED_TIMESTAMP",
"updated": "UPDATED_TIMESTAMP",
"object_mapping": "OBJECT_MAPPING_NAME"
}
}
Enable Partner Function: /integration/{{connection-uuid}}/partner-function/{{partner_function _uuid}}/enable
Purpose
This API endpoint enables a previously disabled or inactive partner function associated with an integration connection. It activates the specified partner function identified by its UUID, allowing it to execute as part of the integration's automated workflows or event-based processing. This operation is essential when reactivating partner functions that were temporarily deactivated due to errors, updates, or administrative decisions.
Use Case
This API is used by integration administrators or developers to re-enable a specific partner function that was previously disabled. It is helpful when restoring functionality for data imports, exports, or event-based triggers within an integration. Common scenarios include resuming operations after maintenance, re-establishing event handlers, or enabling functions after updating mapping rules or credentials. If the provided UUIDs are invalid, or the caller lacks permissions, the API returns a structured error response to support quick resolution.
Path Parameters
Parameter | Type | Description |
---|---|---|
connection_uuid | String | Unique ID of the integration connection |
partner_function_uuid | String | Unique ID of the partner function to be enabled |
Query Parameters
No query parameters are required for this endpoint.
Request Body
No request body is required for this endpoint.
Response
Enabling a partner function returns a confirmation response indicating that the function has been successfully activated. The response is structured as a PartnerFunctionEnableResponseDTO
object and includes a message field, such as: "Partner function has been enabled successfully". This message confirms that the specified partner function is now active and can participate in integration workflows. If the request fails, due to reasons like an invalid connection UUID, incorrect partner function UUID, insufficient permissions, or authentication errors, an ABException
is raised. This exception contains the error message, backend diagnostic details, and raw API response to support troubleshooting and resolution.
Response Body
{
"message": "Partner function has been enabled successfully"
}
Disable Partner Function: /integration/{{connection-uuid}}/partner-function/{{partner_function_uuid}}/disable
Purpose
This API endpoint disables an active partner function associated with a specific integration connection. Once disabled, the specified partner function, identified by its UUID, becomes inactive and will no longer execute within automated workflows or event-based processing. This is useful when temporarily suspending functionality for maintenance, troubleshooting, or administrative reasons.
Use Case
This API is used by developers or integration administrators to deactivate a specific partner function without deleting its configuration. It is helpful when halting data imports/exports or stopping event triggers during reconfiguration, system downtime, or error recovery. If the provided connection UUID or partner function UUID is invalid, or if the caller lacks appropriate access rights, the API returns a structured error response to assist in identifying and resolving the issue.
Path Parameters
Parameter | Type | Description |
---|---|---|
connection_uuid | String | Unique ID of the integration connection |
partner_function_uuid | String | Unique ID of the partner function to be disabled |
Query Parameters
No query parameters are required for this endpoint.
Request Body
No request body is required for this endpoint.
Response
Disabling a partner function returns a confirmation message indicating the function was successfully deactivated. The response is structured as a PartnerFunctionDisableResponseDTO
object, containing a message
field such as: "Partner function has been disabled successfully"
. This confirms that the specified function is now inactive and excluded from integration workflows. If the operation fails—due to an invalid UUID, authentication failure, or lack of permissions—an ABException
is raised. This exception includes a descriptive error message, backend diagnostics, and the raw API response to help with debugging and resolution.
Response Body
{
"message": "Partner function has been disabled successfully"
}
Create Integration Connection: /integration/
Purpose
This API endpoint creates a new integration connection by accepting a payload that includes provider name, remote instance metadata, OAuth credentials, optional supporting fields, and company information. It establishes a secure link between the platform and an external system—such as an ERP or accounting provider—by registering these details in the backend. Once created, the integration connection becomes available for synchronization and automation tasks.
Use Case
This API is commonly used by developers or integration administrators to set up new connections between the platform and third-party systems like Xero, NetSuite, or QuickBooks. It is typically invoked during onboarding or setup workflows when credentials, tenant information, and connection preferences need to be registered. If required fields are missing, the authentication data is invalid, or permissions are insufficient, the API responds with structured error messages to help with resolution and debugging.
Path Parameters
This endpoint does not require any path parameters.
Query Parameters
No query parameters are required for this endpoint.
Request Body
{
"provider": "QuickBooks",
"remote_instance_id": "tenant-9876543210",
"remote_instance_code": "QB-TENANT-01",
"remote_instance_name": "QuickBooks Demo Corp",
"remote_instance_display": "QuickBooks Demo Corp (tenant-9876543210)",
"integration_client_id": "qbclientid123",
"integration_client_secret": "qbclientsecret456",
"integration_access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
"integration_refresh_token": "qbrefreshtoken789",
"token_type": "Bearer",
"expires_in": "2026-12-31",
"account_server": "https://api.quickbooks.com",
"api_domain": "https://api.quickbooks.com",
"supporting_fields": "{\"region\":\"US\",\"tax\":\"SalesTax\"}",
"user_name": "qb_integration_user",
"user_password": "Str0ngP@ssw0rd!",
"require_authentication": true,
"state": "active",
"company_file": "abc12345-def6-7890-gh12-ijklmnopqrst",
"company_name": "QuickBooks Demo Corp"
}
Response
The API returns a JSON object containing details of the newly created integration connection. The response includes the connection status (e.g., "ACTIVE"), a unique UUID identifying the connection, the integration partner name, and metadata such as remote instance ID and name. It also provides OAuth credentials, including the client ID, client secret, access token, and refresh token required for authenticating and maintaining the integration session. This response confirms the successful creation and registration of the integration connection. In case of an error, such as invalid input or authentication failure, the API will return a structured error message to assist with troubleshooting.
Response Body
{
"integration": {
"integration_connection": {
"status": "ACTIVE",
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"integration_partner": "XERO",
"remote_instance_id": "abc-tenant-id-123",
"remote_instance_name": "Xero Demo Company",
"client_id": "xero-client-id",
"client_secret": "xero-client-secret",
"access_token": "sample-access-token",
"refresh_token": "sample-refresh-token"
}
}
}
Create Automation: /integration/{connection_uuid}/automation
Purpose
This API creates a new automation rule under a specific integration connection. It accepts configuration for the automation including the automation type (such as timer-based), execution interval, direction (IMPORT/EXPORT), conditions, and the partner function to trigger. Once submitted, the automation is stored and becomes active, executing based on its defined conditions or schedule.
Use Case
This endpoint is used when a developer or admin wants to automate integration workflows such as syncing supplier records every few hours, or importing customer data when certain criteria are met. It supports streamlined integration setup and scheduling without manual intervention. If incorrect or incomplete data is provided, or the caller lacks permission, the API responds with detailed error feedback to support rapid debugging.
Path Parameters
Parameter | Type | Description |
---|---|---|
connection_uuid | String | Unique ID of the integration connection |
Query Parameters
No query parameters are required for this endpoint.
Request Body
{
"integration": {
"automation_details": {
"name": "Test auto 260",
"display_name": "Test auto 260",
"code": "test2",
"description_enabled": "true",
"description": "checking3578",
"another_automation": "Automation four",
"applies_to": "supplier",
"applies_to_function": "new",
"automation_type": "timerBased",
"direction": "IMPORT",
"check_on": "8 hours",
"custom_day": "thursday",
"custom_time": "06:45:23",
"do_not_over_write_latest_data": "true",
"ignore_threshold": "1",
"perform_action": "49f4b6b2-c3a5-4f74-a044-8452ffc52eec",
"since_last_look_up": "true",
"additional_criteria": "true",
"property_name": ""
},
"additional_criteria_details": [
{
"group_condition": "AND",
"rules": [
{
"field_name": "AccountNumber",
"operator": "EQUALS",
"value": "1QKGUL",
"condition": "AND"
},
{
"field_name": "ContactID",
"operator": "DOES_NOT_HAVE_VALUE",
"condition": "AND"
}
]
}
]
}
}
Response
The API returns a JSON object representing the created automation. The response contains details such as the automation’s unique identifier (uuid), name, description, automation type (e.g., timer-based), execution schedule (check_on), applicable target (applies_to), direction (IMPORT or EXPORT), provider, status (ACTIVE), and related descriptive texts. This response confirms that the automation was successfully created and includes all relevant metadata needed to identify and manage the automation. In case of failure, such as invalid input data, missing required fields, authentication issues, or insufficient permissions, the API responds with an error message containing diagnostic details to help troubleshoot the issue.
Response Body
{
"integration_automation": {
"check_on": "CHECK_ON_PLACEHOLDER",
"check_on_minutes": "CHECK_ON_MINUTES_PLACEHOLDER",
"additional_criteria": "ADDITIONAL_CRITERIA_PLACEHOLDER",
"applies_to": "APPLIES_TO_PLACEHOLDER",
"applies_to_function": "APPLIES_TO_FUNCTION_PLACEHOLDER",
"automation_type": "AUTOMATION_TYPE_PLACEHOLDER",
"code": "CODE_PLACEHOLDER",
"custom_day": "CUSTOM_DAY_PLACEHOLDER",
"custom_day_time": "CUSTOM_DAY_TIME_PLACEHOLDER",
"custom_time": "CUSTOM_TIME_PLACEHOLDER",
"description": "DESCRIPTION_PLACEHOLDER",
"direction": "DIRECTION_PLACEHOLDER",
"display_name": "DISPLAY_NAME_PLACEHOLDER",
"name": "NAME_PLACEHOLDER",
"perform_function": "PERFORM_FUNCTION_PLACEHOLDER",
"provider": "PROVIDER_PLACEHOLDER",
"status": "STATUS_PLACEHOLDER",
"uuid": "UUID_PLACEHOLDER",
"trigger_condition_text": "TRIGGER_CONDITION_TEXT_PLACEHOLDER",
"performActionText": "PERFORM_ACTION_TEXT_PLACEHOLDER",
"checkOnText": "CHECK_ON_TEXT_PLACEHOLDER"
}
}