- The filename cannot be empty
- The file extension must be one of the allowed extensions:
.pdf,.doc,.csv,.xlsx,.png,.jpg,.jpeg - The file size must not exceed 25 MB content length
Create Ticket
/api/v1/tickets/externalTechExpressInitiates ticket creation based on provided reason for dispatch & general dispatch details, including the address & requested date and time.
urn:grt:techexpressmultipart/form-dataHeaders
| Header | Value |
|---|---|
Authorization | Bearer access-token |
Content-Type | multipart/form-data |
Request Body Parameters (form-data)
Ticket Object
| Field | Type | Required | Description |
|---|---|---|---|
contact_name | string | Yes | The name of the primary contact person for this ticket |
initial_description | string | Yes | A detailed initial description of the issue or service request |
automatic_email_contact | boolean | Yes | Indicates whether an automatic email notification should be sent to the primary contact |
contact_email_address | string | Yes | The email address of the person creating the ticket (the ticket creator) |
automatic_email_cc | boolean | Yes | Indicates whether an automatic email notification should be sent as a carbon copy (CC) to an additional address |
automatic_email_cc_address | string | No | The email address for automatic CC. Note: Multiple entries should be separated with commas |
customer_ticket_number | string | No | An optional reference number from the customer's own ticketing system. Note: Multiple entries should be separated with commas |
po_number | string | No | The Purchase Order number related to this ticket. Validation: Must not exceed 25 characters in length |
customer_preferred_tech | boolean | No | Indicates if a customer has a preferred technician for this service |
prior_ticket | integer | No | Tickets that share info pertaining to this dispatch |
special_instructions | string | No | Any specific instructions or notes for the ticket |
non_standard_tools | string | No | Details about non-standard tools required |
service_type | string | Yes | The type of service being requested for the ticket. Must be one of the predefined service types listed below |
granted_tenant_macnum | string | No | The company macnum on whose behalf the action is performed |
locations | array of objects | Yes | A list of one or more location details where the service is requested. Note: This field can be received as a JSON string representing an array (or single object) which will be parsed |
Location Object
Each item in the locations list should contain:
| Field | Type | Required | Description |
|---|---|---|---|
location_name | string | Yes | The common name of the service location |
location_number | string | No | An identifier or number for the location |
local_contact_name | string | Yes | The name of the primary local contact person at this specific location |
local_contact_number | integer | Yes | The phone number of the primary local contact |
location_contact_ext | string | No | The extension for the location contact's phone number |
location_contact_email | string | No | The email address of the location contact |
secondary_lcon_name | string | No | The name of a secondary local contact person at this location |
secondary_lcon_number | string | No | The phone number of the secondary local contact |
secondary_lcon_ext | string | No | The extension for the secondary local contact's phone number |
secondary_lcon_email | string | No | The email address of the secondary local contact |
account_macnum | string | Yes | The macnum of the account associated with this location |
start_date | datetime | Yes | The scheduled start date and time for the service at this location. Should be in ISO 8601 format (YYYY-MM-DDTHH:MM:SS) |
end_date | datetime | Yes | The scheduled end date and time for the service at this location. Validation: Must occur after start_date and on the same calendar day as start_date. Note: if hard start is required end_date should be the same as start_date. Should be in ISO 8601 format (YYYY-MM-DDTHH:MM:SS) |
Form Files
| Parameter | Type | Required | Description |
|---|---|---|---|
file | file | No | The file to be attached to the ticket. Documents pertaining to dispatch such as floor plan, install guide, survey document, photos of broken items, etc. |
File Validation
List of Service Options
The service_type field must be one of the following predefined service types:
- Equipment Install - Technician will be dispatched to site to install or decommission equipment.
- Smart Hands - Technician will be dispatched to site to install or decommission equipment.
- Site Audit - Technician will be dispatched to site to survey and record location & network specifications for future installs.
- Move - Technician will be dispatched to site to move specific equipment or wiring from one location to another.
- POTS Extension - A technician will run a new extension for an existing POTS line.
- Circuit Extension - A technician will run a new extension for an existing circuit.
- Circuit Extension (GRT Provided) - A technician will repair an issue on an existing GRT-provided Copper circuit extension. The primary focus is diagnosing and fixing the wiring fault.
- Fiber Extension (GRT Provided) - A technician will repair an issue on an existing GRT-provided Fiber circuit extension, focusing on diagnosing and fixing the fault.
- Broadband Circuit (GRT Provided) - A technician will repair an issue on an existing GRT-provided Broadband circuit, focusing on diagnosing and fixing the fault.
- POTS (GRT Provided) - A technician will repair an issue on an existing GRT-provided POTS line, focusing on diagnosing and fixing the fault.
- Broadband Circuit (Customer Provided) - A technician will repair an existing customer-provided Broadband circuit.
- POTS (Customer Provided) - A technician will repair an existing customer-provided POTS line.
- Circuit Extension (Customer Provided) - A technician will repair an existing customer-provided Copper extension.
- Fiber Extension (Customer Provided) - A technician will repair an existing customer-provided Fiber extension.
- Customer Equipment (Customer Provided) - A technician will service customer-provided equipment. Specify if this is a repair or a material replacement.
Request Example
Payload Example Using Postman
Note that file should be passed under file naming as in example below. In essence, each file is treated as a separate part within the request body, identified by its own set of headers and followed by its binary data. Most HTTP client libraries (like Python’s requests, JavaScript’s FormData API, etc.) handle the complex byte-level encoding, boundary generation, and header setting automatically when you provide them with file objects or file paths.
Response
Note
For every provided location, a separate ticket will be created and returned in a response accordingly.
Success Response (200 OK)
Response Fields
| Field | Type | Description |
|---|---|---|
id | integer | The unique identifier of this ticket within the system |
address_1 | string | The primary street address for the location associated with this ticket |
attachments | array of objects | A list detailing files that have been attached to this ticket. Each object contains filename (string) and status (string) indicating the outcome of the attachment upload (e.g., "success", "failure") |
automatic_email_cc | boolean | Indicates whether an automated email CC notification is sent for updates related to this ticket |
automatic_email_cc_address | string | The email address(es) that receive automated CC notifications for this ticket |
automatic_email_contact | boolean | Indicates whether an automated email notification is sent to the primary contact for this ticket |
category | string | The category or status classification of the ticket within its board (e.g., "Active") |
city | string | The city component of the address associated with the ticket's location |
company_id | integer | The unique identifier of the company that the ticket is associated with |
company_identifier | string | An internal or external identifier used for the associated company |
company_name | string | The full name of the company associated with the ticket (e.g., "Valvoline") |
contact_email_address | string | The primary email address of the contact person for this ticket |
customer_preferred_tech | boolean | Indicates if the customer has requested a specific technician for the service |
customer_ticket_number | string | A reference ticket number provided by the customer for their own tracking |
date_entered | string (ISO 8601 UTC datetime) | The timestamp indicating when the ticket was initially created or entered into the system |
date_resolved | string (ISO 8601 UTC datetime, or null) | The timestamp indicating when the ticket was resolved. It will be null if the ticket is not yet resolved |
last_updated | string (ISO 8601 UTC datetime) | The timestamp indicating the last time any changes were made to this ticket record |
local_contact_name | string | The name of the primary contact person physically located at the service site |
local_contact_number | integer | The phone number of the primary local contact |
location_contact_email | string | The email address of the primary local contact |
location_contact_ext | string | The phone extension for the primary local contact |
location_name | string | A specific name or description for the physical location related to the ticket (e.g., "Secret place") |
location_number | string | A specific number or identifier for the location |
non_standard_tools | string | A description of any non-standard tools or equipment required for the service |
po_number | string | The Purchase Order number linked to this ticket |
prior_ticket | integer | The ID of a previously created or related ticket |
secondary_lcon_email | string or null | The email address of a secondary local contact person |
secondary_lcon_ext | string or null | The phone extension of a secondary local contact person |
secondary_lcon_name | string or null | The name of a secondary local contact person |
secondary_lcon_number | string or null | The phone number of a secondary local contact person |
special_instructions | string | Any specific instructions for the technician or for handling the ticket, such as access codes or call-ahead requirements |
state_identifier | string | The two-letter state code for the location (e.g., "CA") |
status_name | string | The current human-readable status of the ticket within its workflow (e.g., "Pending Tech Assignment") |
summary | string | A brief, high-level summary |
service_type | string | The overarching type of service or work being requested for the ticket (e.g., "Site Audit", "Installation", "Repair") |
priority | string | The urgency level assigned to the ticket (e.g., "Priority 1", "Priority 3") |
technician_id | integer or null | The unique ID of the technician currently assigned to the ticket. It will be null if no technician is assigned |
technician_name | string or null | The name of the technician currently assigned to the ticket. It will be null if no technician is assigned |
technician_phone_number | string or null | The phone number of the technician currently assigned to the ticket. It will be null if no technician is assigned |
zip | string | The postal code (zip code) component of the address associated with the ticket's location |
Code Examples
Errors
| HTTP Status | Error Description | Resolution |
|---|---|---|
400 | Bad Request | Review the error response body for specific validation errors. Common issues: missing required fields, invalid service_type, invalid date format, or file validation errors (size exceeds 25MB or invalid extension). |
401 | Authentication Failed | Verify your access token is valid and included in the Authorization header with the "Bearer " prefix. |
403 | Permission Denied | Your access token does not have the required scope (urn:grt:techexpress). Contact your administrator to request the appropriate permissions. |