NAV

Introduction

Welcome to the Lojistic API documentation!

Our REST API has resource-oriented URLs, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

This API adheres to the JSON:API specification, which you can read more about at jsonapi.org.

API Features

The Lojistic API grants programatic access to the data within a user's Lojistic account. After generating an API Key, you'll have the ability to:

Support

If you require support or guidance with using the Lojistic API, or if you have encountered any technical issues you'd like to report, please reach out to api@lojistic.com.

Frequently Asked Questions

This is a very important concept to understand in order to ensure you are getting the most value out of the data provided from this API.

  • Invoice-centric information is requested/returned by invoice_date and represents what a shipper was billed at a particular point in time. Examples include the Invoice Endpoints and the Charge Detail Report.
  • Shipment-centric information is requested/returned by ship_date and represents all of the currently known information for a particular shipment. Examples include the Package Endpoints and the Package Detail Report.

Carriers often add additional charges for a shipment after it is initially invoiced. Typically, these charges are released before a shipment is delivered. However, it is common for a shipment to receive additional charges or charge corrections days or weeks after it was delivered.

Since the Lojistic API includes all currently available charges each time a package is returned, it is possible that a response can change over time to include newly available information.

For this reason, it is considered an acceptable practice to re-request previously imported date ranges of shipment-centric data like the Package Detail Report and upsert those changes into your application database.

If re-importing existing data is something you would prefer not to handle in your application, then we either recommend inserting a sufficient buffer before importing data (7+ days depending on the carrier) or relying on invoice-centric endpoints and reports.

Typically, data is received from the shipping carriers within 24 hours of release. That said, the following reasons can add a delay to data availability:

  • Invoice files are not always available immediately.
  • Carriers regularly send incomplete invoices.
  • Carrier invoice and tracking systems routinely timeout and/or crash.
  • Final cost and delivery details are often provided after a shipment is initially invoiced.

For these reasons, we recommend including a 7 day buffer when requesting data from the API. For example, if today is September 15th, we would recommend requesting data up to September 8th.

While this is not strictly necessary and the system often imports data in near real time, if data integrity is of upmost importance and your application does not have the ability to re-import and merge against existing data, adding a delay will help ensure data integrity and completeness.

The Lojistic platform stores and returns all cost values in pennies (not dollars) to avoid floating point precision errors. This means an invoice amount of $1,435.12 would be returned as 143512.

This works well for most major currencies (eg. USD, CAD, EUR, GBP). However, with some currencies, this conversion can lead to unexpected cost amounts. Regardless of the currency, our recommendation is to divide all cost amounts by 100 to return the value originally received from the carrier.

Each API user is allowed up to 3 concurrent requests and a maximum of 90 requests per minute. No other rate limits are currently in place.

Quick Start Guide

The goal of this “Quick Start Guide” is to provide a quick path to making your first request to the Lojistic API. In three quick steps we’ll generate an API Key Pair, setup the required request headers, and make an authenticated HTTP request.

Step 1: Generate an API Key Pair

To generate a new API key pair, visit the API Key Management interface while logged into the Lojistic platform.

Click CREATE A NEW KEY, give the new API Key a nickname, and click GENERATE KEY.

You will then be shown the API Key ID and API Key Password. Make sure to save these tokens in a secure location as the API Key Password is only displayed once.

Example API Key ID and Password

Step 2: Set Required Headers

The API requires three headers in every request:

Header Value
Content-Type Set to application/vnd.api+json. Defaults to application/vnd.api+json if not specified.
x-api-key-id Set to an API Key ID
x-api-key-password Set to an API Key Password

Note on Api Key Permissions

An API key pair will have access to all the data within the Lojistic account that created it.

As companies or carriers are added or removed from a user account, all of the API key pairs associated to that user will also gain or lose access to the same data.

API key pairs may be deleted from the API Key Management interface within a user account. Once deleted, a key pair will no longer have the ability to authenticate a user and can no longer be restored.

Step 3: Make an HTTP Request

Example GET Request:

  curl https://api.lojistic.com/v1/invoices \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

In this example, we make a GET request to view carrier invoices associated to the provided API key pair.

The response from this endpoint includes the most recent invoices in your account, along with links to navigate to older invoices if applicable.

For more information on this endpoint, see Invoices » List Invoices.

Authentication

An API key pair is necessary to authenticate requests to the Lojistic API. Use the API Key Management interface to manage your API keys.

To send a valid authenticated request, always send the following three headers:

Header Value
Content-Type Set to application/vnd.api+json. Defaults to application/vnd.api+json if not specified.
x-api-key-id Set to an API Key ID
x-api-key-password Set to an API Key Password

Carriers

This is a list of the supported carriers. Please reference the table below for any API request requiring a carrier_code.

Name Code
FedEx fedex
UPS ups
DHL Express dhl
Endicia endicia
Pitney Bowes pitney_bowes
Stamps.com stamps
USPS usps

Accounts
All Modes Account endpoints work with any shipping mode.

List Accounts

GET /v1/accounts

  curl https://api.lojistic.com/v1/accounts \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": [
    {
      "id": "2",
      "type": "account",
      "attributes": {
        "number": "321",
        "carrier": "fedex"
      }
    },
    {
      "id": "1",
      "type": "account",
      "attributes": {
        "number": "123",
        "carrier": "ups",
      }
    }
    ...
  ],
  "links": {
    "first": "https://api.lojistic.com/v1/accounts?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/accounts?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/accounts?page=1"
  }
}

This endpoint retrieves all of the carrier accounts related to the API user. Carrier accounts are associated to a user through one or more carrier connections.

HTTP Request

GET https://api.lojistic.com/v1/accounts

Query Parameters

Parameter Required Default Description
page No 1 Select the page of records you would like based upon the page_limit.
page_limit No 100 The amount of records returned in each page. The available range is from 20 to 5000.
order_by No id The column to sort the results by.
order_dir No desc The direction to sort the results by.

Show Account

GET /v1/accounts/:id

  curl https://api.lojistic.com/v1/accounts/1 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": {
    "id": "1",
    "type": "account",
    "attributes": {
      "number": "123",
      "carrier": "ups",
    }
  }
}

This endpoint retrieves an account.

HTTP Request

GET https://api.lojistic.com/v1/accounts/:id

Companies
All Modes Company endpoints work with any shipping mode.

A company is the primary means by which a user's permissions are established. Once joined, a company grants a user access to its associated carrier connections, each of which has associated accounts and invoices. Membership within a company also grants access to a list of users associated to a company.

To manage the users or connections within a company, please use the company management interface on the Lojistic platform frontend.

List Companies

GET /v1/companies

  curl https://api.lojistic.com/v1/companies \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": [
    {
      "id": "1",
      "type": "company",
      "attributes": {
          "name": "Example Company"
      },
      "relationships": {
        "users": {
          "links": {
            "related": "https://api.lojistic.com/v1/companies/1/users"
          }
        },
        "carrier_connections": {
          "links": {
            "related": "https://api.lojistic.com/v1/companies/1/carrier_connections"
          }
        }
      }
    },
    ...
  ],
  "links": {
    "first": "https://api.lojistic.com/v1/companies?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/companies?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/companies?page=1"
  }
}

This endpoint retrieves all of the companies related to the API key user.

HTTP Request

GET https://api.lojistic.com/v1/companies

Query Parameters

Parameter Required Default Description
page No 1 Select the page of records you would like based upon the page_limit.
page_limit No 100 The amount of records returned in each page. The available range is from 20 to 5000.
order_by No id The column to sort the results by.
order_dir No desc The direction to sort the results by.
include No null To view relationship data you can use the include param. The value of the include parameter MUST be a comma-separated list of relationship paths. You can include one or more acceptable relationships: users, carrier_connections.

Show Company

GET /v1/companies/:id

  curl https://api.lojistic.com/v1/companies/1 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": {
    "id": "1",
    "type": "company",
    "attributes": {
        "name": "Example Company"
    },
    "relationships": {
      "users": {
        "links": {
          "related": "https://api.lojistic.com/v1/companies/1/users"
        }
      },
      "carrier_connections": {
        "links": {
          "related": "https://api.lojistic.com/v1/companies/1/carrier_connections"
        }
      }
    }
  }
}

This endpoint retrieves a company.

HTTP Request

GET https://api.lojistic.com/v1/companies/:id

Query Parameters

Parameter Required Default Description
include No null To view relationship data you can use the include param. The value of the include parameter MUST be a comma-separated list of relationship paths. You can include one or more acceptable relationships: users, carrier_connections.

List Users

GET /v1/companies/:company_id/users

  curl https://api.lojistic.com/v1/companies/1/users \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": [
    {
      "id": "2",
      "type": "user",
      "attributes": {
        "email": "user2@email.com"
      }
    },
    {
      "id": "1",
      "type": "user",
      "attributes": {
        "email": "user1@email.com"
      }
    }
  ],
  "links": {
    "first": "https://api.lojistic.com/v1/companies/1/users?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/companies/1/users?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/companies/1/users?page=1"
  }
}

This endpoint retrieves all of the users related to a company.

HTTP Request

GET https://api.lojistic.com/v1/companies/:company_id/users

Query Parameters

Parameter Required Default Description
page No 1 Select the page of records you would like based upon the page_limit.
page_limit No 100 The amount of records returned in each page. The available range is from 20 to 5000.
order_by No id The column to sort the results by.
order_dir No desc The direction to sort the results by.

Show User

GET /v1/companies/:company_id/users/:id

  curl https://api.lojistic.com/v1/companies/1/users/1 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": {
    "id": "1",
    "type": "user",
    "attributes": {
      "email": "user1@email.com"
    }
  }
}

This endpoint retrieves a user from an associated company.

HTTP Request

GET https://api.lojistic.com/v1/companies/:company_id/users/:id

