Ticketing
Prerequisites
- Petra account
- Halo PSA administrator permissions
1. Create a Halo API user for Petra
- In Halo PSA, navigate to
Configuration → Teams & Agents → Agentsand click New. - Fill in the following details and save:
- Username:
petra_api - Password: Use a strong password
- Use AD authentication: No
- Roles: Administrator (scope will be limited via API application permissions)
- Is an API-only Agent: Checked
- Default Team: No default team
- Work Hours: 24 Hours
- Can approve Purchase Orders: Unchecked
- Username:
- Update Agent Permissions (in the Permissions tab):
- Feature Access:
- Tickets Access Level: Read and Modify
- Customers Access Level: Read Only
- Ticket Permissions:
- Can add new Tickets: Yes
- Can view Unassigned Tickets: Yes
- Can view Tickets that are assigned to other Agents: Yes
- Feature Access:
- Go to
Configuration → Integrations → HaloPSA API. - Copy and store the values for Tenant and Resource Server.
- Click View Applications → New and enter:
- Name: Petra
- Authentication Method: Client ID and Secret (Services)
- Login Type: Agent
- Agent to log in as:
petra_api
2. Add an API Application for Petra
- Copy the generated Client ID and Client Secret and store them safely, then click Save.
- Open the Permissions tab and enable:
- Admin: webhooks
- Read: tickets
- Edit: tickets
- Read: customers
- Read: contracts
- Edit: contracts
- Read: items
- Edit: items
- Read: invoices
- Edit: invoices
3. Link Halo PSA in Petra
- In Petra, open Settings: https://app.petrasecurity.com/settings and click Link Halo PSA.
- Enter the credentials you saved earlier:
- Tenant
- Resource Server URL (omit the trailing
/apiif present) - Client ID
- Client Secret
Troubleshooting
- Authentication failed: Verify Tenant, Resource Server (without
/api), Client ID, and Client Secret. Regenerate credentials if needed. - Permission errors: Confirm the API Application permissions are set as above and the
petra_apiAgent is active and API‑only. - Ticket routing unexpected: Review service parameters, Ticket Type/Category overrides, and automations in Halo PSA.
Billing
Petra can sync billing data to Halo PSA by managing Software Licences. This section covers the additional setup required beyond the ticketing integration above.Additional Agent Permissions
Add the following to thepetra_api agent permissions from step 1:
- Feature Access:
- Software Licencing Access Level: Read and Modify
- Products Access Level: Read Only
Additional API Application Permissions
Add the following to the API Application permissions from step 2:- Read: softwarelicensing
- Edit: softwarelicensing
The existing
read:items permission from the ticketing setup is also used by billing to map Petra products to Halo Items, so no changes are needed there.