uShip · AsyncAPI Specification

Uship Notifications Webhooks

Version

View Spec View on GitHub shippinglogisticsfreightmarketplacetransportationauto-transportltl-freightlast-mile-deliveryshipment-trackingecommercesupply-chainrate-quotesAsyncAPIWebhooksEvents

AsyncAPI Specification

uship-notifications-webhooks.yml Raw ↑
generated: '2026-08-02'
method: searched
source: >-
  uShip Published Rates service-provider reference —
  https://developer.uship.com/docs/read/apis/published_rates/rate_provider/Rate_Request_Notification,
  .../Booking_Acceptance_Notification, .../Setup, and
  https://developer.uship.com/docs/read/apis/published_rates/Workflow
spec_type: none
spec_note: >-
  uShip publishes no AsyncAPI document and no event-streaming surface. It does operate a real HTTP
  callback (webhook) surface for Published Rates service providers, captured below from the provider's own
  documentation. Nothing here is fabricated — only the notifications uShip documents.
webhooks:
  supported: true
  style: HTTP POST callback to a partner-registered recipient URL
  media_type: application/json
  subscription: >-
    Not self-service. A service provider registers a recipient URL and selects a saved search during
    integration setup with the uShip API team; changes to saved-search criteria are requested via
    api-support@uship.com.
  security: >-
    No published signing, HMAC, or replay-protection scheme. Payload integrity is addressed with a
    `checksum` field that changes whenever relevant rate-request data changes, letting the receiver detect
    that a request has been modified since it was created.
  events:
  - name: Rate Request Notification
    direction: uShip -> service provider
    docs: https://developer.uship.com/docs/read/apis/published_rates/rate_provider/Rate_Request_Notification
    description: >-
      POSTed to the service provider's recipient URL when a listing or rate request matches the saved
      search the provider selected for notification, or when a listing is edited or updated in a way that
      could change the price of a previously placed rate (for example a destination change).
    payload_fields:
    - {field: id, type: string, description: Unique identifier of the rate.}
    - {field: checksum, type: string, description: Changes any time a user or the system updates relevant rate request data; verifies the rate request has not changed since it was created.}
    - {field: testMode, type: boolean, description: 'true — the rate request is in test mode and does not appear on production; false — results appear on production.'}
    - {field: totalWeightInGrams, type: container, description: Data trio (value/label/shortLabel) describing total shipment weight in grams.}
    - {field: serviceTypes, type: container, description: Array of data trios listing the service types for the listing.}
    - {field: route, type: object, description: See the Route object reference.}
    - {field: lister, type: object, description: See the Listers object reference.}
    - {field: items, type: object, description: See the Listing Items object reference.}
  - name: Booking Acceptance Notification
    direction: uShip -> service provider
    docs: https://developer.uship.com/docs/read/apis/published_rates/rate_provider/Booking_Acceptance_Notification
    description: >-
      POSTed to the service provider when a shipping customer chooses one of the provider's published
      rates. The provider then accepts or declines the booking request; on acceptance the listing is booked.
  - name: Booking Acceptance Notification (shipping customer)
    direction: uShip -> shipping customer integration
    docs: https://developer.uship.com/docs/read/apis/published_rates/shipping_customer/Booking_Acceptance_Notification
    description: >-
      The shipping-customer side of the booking acceptance flow, notifying the customer integration of the
      service provider's accept/decline decision on a rate booking.
polling_alternatives:
- name: Transit status history
  operation: GET https://api.uship.com/v2/listings/{listingId}/transitStatuses
  description: >-
    Tracking is retrieved by polling rather than pushed — the location history and most recent reported
    location for a booked listing, with punctuality against the bid's latest pickup and delivery times.
  docs: https://developer.uship.com/docs/read/apis/Tracking_Reference