List Carrier Connections

GET /v1/companies/:company_id/carrier_connections

  curl https://api.lojistic.com/v1/companies/1/carrier_connections \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": [
    {
      "id": "1",
      "type": "carrier_connection",
      "attributes": {
        "username": "Example Username",
        "carrier": "ups",
        "type": "ups_billing_center"
      }
    },
    ...
  ],
  "links": {
    "first": "https://api.lojistic.com/v1/companies/1/carrier_connections?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/companies/1/carrier_connections?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/companies/1/carrier_connections?page=1"
  }
}

This endpoint retrieves all of the carrier connections related to the provided company.

HTTP Request

GET https://api.lojistic.com/v1/companies/:company_id/carrier_connections

Query Parameters

Parameter Required Default Description
page No 1 Select the page of records you would like based upon the page_limit.
page_limit No 100 The amount of records returned in each page. The available range is from 20 to 5000.
order_by No id The column to sort the results by.
order_dir No desc The direction to sort the results by.

Show Carrier Connection

GET /v1/companies/:company_id/carrier_connections/:id

  curl https://api.lojistic.com/v1/companies/1/carrier_connections/1 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": [
    {
      "id": "1",
      "type": "carrier_connection",
      "attributes": {
        "username": "Example Username",
        "carrier": "ups",
        "type": "ups_billing_center"
      }
    },
    ...
  ]
}

This endpoint shows a carrier connection from an associated company.

HTTP Request

GET https://api.lojistic.com/v1/companies/:company_id/carrier_connections/:id

Invoices
All Modes Invoice endpoints work with any shipping mode.

List Invoices

GET /v1/invoices

  curl https://api.lojistic.com/v1/invoices \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": [
    {
      "id": "2",
      "type": "invoice",
      "attributes": {
        "invoice_number": "123123123",
        "carrier": "fedex",
        "invoice_date": "2021-07-27",
        "processed_at": "2021-07-28T20:39:05.449Z",
        "amount": 93202,
        "currency": "USD",
        "account_number": "123456",
        "charge_count": 105,
        "shipping_mode": "parcel",
      }
    },
    {
      "id": "1",
      "type": "invoice",
      "attributes": {
        "invoice_number": "321321321",
        "carrier": "ups",
        "invoice_date": "2021-07-26",
        "processed_at": "2021-07-27T20:39:05.414Z",
        "amount": 10006765,
        "currency": "USD",
        "account_number": "123456",
        "charge_count": 142100,
        "shipping_mode": "parcel",
      }
    }
  ],
   "links": {
    "first": "https://api.lojistic.com/v1/invoices?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/invoices?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/invoices?page=1"
  }
}

This endpoint retrieves all of the invoices related to the API key user. Invoices are related to a user through one or more carrier accounts.

HTTP Request

GET https://api.lojistic.com/v1/invoices

Query Parameters

Parameter Required Default Description
page No 1 Select the page of records you would like based upon the page_limit.
page_limit No 100 The amount of records returned in each page. The available range is from 20 to 5000.
order_by No id The column to sort the results by.
order_dir No desc The direction to sort the results by.
shipping_mode No null The shipping mode to filter data by.
account_ids[] No All account ids List of account ids used to filter data by.
account_numbers[] No null List of account numbers used to filter data by.
company_ids[] No All company ids List of company ids used to filter data by.

Invoice Show

GET /v1/invoices/:id

  curl https://api.lojistic.com/v1/invoices/123 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": {
    "id": "123",
    "type": "invoice",
    "attributes": {
      "invoice_number": "111222333",
      "carrier": "ups",
      "invoice_date": "2021-07-26",
      "processed_at": "2021-07-27T20:39:05.414Z",
      "amount": 100001,
      "currency": "USD",
      "account_number": "123456",
      "charge_count": 196112,
      "shipping_mode": "parcel",
      "data_version": "v1",
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Invoice #"
        },
        ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Invoice #",
        ...
      ],
      "rows": [
        [
          "UPS",
          "123456",
          "111222333",
          "2021-07-26",
          10000,
          "12312SD0534",
          ...
        ],
        ...
      ]
    }
  },
  "links": {
    "first": "https://api.lojistic.com/v1/invoices/1?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/invoices/1?page=1",
    "next": "https://api.lojistic.com/v1/invoices/1?page=2",
    "last": "https://api.lojistic.com/v1/invoices/1?page=10"
  }
}

This endpoint retrieves an invoice and its related charges, which will be returned in the same format as the Charge Detail report.

HTTP Request

GET https://api.lojistic.com/v1/invoices/:id

Query Parameters

Parameter Required Default Description
page No 1 Determines the page number you would like to view. Missing or invalid pages will default to the first page.
page_limit No 5,000 Sets the maximum amount of rows returned in each page (if applicable). The allowable range for page_limit is between 500 and 20,000.
data_version No v1 Determines the data version for the invoice's charges, which are returned in the same format as the Charge Detail report. For a full list of possible data versions, see the Charge Detail Report documentation.

Response Details

Invoice Charges

An invoice contains one or more charges, which are returned using the rows and columns attributes. A charge_count is also returned which is the total count of charges (rows count) that an invoice has.

The columns attribute is a hash containing the data type and position for each attribute in the array of charges. The rows attribute is an array of arrays containing charge values in their corresponding position.

For large invoices, it may take multiple requests to display all the charges within the rows attribute. See the Links section below for more information.

The link data node contains links that can be used for paginating through the invoice rows (charges). We display 20,000 charges per page.

There are few things to note here:

  1. Page: This endpoint always defaults to the first page of data in a series if no page parameter is passed.
  2. Links: This endpoint also returns a links node with the corresponding pagination links.
  3. Currency: This endpoint returns all currency amounts in pennies, eg. invoice_amount.

Shipments
All Modes Shipment endpoints work with any shipping mode.

The shipments endpoints allow for the programatic retrieval of shipment data from the provided API key user.

Shipment Show

GET /v1/shipments/:id

  curl https://api.lojistic.com/v1/shipments/123 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

This endpoint retrieves a shipment and its related information using the shipment's ID.

HTTP Request

GET https://api.lojistic.com/v1/shipments/:id

Responses

The API provides two different response formats: one for "Parcel" shipments, and one for "Non-Parcel" shipments. Responses for "Parcel" shipments include a child_packages node, which is used to identify child package tracking numbers within a multi-piece shipment. Responses for "Non-Parcel" shipments will include charges and event_history nodes. To see child_packages for parcel shipments, use the Packages endpoint.

Toggle Response Example:

Example JSON Response (Parcel):

{
  "data": {
    "id": "123",
    "type": "shipment",
    "attributes": {
      "account_number": 123,
      "tracking_number": "000123000123",
      "master_tracking_number": "000123000123",
      "carrier": "fedex",
      "shipping_mode": "parcel",
      "original_invoice_date": "2020-07-21",
      "shipped_at": "2020-07-15",
      "delivered_at": "2020-07-17",
      "zone": "04",
      "package_type": "Customer Packaging",
      "length_inches": "26.0",
      "width_inches": "17.0",
      "height_inches": "16.0",
      "actual_weight_lbs": "31.3",
      "billed_weight_lbs": "32.0",
      "paid_by": "prepaid",
      "shipper": {
        "company": "Company Name",
        "name": "John Doe",
        "shipper_address_line_1": "123 Street",
        "shipper_address_line_2": null,
        "shipper_city": "Palm Springs",
        "shipper_state": "CA",
        "shipper_postal_code": "12345",
        "shipper_country": "US"
      },
      "shipping_address": {
        "ship_from_address_line_1": "123 Street",
        "ship_from_address_line_2": null,
        "ship_from_city": "Palm Springs",
        "ship_from_state": "CA",
        "ship_from_postal_code": "12345",
        "ship_from_country": "US"
      },
      "delivery_address": {
        "company": "Company Name",
        "name": null,
        "deliver_to_address_line_1": "321 Street",
        "deliver_to_address_line_2": null,
        "deliver_to_city": "Los Angeles",
        "deliver_to_state": "CA",
        "deliver_to_postal_code": "12345",
        "deliver_to_country": "US"
      },
      "original_delivery_address": {
        "original_deliver_to_address_line_1": null,
        "original_deliver_to_address_line_2": null,
        "original_deliver_to_city": null,
        "original_deliver_to_state": null,
        "original_deliver_to_postal_code": null,
        "original_deliver_to_country": null
      },
      "child_packages": [
          {
              "package_id": 1,
              "tracking_number": "000123000123"
          },
          {
              "package_id": 2,
              "tracking_number": "770961672144"
          },
          {
              "package_id": 3,
              "tracking_number": "770961672122"
          },
      ],
      "shipment_original_amount": 14808,
      "shipment_discount_amount": 8271,
      "shipment_net_amount": 8011,
      "piece_count": 3,
      "reference_1": null,
      "reference_2": null,
      "reference_3": null,
      "reference_4": null,
      "reference_5": null,
      "reference_6": null,
      "reference_7": null,
      "reference_8": null
    }
  }
}

Child Packages

The child_packages field returns packages within this shipment. Each package will contain a package_id and tracking_number.

Shipment Track

GET /v1/shipments/track?tracking_number=tracking_number&carrier=carrier_code

  curl https://api.lojistic.com/v1/shipments/000123000123?carrier=fedex \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

This endpoint retrieves a shipment and its related information using the shipment's tracking number and carrier. The response returned from this endpoint is identical to the Shipments Show endpoint and is provided out of convenience in the case that the shipment ID is unknown.

HTTP Request

GET https://api.lojistic.com/v1/shipments/track?tracking_number=tracking_number&carrier=carrier_code

Query Parameters

Parameter Required Default Description
tracking_number Yes null The unique, carrier tracking number for a shipment.
carrier_code Yes null The parameter that defines the shipment's carrier. Please see the Carriers section for a list of supported carriers.

