1. Inferences
  2. Retrieve shipping labels

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
`/v1/inferences/shipping_labels/:inference`

Get a single scan using its id.

js
        const response = await fetch("https://api.packagex.io/v1/inferences/shipping_labels/inf_sl_2s8fmK1UBvCdMj4KsFtgpB", {
  method: "GET",
  headers: {
    "PX-API-KEY": process.env.PX_API_KEY,
    "Content-Type": "application/json",
  },
});

const scan = response.data;

      

List Shipping-Labels

Example

GET
`/v1/inferences/shipping_labels`

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.

js
        const response = await fetch("https://api.packagex.io/v1/inferences/images/shipping_labels", {
  method: "GET",
  headers: {
    "PX-API-KEY": process.env.PX_API_KEY,
    "Content-Type": "application/json",
  },
}).then((res) => res.json());

const shipping_labels = response.data;
const pagination = response.pagination;

      

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.

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.

js
        const response = await fetch("https://api.packagex.io/v1/inferences/images/shipping_labels?page=2&limit=25", {
  method: "GET",
  headers: {
    "PX-API-KEY": process.env.PX_API_KEY,
    "Content-Type": "application/json",
  },
}).then((res) => res.json());

const shipping_labels = response.data; //the array of scans 11 - 20
const pagination = response.pagination; //the pagination object

      

Filter

You can filter scans by locations for the scans that have a location_id property.

js
        const response = await fetch(
  "https://api.packagex.io/v1/inferences/images/shipping_labels?location=loc_jZ1fYiQobeWthjbhme3vDX",
  {
    method: "GET",
    headers: {
      "PX-API-KEY": process.env.PX_API_KEY,
      "Content-Type": "application/json",
    },
  }
).then((res) => res.json());

const shipping_labels = response.data;
const pagination = response.pagination;

      

Similarly we can also filter on date and package status.

Status

js
        https://api.packagex.io/v1/inferences/images/shipping_labels?statuses=completed

      

Date

js
        https://api.packagex.io/v1/inferences/images/shipping_labels?start_at=2024-02-25