Inferences
Retrieve shipping labels
Once you have scan the shipping label, you can query for them in the API. If you have the developer or owner role, you're able to also view the scans on your dashboard at https://cloud.packagex.io/inferences/shipping-labels.
Retrieve Scan
Get a single scan using its id.
List Shipping-Labels
Example
When you want to retrieve multiple shipping-labels, your data property on the result will always be an array even if you don't have any shipping-labels. The shipping-labels are returned in descending order, meaning the latest scan that was created will be first.
Pagination
If the has_more property on the pagination object is set to true, you know there are more scans in the database that have not been returned to you. The pagination object also has a page property indicating your current offset and a limit property. The total_count property in pagination returns the the total number of scans in the database.
By default the page is set to 1 and the limit is 10.
If we want to query for scans 11 - 20, we would request page 2 with a query parameter.
Filter
- Location Filtering
- Scans with a
location_idproperty can be filtered by location.
- Provider filtering:
- You can now filter by
provider_name.
- Service level filtering:
- Filtering options include
service_level_name.
- Privider service level filtering:
- Inferences can be filtered through original service level by provider with
provider_service_level_idparam. Following values are allowed
FedEx
fedex_groundfedex_home_deliveryground_home_deliveryfedex_2_daystandard_overnightpriority_overnightfirst_overnightfedex_2_day_amfedex_express_saverexpressexpress_international_economyinternational_economyinternational_priorityinternational_firstinternational_connect_plussmart_postsame_day
UPS
ground2nd_day_air_am2nd_day_air3_day_selectmail_innovationsnext_day_air_savernext_day_air_early_amnext_day_airstandardsaversure_postsure_post_over_1_lbsure_post_under_1_lbexpeditedday_definite_by_end_of_dayexpressexpress_plusexpress_saverinternational_economyinternational_priorityinternational_firstworld_wide_expressworld_wide_express_plusworld_wide_express_freight_middayworld_wide_express_freightworld_wide_saverworld_wide_express_expeditedworld_wide_express_economy
USPS
first_class_packagefirst_class_mailfirst_class_package_return_servicefirst_class_package_internationalpriority_mailprioritymedia_mailground_advantageground_return_servicepriority_mail_n_daypriority_mail_internationalexpresslibrary_mailparcel_selectparcel_select_lightweight
DHL
worldwide_expressexpress_envelopeexpress_easydomestic_expresseconomy_selectbreak_bulk_expressbreak_bulk_economysame_day
- Tracker filtering:
- Filter inferences by tracker ID with
tracker_id.
- Type filtering:
- Filter by tracker type (inbound or outbound) with
type.
- Date filtering:
- Filter by
created_atorupdated_atusing date operators. Date values should be in ISO 8601 format. You can use operators such asgt,gte,lt,lte,bwi,bwefor range queries.
- Tags filtering:
- Filter by tags with
tags.
- Errors filtering:
- Filter by error types with
errors.
- Logs visibility filtering:
- Filter by log visibility with
logs_visibility.
- Package status filtering.
Search
There are times when filtering is not enough and you want to find a specific inference by some other attribute. In this case, you can do a fuzzy, typo-tolerant search of every inference in the database.
Below are the properties that are supported by our full text search.
Searchable Properties
search.sender: the sender name, email and businesssearch.recipient: the recipient name, email and businesssearch.order_numbersearch.tracking_numbersearch.rma_numbersearch.reference_numbersearch.invoice_numbersearch.purchase_ordersearch.barcode_valuessearch.metadata: the custom metadata of the shipping label inference
To perform a general search, simply provide a string to search by using the search query param. The results will be order by the most relevant first.
To perform a targeted search, or a mixture of targeted search and general search, or to use various modifiers to boost a particular field, refer to the general section on search, while using the searchable properties provided above
We provide a _searchV2 object that has a searchV2.scores property for scores and searchV2.shipping_label_inference property with all matches highlighted with <mark> handles; this object has the same structure as the shipping label inference object, except only those properties are present where there are highlights.
Ordering Search Results
By default, search results are ordered by relevance. However, if you include an order_by parameter along with your search query, the results will be ordered by the specified property instead of by relevance. Supported values for order_by are:
created_at— order by creation dateupdated_at— order by last updated date_relevance— order by search relevance score_similarity— order by similarity score_coverage— order by coverage score
Relevance Score
Relevance scores are included in the search results by default. Note that this could add up to 10ms of extra time to the request.
Delete Shipping Label Inference
Permanently deletes a shipping label inference and its associated media files (images, OCR data). Only inferences in a final state (completed, error, or exception) can be deleted. Attempting to delete an inference in any other status will return a 400 error.
This operation is irreversible. The inference record is removed from the database, and a inference.deleted event is published.
Required Scopes: inferences:write