Responses

The API provides two different response formats: one for "Parcel" shipments, and one for "Non-Parcel" shipments. Responses for "Parcel" shipments include a child_packages node, which is used to identify child package tracking numbers within a multi-piece shipment. Responses for "Non-Parcel" shipments will include charges and event_history nodes. To see child_packages for parcel shipments, use the Packages endpoint.

Toggle Response Example:

Example JSON Response (Parcel):

{
  "data": {
    "id": "321",
    "type": "shipment",
    "attributes": {
      "account_number": 123,
      "tracking_number": "000123000123",
      "master_tracking_number": "000123000123",
      "carrier": "fedex",
      "shipping_mode": "parcel",
      "original_invoice_date": "2020-07-21",
      "shipped_at": "2020-07-15",
      "delivered_at": "2020-07-17",
      "zone": "04",
      "package_type": "Customer Packaging",
      "length_inches": "26.0",
      "width_inches": "17.0",
      "height_inches": "16.0",
      "actual_weight_lbs": "31.3",
      "billed_weight_lbs": "32.0",
      "paid_by": "prepaid",
      "shipper": {
        "company": "Company Name",
        "name": "John Doe",
        "shipper_address_line_1": "123 Street",
        "shipper_address_line_2": null,
        "shipper_city": "Palm Springs",
        "shipper_state": "CA",
        "shipper_postal_code": "12345",
        "shipper_country": "US"
      },
      "shipping_address": {
        "ship_from_address_line_1": "123 Street",
        "ship_from_address_line_2": null,
        "ship_from_city": "Palm Springs",
        "ship_from_state": "CA",
        "ship_from_postal_code": "12345",
        "ship_from_country": "US"
      },
      "delivery_address": {
        "company": "Company Name",
        "name": null,
        "deliver_to_address_line_1": "321 Street",
        "deliver_to_address_line_2": null,
        "deliver_to_city": "Los Angeles",
        "deliver_to_state": "CA",
        "deliver_to_postal_code": "12345",
        "deliver_to_country": "US"
      },
      "original_delivery_address": {
        "original_deliver_to_address_line_1": null,
        "original_deliver_to_address_line_2": null,
        "original_deliver_to_city": null,
        "original_deliver_to_state": null,
        "original_deliver_to_postal_code": null,
        "original_deliver_to_country": null
      },
      "child_packages": [
          {
              "package_id": 1,
              "tracking_number": "770961672100"
          },
          {
              "package_id": 2,
              "tracking_number": "770961672144"
          },
          {
              "package_id": 3,
              "tracking_number": "770961672122"
          },
      ],
      "shipment_original_amount": 14808,
      "shipment_discount_amount": 8271,
      "shipment_net_amount": 8011,
      "piece_count": 3,
      "reference_1": null,
      "reference_2": null,
      "reference_3": null,
      "reference_4": null,
      "reference_5": null,
      "reference_6": null,
      "reference_7": null,
      "reference_8": null
    }
  }
}

Child Packages

The child_packages field returns packages within this shipment. Each package will contain a package_id and tracking_number.

Packages
Parcel Only Package endpoints only return parcel related shipping data.

Package Show

GET /v1/packages/:id

  curl https://api.lojistic.com/v1/packages/123 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": {
    "id": "123",
    "type": "package",
    "attributes": {
      "account_number": 1,
      "tracking_number": "123456",
      "master_tracking_number": null,
      "carrier": "ups",
      "shipping_mode": "parcel",
      "original_invoice_date": "2022-01-01",
      "shipped_at": "2021-12-30",
      "delivered_at": "2021-12-31",
      "zone": "03",
      "package_type": "PKG",
      "length_inches": null,
      "width_inches": null,
      "height_inches": null,
      "actual_weight_lbs": "1.1",
      "billed_weight_lbs": "2",
      "paid_by": "prepaid",
      "shipper": {
        "company": "",
        "name": "",
        "shipper_address_line_1": null,
        "shipper_address_line_2": null,
        "shipper_city": null,
        "shipper_state": null,
        "shipper_postal_code": null,
        "shipper_country": null
      },
      "shipping_address": {
        "ship_from_address_line_1": "555 FAKE BLVD",
        "ship_from_address_line_2": "FLR/BLDG 101",
        "ship_from_city": "NOWHERE",
        "ship_from_state": "NV",
        "ship_from_postal_code": "12345",
        "ship_from_country": "US"
      },
      "delivery_address": {
        "company": "",
        "name": "",
        "deliver_to_address_line_1": "111 NOT REAL AVE",
        "deliver_to_address_line_2": null,
        "deliver_to_city": "SOMEWHERE",
        "deliver_to_state": "CO",
        "deliver_to_postal_code": "80027",
        "deliver_to_country": "US"
      },
      "original_delivery_address": {
        "original_deliver_to_address_line_1": null,
        "original_deliver_to_address_line_2": null,
        "original_deliver_to_city": null,
        "original_deliver_to_state": null,
        "original_deliver_to_postal_code": null,
        "original_deliver_to_country": null
      },
      "charges": [
        {
          "type": "transportation",
          "description": "Home Delivery",
          "currency": "USD",
          "invoice_number": 12345,
          "invoice_date": "2022-01-01",
          "original_amount": 100,
          "discount_amount": 20,
          "net_amount": 80,
          "gl_codes": [],
          "refund": false,
        },
      ],
      "event_history": {
        "package_events": [
          {
            "location": {
              "city": "SOMEWHERE",
              "state": "CO",
              "postal": "80027",
              "country": "US"
            },
            "event_code": "MP",
            "event_category": "Manifest",
            "event_description": "Shipper created a label and has not received the package yet.",
            "local_timestamp": "2021-12-29 01:00:00",
            "utc_timestamp": "2021-12-29 08:00:00:+00"
          },
          {
            "location": {
              "city": "SOMEWHERE",
              "state": "CO",
              "postal": "80027",
              "country": "US"
            },
            "event_code": "IT",
            "event_category": "In Transit",
            "event_description": "Departed from Facility",
            "local_timestamp": "2021-12-30 02:00:00",
            "utc_timestamp": "2021-12-30 09:00:00:+00"
          },
          {
            "location": {
              "city": "SOMEWHERE",
              "state": "CO",
              "postal": "80027",
              "country": "US"
            },
            "event_code": "DL",
            "event_category": "Delivered",
            "event_description": "Delivered",
            "local_timestamp": "2021-12-31 02:00:00",
            "utc_timestamp": "2021-12-31 09:00:00:+00"
          },
        ]
      },
      "reference_1": "V01006254100001",
      "reference_2": null,
      "reference_3": null,
      "reference_4": null,
      "reference_5": null,
      "reference_6": "V01006254100001",
      "reference_7": null,
      "reference_8": null,
    }
  }
}

This endpoint retrieves a package and its related information using the package's ID.

HTTP Request

GET https://api.lojistic.com/v1/packages/:id

Event History

The event_history node describes the events that took place with a specific package from the time it is picked up to delivered. It includes information of the packages location, event code, description of the packages current status and the times when these events have taken place.

Event Code

The event_code field is the two letter carrier provided code for the event that describes the current status of the package. Here are some examples of event codes and their description.

Event Code Description
OD On FedEx vehicle for delivery
DL Delivered
DP Departed FedEx location
OC Shipment information sent to FedEx
AR Arrived at FedEx location
IP In FedEx possession
IT In transit
PU Picked Up

Event Category

The event_category field describes what category of event the package is currently in.

Category Description
In Transit Package is in transit
Delivered Package is delivered
Manifest Package information sent
Picked Up Package picked up
Exception Package was returned or not delivered
Unspecified Voided Information Received

Event Description

The event_description field is a description of the package event provided by the carrier.

Package Track

GET /v1/packages/track?tracking_number=tracking_number&carrier=carrier_code

  curl https://api.lojistic.com/v1/packages/123456?carrier=ups \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON Response:

{
  "data": {
    "id": "123",
    "type": "package",
    "attributes": {
      "account_number": 1,
      "tracking_number": "123456",
      "master_tracking_number": null,
      "carrier": "ups",
      "shipping_mode": "parcel",
      "original_invoice_date": "2022-01-01",
      "shipped_at": "2021-12-30",
      "delivered_at": "2021-12-31",
      "zone": "03",
      "package_type": "PKG",
      "length_inches": null,
      "width_inches": null,
      "height_inches": null,
      "actual_weight_lbs": "1.1",
      "billed_weight_lbs": "2",
      "paid_by": "prepaid",
      "shipper": {
        "company": "",
        "name": "",
        "shipper_address_line_1": null,
        "shipper_address_line_2": null,
        "shipper_city": null,
        "shipper_state": null,
        "shipper_postal_code": null,
        "shipper_country": null
      },
      "shipping_address": {
        "ship_from_address_line_1": "555 FAKE BLVD",
        "ship_from_address_line_2": "FLR/BLDG 101",
        "ship_from_city": "NOWHERE",
        "ship_from_state": "NV",
        "ship_from_postal_code": "12345",
        "ship_from_country": "US"
      },
      "delivery_address": {
        "company": "",
        "name": "",
        "deliver_to_address_line_1": "111 NOT REAL AVE",
        "deliver_to_address_line_2": null,
        "deliver_to_city": "SOMEWHERE",
        "deliver_to_state": "CO",
        "deliver_to_postal_code": "80027",
        "deliver_to_country": "US"
      },
      "original_delivery_address": {
        "original_deliver_to_address_line_1": null,
        "original_deliver_to_address_line_2": null,
        "original_deliver_to_city": null,
        "original_deliver_to_state": null,
        "original_deliver_to_postal_code": null,
        "original_deliver_to_country": null
      },
      "charges": [
        {
          "type": "transportation",
          "description": "Home Delivery",
          "currency": "USD",
          "invoice_number": 12345,
          "invoice_date": "2022-01-01",
          "original_amount": 100,
          "discount_amount": 20,
          "net_amount": 80,
          "gl_codes": [],
          "refund": false,
        },
      ],
      "event_history": {
        "package_events": [
          {
            "location": {
              "city": "SOMEWHERE",
              "state": "CO",
              "postal": "80027",
              "country": "US"
            },
            "event_code": "MP",
            "event_category": "Manifest",
            "event_description": "Shipper created a label and has not received the package yet.",
            "local_timestamp": "2021-12-29 01:00:00",
            "utc_timestamp": "2021-12-29 08:00:00:+00"
          },
          {
            "location": {
              "city": "SOMEWHERE",
              "state": "CO",
              "postal": "80027",
              "country": "US"
            },
            "event_code": "IT",
            "event_category": "In Transit",
            "event_description": "Departed from Facility",
            "local_timestamp": "2021-12-30 02:00:00",
            "utc_timestamp": "2021-12-30 09:00:00:+00"
          },
          {
            "location": {
              "city": "SOMEWHERE",
              "state": "CO",
              "postal": "80027",
              "country": "US"
            },
            "event_code": "DL",
            "event_category": "Delivered",
            "event_description": "Delivered",
            "local_timestamp": "2021-12-31 02:00:00",
            "utc_timestamp": "2021-12-31 09:00:00:+00"
          },
        ]
      },
      "reference_1": "V01006254100001",
      "reference_2": null,
      "reference_3": null,
      "reference_4": null,
      "reference_5": null,
      "reference_6": "V01006254100001",
      "reference_7": null,
      "reference_8": null,
    }
  }
}

