> For the complete documentation index, see [llms.txt](https://kb.theloops.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kb.theloops.io/agentstudio/integrations/ifs-pso.md).

# IFS PSO

## Overview <a href="#overview" id="overview"></a>

The IFS PSO Integration enables seamless connectivity between Loops and IFS PSO to synchronize and manage field service scheduling and workforce management data. This integration uses session-token-based authentication via the IFS PSO Gateway API, with automatic token persistence and renewal to ensure uninterrupted operations.

### Prerequisites <a href="#prerequisites" id="prerequisites"></a>

Before initiating the integration, ensure the following requirements are met:&#x20;

* An active IFS PSO instance accessible over HTTPS.&#x20;
* Valid IFS PSO username and password with Gateway API access.&#x20;
* The IFS PSO domain URL (e.g., your-instance.ifspso.com).&#x20;
* The IFS PSO Account ID for your organization.&#x20;
* Access to the Spool platform with Admin role privileges.&#x20;

### Best practices <a href="#best-practices" id="best-practices"></a>

* **Hostname only:** Enter the domain without https\:// prefix or trailing slash.&#x20;
* **Account ID accuracy:** Verify the Account ID with your IFS PSO administrator before configuring the integration. An incorrect Account ID will cause all API calls to fail even with valid credentials.&#x20;
* **Validate post-setup:** Always run Test Connection after saving to confirm session token issuance and network connectivity.&#x20;
* **Service account:** Use a dedicated IFS PSO service account with appropriate scheduling/gateway permissions. Avoid personal user accounts.&#x20;
* **Credential updates:** If the IFS PSO password is changed, update the integration immediately to prevent session token refresh failures.&#x20;
* **Token storage:** Session tokens are persisted to the database. Ensure the integration service has write access to the auth database tables. &#x20;

## Setup instructions

### Initiate integration

{% stepper %}
{% step %}
Log in to the Spool platform using an Admin account.
{% endstep %}

{% step %}
Navigate to Settings → Integrations.
{% endstep %}

{% step %}
Click the "+ Add Integration" button.
{% endstep %}

{% step %}
Search for IFS PSO and select the integration.
{% endstep %}
{% endstepper %}

### Basic configuration <a href="#step-2-basic-configuration" id="step-2-basic-configuration"></a>

{% stepper %}
{% step %}
In the Basic tab, enter a suitable name for the integration.
{% endstep %}

{% step %}
Click Next to proceed.
{% endstep %}
{% endstepper %}

### Authentication

{% hint style="info" %}
IFS PSO uses session-token authentication. The platform authenticates using username and password, receives a session token from the Gateway API, and stores the token for subsequent API calls via the apikey header.
{% endhint %}

{% stepper %}
{% step %}
Enter the IFS PSO Domain URL (hostname only, without https\:// prefix).
{% endstep %}

{% step %}
Enter the Account ID for your IFS PSO organization.
{% endstep %}

{% step %}
Enter the IFS PSO Username.
{% endstep %}

{% step %}
Enter the IFS PSO Password.
{% endstep %}

{% step %}
Click Save / Connect.
{% endstep %}
{% endstepper %}

### Validation & verification

{% stepper %}
{% step %}
Navigate back to the Integrations list after saving.
{% endstep %}

{% step %}
Click the Test Connection icon for the IFS PSO integration.
{% endstep %}

{% step %}
A success message confirms the session token was issued and stored correctly.
{% endstep %}
{% endstepper %}

## Token management

### How session tokens work

{% stepper %}
{% step %}
IFS PSO issues a session token upon authentication. This token is:

1. Stored in the platform database after successful login.&#x20;
2. Attached to every subsequent API request via the apikey request header.&#x20;
3. Automatically refreshed when a 401 Unauthorized response is received.&#x20;

&#x20;
{% endstep %}
{% endstepper %}
