27 lines
1.0 KiB
Markdown
27 lines
1.0 KiB
Markdown
# ConnectWise PSA Ticket Extraction Details
|
|
|
|
## API Endpoint
|
|
- **Path:** `/service/tickets`
|
|
- **Method:** `GET`
|
|
- **Critical Headers:**
|
|
- `Authorization: Basic <base64_auth>`
|
|
- `clientId: <client_id>`
|
|
- `Accept: application/json`
|
|
|
|
## Filtering Conditions
|
|
To isolate open tickets on a specific board for a specific owner, use the `conditions` query parameter:
|
|
`closedFlag=false AND board/id=1 AND owner/identifier='{tech_identifier}'`
|
|
|
|
## Data Structure Quirks
|
|
The API response can be inconsistent. It may return:
|
|
1. A raw list: `[...]`
|
|
2. A dictionary containing a list: `{"tickets": [...]}`
|
|
**Implementation Note:** Always check if the response is a list; if it's a dictionary, extract the `tickets` key before iterating.
|
|
|
|
## Email Styling (Outlook Optimized)
|
|
To prevent Outlook from stripping styles:
|
|
- Use `border-collapse: collapse;` on tables.
|
|
- Use inline `style` attributes on `<td>` and `<tr>` tags.
|
|
- Avoid external CSS or `<style>` blocks.
|
|
- Use a standard system font stack: `'Segoe UI', Tahoma, Geneva, Verdana, sans-serif`.
|