This endpoint retrieves a package and its related information using a package's tracking number and carrier. The response returned from this endpoint is identical to the Package Show endpoint, however, is provided out of convenience in case the Package ID is unknown.

HTTP Request

GET https://api.lojistic.com/v1/packages/track?tracking_number=tracking_number&carrier=carrier_code

Query Parameters

Parameter Required Default Description
tracking_number Yes null The tracking id number provided by the carrier for the desired package.
carrier_code Yes null The parameter that defines the package's carrier. Please see the Carriers section for a list of supported carriers.

Event History

The event_history node describes the events that took place with a specific package from the time it is picked up to delivered. It includes information of the packages location, event code, description of the packages current status and the times when these events have taken place.

Event Code

The event_code field is the two letter carrier provided code for the event that describes the current status of the package. Here are some examples of event codes and their description.

Event Code Description
OD On FedEx vehicle for delivery
DL Delivered
DP Departed FedEx location
OC Shipment information sent to FedEx
AR Arrived at FedEx location
IP In FedEx possession
IT In transit
PU Picked Up

Event Category

The event_category field describes what category of event the package is currently in.

Category Description
In Transit Package is in transit
Delivered Package is delivered
Manifest Package information sent
Picked Up Package picked up
Exception Package was returned or not delivered
Unspecified Voided Information Received

Event Description

The event_description field is a description of the package event provided by the carrier.

Reports
All Modes Report endpoints work with any shipping mode.

The reports endpoints allow for the programatic retrieval of report data from the provided API key user.

Report data retrieval occurs asynchronously. An ID is returned upon making a request for a new report, which can be used to monitor the status of your request and retrieve the completed report data.

In other words:

  1. Create the desired report through Create Report.
  2. Check the status of the report through Show Report.
  3. When the report has a status of completed, the report's data will be returned in the rows attribute in the response from Show Report.

List Reports

GET /v1/reports

  curl https://api.lojistic.com/v1/reports \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON response:

{
  "data": [
    {
      "id": "705",
      "type": "report",
      "attributes": {
        "report_type": "charge_detail",
        "response_format": "json",
        "data_version": "v2",
        "status": "pending",
        "shipping_mode": "parcel",
        "created_at": "2021-11-02T21:24:43+0000",
        "total_pages": 1,
        "page_limit": 300000,
        "from_date": "2021-09-01",
        "to_date": "2021-09-10",
        "company_ids": [
          123,
          234
        ],
        "account_ids": [
          12345,
          23456
        ]
      },
      "meta": {
        "surcharge_grouping": "fuel"
      }
    },
  {
      "id": "704",
      "type": "report",
      "attributes": {
        "report_type": "address_correction_detail",
        "response_format": "json",
        "data_version": "v1",
        "status": "pending",
        "shipping_mode": null,
        "created_at": "2021-11-02T21:23:41+0000",
        "total_pages": 2,
        "page_limit": 10000,
        "from_date": "2021-08-01",
        "to_date": "2021-09-30",
        "company_ids": [
          123,
          234
        ],
        "account_ids": [
          12345,
          23456
        ]
      },
      "meta": {}
    },
    {
      "id": "696",
      "type": "report",
      "attributes": {
        "report_type": "third_party_billing_surcharge_detail",
        "response_format": "json",
        "data_version": "v1",
        "status": "completed",
        "shipping_mode": "ltl",
        "created_at": "2021-11-01T19:09:17+0000",
        "total_pages": 1,
        "page_limit": 300000,
        "from_date": "2021-09-01",
        "to_date": "2021-09-30",
        "company_ids": [
          123,
          234
        ],
        "account_ids": [
          12345,
          23456
        ]
      },
      "meta": {}
    },
    ...
  ],
  "links": {
    "first": "https://api.lojistic.com/v1/reports?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports?page=1",
    "next": "https://api.lojistic.com/v1/reports?page=2",
    "last": "https://api.lojistic.com/v1/reports?page=5"
  }
}

This endpoint returns a listing of the reports created in the last two weeks.

HTTP Request

GET https://api.lojistic.com/v1/reports

Query Parameters

Parameter Required Default Description
page No 1 Select the page of records you would like based upon the page_limit.
page_limit No 100 The amount of records returned in each page. The available range is from 20 to 5000.
order_by No id The column to sort the results by.
order_dir No desc The direction to sort the results by.
shipping_mode No null The shipping mode to filter data by.

Response Details

The reports returned are sorted by created_at in ascending order.

Attributes:

Attribute Description
report_type The type of report generated.
response_format The format of the generated report. It can be either csv or json.
data_version The version of the report's data.
status The report's generation status. It can be one of: pending, executing, completed, error, and canceled.
created_at The date the report was created.
page Which page of the report is requested. Only applicable to JSON reports.
total_pages The total count of pages the report has. Only applicable to JSON reports.
page_limit The maximum amount of rows for each page in a report. Only applicable to JSON reports.
from_date The beginning of the date range from which report data is pulled.
to_date The end of the date range from which report data is pulled.
account_ids The account_ids from which report data is pulled.
company_ids The company_ids from which report data is pulled.
meta An object that will contain various request params relating to the report. This is when that param is not already an attribute on the report, but is significant in the filtering of the report's data.

Create Report

This endpoint will create a report for the given :slug passed in the URL. See the Report Slugs section below for more details.

POST /v1/reports/:slug

  curl https://api.lojistic.com/v1/reports/charge_detail \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

HTTP Request

POST https://api.lojistic.com/v1/reports/:slug

Report Slugs

Slug Description
address_correction_detail These are extra charges for when your carrier(s) had to correct or edit a shipment's 'Ship To' address. Many of these fees can be avoided.
air_vs_ground_detail This report highlights your air shipments that would have arrived same day or faster and at a lesser cost with a ground service.
approved_refund_detail This report provides detail for each approved refund that Lojistic recovered on your behalf, along with a summary of automated and manual attempts to obtain the refund.
charge_detail In this report each individual charge related to a tracking number is broken out into a separate row.
denied_refund_detail This report provides detail for each denied refund that Lojistic attempted to recover on your behalf, along with a summary of automated and manual attempts to obtain the refund.
late_payment_fee_detail Carriers often assess penalties when their invoices are paid late. These extra fees add up quickly but can be eliminated.
over_max_detail These are 'penalty' fees assessed by the carriers when your packages are too big and/or too heavy. You can fix this.
package_detail This report combines all available charges related to a tracking number into a single row. Note that as more charges for a package are received in future invoices, the information in this report may change to reflect the new information.
potential_audit_recovery_detail This report provides detail for each error and/or potential refund that Lojistic has identified, including the reason for the error and the amount of potential refund that can be obtained from the carrier.
potential_damaged_and_lost_claims_detail This report provides detail for each potential damaged or lost package that Lojistic has identified. Claims for reimbursement may be manually submitted on the carrier website. Additional details/documentation about the damage or value of goods may be required.
shipment_detail This report combines all available charges related to a shipment into a single row. In the case of a multi-piece shipment, the charges from all associated packages will also be included. Note that as more charges are received in future invoices, the information in this report may change to reflect the new information.

Query Parameters

Parameter Required Default Description
page_limit No 300,000 This will set the maximum amount of rows returned in each page (if applicable). The allowable range for page_limit is between 2,500 and 500,000. Only applicable to JSON reports.
from_date No 2 Weeks Ago Format: ('yyyy-mm-dd'). The date at which data should be gathered from
to_date No Today Format: ('yyyy-mm-dd'). The date at which data should be gathered until
surcharge_grouping No Only available for the charge_detail report. This will filter the data by the charge_type column. See the list of groupings here.
response_format No json Passing csv will set the reports format type and allow for processing of a csv response in the report show endpoint body. The valid formats are csv and json. NOTE: CSV reports have a 1 million row limit
shipping_mode No null The shipping mode to filter data by.
account_ids[] No All account ids List of account ids used to filter data by.
account_numbers[] No null List of account numbers used to filter data by.
company_ids[] No All company ids List of company ids used to filter data by.
data_version No v1 Specify the data version you would like to generate. Learn more here.

Specifying Data Versions

