Use cases
The paths.
The jobs. Alert to ticket through check an asset.
1. Alert to ticket
A finding becomes a ticket we created. We keep the link. You can update, append a note, or close with evidence on that ticket. Create and update accept board, status, and priority ids from GET /tenants/{tenant_id}/ticket-boards, ticket-statuses, and ticket-priorities (ConnectWise and Halo); unknown id → 422. List alert types, review an upload before it is live, and read where each type goes on Alerts. POST /tenants/{tenant_id}/alerts is unchanged.
2. Two-way tickets
Tickets are two-way when the MSP grants it. You can create, update, and close. You can subscribe to events when the MSP changes the ticket in their PSA. Grants: psa.ticket.create, psa.ticket.update, psa.ticket.events. When a ticket is created, updated, noted, closed, or reopened, you can list those events or get a signed webhook. After a tenant sync, GET /tenants/{id}/connections/events?kind=ticket.closed (also created, updated, noted, reopened). Optional signed webhook. Grant is the connection (psa.ticket.events). Missing is grant_missing. When a device is created or updated, you can list those events or get a signed webhook. After a tenant sync, GET /tenants/{id}/connections/events?kind=device.updated (also created). Optional signed webhook. Grant is the connection (rmm.device.events). Missing is grant_missing. When a company is created or updated, you can list those events or get a signed webhook. After a tenant sync, GET /tenants/{id}/connections/events?kind=company.updated (also created). Optional signed webhook. Grant is the connection (psa.company.events). Missing is grant_missing.
3. Map customers
Map customers to companies that already exist. Exact-name auto-Match fills Match. Ambiguous names stay Needs match. A leftover is Match, company import from PSA, Skip, or Needs match (unset). Bulk unmatched import is available with dry_run preview. Contacts are list and match.
4. Match a company
Companies are created by the MSP in their PSA. Bitlync never lets apps create companies there: a PSA create returns 403 company_create_not_supported. Match to the existing company instead.
5. Time on the ticket
Hours on a ticket Bitlync already linked. Hours, stated billable, required member. List members with GET /tenants/{tenant_id}/members (Halo and ConnectWise when the member permission is on). The picker uses the listed id.
6. Billing reconciliation
Read agreements and billing line items. The MSP matches each service to an existing billing line. You send an absolute quantity with POST /tenants/{tenant_id}/billing/quantities (0 stops billing). A write happens when you send it. The MSP's change limit defaults to 25%, and a change over that limit waits for the MSP. Bitlync never creates agreements or billing lines. Billing services can start from a CSV or Excel price list. Add or Discard the import before it is published. sent is daily or monthly. The sandbox message for anything else is "How often you report must be Daily or Monthly." Details are on What we write.
7. Create action items
Create the follow-up the MSP already tracks.
8. Create initiatives
Create the workstream those items sit on.
9. Add to an existing project
Add notes or items on a project that already exists.
10. Create an order
Place a third-party licensing order.
11. Write a document
Write into the MSP's documentation tool.
12. Read devices
Read the device roster.
13. Software inventory
Read installed software.
14. Check an asset
Read the documented asset.
If you are this kind of ISV
Alerting/security — map companies. Tickets create, update, close, and events. Optional billing line items for billing counts.
Network monitoring — companies must already exist. Two-way tickets. Create-only is not enough.
Backup — failed job to ticket, close when it succeeds. Optional usage on billing line items.
Documentation — PSA companies are the source of truth. Document write.
vCIO / QBR — map companies, findings to tickets, add to an existing project.
Commerce / distributor: map, orders, quantity updates on billing lines the MSP matched on existing agreements.
Quoting — map to the company the MSP created for a new logo.
Time / scheduling — ticket update (status, notes), time write with member from the members list. Not the watch.
Identity / comms — full two-way tickets plus time.
Onboarding / import — Match contacts; company import from PSA for unmatched leftovers when the ISV book supports it (bulk + dry_run). PSA company create is not supported; the MSP creates the company, then you match it.
AI copilot — read, ticket write, and events.