For full details of this API Endpoint, see Services API.
type
-
Data Type: String
-
Required Field: Yes
Notes:
type = “POOLS” for assigning a Service to a Service Pool.
type = “REMARKS” for adding a Remark.
type = “CHARGES” for adding a Charge.
type = “GLA” for adding a GLA to a Service.
type = “CONTACTS” for adding a Contact to the Service.
type = “UDF” for adding a UDF value to a Service.
type = “LOCATIONS” for adding a Location to the Service.
type = “EQUIPMENT” for adding Equipment to the Service.
type = “ATTACHMENT” for adding an Attachment to the Service.
recid
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: none or “CHARGES” or “ATTACHMENT”
Notes:
Identifier of the record.
*When updating a record, the "recid" or "service_id" is Required. If both are passed they must match the same record.
status
-
Data Type: Integer
-
Required Field: Yes
-
Required Type: none
Notes:
The status of the service. To set a Service to Active, the Owner field becomes required if it is not already populated.
serv_catalog
-
Data Type: Integer
-
Required Field: Yes
-
Required Type: none
Notes:
Recid of the Service Catalog item.
When updating the Catalog, the process will maintain the Service Type and the Service ID Format.
The Catalog may only be updated for a Service if its status is Available.
service_id
-
Data Type: String
-
Required Field: Yes*
-
Required Type: none
Notes:
Service ID of this service. Before inserting a new record, the system confirms that there is no existing, matching, formatted version. If a match is found, the call will update the appropriate record. The service_id field can be formatted or unformatted. The service_id cannot be updated.
*When updating a record, the "recid" or "service_id" is Required. If both are passed, they must match the same record.
owner
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
Record ID of either the Contact or the Department owner. The API will validate if the Owner's GLA Format is compatible with the Service's Billing Group Format.
owner_type
-
Data Type: String
-
Required Field: No
-
Required Type: none
Notes:
“contact” or “department” to signify the type of Owner.
location
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: none or “CHARGES” or “LOCATIONS”
Notes:
The recid of the Location of the Service.
*only required if type is “CHARGES” or “LOCATIONS”.
service_host
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
The recid of the Service Host for the Service.
sla
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
The recid of the SLA for the Service.
reference
-
Data Type: String
-
Required Field: No
-
Required Type: none
Notes:
Reference for the Service.
billable
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
Marks the Service as Billable. “1” for Yes and “0” for No.
billing_group
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
Recid of billing group for service.
essential
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
Designate if this is an essential Service.
“1” for Yes, “0” for No.
status_date
-
Data Type: String
-
Required Field: Yes
-
Required Type: none
Notes:
Date status was set for Service. Format “YYYY/MM/DD”.
assoc_service
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
Recid of Associated Service.
equipment
-
Data Type: String
-
Required Field: Yes*
-
Required Type: none or “EQUIPMENT”
Notes:
Recid(s) of Equipment to assign to the Service.
*Only Required if type = “EQUIPMENT”.
contact
-
Data Type: String
-
Required Field: Yes*
-
Required Type: none or “CONTACTS”
Notes:
The recids of the Contacts to be added to the Service.
*only required if type is not set or is “CONTACTS”.
pool
-
Data Type: String
-
Required Field: No
-
Required Type: none
Notes:
The recids of the Service pool(s) to add to the Service. If multiple contacts are to be assigned, separate recids with commas. Example: 548,785.
gla
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: none or “CHARGES”, or “GLA”
Notes:
The recids of the GLAs to be assigned to the Service or it’s Charge.
*only required for a Billable Service if type is not set, or if adding new GLAs when type is “CHARGES” or “GLA”.
gla_percent
-
Data Type: String
-
Required Field: Yes*
-
Required Type: none or “GLA”
Notes:
Percentages to apply to each GLA. All percentages must equal exactly 100.
*only required if creating a new Billable Service when the type is not set, or if adding a new GLA when the type is “GLA”.
gla_type
-
Data Type: String
-
Required Field: Yes*
-
Required Type: none or “GLA”
Notes:
The type(s) of GLA(s).
*only required if creating a new Billable Service when the type is not set, or if adding a new GLA when the type is “GLA”.
directory
-
Data Type: Integer
-
Required Field: Yes
-
Required Type: none
Notes:
IF service_type = "phone". Designates if this Service is to be listed in the directory.
“1” for Yes, “0” for No.
report_911
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: none or “LOCATIONS”
Notes:
Designate whether the Location should be shown on the emergency 911 feed. “1” for Yes, “0” for No.
*only required if type is “LOCATIONS” or not used.
multiple_locations
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
IF service_type = "phone". Designates if this Service has multiple locations.
“1” for Yes, “0” for No.
bandwidth
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
IF service_type = "data" OR "backbone". Recid of bandwidth record.
auth_code_type
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
IF service_type = "authcode". Recid of authcode type.
service_class
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
IF service_type = "authcode". Recid of Service Class for authcode.
rating_group
-
Data Type: Integer
-
Required Field: No
-
Required Type: none
Notes:
The recid of Rating Group for the Service.
Config USE_RATING_GROUP must be set to TRUE to use this field
service_recid
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: “POOLS” or “REMARKS” or “CHARGES” or “GLA” or “CONTACTS” or “LOCATIONS” or “EQUIPMENT”
Notes:
The Services recid.
*required only if type is used.
pools
-
Data Type: String
-
Required Field: Yes
-
Required Type: “POOLS”
Notes:
One or more RECIDs of Pools. If multiple, separate with commas. Example: 23,43
remarks
-
Data Type: String
-
Required Field: Yes*
-
Required Type: none or “REMARKS”
Notes:
The Remark to add to the Service.
*not required if type is not set.
charge_recid
-
Data Type: Integer
-
Required Field: No*
-
Required Type: “CHARGES”
Notes:
The recid from the column of the CHRG_CATALOG table.
*Conditionally Required if attempting to add a new Service Charge
description
-
Data Type: String
-
Required Field: No
-
Required Type: “CHARGES”
Notes:
The details or description of the Charge.
amount
-
Data Type: Decimal
-
Required Field: No*
-
Required Type: “CHARGES”
Notes:
The amount to be charged.
*Required if the Charge does not have an amount on it.
quantity
-
Data Type: Integer
-
Required Field: No
-
Required Type: “CHARGES”
-
Default Value: 1
Notes:
The quantity of Charge to be used is only allowed if the Charge Catalog allows it.
prorate
-
Data Type: Integer
-
Required Field: No
-
Required Type: “CHARGES”
-
Default Value: 0
Notes:
Should the Charge be Prorated on the Service? “1” for Yes and “0” for No.
start_date
-
Data Type: String
-
Required Field: No
-
Required Type: “CHARGES”
Notes:
The Start Date of a Charge. YYYY-MM-DD format. Other formats may give unexpected results.
Used for Monthly Recurring Charges and Alternate Recurring Charges.
stop_date
-
Data Type: String
-
Required Field: No
-
Required Type: “CHARGES”
Notes:
YYYY-MM-DD format. Other formats may give unexpected results.
Used for Monthly Recurring Charges and Alternate Recurring Charges
recurring_date
-
Data Type: String
-
Required Field: No
-
Required Type: “CHARGES”
Notes:
YYYY-MM-DD format. Other formats may give unexpected results.
Used for Alternate Recurring Charges
transaction_date
-
Data Type: String
-
Required Field: No
-
Required Type: “CHARGES”
Notes:
YYYY-MM-DD format. Other formats may give unexpected results.
Used for Non-Recurring Charges
effective
-
Data Type: String
-
Required Field: No
-
Required Type: “CHARGES”
-
Default Value: “today”
Notes:
The effective date of a Charge being added to the Service. Either “today” or “backdate”.
udf_UDF-RECID
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: “UDF”
Notes:
UDF-RECID is the RECID of the UDF to assign the value to. RECID column from USER_DEFINED_FIELDS_VALS table. Example: udf_684=value
udf_UDF-RECID and udf_UDF-IDENTIFIER are Conditionally Required. The use of one is Required, but not both.
*only needed if type = “UDF”.
udf_UDF-IDENTIFIER
-
Data Type: Mixed
-
Required Field: Yes*
-
Required Type: “UDF”
Notes:
IDENTIFIER is the unique Identifier of the UDF to assign the value to. Example: udf_LEGACYNUM=value
udf_UDF-RECID and udf_UDF-IDENTIFIER are Conditionally Required. The use of one is Required, but not both.
*only needed if type = “UDF”.
location_status
-
Data Type: Integer
-
Required Field: Yes*
-
Required Type: “LOCATIONS”
Notes:
Status of the Location. “1” for Active and “0” for Inactive.
*only required for type = “LOCATIONS”.
filename
-
Data Type: String
-
Required Field: Yes
-
Required Type: “ATTACHMENT”
Notes:
The name of the File.
data
-
Data Type: Array
-
Required Field: Yes
-
Required Type: “ATTACHMENT”
Notes:
The base64 encoded data for the file.
New Service Example
$params = [
"status" => "Available",
"serv_catalog" => 1,
"service_id" => 5558675309,
"status_date" => "2025/08/19",
"directory" => 1,
"report_911" => 1
];
$api_call = $this->call('saveService', $params, true)
Add Service to Pools Example
$params = [
"type" => "POOLS",
"service_recid" => 1,
"pools" => "1, 2, 3"
];
$api_call = $this->call('saveService', $params, true)
New Remark on a Service Example
$params = [
"type" => "REMARKS",
"service_recid" => 1,
"remarks" => "This is a sample Remark"
];
$api_call = $this->call('saveService', $params, true)
New Service Charge Example
$params = [
"type" => "CHARGES",
"recid" => 1,
"transaction_date" => "2025-09-02",
"description" => "Sample Charge",
"charge_recid" => 1,
"gla" => 1
];
$api_call = $this->call('saveService', $params, true)
New Service Contact Example
$params = [
"type" => "CONTACTS",
"service_recid" => 1,
"contact" => 1
];
$api_call = $this->call('saveService', $params, true)
Update Service UDF Example
$params = [
"type" => “UDF”,
"service_recid" => 1,
"udf_1" => "UDF 1 Value",
"udf_two" => "UDF 2 Value"
];
$api_call = $this->call('saveLocation', $params, true)
New Location for a Service Example
$params = [
"type" => "LOCATIONS",
"service_recid" => 1,
"location_status" => 1,
"location" => 1,
];
$api_call = $this->call('saveService', $params, true)
Add Equipment for a Service Example
$params = [
"type" => "EQUIPMENT",
"service_recid" => 1,
"equipment" => "1, 2"
];
$api_call = $this->call('saveService', $params, true)
New Attachment to a Service Example
$params = [
"type" => “ATTACHMENT”,
"recid" => 1,
"filename" => "File Name",
"data" => "iVBORw0KGgoAAAANSUhEUgAAACQAAAAjCAYAAAD8BaggAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAEnQAABJ0Ad5mH3gAAAuSSURBVFhH1ZdpUNv3mccBcyMJIYQkBBIChLgE4j7NJXHfGPCFjR1jx1d8BOLY4BsfsTEONmnS"
];
$api_call = $this->call('saveService', $params, true)