It is normal over the course of time for reports to change, with the primary changes being the addition, removal, modification, or repositioning of one or more columns. When backwards incompatible change are made, we will release a new "data version" to prevent existing API integrations from breaking.

Support for old data versions will be maintained as long as it is practical, and the deprecation of old versions will be communicated ahead of time. Please reference the Report Details section to see the expected date of deprecation and the available data versions for each report.

When creating a report, it is important to ALWAYS specify the data_version parameter to ensure the report is returned in a consistent format. eg. POST https://api.lojistic.com/v1/reports/:slug?data_version=v1. If a data_version is not specified, then the format of the report will not be guaranteed to remain consistent.

Example JSON Response:

{
  "data": {
    "id": "795",
    "type": "report",
    "attributes": {
      "slug": "charge_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "pending",
      "shipping_mode": null,
      "created_at": "2021-11-04T20:19:27+0000",
      "total_pages": null,
      "page_limit": 300000,
      "from_date": "2021-09-05",
      "to_date": "2021-09-06",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ]
    },
    "meta": {
      "surcharge_grouping": "fuel"
    }
  }
}

Response Details

The response includes the unique id of the created report. Upon creation a report is queued to generate asynchronously.

The id is used to continue checking the status of the report generation process through the GET https://api.lojistic.com/v1/reports/:id endpoint. See the Reports » Show Report section for more details.

Attributes:

Attribute Description
slug The report slug you specified when creating the report.
response_format The format of the generated report. It can be either csv or json.
data_version The version of the report's data.
status The report's generation status. It can be one of: pending, executing, completed, error, and canceled.
created_at The date the report was created.
total_pages The total count of pages the report has. This will return as null until the report has started generatimg. Only applicable to JSON reports.
page_limit The maximum amount of rows for each page in a report. Only applicable to JSON reports.
from_date The beginning of the date range from which report data is pulled.
to_date The end of the date range from which report data is pulled.
account_ids The account_ids from which report data is pulled.
company_ids The company_ids from which report data is pulled.
meta An object that will contain various request params relating to the report. This is when that param is not already an attribute on the report but is significant in the filtering of the report's data.

Show Report

GET /v1/reports/:id

  curl https://api.lojistic.com/v1/reports/123 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON response for an uncompleted report:

{
  "data": {
    "id": "798",
    "type": "report",
    "attributes": {
      "report_type": "approved_refund_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "pending",
      "shipping_mode": null,
      "created_at": "2021-11-04T20:21:12+0000",
      "page": null,
      "total_pages": 1,
      "page_limit": 100000,
      "from_date": "2021-09-01",
      "to_date": "2021-09-10",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {},
      "headers": [],
      "rows": []
    },
    "meta": {}
  },
  "links": {
    "first": null,
    "prev": null,
    "page": null,
    "next": null,
    "last": null
  }
}

GET /v1/reports/:id?page=1

  curl https://api.lojistic.com/v1/reports/123?page=1 \
    -H "Content-Type: application/vnd.api+json" \
    -H "x-api-key-id: API_KEY_ID" \
    -H "x-api-key-password: API_KEY_PASSWORD"

Example JSON response for a completed report:

{
  "data": {
    "id": "798",
    "type": "report",
    "attributes": {
      "report_type": "approved_refund_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T20:20:43+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 100000,
      "from_date": "2021-09-01",
      "to_date": "2021-09-10",
      "company_ids": [
        123,
        234
        ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "original_invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Original Invoice #"
        },
        "original_invoice_date": {
          "type": "date",
          "position": 3,
          "label": "Original Invoice Date"
        },
        ...
      },
       "headers": [
        "Carrier",
        "Account #",
        "Original Invoice #",
        "Original Invoice Date",
        ...
       ],
      "rows": [
        [
          "FedEx",
          "123456",
          "41651",
          "2021-09-10",
          "351646488",
          "FedEx Priority Overnight",
          "Late Shipments",
          "9.61",
          null,
          "2021-09-12",
          1,
          "2021-09-15",
          "LOJ Check",
          "",
          "",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/798?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/798?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/798?page=1"
  }
}

Example CSV response for a completed report:


Carrier,Account #,Invoice #,Invoice Date,Invoice Amount,Tracking #,Ship Date,Delivery Date,Currency,Original Charge,Discount,Net Charge,Package Type,Charge Type,Charge Description,Shipper Name,Shipper Company,Shipper Address Line 1,Shipper Address Line 2,Shipper City,Shipper State,Shipper Postal Code,Shipper Country,Receiver Name,Receiver Company,Receiver Address Line 1,Receiver Address Line 2,Receiver City,Receiver State,Receiver Postal Code,Receiver Country,Original Receiver Address Line 1,Original Receiver Address Line 2,Original Receiver City,Original Receiver State,Original Receiver Postal Code,Original Receiver Country,Zone,Bill Option,Declared Value,Piece Count,Actual Weight,Actual Weight Unit,Billed Weight,Billed Weight Unit,Length,Width,Height,Reference 1,Reference 2,Reference 3,Reference 4,Reference 5,Reference 6,Reference 7,Reference 8,Gl Code 1,Gl Code 2,Gl Code 3
"UPS","44830284","243029489",09/04/2021,234244.98,"1G249342432",08/26/2021,08/30/2021,"USD",23.10,10.29,5.11,"Package","Transportation","Ground Residential","","","","","","","","","","John Doe","1552 S Town Rd","","Lansing","MI","5888211231","US","","","","","","","002","Prepaid",,1,24.0,"LB",24.0,"LB",,,,"","SB","","","","18560632.0","","","","",""

This endpoint retrieves the report related to the unique ID (:id) passed in the URL.

HTTP Request

GET https://api.lojistic.com/v1/reports/:id

Query Parameters

Parameter Required Type Default Description
page No Integer 1 This determines the page you would like in the series of pages generated for a given report ID. Not passing a page will default to the first page. Only applicable to JSON reports.
include_headers_in_rows No Boolean false Passing true will prepend the headers array to the rows node to allow for convenient parsing. This flag also is also applied when returning response data in formats other than json, for example, csv.

Response Details

Attributes

Attribute Description
report_type The type of report generated.
response_format The format of the generated report. It can be either csv or json.
data_version The version of the report's data.
status The report's generation status. It can be one of: pending, executing, completed, error, and canceled.
created_at The date the report was created.
page Which page of the report is requested. This endpoint always defaults to the first page of report in a series if no page parameter is passed. Only applicable to JSON reports.
total_pages The total count of pages the report has. This will return as null until the report has started generatimg. Only applicable to JSON reports.
page_limit The maximum amount of rows for each page in a report. Only applicable to JSON reports.
from_date The beginning of the date range from which report data is pulled.
to_date The end of the date range from which report data is pulled.
account_ids The account_ids from which report data is pulled.
company_ids The company_ids from which report data is pulled.
columns The report column names with their corresponding type, position, and label. Only returned when the report has a status of completed. Only applicable to JSON reports.
headers The report column labels. Only returned when the report has a status of completed. Only applicable to JSON reports.
rows The report data rows. Values are sorted by their column position. Only returned when the report has a status of completed. Only applicable to JSON reports.
meta An object that will contain various request params relating to the report. This is when that param is not already an attribute on the report but is significant in the filtering of the report's data.

The links data node contains links that can be used for paginating through the report's pages. This object updates corresponding to the current report page that is requested. Only applicable to JSON reports.

Report Details

View the description and columns for each report slug below. Click on any of these links below to jump to that report.

Report: address_correction_detail

These are extra charges for when your carrier(s) had to correct or edit a shipment's 'Ship To' address. Many of these fees can be avoided.

Data Versions

Learn more about report data versions here.

An example Show Report response for address_correction_detail:
Displaying: data_version: v2, status: completed

{
  "data": {
    "id": "727",
    "type": "report",
    "attributes": {
      "report_type": "address_correction_detail",
      "response_format": "json",
      "data_version": "v2",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-03T22:29:46+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2021-08-01",
      "to_date": "2021-09-30",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Invoice #"
        },
        ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Invoice #",
        ...
      ],
      "rows": [
        [
          "UPS",
          "123456",
          "111222333",
          "2021-09-11",
          "1Z18V16R0192521134",
          "Shipper 1",
          "Shipper Company",
          "ATTN: Recipient",
          "Lojistic",
          "1225 Deer Valley Dr #201",
          "PARK CITY",
          "UT",
          "84060",
          "US",
          "1225 Deer Valley Dr #201,",
          "PARK CITY",
          "UT",
          "84060",
          "US",
          1800,
          "ATTN: Recipient",
          "Lojistic",
          null,
          null,
          null,
          null,
          null,
          "0203512",
          null,
          null,
          null,
          null,
          null,
          "parcel"
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/727?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/727?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/727?page=1"
  }
}

V2 Data Version - address_correction_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_date date Date that the invoice was generated
tracking_number string Carrier's tracking identifier
shipper_name string Name of the person who shipped the item
shipper_company string Name of the company that shipped the item
original_recipient_name string Name of the person to receive the item
original_recipient_company string Name of the company to receive the item
original_recipient_address string Street address the item was shipped to
original_recipient_city string City the item was shipped to
original_recipient_state string State the item was shipped to
original_recipient_postal_code string Postal code the item was shipped to
original_recipient_country string Country the item was shipped to
corrected_recipient_address string Carrier modified street address
corrected_recipient_city string Carrier modified city
corrected_recipient_state string Carrier modified state
corrected_recipient_postal_code string Carrier modified postal code
corrected_recipient_country string Carrier modified country
address_correction_fee_amount integer Fee associated to the address being corrected (in pennies)
corrected_recipient_name string Carrier modified entity name
corrected_recipient_company string Carrier modified entity company
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)
shipping_mode string The classification for how this item was shipped. eg. 'parcel', 'ltl', 'truckload', etc.

Report: air_vs_ground_detail

This report highlights your air shipments that would have arrived same day or faster and at a lesser cost with a ground service.

Data Versions

Learn more about report data versions here.

An example Show Report response for air_vs_ground_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "734",
    "type": "report",
    "attributes": {
      "report_type": "air_vs_ground_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T14:54:15+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2021-08-01",
      "to_date": "2021-09-30",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "shipment_tracking_number": {
          "type": "string",
          "position": 2,
          "label": "Shipment Tracking #"
        },
      ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Shipment Tracking #",
        ...
      ],
      "rows": [
        [
          "UPS",
          "123456",
          "111222333",
          "UPS NEXT DAY AIR",
          1,
          "2021-08-03",
          "08/05/2021",
          "10:30",
          759,
          "08/04/2021",
          "11:00",
          626,
          "Actual Contract Rate",
          1,
          133,
          "Shipper 1",
          "Shipper Company",
          null,
          null,
          "ANAHEIM",
          "CA",
          "92804",
          "US",
          "ATTN: Recipient",
          "Lojistic",
          "1225 Deer Valley Dr #201",
          null,
          "PARK CITY",
          "UT",
          "84060",
          "US",
          "12SD214",
          null,
          null,
          null,
          null,
          "12SD214",
          null,
          null,
          null,
          null,
          null
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/734?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/734?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/734?page=1"
  }
}

V1 Data Version - air_vs_ground_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
shipment_tracking_number string Carrier's tracking identifier
air_service_used string Carrier air shipping service used
package_count integer Item count in shipment
ship_date date Date that the shipment was shipped
air_guaranteed_delivery_date date Date that air shipment is guaranteed to arrive at destination
air_guaranteed_delivery_time time Time that air shipment is guaranteed to arrive at destination (24 hour format)
air_total_cost integer Cost of the air shipment (in pennies)
ground_guaranteed_delivery_date date Date that ground shipment is guaranteed to arrive at destination
ground_guaranteed_delivery_time time Time that ground shipment is guaranteed to arrive at destination (24 hour format)
ground_total_cost integer Cost of the ground shipment (in pennies)
ground_re_rating_method string The method used to re-rate this air package to a ground shipment
ground_number_days_faster integer Number of days faster to ship with ground vs air
savings_with_ground integer Amount of savings for shipping with ground vs air (in pennies)
shipper_name string Name of the person who shipped the item
shipper_company string Name of the company that shipped the item
shipper_address_line_1 string Street address 1 that the item was shipped from
shipper_address_line_2 string Street address 2 that the item was shipped from
shipper_city string City the item was shipped from
shipper_state string State the item was shipped from
shipper_postal_code string Postal code the item was shipped from
shipper_country string Country the item was shipped from
receiver_name string Name of the person to receive the item
receiver_company string Name of the company to receive the item
receiver_address_line_1 string Street address 1 that the item was shipped to
receiver_address_line_2 string Street address 2 that the item was shipped to
receiver_city string City the item was shipped to
receiver_state string State the item was shipped to
receiver_postal_code string Postal code the item was shipped to
receiver_country string Country the item was shipped to
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)

Report: approved_refund_detail

This report provides detail for each approved refund that Lojistic recovered on your behalf, along with a summary of automated and manual attempts to obtain the refund.

Data Versions

Learn more about report data versions here.

An example Show Report response for approved_refund_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "769",
    "type": "report",
    "attributes": {
      "report_type": "approved_refund_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T15:47:27+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 100000,
      "from_date": "2021-09-01",
      "to_date": "2021-09-10",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        ...
      },
      "headers": [
        "Carrier",
        ...
      ],
      "rows": [
        [
          "FedEx",
          "123456",
          "32165162513",
          "2021-09-10",
          "521321651312",
          "FedEx Priority Overnight",
          "Late Shipments",
          961,
          "32165162513",
          "2021-09-10",
          1,
          "2021-09-12",
          1,
          "2021-09-15",
          "LOJISTIC SHIPMENT",
          "",
          "",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          "FECN1681"
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/769?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/769?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/769?page=1"
  }
}

V1 Data Version - approved_refund_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
original_invoice_number string Identifier of the invoice containing the refund's original charge
original_invoice_date date Date that the invoice was generated
tracking_number string Carrier's tracking identifier
service_description string The carrier service used
auditor_type string The audit point flagged for this refund, eg. Late Shipment, Duplicate Charge, etc.
approved_refund_amount integer The amount refunded from the carrier (in pennies)
invoice_number string Identifier of the invoice credited with the refund
credited_invoice_date date Date that the credited invoice was generated
automation_attempts integer The number of attempts made to retrieve this refund using automation
last_automation_attempt_on date The last time we attempted this refund via automation
manual_attempts integer The number of attempts made to retrieve this refund using a human operator
last_manual_attempt_on date The last time we attempted this refund via a human operator
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)
fedex_edi_control_number string Control Number for FedEx EDI shipments (optional; only shown for users with FedEx EDI enabled)

