---
title: "Search Work Orders"
method: GET
path: "/workorders"
tags: ["WorkOrders"]
---

# Search Work Orders

`GET /workorders`

## Request

- Base URL: `https://sb2api.servicechannel.com/v3`
- URL: `https://sb2api.servicechannel.com/v3/workorders`
- Auth: OAuth 2
  - Authorization code: `https://sb2login.servicechannel.com/oauth/authorize`
  - Token URL: `https://sb2login.servicechannel.com/oauth/token`
- TypeScript: <https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3/docs/workorders/get.ts> (a function with typed inputs; its response is checked against the schema)

Performs search of workorders by specified filter expression and returns list of work orders with all details.
            <br />One page contains 50 items by default ("pageSize"=50). To get next 50 items use the "page" parameter (for example page=2 and so on).

## Query parameters

- `locationId` integer
- `storeId` string
- `otherLocationId` unknown[]
  - unknown
- `id` unknown[]
  - unknown
- `category` unknown[]
  - unknown
- `categoryId` unknown[]
  - unknown
- `status` unknown[]
  - unknown
- `extendedStatus` unknown[]
  - unknown
- `number` unknown[]
  - unknown
- `serviceId` unknown[]
  - unknown
- `priority` unknown[]
  - unknown
- `purchaseNumber` unknown[]
  - unknown
- `trade` unknown[]
  - unknown
- `tradeId` unknown[]
  - unknown
- `scheduledDate` unknown[]
  - unknown
- `expirationDate` unknown[]
  - unknown
- `callDate` unknown[]
  - unknown
- `sort` string
- `page` integer
- `pageSize` integer

## Response `200`

Request succeeded and the requested information is in the response.

- ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseWorkOrder[]
  - `Id` integer: Work Order identifier.
  - `Number` string: Work Order Number.
  - `PurchaseNumber` string: Purchase number of work order.
  - `Subscriber` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseSubscriber: Subscriber associated with a work order.
    - `Id` integer: Unique identifier of the subscriber.
    - `ShortName` string: Short name of the subscriber.
    - `Name` string: Required Name Name - name of the subscriber.
    - `IsOutsourcedWorkOn` boolean: Indicates whether the work is outsourced for the subscriber.
  - `Provider` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseProvider: Provider associated with a work order.
    - `Id` integer: Id.
    - `Name` string: Name.
    - `DoNotDispatch` boolean: DoNotDispatch enabled?
    - `Phone` string: Phone number of the provider.
    - `IsInternal` boolean: Is Internal.
    - `IsOnOffShoreFeatureEnabled` boolean: Is OnOffShoreFeature Enabled.
  - `Location` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseLocation: Location associated with a work order.
    - `Id` integer: Unique location identifier.
    - `SubscriberId` integer: Unique subscriber identifier.
    - `StoreId` string: Alphanumeric identifier of the store in the client's system. Assigned by and unique per subscriber.
    - `Name` string: Location name.
    - `ShortName` string: Shortened location name.
    - `Latitude` number, double: Global position. Latitude.
    - `Longitude` number, double: Global position. Longitude.
    - `Distance` number, double: Distance from GPS coordinate to this location.
    - `Address1` string: Additional location address.
    - `Address2` string: Main location address.
    - `City` string: Location city.
    - `State` string: State where the location is situated.
    - `Zip` string: Location ZIP or postal code.
    - `TimeZoneInfoId` integer: Numeric identifier of the location time zone.
    - `Notes` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseLocationNote[]: Location notes.
      - `Id` integer: Location note numeric identifier.
      - `HeaderId` integer: Unique location note header identifier.
    - `TimeShiftToEST` integer: Time shift to Eastern Standard Time.
    - `AddressTypeId` integer: Address format pattern Id.
    - `IsInternational` boolean: Indicates if the location is international.
  - `LocationId` integer: LocationId for use in ODATA calls without expanding Location property (ref. PLAT-55878).
  - `Status` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseWorkOrderStatus: Status of a work order.
    - `Primary` string: Primary work order status value, you can pass status id or its name here. To get all subscriber's statuses see [Statuses] in Statuses section
    - `Extended` string: Extended status value
    - `CanCreateInvoice` boolean: True if invoice creation is allowed
  - `IssueTicketInfo` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseIssueTicketInfo: Issue ticket information.
    - `Id` integer: Issue ticket identifier.
    - `SetupId` integer: Issue ticket setup identifier.
  - `Caller` string: Caller.
  - `CreatedBy` string: Created by user.
  - `CallDate` string, date-time: Call date.
  - `CallDate_DTO` string, date-time: Call date (DateTimeOffset).
  - `EstimatedCompletionDate` string, date-time: Estimated completion date.
  - `OriginalEstimatedCompletionDate` string, date-time: Original estimated completion date.
  - `ProjectedCompletionDate` string, date-time: Projected completion date.
  - `OriginalProjectedCompletionDate` string, date-time: Original projected completion date.
  - `Priority` string: Priority.
  - `Trade` string: Trade.
  - `TradeId` integer: Trade Id.
  - `ApprovalCode` string: Approval code.
  - `ScheduledDate` string, date-time: Scheduled date.
  - `ScheduledDate_DTO` string, date-time: Scheduled date (DateTimeOffset).
  - `CompletedDate` string, date-time: Completed date.
  - `CompletedDate_DTO` string, date-time: Completed date (DateTimeOffset).
  - `ExpirationDate` string, date-time: Gets or sets ExpirationDate.
  - `ExpirationDate_DTO` string, date-time: Expiration date (DateTimeOffset).
  - `UpdatedDate` string, date-time: Updated Date.
  - `UpdatedDate_DTO` string, date-time: Updated date (DateTimeOffset).
  - `CreatedDate` string, date-time: Created Date.
  - `CreatedDate_DTO` string, date-time: Created date (DateTimeOffset).
  - `Description` string: Description.
  - `CategoryId` integer: Category Id.
  - `Category` string: Category.
  - `Nte` number, double: NTE (Not To Exceed) amount.
  - `Currency` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseCurrency: Currency information.
    - `Id` integer: Currency identifier.
    - `AlphabeticalCode` string: Alphabetical currency code.
    - `Rate` number, double: Exchange rate.
  - `ProblemCode` string: Problem code.
  - `Resolution` string: Resolution.
  - `Asset` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseAssetResponse: Object details of an asset.
    - `Id` integer: Unique numeric asset identifier assigned by the system.
    - `Tag` string: Alphanumeric asset identifier assigned by the client.
    - `Manufacturer` string: Company name that produces an asset.
    - `ModelNo` string: Asset model number.
    - `SerialNo` string: Asset serial number.
    - `LocationId` integer: Unique numeric identifier of a location an asset is assigned to.
    - `Area` string: Place where an asset is physically located.
    - `StoreId` string: Alphanumeric location identifier assigned by the client.
    - `Trade` string: Trade of an asset type the asset is assigned to, for example, *HVAC*, *DOORS*, *ELECTRICAL*.
    - `TradeId` integer: Numeric identifier of the primary trade of an asset.
    - `Type` string: Asset type, for example, *Refrigerator*, *Computer Monitor*, etc.
    - `AssetTypeId` integer: Unique numeric identifier of an asset type.
    - `BrandId` integer: Unique numeric identifier of a manufacturer that produces an asset.
    - `InstallDate` string: Date and time when an asset was installed at the current location.
    - `ManufacturerDate` string, date-time: Date and time when an asset was produced.
    - `ManufacturerDateStr` string: Date and time when an asset was produced by the manufacturer.
    - `PurchaseDate` string: Date and time when an asset was purchased.
    - `UsesRefrigerant` integer: Defines whether an asset uses a refrigerant. **Possible values**: 0 - no, 1 - yes.
    - `Active` boolean: Shows whether an asset is still in use. **Possible values**: *true*, *false*.
    - `IsLeased` boolean: Defines whether an asset is leased. **Possible values**: *true*, *false*.
    - `LifeExpectancy` integer: Estimated useful life of an asset in months.
    - `OriginalValue` number, double: Original asset price.
    - `LeaseDate` string: Date and time when a lease was signed.
    - `LeasePeriod` integer: Period of time in months a contracted lease is in place.
    - `Condition` integer: Value representation of an asset condition. **Possible values**: `0` - *broken*, `25` - *poor*, `50` - *average*, `75` - *good*, `100` - *excellent*.
    - `EnergyEfficiency` string: Provides information on energy efficiency of a particular asset. Maximum is 150 characters.
    - `Capacity` string: Provides information on the maximum amount of the refrigerant an asset can contain. Maximum is 150 characters.
    - `HasLeakDetector` boolean: Defines whether an asset has a leak detector and belongs to the Leak Detector asset type. **Possible values**: *true*, *false*.
    - `Location` string: Place where an asset is physically located.
    - `Warranty` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseWarranty: Object containing warranty parameters.
      - `ExpirationDate` string, date-time: Warranty expiration date based on the warranty expiration settings.
      - `ProviderId` integer: ID of a provider who is in charge of warranty services.
      - `NTE` number, double: Maximum amount of money to be spent on warranty services in USD. Value -1 means that the amount is not applicable.
      - `Priority` string: Defines how quickly warranty services should be provided, for example, *Emergency-4 Hours*, *Normal-48 Hours*, *7 Days*.
      - `Category` string: Warranty category, for example, *ADVISE ONLY*, *REPAIR*, *DISASTER*.
      - `CategoryId` integer: Category Id.
      - `Provider` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseWarrantyProvider: Object containing warranty provider details.
        - `Type` 'Fixed' | 'PrimaryRanked' | 'FixedRanked': Defines the provider type responsible for warranty services. **Possible values**: `0` - Fixed provider, `1`- Primary rank provider, `2` - Fixed rank provider.
        - `Value` integer: Provider type value. Displays provider ID for the fixed provider type; provider rank number — from 1 to 100 — for the fixed rank type; 1 for a primary rank provider.
      - `Expiration` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseWarrantyExpiration: Object containing warranty expiration details.
        - `Type` 'FromPurchaseDate' | 'FromInstallDate': Warranty expiration calculation type. **Possible values**: 0 - the expiration date is calculated starting from the asset purchase data; 1 - the expiration date is calculated starting from the asset installation date.
        - `Period` integer: Warranty period in months.
    - `IsReplaceEquipment` boolean: Defines if the current asset is a replacement for another on condition that a tracking number is provided. **Possible values**: *true*, *false*.
    - `HasTagged` boolean: Defines if an asset contains ‘Asset Tag’.
    - `AssetTag` string: Unique alphanumeric decoded value contained in a barcode, QR code, or NFC tag of an asset. It is used to scan assets via [ServiceChannel Mobile](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/575341308/Asset+Tagging#AssetTagging-AccessingtheAssetScanningModuleinSCMobile) and [ServiceChannel Provider](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/1181745372/Scanning+and+Validating+Assets+via+SC+Provider+for+FTM+Internal+Techs).
    - `ParentId` integer: Unique numeric identification of an asset that has a circuit or component.
    - `Description` string: Comment created by a user when adding an asset.
    - `HasComponents` boolean: Defines whether an asset has components. **Possible values**: *true*, *false*.
    - `HasCircuits` boolean: Defines if an asset has an added circuit. **Possible values**: *true*, *false*.
    - `IsCircuit` boolean: Defines whether an asset is a circuit. **Possible values**: *true*, *false*.
    - `SubscriberId` integer: Unique numeric ID of the subscriber an asset belongs to.
    - `AssetValidated` boolean: Defines whether the asset has been validated by a technician. **Possible values**: *true*, *false*.
    - `ValidationRequired` boolean: Defines whether an asset needs to be validated by a technician upon check-in.
    - `IsLeakDetector` boolean: Defines whether an asset belongs to the *Leak Detector* asset type.
    - `AssetStatus` string, byte: Defines an asset repair status. **Possible values**: `0` - *In Use*, `1` - *Out For Repair*, `2` - *Replacement Recommended*, `3` - *Repaired*.
    - `AssetUpdatesStatus` string, byte: Defines the asset update status. **Possible values**: 0 - Attributes updated by provider, 1- New unconfirmed - asset created by provider, 2 - Rejected, 3 - Asset change confirmed.
    - `AssetTypeGroupId` integer: Unique ID of an asset type group.
    - `AssetValidationStatus` integer
    - `CustomAttributes` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseEquipmentAttributeDescription[]: Custom Attributes
      - `EquipmentAttributeId` integer: Equipment attribute identifier.
      - `EquipmentTypeAttributeId` integer: Equipment type attribute identifier.
      - `ValueType` integer: Value type identifier.
      - `EquipmentId` integer: Equipment identifier.
      - `Value` SystemObject
      - `ValueText` string: Text representation of the value.
      - `SelectedOptionsText` string: Text of selected options.
      - `Visible` boolean: Indicates if the attribute is visible.
      - `Editable` boolean: Indicates if the attribute is editable.
      - `Required` boolean: Indicates if the attribute is required.
      - `Name` string: Attribute name.
      - `Custom` boolean: Indicates if the attribute is custom.
    - `HasChilds` boolean
    - `ModifiedDateDto` string, date-time: ModifiedDate datetime offset
  - `AssetCount` integer: Asset count.
  - `Attachments` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseAttachmentsDescriptor: Attachments descriptor information.
    - `Count` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseCountDescriptor: Count descriptor information.
      - `Total` integer: Total count.
      - `Own` integer: Own count.
  - `Notes` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseNotesDescriptor: Notes information for a work order.
    - `WorkOrderId` integer: Work order identifier.
    - `Last` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseNoteInfo: Information about a note.
      - `Id` integer: Note identifier.
      - `DocumentId` string: Associated document identifier.
      - `Number` integer: Note number.
      - `NoteData` string: Note content.
      - `DateCreated` string, date-time: Date the note was created.
      - `ActionRequired` boolean: Indicates if action is required.
      - `MailedTo` string: Recipients of the note.
      - `CreatedBy` string: Creator of the note.
    - `Count` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseCountDescriptor: Count descriptor information.
      - `Total` integer: Total count.
      - `Own` integer: Own count.
  - `PostedId` integer: Gets or sets PostedId.
  - `IsCheckInDenied` boolean: Gets or sets a value indicating whether IsDenied.
  - `IsInvoiced` boolean: Gets or sets IsInvoiced.
  - `CheckInDeniedReason` string: Gets or sets Reason.
  - `IsExpired` boolean: Gets or sets IsExpired.
  - `IsEnabledForMobile` boolean: Gets or sets value that allowed clients to manage their vendors to participate in the mobile App process.
  - `HasWorkActivity` boolean: Indicates if work activity exists.
  - `Source` string: Source.
  - `CallerId` integer: Caller Id.
  - `AutoComplete` boolean: Indicates if auto complete is enabled.
  - `Labels` ServiceChannelServicesWebApiModelsResponseWorkOrderGetWorkOrdersResponseWorkOrderLabel[]: Work order labels.
    - `Id` integer: Unique identifier for the label.
    - `Label` string: Text of the label.
  - `AutoInvoice` boolean: Indicates if auto invoice is enabled.
  - `ProjectedCompletionDate_DTO` string, date-time: Projected completion date (DateTimeOffset).
  - `OriginalProjectedCompletionDate_DTO` string, date-time: Original projected completion date (DateTimeOffset).

## Other responses

- `400`: Bad Request - the request could not be understood or was missing required parameters. <br/>Error codes: <br/> 403 - Account has not been activated for GPS use; <br/> 503 - Validation fails. Request is empty or null; <br/> 601 - Location Id is invalid; <br/> 606 - Cannot find location by StoreId; <br/> 1000 - Invalid Setup Id;
- `401`: Requested resource requires authentication. <br/>Error codes: <br/> 504 - API call rejected by security permissions;
- `500`: Indicates that a generic error has occurred on the server. <br/>Error codes: <br/> 501 - Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding.

---

[API](https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3.md) - [All operations](https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3/llms.txt) - [OpenAPI document](https://skmtc.dev/servicechannel/apis/servicechannel-api-v-3/revisions/d490d6596809?raw)
