For Authentication each request to the service should have the following headers:
Host: https://<servername>.0.razorsync.com/ApiService.svc
Token: <token>
Username: <username>
Password: <password>
Content-Length: <length of the content>
Content-type: application/json
ServerName: <server name>
where
Parameter
|
Description
|
---|---|
<token> |
identificatior which will provided by request to service provider, for example 00000000-0000-0000-0000-000000000000 either token or username/password parameters are required |
<length of the content> | length of the content |
<server name> | name of the server to connect to |
<username><password> |
optional parameters that contain login credentials to the Portal either token or username/password parameters are required |
If you are not authorized to make a request, you will get HTTP/1.1 401 Unauthorized
NOTE: All Time references are a unix timestamp format and are in milliseconds.
All Times unless explicitly stated otherwise are in UTC
Entities desciption
Settings
Settings
Field name
|
Type
|
Description |
---|---|---|
AddressTypeModels | AddressType, 0-N |
All available Address types |
CustomerTypeModels | CustomerType, 0-N | All available Customer types |
SourceTypeModels | SourceType, 0-N | All available Source types |
ContactTypeModels | ContactType, 0-N | All available Contact types |
Carriers | Carrier, 0-N | All available carriers |
TerminologyList | Terminology, 0-N | System and Workflow terminology |
Users | User,1-N | All users registered in the system |
PortalVersion | string | Current version of a portal |
InvoiceTo | string | Default billing destination |
PhoneTemplate | string | Phone template. Used for phone formatting and validation. For example '(999) 999-9999' |
GlobalTaxRate | double | Global tax rate. Used for invoices |
Holidays | Holiday, 0-N | Non-recurring schedule |
Locations | Location, 0-N | All available locations. Locations are used for Tasks |
AttachmentTypes | AttachmentType, 0-N | All available Attachment Types |
ServiceRequestStatuses | ServiceRequestStatus, 0-N | All available statuses of service requests |
WorkOrderCustomStatuses | WorkOrderCustomStatus, 0-N | All available custom statuses of work orders |
WorkOrderStatusTypes | WorkOrderStatusType, 0-N | All available status types of work orders |
OrgDetails | OrgDetails | Organization Details |
CurrentTimeZone | string | Current time zone e.g 'Central Standard Time' |
DefaultDurationOfWorkOrder | string | Default duration of work order. It is used when user creates work orders via drag&drop, from map. |
AdvancedFeatures | AdvancedFeatures | List of advanced features and its status (switched on/off) |
WorkflowSettings | WorkflowSettings | Workflow settings. They affect changing Work Order statuses and User's abilities |
Advanced Features
Field name
|
Type
|
Description |
---|---|---|
IsServiceItemsFeatureEnabled | bool |
Shows if Service Items are enabled or not |
IsServiceFormsFeatureEnabled | bool | Shows if Service Forms are enabled or not |
IsAttachmentsFeatureEnabled | bool | Shows if Attachments are enabled or not |
IsNotificationsFeatureEnabled | bool | Shows if Notifications are enabled or not |
IsNotesServiceRequestFeatureEnabled | bool | Shows if Service Request Notes are enabled or not |
IsNotesCustomerFeatureEnabled | bool | Shows if Customer Notes are enabled or not |
IsNotesTaskFeatureEnabled | bool | Shows if Task Notes are enabled or not |
IsTimeBasedServiceItemsFeatureEnabled | bool | Shows if Time Based Service Items are enabled or not (Service time, Travel time, Overtime) |
IsTimeCardReportingEnabled | bool | Shows if Time Card Reporting is enabled or not (Clock In/Out feature, Report) |
IsTieredPricingEnabled | bool | Shows if Tiered Pricing is enabled or not (Tier 1, Tier 2, Tier 3 for Customers) |
IsExpandedCustomerRecordsFeatureEnabled | bool | Shows if Expanded Customer Records are enabled or not (multiple Contacts and Addresses for Customers) |
IsMobileInvoicingEnabled | bool | Shows if Mobile Invoicing is enabled or not |
IsMobileQuotingEnabled | bool | Shows if Mobile Quoting is enabled or not |
IsRecurrentServiceRequestEnabled | bool | Shows if Recurrent Service Requests are enabled or not |
IsCustomerSpecificFeatureEnabled | bool | Shows if 'Customer Specific' feature is enabled or not (Work Order templates, pricing overriding, tax rate overriding) |
IsGoogleCalendarIntegrationEnabled | bool | Shows if Google Calendar integration is enabled or not (export Work Orders as events to Google Calendar) |
IsMergeInvoiceEnabled | bool | Shows if Merge Invoicing is enabled or not |
IsWorkOrderCustomStatusesEnabled | bool | Shows if Work Order Custom Statuses are enabled or not |
Carriers
Field name
|
Type
|
Description |
---|---|---|
Id | int |
The unique identifier of Carrier |
Name | string | |
IsNational | bool | |
Sort | int | Carrier number (this number is used for sorting) |
Gateway | string |
Holidays
Field name
|
Type
|
Description |
---|---|---|
Id | int |
The unique identifier of Holiday |
Name | string | |
StartTime | DateTime | Should be UTC |
EndTime | DateTime | Should be UTC |
IsAllDay | bool |
Locations
Field name
|
Type
|
Description |
---|---|---|
Id | int |
The unique identifier of Holiday |
Title | string | |
StreetAddress | string | |
CityStateZIP | string | |
Lat | float, nullable | Address latitude. It is equal to null if address is invalid |
Lng | float, nullable | Address longitude. It is equal to null if address is invalid |
Phone | string |
Organization Details
Field name
|
Type
|
Description |
---|---|---|
PortalId | int |
The unique identifier of given portal |
PortalName | string | The domain name of portal |
CompanyName | string | |
string | ||
FullName | string | Full name of primary contact |
Phone | string | |
AddressLine1 | string | Street address |
AddressLine2 | string | City, State and ZIP address |
Schedule
Field name
|
Type
|
Description |
---|---|---|
MondayStart | string |
The beginning of Monday working day. In 12h format (e.g '09:00 AM') |
MondayEnd | string | The end of Monday working day. In 12h format (e.g ' 09:00 PM ') |
MondayIsWorkingDay | bool | Shows if Monday is a working day or not |
TuesdayStart | string |
The beginning of Tuesday working day. In 12h format (e.g 09:00 AM ') |
TuesdayEnd | string | The end of Tuesday working day. In 12h format (e.g ' 09:00 PM ') |
TuesdayIsWorkingDay | bool | Shows if Tuesday is a working day or not |
WednesdayStart | string |
The beginning of Wednesday working day. In 12h format (e.g ' 09:00 AM ') |
WednesdayEnd | string | The end of Wednesday working day. In 12h format (e.g ' 09:00 PM ') |
WednesdayWorkingDay | bool | Shows if Wednesday is a working day or not |
ThursdayStart | string |
The beginning of Thursday working day. In 12h format (e.g ' 09:00 AM ') |
ThursdayEnd | string | The end of Thursday working day. In 12h format (e.g ' 09:00 PM ') |
ThursdayIsWorkingDay | bool | Shows if Thursday is a working day or not |
FridayStart | string |
The beginning of Friday working day. In 12h format (e.g ' 09:00 AM ') |
FridayEnd | string | The end of Friday working day. In 12h format (e.g ' 09:00 PM ') |
FridayIsWorkingDay | bool | Shows if Friday is a working day or not |
SaturdayStart | string |
The beginning of Saturday working day. In 12h format (e.g ' 09:00 AM ') |
SaturdayEnd | string | The end of Saturday working day. In 12h format (e.g ' 09:00 PM ') |
SaturdayIsWorkingDay | bool | Shows if Saturday is a working day or not |
SundayStart | string |
The beginning of Sunday working day. In 12h format (e.g ' 09:00 AM ') |
SundayEnd | string | The end of Sunday working day. In 12h format (e.g ' 09:00 PM ') |
SundayIsWorkingDay | bool | Shows if Sunday is a working day or not |
Workflow settings
Field name
|
Type
|
Description |
---|---|---|
IsAbleChangeWorkOrderStatusFromComplete | bool |
Shows if User has the ability to change Work Order and Task status when its status is Complete |
IsAbleCompleteWorkOrderWithoutFillingForm | bool | Shows if User has the ability to complete Work Order and Task status even if its service forms are not filled (required fields) |
IsInvoicingWorkOrdersWithZeroServiceItemsAllowed | bool | Shows if User has the ability to invoice Work Orders without Service Items attached |
IsUsersCanSeeMainEntitiesOfColleagues | bool | Shows if User can see Work Orders and Tasks of colleagues |
Invoicing settings
Field name
|
Type
|
Description |
---|---|---|
IsExportingServiceRequestsAsJobsEnabled | bool | Shows if Service Requests can be exported like jobs |
IsExportingAddressesAsSubCustomersEnabled | bool | Shows if Address can be exported as sub customers |
Customer
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of customer |
|
CompanyName | string | No | Customer's company name | |
CustomId | string | No | The custom identifier of customer | |
CustomerTypeId | int | Yes | The identifier of Customer Type. All Customer's types can be retrieved from Settings | |
SourceTypeId | int | Yes | The identifier of Source Type. All Source's types can be retrieved from Settings | |
DisplayName | string | Yes | Customer's display name. It should be unique. It is used for displaying in different lists on portal and for QuickBooks integration purposes | |
Notes | string | No | Additional notes about Customer | |
TierNumber | int | 1 or 2 or 3 | Yes | Tier number. It is used for tiered pricing feature |
IsTaxable | bool | No | Is this user taxed | |
TaxCodeId | int | No | The identifier of Tax Code | |
TaxNameId | int | No | The identifier of Tax Name | |
QuickBooksNumber | int | No | The identifier of QuickBoooks customerID | |
QuickBooksDesktopListId | string | No | Identifier of QuickBooks desktop list | |
Contacts | Contact | 0-N | At least one contact is required for 'Insert' request. | |
Addresses | Address | 0-N | At least one address is required for 'Insert' request. |
Address
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Address |
|
CustomerId | int | Yes | The unique identifier of Customer. | |
AddressName | string | No | The description of Address | |
Description | string | No | The description of Address | |
AddressTypeId | int | Yes | The identifier of Address Type. All Address's types can be retrieved from Settings | |
AddressLine1 | string | Yes | Street address | |
AddressLine2 | string | Yes | City, State and ZIP | |
LastChangeDate | DateTime | No | Date and time of last changes to this address | |
AVSChecked | bool | No | If this address was checked by Address Verification System |
Contact
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Contact |
|
CustomerId | int | Yes | The unique identifier of Customer. | |
CarrierId | int | ? | The unique identifier of Carrier. This field is required only if contact is set to be notified by SMS. All Carriers types can be retrieved from Settings | |
ContactTypeId | int | Yes | The identifier of Contact Type. All Contact's types can be retrieved from Settings | |
string | ? | The email of a contact. This field is required only if contact is set to be notified by Email. | ||
Fax | string | No | ||
FirstName | string | Yes | ||
LastName | string | Yes | ||
Phone | string | ? | Phone or Mobile phone should be set | |
MobilePhone | string | ? | Phone or Mobile phone should be set. This field is required only if contact is set to be notified by SMS. | |
NotifyViaEmail | bool | Yes | ||
LastChangeDate | DateTime | No | Date of last change for this contact | |
NotifyViaSms | bool | Yes |
Invoice
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
AddressId | int | No |
The unique identifier of the Address |
|
BillTo | string | No | Description of who is being billed | |
CreateDate | DateTime | No | The create date of the Invoice. | |
CustomId | string | No | The custom identifier of the invoice. One will be generated if not specified | |
CustomerId | int | Yes | The unique identifier of Customer | |
DueDate | DateTime | No | Date the invoice is due | |
ExcelPdfTaxRate | Decimal | No | Specified tax rate for excel/pdf invoicing. The default rate will be added if not specified. | |
Id | int | No | Internal invoice id | |
IsHideOnCustomer | bool | No | Set to true to hide from the customer. Set to false make visible to the customer. | |
LastChangeDate | DateTime | No | Last change date of the invoice | |
Memo | string | No | Memo field for the invoice | |
SendToContactId | int | No | Id of the customer contact to whom the invoice is being sent. | |
ServiceTo | string | No |
Description of who/what is being serviced |
|
Tax | Decimal | No | Tax amount associated with the invoice | |
TaxNameId | int | No | Id of the tax name if using Quickbooks invoicing | |
Total | Decimal | No | Sum of service item costs and taxes associated with the invoice | |
Zip | string | No | Customer zip code |
Invoice Service Item
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Invoice Service Item |
|
InvoiceId | int | Yes | The unique identifier of related Invoice | |
IsTaxable | bool | No | Read only value denoting whether the service item is taxable or not | |
ServiceItemId | int | Yes | The unique identifier of related Service Item | |
Count | decimal | Yes | Work Order Service Item quantity | |
CustomPricePerUnit | decimal | No | Custom price per unit of Work Order Service Item. Can be set if 'Service item pricing override' feature is enabled |
Payment
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Payment. Not required when creating. |
|
Amount | decimal | Yes | Amount of the payment | |
CheckNumber | int | No | Check number if paying by check | |
CustomId | int | No | The custom id of the payment | |
PaymentStatus | String | No | Payment status: settled, refunded, voided, or pending | |
PaymentType | string | No | "Cash" or "Check" defaults to cash if not present | |
InvoiceId | int | Yes |
The unique identifier of related Invoice |
|
CreateDate | DateTime | No | Create date of the payment | |
UserPayeeId | int | No | Id of the user taking the payment |
Service Request
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Service Request |
|
CustomerId | int | Yes | The unique identifier of related Customer | |
Summary | string | Yes | ||
DueDate | DateTime | No | Should be UTC | |
Description | string | No | Text | |
CreateDate | DateTime | Yes | The date when Service Request was created. Should be UTC | |
StartDate | DateTime | No | The date when Service Request would be started. Should be UTC | |
EndDate | DateTime | No | The date when Service Request would be ended. Should be UTC | |
StatusId | int | Yes | The identifier of Service Request Status. All Service Request's statuses can be retrieved from Settings | |
AddressId | int | Yes | The unique identifier of related Address | |
CustomId | string | Yes | The custom identifier of customer of Service Request | |
IsTimeSet | bool | No |
Service Request Status
Field name
|
Type
|
Description |
---|---|---|
Id | int |
The unique identifier of Service Request Status |
Name | string |
Work Order and Task entity
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique (Backend) identifier of Work Order |
|
ServiceRequestId | int | ? | The unique (Backend) identifier of related Service Request. Only one field from ServiceRequestId and LocationId should be not nullable | |
LocationId | int | ? | The unique identifier of related Location. Only one field from ServiceRequestId and LocationId should be not nullable. Tasks require LocationID, Work Orders do not. All Locations can be retrieved from Settings | |
TaxNameId | int | No | The unique identifier of related Tax Name | |
FieldWorkerId | int | Yes | The unique identifier of Field Worker assigned to given Work Order | |
Description | string | No | Text | |
CreateDate | DateTime | Yes | The date when Work Order was created. Should be UTC | |
StatusId | int | Yes | The identifier of Work Order Status. All Work Order's statuses can be retrieved from Settings | |
CustomId | string | Yes | The Front end display of the WO ID (You'll want to take the Custom ID of the Service Request and add a '-1' for the WO | |
IdInContext | int | Yes | The number of Work Order of parent Service Request. For first Work Order it equals to 1, for second it equals to 2 and so on. Used for proper Custom Id generating. | |
StartDate | DateTime | Yes | The date when Work Order would be started. Should be UTC | |
EndDate | DateTime | Yes | The date when Work Order would be finished. Should be UTC | |
ActorId | int | Yes | The unique identifier of User who modifies given Work Order (for history purposes) | |
InvoicingMemo | string | No | Text which would be added to Invoice |
'ServiceRequestId is not null' means that this is a Work Order
'LocationId is not null' means that this is a Task
Work Order Custom Status
Field name
|
Type
|
Description |
---|---|---|
Id | int |
The unique identifier of Work Order Custom Status |
IsCanInvoiced | bool | Shows if Work Order with this status can be invoiced |
Name | string | |
Position | int | The sequence number in list of Custom Statuses |
WorkOrderStatusTypeId | int | The identifier of Work Order Status Type. This types can be retrieved from Settings |
LastChangeDate | DateTime | Date when this status was changed last time |
Color | string | RGB-expressed color set for this status |
Work Order Status Type
Field name
|
Type
|
Description |
---|---|---|
Id | int |
The unique identifier of Work Order Status Type |
Name | string | |
DefaultColor | string | RGB-expressed default color for this status type |
CustomColor | string | RGB-expressed manually changes color for this status type |
Position | int | Number of row in the list of work order status types |
Service Item
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Service Item |
|
Name | string | Yes | ||
PricePerUnit | string | Yes | Default price per unit. Example of value: "3.56" | |
UnitType | string | Yes | All unit types can be retrieved from Settings | |
Category | string | No | Service Item Category | |
UnitTypeId | int | Yes | The unique identifier of Service Item unit type | |
CategoryId | int | No | The unique identifier of Service Item category | |
LastChangeDate | DateTime | Yes | Date and time of last change of this service item | |
Description | string | No | Additional details about Service Item | |
IsDefault | bool | Yes | Shows if Service Item is default or not. Default service item is added to work orders automatically | |
IsTaxable | bool | Yes | Shows if Service Item is taxable or not. It is used in invoicing (Excel/PDF and QuickBooks Online) | |
TaxCodeId | int | No | Special tax code identifier of Service Item. It is used in invoicing (QuickBooks Desktop) | |
ServiceType | string | 'General', 'Service', 'Travel', 'Overtime' | This field cannot be changed. 'Service', 'Travel', 'Overtime' are types of Time Based Service Items. 'General' is a type of any other Service Item | |
Tier2Price | string | No | Example of value: "3.56". It is used in Tiered Pricing | |
Tier3Price | string | No | Example of value: "3.56". It is used in Tiered Pricing | |
QuickBooksNumber | int | No | QuickBooks number | |
QuickBooksDesktopListId | string | No | Identifier of this service item in QuickBooks Desktop List | |
IsActive | bool | No | Is this service item still active or not |
Work Order Service Item entity
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Id | int | Yes |
The unique identifier of Work Order Service Item |
|
WorkOrderId | int | Yes | The unique identifier of related Work Order | |
ServiceItemId | int | Yes | The unique identifier of related Service Item | |
Count | float | Yes | Work Order Service Item quantity | |
CustomPricePerUnit | double | No | Custom price per unit of Work Order Service Item. Can be set if 'Service item pricing override' feature is enabled | |
CalculatedPrice | double | Yes | Price of this service item in this work order | |
TaxCodeId | int | No | If taxable identifier of tax code applied to this service item |
User
Field name
|
Type
|
Values
|
Required
|
Description |
---|---|---|---|---|
Field name
|
Type
|
Values
|
Required
|
Description |
Id | int | Yes |
The unique identifier of User |
|
Login | string | Yes | ||
CarrierId | int | ? | The unique identifier of Carrier. This field is required only if contact is set to be notified by SMS. All Carriers types can be retrieved from Settings | |
RoleId | int | Yes | The unique identifier of Role. All Roles types can be retrieved from Settings | |
RoleName | string | ---- | ||
Color | string | No | User's color. In hex format (e.g. '23df34') | |
string | Yes | |||
FirstName | string | Yes | ||
LastName | string | Yes | ||
Phone | string | ? | ||
MobilePhone | string | Yes | ||
NotifyViaEmail | bool | Yes | ||
NotifyViaSms | bool | Yes | ||
IsActive | bool | Yes | Shows if user is activated or not | |
HideTimelineMap | bool | Yes | Shows if deactivated user would be hidden from timeline and map | |
Schedule | Schedule | --- | Custom User's schedule. It is equal to Organization Schedule if custom schedule hasn't been set. |