Report: charge_detail

In this report each individual charge related to a tracking number is broken out into a separate row.

Data Versions

Learn more about report data versions here.

An example Show Report response for charge_detail:
Displaying: data_version: v2, status: completed

{
  "data": {
    "id": "768",
    "type": "report",
    "attributes": {
      "report_type": "charge_detail",
      "response_format": "json",
      "status": "completed",
      "data_version": "v2",
      "created_at": "2021-11-04T15:03:45+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2021-09-05",
      "to_date": "2021-09-06",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Invoice #"
        },
        ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Invoice #",
        ...
      ],
      "rows": [
        [
          "FedEx",
          "123456",
          "111222333",
          487890,
          "2021-09-11",
          "Fuel Surcharges",
          "Fuel Surcharge",
          76,
          null,
          76,
          "USD",
          "Parcel",
          "16516513216516",
          null,
          null,
          null,
          "Customer Packaging",
          "04",
          "2021-09-07",
          "2021-09-08",
          "08:29",
          "1.0",
          "LB",
          "1.0",
          "LB",
          9,
          5,
          2,
          "Shipper 1",
          "Shipper Company",
          "1225 Deer Valley Dr #201",
          null,
          "PARK CITY",
          "UT",
          "84060",
          "US",
          "Recipient",
          null,
          "1225 Deer Valley Dr #203",
          null,
          "PARK CITY",
          "UT",
          "84060",
          "US",
          "Prepaid",
          null,
          1,
          "1233123",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          "ABCD1234"
      ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/768?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/768?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/768?page=1"
  }
}

V2 Data Version - charge_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_amount integer The amount invoiced (in pennies)
invoice_date date Date that the invoice was generated
charge_type string The surcharge cost category applied to this package
charge_description string The description of the charge_type column
original_charge integer The charge amount for this package delivery (in pennies)
discount integer The amount we saved you for this charge (in pennies)
net_charge integer The total amount charged after discount is applied (in pennies)
currency string The currency for the charge
shipping_mode string The classification for how this item was shipped. eg. 'parcel', 'ltl', 'truckload', etc.
tracking_number string Carrier's tracking identifier
parent_tracking_number string Parent package's tracking identifier
service_code string The carrier provided service code
service_level string The carrier service used
container_type string The type of container sent
zone string Zone the item was shipped to
ship_date date Date that the package was shipped
delivery_date date Date that the package was delivered
delivery_time time Time that the package was delivered
actual_weight decimal The actual amount of weight
actual_weight_unit string The actual weight unit type
billed_weight decimal The amount of weight that was billed
billed_weight_unit string The billed weight unit type
length integer Package length (in inches)
width integer Package width (in inches)
height integer Package height (in inches)
shipper_name string Name of the person who shipped the item
shipper_company string Name of the company that shipped the item
shipper_address_line_1 string Street address 1 of the person/company that shipped the item
shipper_address_line_2 string Street address 2 of the person/company that shipped the item
shipper_city string City of the person/company that shipped the item
shipper_state string Street address of the person/company that shipped the item
shipper_postal_code string Postal code of the person/company that shipped the item
shipper_country string Country of the person/company that shipped the item
receiver_name string Name of the person to receive the item
receiver_company string Name of the company to receive the item
receiver_address_line_1 string Carrier modified street address 1
receiver_address_line_2 string Carrier modified street address 2
receiver_city string Carrier modified city
receiver_state string Carrier modified state
receiver_postal_code string Carrier modified postal code
receiver_country string Carrier modified country
bill_option string Type of billing associated to this charge
declared_value integer Insured value of the shipment (in pennies)
piece_count integer Package item count
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)
fedex_edi_control_number string Control Number for FedEx EDI shipments (optional; only shown for users with FedEx EDI enabled)

Surcharge Groupings

Charge types are grouped into distinct categories based on the types of charges incurred.

To filter charge_detail report data by charge_type column, use the surcharge_grouping param in the request with one of the following groupings:

