Data Warehousing Integration Setup
HirePOS provides secure, read-only access to CSV data exports through Microsoft Azure Blob Storage.
Access uses Microsoft Entra ID (OAuth 2.0) and is restricted to approved applications, authorised customer data and nominated public IP addresses.
For information about managing exports within HirePOS, see the Data Warehousing guide.
Prerequisites
This is an advanced integration intended for IT professionals and data engineers familiar with Microsoft Azure, OAuth 2.0 and HTTP-based data retrieval.
You will need:
Access to a Microsoft Entra ID tenant with permission to manage app registrations.
The ability to configure application credentials and OAuth 2.0 authentication.
A known, stable set of public outbound IP addresses used by your integration, which HirePOS can approve and allowlist.
A compatible integration platform or HTTP client.
1. Register your application
In your Microsoft Entra tenant:
Navigate to Microsoft Entra ID > App registrations > New registration.
Enter a descriptive name, such as
HirePOS Data Warehouse Integration.Select Accounts in any organizational directory (Any Microsoft Entra ID tenant – Multitenant). Do not select the option that includes personal Microsoft accounts.
Leave the Redirect URI blank and register the application.
Configure a client credential under Certificates & secrets.
Record your:
Application (Client) ID
Directory (Tenant) ID
Keep your client credential secure. Do not provide it to HirePOS.
2. Request access from HirePOS
Provide HirePOS with:
Application (Client) ID
Directory (Tenant) ID
Static public outbound IP address(es) used by your integration
HirePOS will provision read-only access to your designated exports, restricted to your approved application and IP addresses.
Important: Connections from unapproved IP addresses will be blocked. Your integration must use fixed, nominated outbound IP addresses.
Once configured, HirePOS will provide your authorised export URLs and the HirePOS Directory ID required for authentication.
3. Authenticate and retrieve data
Use OAuth 2.0 Client Credentials authentication:
Setting | Value |
|---|---|
Grant type |
|
Token URL |
|
Client ID | Your Application (Client) ID |
Client credential | Your configured client secret or supported credential |
Scope |
|
The {HirePOS-Directory-ID} is supplied by HirePOS and differs from your own Directory (Tenant) ID.
Use the resulting access token to make HTTPS GET requests to your authorised Azure Blob Storage URLs.
Required request headers:
Authorization: Bearer {access_token}
x-ms-version: 2023-11-03Both headers are required. Use the specified x-ms-version value.
Example endpoints
List available files:
GET https://hireposdwexports.blob.core.windows.net/hirepos-{HirePOS-Subscription-Number}?restype=container&comp=listDownload a CSV:
GET https://hireposdwexports.blob.core.windows.net/hirepos-{HirePOS-Subscription-Number}/{ExportFolder}/{FileName}.csvReplace {HirePOS-Subscription-Number} with your HirePOS subscription number.
HirePOS will provide the applicable export paths and file naming details.
Successful requests return HTTP 200 OK, with an XML file listing or CSV content respectively.
4. Testing and troubleshooting
Any compatible OAuth 2.0 HTTP client or integration platform may be used.
Postman testing: Use Postman Desktop or a local Desktop Agent. Postman Cloud may use changing outbound IP addresses that are not approved for access.
When configuring OAuth 2.0 in Postman, use Client Authentication: Send client credentials in body.
Result | Likely cause |
|---|---|
OAuth token request fails | Incorrect tenant, client credentials or application configuration |
| Network restrictions, including an unapproved IP address |
| Application lacks permission for the requested resource |
| Invalid or unsuitable access token, or authentication/header issue |
| Request successful |
For troubleshooting, provide HirePOS Support with the HTTP status and Azure Storage error code. Never share client secrets or access tokens.
5. Data availability
HirePOS provides approved reporting datasets as monthly CSV files.
Each CSV contains the complete data for its reporting month, not incremental changes. Refreshing an existing month replaces the previous file with the latest available data for that same period.
Downstream integrations should account for these full-file replacements to avoid duplicate records.
Current and previous calendar months can be refreshed automatically each night. Availability of older historical periods should be confirmed with HirePOS.
When nightly updates are enabled, HirePOS schedules exports from approximately 12:05am Australian Eastern Standard Time (AEST, UTC+10). Processing time may vary depending on the volume of data, so downstream integrations should allow sufficient time for exports to complete.
Available datasets, file paths and refresh schedules are managed through HirePOS.
See the Data Warehousing guide for instructions on managing exports.
