Barcode API Endpoint
License
The Barcode module requires a separate license to be installed before key parts of the functionality are available. This license is disabled by default. Please contact PCR to obtain a license.
Before the Barcode API calls can be sent, the Barcode module must be activated, and PCR will need to set up a special Event in order to process Barcode Scan Transactions.
Using POST Calls
POST requests will ignore parameters supplied as a query string and need any additional parameters in the request Body.
To configure the number of Pages/Results returned by the API (this is most useful for the SQL Endpoint), you can send these as additional Parameter's in the Body.
Parameter
Data Type Default
Description
limit
Interger 20
Number of listings to show.
page
Interger 1
Page number to show.
API fields are not case sensitive, and will always be returned in the lower case format.
Write Call
Available Fields
Parameter | Required | Data Type | Options | Notes |
---|---|---|---|---|
transaction_type | Yes | String | sd_eqp_status, whs_bulk_add, whs_bulk_transfer | This field determines how PCR-360 will process the request. |
SD Equipment Status
Notes
transaction_type must be sd_eqp_status.
When setting up the Barcode API in Admin, the Authentication Required box must be true. Barcode requires authentication to work.
Available Fields
Parameter | Required | Data Type | Options | Notes |
---|---|---|---|---|
recid | Yes | Integer | RECID column from SERVICE_DESK_EQP table. | |
sde_status | Yes | String | Value Lookups: | The Status of the Equipment. |
asset_tag | No* | String | Asset Tag on the Equipment. Conditionally Required if the Equipment is an Asset. | |
eqp_id | No* | String | Equipment ID of the Equipment. Conditionally Required if the Equipment is Cabling Equipment. | |
location | No* | Integer | RECID of the Warehouse of the Equipment. Conditionally Required: see Notes section below. | |
worker | No* | Integer | RECID of the Worker performing the Activity. Conditionally Required: see Notes section below. | |
scan_date | No | Datetime | Expected format: YYYY/MM/DD HH:ii:ss or YYYY/MM/DD |
Notes
For sde_status: Staged the following are required.
location - must be an active sub-Warehouse of the starting Warehouse
For sde_status: Picked Up the following are required.
location - must be an active Warehouse
worker - Contact RECID - Worker type, Active
For sde_status: Complete the following are required.
location - if it is blank on the sd_eqp record, it must be included, if the Equipment is non-consumable and must be an existing Location
For sde_status: Void, no additional details are required for the Equipment record.
Request Example
Call
http://DOMAIN/api/API_KEY/barcode.OUTPUT
Headers
Key | Value |
---|---|
Content-Type | application/json |
PCR-AUTH-TOKEN | example: e036a785-4d7a-40ed-a04a-c8e339327f55 |
Body
Key | Value |
---|---|
transaction_type | sd_eqp_status |
recid | 53054 |
sde_status | 262 |
asset_tag | assettag145 |
eqp_id | 39 |
location | 87963 |
worker | 63045 |
JSON Request:
Results
If the request is successful, then the response will return as:
Warehouse Bulk Add
Notes
transaction_type must be whs_bulk_add.
When setting up the Barcode API in Admin, the Authentication Required box must be true . Barcode requires authentication to work.
Available Fields
Parameter | Required | Data Type | Options | Notes |
---|---|---|---|---|
eqp_catalog | Yes | Integer | RECID of the Equipment's Equipment Catalog. | |
eqp_status | Yes | Integer | Value Lookups: | The RECID of the status of the Equipment. |
eqp_condition | No | Integer | Value Lookups: | The RECID of the condition of the Equipment. |
received_date | No | Date | The date the Equipment was Received. Format "YYYY/MM/DD" | |
location | Yes | Integer | RECID of the Warehouse of the Equipment. Must be an active Warehouse. | |
quantity | Yes | Integer | This represents both Units and Quantity. If the Equipment Catalog Has Units - it is Units - if it is marked as "not units" then it is recorded as Quantity in the application currently. | |
purchase_price | No | Float | The purchase price of the Equipment must be greater than or equal to zero. | |
assets | No | Array | Only valid for Asset or Cabling Equipment, else ignored. If provided the number of entries must match the quantity. | |
comments | Yes | String | The reason why the Equipment is being added. | |
units | No* | Integer | Must be a positive number that is greater than 0. | |
scan_date | No | Datetime | Expected format: YYYY/MM/DD HH:ii:ss or YYYY/MM/DD |
Notes
It must be an active Equipment Catalog.
A positive (none-zero) count and it cannot be null.
Allowed Status'
Unassigned
Broken
Lost
Retired
Any custom status for the EQP_STATUS in the List Values table.
The API will give an error if the status is not one of the valid list values.
The Warehouse must be active.
Asset Array
Optional for Asset or Cabling Equipment (flags on Equipment Catalog).
It should be ignored (not put in db) if non-asset or non-cabling equipment is used.
The number of entries in the asset array must match the provided count.
If provided, the price must be a positive number or zero; if not provided, the value can be null.
Any valid date, past, present, or future, is allowed.
Request Example
Call
http://DOMAIN/api/API_KEY/barcode.OUTPUT
Headers
Key | Value |
---|---|
Content-Type | application/json |
PCR-AUTH-TOKEN | example: e036a785-4d7a-40ed-a04a-c8e339327f55 |
Body
Key | Value |
---|---|
transaction_type | whs_bulk_add |
eqp_catalog | 533 |
eqp_status | 94 |
location | 86201 |
quantity | 1 |
purchase_price | $1.74 |
comments | Johnny Test |
received_date | 2020/11/06 |
assets[0][ASSET_TAG] | assettag145 |
assets[0][SERIAL_NUM] | serialnum145 |
assets[0][EQUIPMENT_ID] | equipmentid145 |
units | 11 |
JSON Request:
Results
If the request is successful, then the response will return as:
Warehouse Bulk Transfer
Notes
transaction_type must be whs_bulk_transfer.
When setting up the Barcode API in Admin, the Authentication Required box must be true . Barcode requires authentication to work.
Available Fields
Parameter | Required | Data Type | Options | Notes |
---|---|---|---|---|
eqp_catalog | Yes | Integer | RECID of the Equipment's Equipment Catalog. | |
quantity | No | Integer | This represents both Units and Quantity. If the Equipment Catalog Has Units - it is Units - if it is marked as "not units" then it is recorded as Quantity in the application currently. | |
from_location | Yes | Integer | Location RECID of the Warehouse of the Equipment is from. | |
to_location | Yes | Integer | Location RECID of the Warehouse of the Equipment is going to. | |
recids | No* | Array | Conditionally Required if the Equipment is an Asset or Cabling. Sent as an array of recids. See the Notes section below for more details. | |
comments | Yes | String | The reason why the Equipment is being transferred. | |
scan_date | No | Datetime | Expected format: YYYY/MM/DD HH:ii:ss or YYYY/MM/DD |
Notes
It must be an active Equipment Catalog.
Positive (none-zero) count, cannot be null.
Status' that are allowed
Unassigned
Broken
Lost
Retired
Any custom status
If the Status is not one of the valid List Values, the API will error.
The Warehouse must be an active Warehouse.
Equipment RecIDs array
Required for Asset or Cabling Equipment (flags on Equipment Catalog).
should be ignored (not put in db) if a non-asset or non-cabling equipment is used.
The number of entries in the Equipment RecIDs array must exactly match the count when provided.
Request Example
Call
http://DOMAIN/api/API_KEY/barcode.OUTPUT
Headers
Key | Value |
---|---|
Content-Type | application/json |
PCR-AUTH-TOKEN | example: e036a785-4d7a-40ed-a04a-c8e339327f55 |
Body
Key | Value |
---|---|
transaction_type | whs_bulk_transfer |
eqp_catalog | 533 |
quantity | 23 |
from_location | 86201 |
to_location | 86200 |
comments | Johnny Test |
JSON Request:
Results
If the request is successful, then the response will return as:
Receive Purchase Order
Notes
transaction_type must be po_receive.
When setting up the Barcode API in Admin, the Authentication Required box must be true . Barcode requires authentication to work.
Available Fields
Parameter | Required | Data Type | Options | Notes |
---|---|---|---|---|
recid | Yes | Integer | Purchase Order RECID, Status must be Open | |
eqp_catalog | Yes | Integer | Equipment Catalog RECID | |
price | Yes | Float | Price of Equipment | |
units | No | Integer | Units of Equipment. Only valid for Has Units Equipment, else ignored. The value must match an entry on the Purchase Order Equipment, as PCR-360 uses this to detect which item is being received if there is more than one entry for the Equipment Catalog on the Purchase Order and their units are different. | |
quantity | Yes | Integer | Quantity to Receive | |
location | Yes | Integer | Valid Active Warehouse RECID to receive Equipment | |
received_date | No | Date | Received Date | |
assets | No | Array | Only valid for Asset or Cabling Equipment, else ignored. If provided the number of entries must match the quantity. | |
scan_date | No | Datetime | Expected format: YYYY/MM/DD HH:ii:ss or YYYY/MM/DD |
Request Example
Call
http://DOMAIN/api/API_KEY/barcode.OUTPUT
Headers
Key | Value |
---|---|
Content-Type | application/json |
PCR-AUTH-TOKEN | example: e036a785-4d7a-40ed-a04a-c8e339327f55 |
Body
Key | Value |
---|---|
recid | 12874 |
eqp_catalog | 346 |
price | 9.99 |
quantity | 4 |
location | 694 |
JSON Request:
Results
If the request is successful, then the response will return as:
Warehouse Physical Inventory
Notes
transaction_type must be whs_physical_inventory.
When setting up the Barcode API in Admin, the Authentication Required box must be true . Barcode requires authentication to work.
Available Fields
Parameter | Required | Data Type | Options | Notes |
---|---|---|---|---|
scan_date | Yes | Datetime | Expected format: YYYY/MM/DD HH:ii:ss or YYYY/MM/DD | |
eqp_catalog | Yes | Integer | Equipment Catalog RECID | |
units | No | Array | Units of Equipment. Only valid for Has Units Equipment, else ignored. If provided the number of entries must match the quantity. | |
quantity | Yes | Integer | Quantity to Receive | |
location | Yes | Integer | Valid Active Warehouse RECID to receive Equipment | |
assets | No | Array | Only valid for Asset or Cabling Equipment, else ignored. If provided the number of entries must match the quantity. |
Request Example
Call
http://DOMAIN/api/API_KEY/barcode.OUTPUT
Headers
Key | Value |
---|---|
Content-Type | application/json |
PCR-AUTH-TOKEN | example: e036a785-4d7a-40ed-a04a-c8e339327f55 |
Body
Key | Value |
---|---|
scan_date | 2000/01/01 00:00:00 |
eqp_catalog | 346 |
quantity | 1 |
location | 694 |
assets | bcasset1sd126 |
JSON Request:
Results
If the request is successful, then the response will return as:
Performing a Batch Call
Users are also able to submit a Batch of Barcode scans. These Batches can contain one or more different types of Barcode Transactions.
Parameter | Required | Data Type | Notes |
---|---|---|---|
batch | No | Array | Barcode Batches expect the data to be formatted as JSON. Batches are expected to be an array of different Barcode Transactions. |
Locating Data related to Barcodes
When the Barcode Module is enabled, the Barcode is stored on the Equipment Catalog (Main > Catalogs > Equipment) for the Equipment expected to be scanned.
To locate Equipment data navigate to Main > Inventory > Equipment, to view actual Equipment records.
To locate Location data navigate to Main > Catalogs > Location, to view actual Location records.
To locate Service Desk data navigate to Main > Service Desk > My Service Desk > Equipment, to view actual Service Desk records related to Equipment.
All grids have the option to show the ROW ID column, which is also the RECID for that particular record.