Grouping Description
additional_handling An additional handling fee is an extra charge incurred when "special" effort is required by the carrier during the pickup/transit/delivery of a shipment.
address_correction Address correction fees are extra charges that occur when a carrier has to correct or edit a shipment's 'Ship To' address during the process of transporting the shipment.
carrier_packaging_supplies All packaging supplies (boxes, envelopes, foam, tape, etc.) sourced from your carrier(s) that are reflected on your carrier invoices are grouped here.
charge_on_delivery A "Charge On Delivery" and/or "Electronic Charge On Delivery" fee is the extra cost incurred when a request is made for the carrier to collect payment from the recipient of a shipment.
delivery_area_surcharge Delivery area surcharges allow the carrier to recoup the extra cost of transporting shipments to less populated and/or less accessible areas.
declared_value Declared value fees represent the extra cost for a carrier to effectively cover the potential damage and/or loss of a shipment.
delivery_confirmation Delivery confirmation fees are assessed when you request that the carrier let you know the date and time that a shipment is delivered or that a delivery attempt was made.
duty Customs duty is a tax imposed on goods when they are transported across international borders.
'environmental_offset_fees' Discretionary fees that offset the environmental impact of transporting a shipment.
fuel Fuel surcharges are extra fees that carriers assess to cover the fluctuating cost of fuel
hazardous_material_fees Hazardous material fees are applied to packages that contain dangerous goods and/or hazardous materials.
large_package A large package fee is assessed by carriers when a shipment is bigger than they prefer a shipment to be when moving through their network.
misc There are hundreds of 'extra' fees that a carrier may add to the cost of transporting a shipment. These extra 'miscellaneous' charges are bucketed here.
oversize An extra large and heavy fee is a penalty fee assessed by the carriers when a shipment is much too big and/or heavy.
residential A residential surcharge is incurred when a carrier requires 'extra effort' to deliver a shipment to a home (including a business operating out of a home) when no public entrance is available.
saturday Saturday pickup and delivery services incur an extra charge when a shipment is tendered to a carrier on a Saturday and/or delivered on a Saturday.
signature_required Signature required services allow you to request that the delivery driver obtain an indirect/direct or adult signature before releasing a shipment.
shipping_charge_corrections Shipping charge corrections are adjustments to the original cost of a shipment when the shipment deviates from the required services and/or shipment characteristics that the original charge was based upon.
delayed_detail_upload_fees Some carriers charge fees when essential package information has not been uploaded prior to tendering packages to the carrier.

Report: denied_refund_detail

This report provides detail for each denied refund that Lojistic attempted to recover on your behalf, along with a summary of automated and manual attempts to obtain the refund.

Data Versions

Learn more about report data versions here.

An example Show Report response for denied_refund_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "770",
      "type": "report",
      "attributes": {
        "report_type": "denied_refund_detail",
        "response_format": "json",
        "data_version": "v1",
        "status": "completed",
        "created_at": "2021-11-04T16:04:55+0000",
        "page": 3,
        "total_pages": 3,
        "page_limit": 10000,
        "from_date": "2021-08-01",
        "to_date": "2021-09-30",
        "company_ids": [
          123,
          234
        ],
        "account_ids": [
          12345,
          23456
        ],
        "columns": {
          "carrier": {
            "type": "string",
            "position": 0,
            "label": "Carrier"
          },
          ...
        },
        "headers": [
          "Carrier",
          ...
        ],
        "rows": [
          [
            "FedEx",
            "123456",
            "3213216581",
            "2021-09-24",
            "321321321",
            "FedEx Priority Overnight",
            "Late Shipments",
            702,
            1,
            "Not provided",
            "09/25/2021",
            1,
            "Not provided",
            "09/29/2021",
            "25601",
            "",
            "21212132",
            null,
            null,
            null,
            null,
            null,
            null,
            null,
            null
          ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/770?page=1",
    "prev": "https://api.lojistic.com/v1/reports/770?page=2",
    "page": "https://api.lojistic.com/v1/reports/770?page=3",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/770?page=3"
  }
}

V1 Data Version - denied_refund_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_date date Date that the invoice was generated
tracking_number string Carrier's tracking identifier
service_description string The carrier service used
auditor_type string The audit point flagged for this refund, eg. Late Shipment, Duplicate Charge, etc.
denied_refund_amount integer The amount of the refund we attempted to retrieve (in pennies)
automation_attempts integer The number of attempts made to retrieve this refund using automation
last_automation_denial_reason string The last denial reason we received via automation for this refund attempt
last_automation_denial_on date The last time we attempted this refund via automation
manual_attempts integer The number of attempts made to retrieve this refund using a human operator
last_manual_denial_reason string The last denial reason we received via phone/email for this refund attempt
last_manual_denial_on date The last time we attempted this refund using a human operator
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)

Report: late_payment_fee_detail

Carriers often assess penalties when their invoices are paid late. These extra fees add up quickly but can be eliminated.

Data Versions

Learn more about report data versions here.

An example Show Report response for late_payment_fee_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "781",
    "type": "report",
    "attributes": {
      "report_type": "late_payment_fee_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T16:46:10+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2020-06-01",
      "to_date": "2021-09-30",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        ...
      },
      "headers": [
        "Carrier",
        ...
      ],
      "rows": [
        [
          "UPS",
          "123456",
          "7057Y5062",
          "321321321",
          "2020-10-10",
          183190,
          "USD",
          546,
          "Late Payment Fee",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/781?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/781?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/781?page=1"
  }
}

V1 Data Version - late_payment_fee_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
original_invoice_number string Invoice number of the original invoice paid late
invoice_number string Carrier invoice identifier
invoice_date date Date that the invoice was generated
invoice_amount integer The amount invoiced (in pennies)
currency string The currency for the charge
late_payment_fee_amount integer The amount of the late fee (in pennies)
charge_description string The description of the charge_type column
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)

Report: over_max_detail

These are 'penalty' fees assessed by the carriers when your packages are too big and/or too heavy. You can fix this.

Data Versions

Learn more about report data versions here.

An example Show Report response for over_max_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "783",
    "type": "report",
    "attributes": {
      "report_type": "over_max_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T16:54:18+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2019-08-01",
      "to_date": "2021-09-30",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Invoice #"
        },
        ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Invoice #",
        ...
      ],
      "rows": [
        [
          "FedEx",
          "123456",
          "111222333",
          "2020-05-29",
          "13215065130",
          "Unauthorized Oversize",
          "Shipper 1",
          "Shipper Company",
          "1225 Deer Valley Dr #201",
          "PARK CITY",
          "UT",
          "84060",
          "US",
          "ATTN: Recipient",
          "Lojistic",
          "1225 Deer Valley Dr #201",
          "PARK CITY",
          "UT",
          "84060",
          "US",
          35,
          332,
          53,
          30,
          29,
          87500,
          "sps",
          "",
          "",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null
        ]
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/783?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/783?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/783?page=1"
  }
}

V1 Data Version - over_max_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_date date Date that the invoice was generated
tracking_number string Carrier's tracking identifier
charge_description string The description of the charge_type column
shipper_name string Name of the person who shipped the item
shipper_company string Name of the company that shipped the item
shipper_address string Street address of the person/company that shipped the item
shipper_city string City of the person/company that shipped the item
shipper_state string Street address of the person/company that shipped the item
shipper_postal_code string Postal code of the person/company that shipped the item
shipper_country string Country of the person/company that shipped the item
receiver_name string Name of the person to receive the item
receiver_company string Name of the company to receive the item
receiver_address string Carrier modified street address
receiver_city string Carrier modified city
receiver_state string Carrier modified state
receiver_postal_code string Carrier modified postal code
receiver_country string Carrier modified country
actual_weight_lbs integer The actual weight of this package
billed_weight_lbs integer The billed weight of this package
length_(in.) integer The package length in inches
width_(in.) integer The package wdith in inches
height_(in.) integer The package height in inches
charge_amount integer The over max fee amount (in pennies)
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)

Report: package_detail

This report combines all available charges related to a tracking number into a single row. Note that as more charges for a package are received in future invoices, the information in this report may change to reflect the new information.

Data Versions

Learn more about report data versions here.

An example Show Report response for package_detail:
Displaying: data_version: v2, status: completed

{
  "data": {
    "id": "785",
    "type": "report",
    "attributes": {
      "report_type": "package_detail",
      "response_format": "json",
      "data_version": "v2",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T17:44:48+0000",
      "page": 3,
      "total_pages": 6,
      "page_limit": 10000,
      "from_date": "2021-09-01",
      "to_date": "2021-09-10",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Invoice #"
        },
        ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Invoice #",
        ...
      ],
      "rows": [
        "FedEx",
        "123456",
        "32132134",
        334904,
        "2021-09-10",
        "Parcel",
        "33510468498",
        null,
        4232,
        3586,
        684,
        "USD",
        "so",
        "FedEx Standard Overnight",
        "FedEx Envelope",
        "03",
        "2021-09-07",
        "2021-09-08",
        "08:29",
        "8.2",
        "10.0",
        "16.0",
        "12.0",
        "10.0",
        "Shipper 1",
        "Shipper Company",
        "1225 Deer Valley Dr #201",
        "PARK CITY",
        "UT",
        "84060",
        "US",
        "Recipient",
        null,
        "1225 Deer Valley Dr #203",
        null,
        "PARK CITY",
        "UT",
        "84060",
        "US",
        "Prepaid",
        null,
        "1613",
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        null,
        "ABCD1234"
      ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/785?page=1",
    "prev": "https://api.lojistic.com/v1/reports/785?page=2",
    "page": "https://api.lojistic.com/v1/reports/785?page=3",
    "next": "https://api.lojistic.com/v1/reports/785?page=4",
    "last": "https://api.lojistic.com/v1/reports/785?page=6"
  }
}

V2 Data Version - package_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_amount integer The amount invoiced (in pennies)
invoice_date date Date that the invoice was generated
shipping_mode string The classification for how this item was shipped. eg. 'parcel', 'ltl', 'truckload', etc.
tracking_number string Carrier's tracking identifier
parent_tracking_number string Parent package's tracking identifier
original_cost integer The charge amount for this package delivery (in pennies)
discount integer The amount we saved you for this charge (in pennies)
net_package_cost integer The total amount charged after discount is applied (in pennies)
currency string The currency for the charge
service_code string The carrier provided service code
service_level string The carrier service used
container_type string The type of container sent
zone string Zone the item was shipped to
ship_date date Date that the package was shipped
delivery_date date Date that the package was delivered
delivery_time time Time that the package was delivered
actual_weight_lbs decimal The actual amount of weight
billed_weight_lbs decimal The amount of weight that was billed
length decimal Package length (in inches)
width decimal Package width (in inches)
height decimal Package height (in inches)
shipper_name string Name of the person who shipped the item
shipper_company string Name of the company that shipped the item
shipper_address string Street address of the person/company that shipped the item
shipper_city string City of the person/company that shipped the item
shipper_state string Street address of the person/company that shipped the item
shipper_postal_code string Postal code of the person/company that shipped the item
shipper_country string Country of the person/company that shipped the item
receiver_name string Name of the person to receive the item
receiver_company string Name of the company to receive the item
receiver_address string Carrier modified street address
receiver_city string Carrier modified city
receiver_state string Carrier modified state
receiver_postal_code string Carrier modified postal code
receiver_country string Carrier modified country
bill_option string Type of billing associated to this charge
declared_value integer Insured value of the shipment (in pennies)
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)
fedex_edi_control_numbers string Control Number for FedEx EDI shipments (optional; only shown for users with FedEx EDI enabled)

