Matrix42 service desk
service_deskSearch any ticket kind in Matrix42, fetch ticket summaries and SLA details, and browse or find related business objects such as assets, contracts, and catalog services.
Instructions
Read the service desk and the business objects around it. action='data_model' explains how Matrix42's modules map onto a handful of base classes — read it first if you are unsure where something lives. action='search_tickets' searches ANY ticket kind (incident, problem, change, task, service request, generic ticket, knowledge article) through one uniform contract. Only subject, category_name and states actually filter — Matrix42 accepts the other parameters and ignores them, so they are refused rather than returning every ticket. To filter on a person, ticket number or asset, use data_query with an ASQL where clause. action='get_ticket' returns one ticket's summary (it takes the OBJECT id — a fragment id answers null), action='sla_for_ticket' the service levels that apply to it, and action='sla_times' applies a service-level duration between two points in time. action='browse' lists a curated domain: assets (SPSAssetClassBase), stock_units (SPSStockKeepingUnitClassBase), contracts (SPSContractClassBase), slas (SVCServiceLevelAgreementClassBase), catalog_services (SPSArticleClassBase), bookings (SVCServiceBookingClassBase), kb_articles (SVMKBArticleClassBase), approvals (SVCApprovalTaskClassBase), imports (GDIEImportClassBase), import_runs (GDIEImportLogClassBase), workflow_instances (PLSLProcessInstanceClassBase), workflow_definitions (PLSLComponentClassBase), applications (SPSApplicationClassBase). action='find' searches ALL of those domains at once for a name — reach for it when you do not know where something lives. It does not cover tickets; search those with search_tickets. Columns are resolved against this instance every time, so fields a module does not install are reported as unavailable rather than failing the call.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | No | ISO end of the window, for action='sla_times'. | |
| kind | No | Ticket kind to search. Required for action='search_tickets'. | |
| begin | No | ISO start of the window, for action='sla_times'. | |
| limit | No | Maximum rows to return (default 25). | |
| where | No | Additional ASQL filter for browse. Use attribute names from schema_discovery(describe_data_definition). | |
| action | Yes | What to do. | |
| domain | No | Which curated domain to list. Required for action='browse'. | |
| search | No | Free-text filter, matched against a domain's searchable fields. Required for action='find'. | |
| states | No | Comma-separated state ids to include. Read valid ids with schema_discovery(get_pickup_values). | |
| domains | No | Restrict action='find' to these domains. Defaults to all of them. | |
| subject | No | Filter by subject text. | |
| user_id | No | User fragment id for only_mine — server_info reports the authenticated account's. | |
| asset_id | No | NOT APPLIED by Matrix42 — passing it is refused. | |
| duration | No | Duration in minutes to apply. Required by action='sla_times'. | |
| only_mine | No | Restrict to items related to the user given in user_id. | |
| service_id | No | NOT APPLIED by Matrix42 — passing it is refused. | |
| category_name | No | Filter by category NAME (no id needed). One of the three filters that works. | |
| ticket_number | No | NOT APPLIED by Matrix42 — passing it is refused. Filter on TicketNumber with data_query instead. | |
| initiator_name | No | NOT APPLIED by Matrix42 — passing it is refused. Filter on the initiator with data_query instead. | |
| recipient_name | No | NOT APPLIED by Matrix42 — passing it is refused. | |
| ticket_object_id | No | Ticket OBJECT id, for get_ticket, sla_for_ticket and sla_times. | |
| recipient_role_name | No | NOT APPLIED by Matrix42 — passing it is refused. |