Report: potential_audit_recovery_detail

This report provides detail for each error and/or potential refund that Lojistic has identified, including the reason for the error and the amount of potential refund that can be obtained from the carrier.

Data Versions

Learn more about report data versions here.

An example Show Report response for potential_audit_recovery_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "784",
    "type": "report",
    "attributes": {
      "report_type": "potential_audit_recovery_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T17:35:36+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2021-09-01",
      "to_date": "2021-09-15",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        ...
      },
      "headers": [
        "Carrier",
        ...
      ],
      "rows": [
        [
          "UPS",
          "123456",
          "111222333",
          "2021-09-04",
          "2021-08-30",
          "09/01/2021",
          "08:45",
          "1ZR69E180890127032123",
          "UPS NEXT DAY AIR",
          "Late Shipments",
          654,
          "1463651",
          "600-120938",
          null,
          null,
          null,
          "1463651",
          "600-120938",
          null,
          null,
          null,
          null
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/784?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/784?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/784?page=1"
  }
}

V1 Data Version - potential_audit_recovery_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_date date Date that the invoice was generated
ship_date date Date that the package was shipped
delivery_date date Date that the package was delivered
delivery_time time Time that the package was delivered (24 hour format)
tracking_number string Carrier's tracking identifier
service_description string The carrier service used
auditor_type string The audit point flagged for this refund, eg. Late Shipment, Duplicate Charge, etc.
potential_refund_amount integer The amount that can be potentially recovered (in pennies)
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)

Report: potential_damaged_and_lost_claims_detail

This report provides detail for each potential damaged or lost package that Lojistic has identified. Claims for reimbursement may be manually submitted on the carrier website. Additional details/documentation about the damage or value of goods may be required.

Data Versions

Learn more about report data versions here.

An example Show Report response for potential_damaged_and_lost_claims_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "784",
    "type": "report",
    "attributes": {
      "report_type": "potential_damaged_and_lost_claims_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "shipping_mode": null,
      "created_at": "2021-11-04T17:35:36+0000",
      "page": 1,
      "total_pages": 1,
      "page_limit": 10000,
      "from_date": "2021-09-01",
      "to_date": "2021-09-15",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        ...
      },
      "headers": [
        "Carrier",
        ...
      ],
      "rows": [
        [
          "UPS",
          "123456",
          "111222333",
          "2021-09-04",
          "2021-08-30",
          "09/01/2021",
          "08:45",
          "1ZR69E180890127032123",
          "UPS NEXT DAY AIR",
          "Late Shipments",
          654,
          "1463651",
          "600-120938",
          null,
          null,
          null,
          "1463651",
          "600-120938",
          null,
          null,
          null,
          null
        ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/784?page=1",
    "prev": null,
    "page": "https://api.lojistic.com/v1/reports/784?page=1",
    "next": null,
    "last": "https://api.lojistic.com/v1/reports/784?page=1"
  }
}

V1 Data Version - potential_damaged_and_lost_claims_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_date date Date that the invoice was generated
ship_date date Date that the package was shipped
delivery_date date Date that the package was delivered
delivery_time time Time that the package was delivered (24 hour format)
tracking_number string Carrier's tracking identifier
service_description string The carrier service used
auditor_type string The audit point flagged for this claim, eg. Lost Package, Damaged Package, etc.
potential_refund_amount integer The amount that can be potentially recovered (in pennies)
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)

Report: shipment_detail

This report combines all available charges related to a shipment into a single row. In the case of a multi-piece shipment, the charges from all associated packages will also be included. Note that as more charges are received in future invoices, the information in this report may change to reflect the new information.

Data Versions

Learn more about report data versions here.

An example Show Report response for shipment_detail:
Displaying: data_version: v1, status: completed

{
  "data": {
    "id": "793",
    "type": "report",
    "attributes": {
      "report_type": "shipment_detail",
      "response_format": "json",
      "data_version": "v1",
      "status": "completed",
      "created_at": "2023-07-28T20:36:13+0000",
      "page": 3,
      "total_pages": 6,
      "page_limit": 10000,
      "from_date": "2022-04-01",
      "to_date": "2022-04-05",
      "company_ids": [
        123,
        234
      ],
      "account_ids": [
        12345,
        23456
      ],
      "columns": {
        "carrier": {
          "type": "string",
          "position": 0,
          "label": "Carrier"
        },
        "account_number": {
          "type": "string",
          "position": 1,
          "label": "Account #"
        },
        "invoice_number": {
          "type": "string",
          "position": 2,
          "label": "Invoice #"
        },
        ...
      },
      "headers": [
        "Carrier",
        "Account #",
        "Invoice #",
        ...
      ],
      "rows": [
        [
          "FedEx",
          "123123123",
          "",
          199348,
          "2022-04-01",
          "Parcel",
          "98230923232123",
          1374,
          0,
          1374,
          "USD",
          "endp",
          "Priority Mail",
          null,
          "",
          null
          "2022-04-01",
          "2022-04-02",
          "10:57",
          2.875,
          2.875,
          null,
          null,
          "",
          "MOSCOW",
          "ID",
          "83843",
          null,
          "Shipper 1",
          null,
          "1225 Deer Valley Dr #201",
          "PARK CITY",
          "UT",
          "84060",
          "US",
          null,
          null,
          1,
          "1278409",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null
      ],
      [
          "FedEx",
          "321321321",
          "",
          202311,
          "2022-04-11",
          "Parcel",
          "321231116343",
          1401,
          0,
          1401,
          "USD",
          "fg",
          "FedEx Ground",
          "03",
          "",
          null
          "2022-04-01",
          "2022-04-04",
          "13:23",
          3.21,
          3.21,
          null,
          null,
          "",
          "SOMEWHERE",
          "ID",
          "83843",
          null,
          "Shipper 1",
          null,
          "1225 Deer Valley Dr #201",
          "PARK CITY",
          "UT",
          "84060",
          "US",
          null,
          null,
          1,
          "1324256",
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null,
          null
      ],
        ...
      ]
    },
    "meta": {}
  },
  "links": {
    "first": "https://api.lojistic.com/v1/reports/793?page=1",
    "prev": "https://api.lojistic.com/v1/reports/793?page=2",
    "page": "https://api.lojistic.com/v1/reports/793?page=3",
    "next": "https://api.lojistic.com/v1/reports/793?page=4",
    "last": "https://api.lojistic.com/v1/reports/793?page=6"
  }
}

V1 Data Version - shipment_detail

Column Type Description
carrier string Shipping carrier used
account_number string Carrier account identifier
invoice_number string Carrier invoice identifier
invoice_amount integer The amount invoiced (in pennies)
invoice_date date Date that the invoice was generated
shipping_mode string The classification for how this shipment was shipped. eg. 'parcel', 'ltl', 'truckload', etc.
shipment_tracking_id string Shipment's tracking identifier
original_cost integer The charge amount for this shipment delivery (in pennies)
discount integer The amount we saved you for this charge (in pennies)
net_shipment_cost integer The total amount charged after discount is applied (in pennies)
currency string The currency for the charge
service_code string The carrier provided service code
service_level string The carrier service used
zone string Zone the shipment was shipped to
class string A list of the distinct freight classes for this shipment
miles integer The combined mileage of the shipment's packages
ship_date date Date that the shipment was shipped
delivery_date date Date that the shipment was delivered
delivery_time time Time that the shipment was delivered
actual_weight_lbs decimal The actual amount of shipment weight
billed_weight_lbs decimal The amount of shipment weight that was billed
shipper_name string Name of the person who shipped the shipment
shipper_company string Name of the company that shipped the shipment
shipper_address string Street address of the person/company that shipped the shipment
shipper_city string City of the person/company that shipped the shipment
shipper_state string Street address of the person/company that shipped the shipment
shipper_postal_code string Postal code of the person/company that shipped the shipment
shipper_country string Country of the person/company that shipped the shipment
receiver_name string Name of the person to receive the shipment
receiver_company string Name of the company to receive the shipment
receiver_address string Carrier modified street address
receiver_city string Carrier modified city
receiver_state string Carrier modified state
receiver_postal_code string Carrier modified postal code
receiver_country string Carrier modified country
bill_option string Type of billing associated to this charge
declared_value integer Insured value of the shipment (in pennies)
piece_count integer Number of packages in the shipment
reference_1 string Carrier reference field 1
reference_2 string Carrier reference field 2
reference_3 string Carrier reference field 3
reference_4 string Carrier reference field 4
reference_5 string Carrier reference field 5
reference_6 string Carrier reference field 6
reference_7 string Carrier reference field 7
reference_8 string Carrier reference field 8
gl_code_1 string General ledger code 1 (if enabled on your account)
gl_code_2 string General ledger code 2 (if enabled on your account)
gl_code_3 string General ledger code 3 (if enabled on your account)
fedex_edi_control_numbers string Control Number for FedEx EDI shipments (optional; only shown for users with FedEx EDI enabled)