canonical: https://jentic.com/apis/ebay.com/sell-logistics

# Ebay Logistics API

The eBay Logistics API gives approved sellers programmatic access to eBay-negotiated shipping rates and label generation. Sellers request a shipping quote for a package, choose from a list of live carrier rates valid for a specific time window, and create a shipment that produces a downloadable shipping label. The API consolidates the rate-shop, label-buy, and cancel flows into six endpoints scoped to a single shipment lifecycle.

## For AI agents

Fetch eBay-negotiated shipping rates, buy a label for a chosen rate, and cancel or download labels for shipments tied to eBay seller accounts.

## Scope

Does not handle order management, listing creation, or buyer messaging - use for eBay shipping rate quotes and label generation only.

## Capabilities

- Request live shipping quotes with multiple carrier rates for a specific package size and route
- Purchase a shipping label from a quoted rate and receive a downloadable PDF label file
- Retrieve full shipment details including tracking number and total shipping cost
- Cancel an unused shipment to void the associated label and refund eBay-negotiated charges
- Reuse a shippingQuoteId across multiple sellers participating in the eBay Managed Delivery program

## Use cases

### Discounted Shipping Labels for eBay Sellers

High-volume eBay sellers can fetch eBay-negotiated rates that are typically lower than retail carrier rates and buy labels in one call. The Logistics API returns a list of live rates valid for a fixed window, and createFromShippingQuote turns a chosen rate into a paid shipment with a downloadable label. Integration replaces ad-hoc carrier accounts with a single OAuth-scoped flow against api.ebay.com.

Example prompt: Call POST /shipping_quote with a 2 lb origin/destination package, pick the cheapest rateId, then POST /shipment/create_from_shipping_quote and download the label.

### Automated Order Fulfilment Pipelines

Order management systems can integrate the Logistics API to print labels as soon as a buyer pays. The pipeline pulls the order address, requests a shipping quote, selects a rate based on cost or service level, creates the shipment, and stores the resulting tracking number. Each shipment is bound to a shipmentId so cancellations and re-prints flow through the same endpoints.

Example prompt: After receiving an eBay order webhook, request a shipping quote, create a shipment from the cheapest rateId, and persist the tracking number against the order.

### Label Cancellation and Refund Handling

When an order is cancelled before dispatch, the seller can call cancelShipment to void the unused label and stop the eBay-negotiated charge. The API enforces cancellation rules tied to the carrier, so agents need to inspect shipment status before retrying. This use case keeps logistics costs aligned with actual fulfilled orders.

Example prompt: POST /shipment/{shipmentId}/cancel for a cancelled order and verify the response confirms the label was voided.

### AI Agent Shipping Cost Optimisation

An AI agent invoked from a fulfilment workflow can use Jentic to discover the eBay Logistics shipping_quote operation, fetch live rates, and compare them against the merchant's existing carrier rates before deciding which channel to use. Jentic delivers the OAuth scope and operation schema directly into the agent's context so it can pick a rate without browsing eBay developer docs.

Example prompt: Through Jentic, search 'get ebay shipping rates', load the createShippingQuote schema, and execute it for an order's origin and destination.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /shipping_quote | Create a shipping quote and return live carrier rates |
| GET | /shipping_quote/{shippingQuoteId} | Retrieve a previously requested shipping quote |
| POST | /shipment/create_from_shipping_quote | Buy a label using a chosen rateId |
| GET | /shipment/{shipmentId} | Retrieve shipment details and tracking |
| GET | /shipment/{shipmentId}/download_label_file | Download the PDF shipping label |
| POST | /shipment/{shipmentId}/cancel | Cancel an unused shipment and void the label |

## Key resources

- **shipping_quote** — Request and retrieve live eBay-negotiated shipping rates for a package
- **shipment** — Create, retrieve, cancel, and download labels for shipments tied to a chosen rate

## Why Jentic

- **Setup:** Wiring the eBay Logistics API by hand means implementing eBay's OAuth 2.0 authorization-code flow for a seller user token, refreshing it, and pointing requests at the api.ebay.com sell/logistics host for quotes and label downloads. Through Jentic you install once, import the Logistics API from the API Directory, store the eBay OAuth credentials once, and your agent calls it.
- **Permission scoping:** Logistics operations put the resource id in the URL path, such as /shipment/{shipmentId} and /shipping_quote/{shippingQuoteId}, so a rule can pin your agent to one shipment or quote. You choose the operations it may call, so you can allow creating quotes and downloading labels while leaving shipment cancellation out unless you add it.
- **Credential handling:** Your eBay OAuth seller credentials are stored once, encrypted, by your own Jentic One instance and injected at execution time. They never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'get eBay shipping rates' or 'create an eBay shipping label', and Jentic returns the matching shipping_quote or shipment operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **eBay Fulfillment API** — Manages eBay orders end-to-end while Logistics handles the shipping label step
- **eBay Account API** — Configures seller fulfillment policies and shipping preferences
- **Shopify Admin API** — Shopify's fulfillment and shipping endpoints for sellers running their own storefront

## FAQ

### What authentication does the eBay Logistics API use?

The eBay Logistics API uses OAuth 2.0 (the api_auth scheme) scoped to seller accounts. Through Jentic, the OAuth client credentials and refresh tokens stay in your Jentic One instance and the agent only ever receives short-lived scoped access tokens for the call.

### Can I get live carrier rates with the eBay Logistics API?

Yes. POST /shipping_quote returns a list of live eBay-negotiated rates valid for a fixed time window, each identified by a rateId you can pass to createFromShippingQuote to buy a label.

### What are the rate limits for the eBay Logistics API?

eBay applies per-application call limits set in the developer agreement and tracked in the Application Growth Check program rather than per-endpoint quotas exposed in the spec. Apps approved for Limited Release access receive specific call allowances from eBay.

### How do I print an eBay shipping label through Jentic?

Search 'buy ebay shipping label' in Jentic, load the POST /shipment/create_from_shipping_quote schema, pass the rateId from a prior shipping_quote response, then call GET /shipment/{shipmentId}/download_label_file to fetch the PDF.

### Can I cancel an eBay shipment after the label is printed?

Yes, while the package has not yet been scanned by the carrier. POST /shipment/{shipmentId}/cancel voids the label and stops the eBay-negotiated charge for that shipment.

### Is the eBay Logistics API available to all developers?

No. It is a Limited Release API restricted to sellers approved by eBay business units, and sellers must have a payment method configured on their eBay account before they can create shipments.

### Can I limit what my agent is allowed to do with the eBay Logistics API?

Yes. Because you self-host Jentic One, your own rules decide which of the six Logistics operations your agent may call, so you can allow it to create shipping quotes with POST /shipping_quote and download labels via GET /shipment/{shipmentId}/download_label_file while leaving shipment cancellation out. Each operation carries the resource id in the URL path, such as /shipment/{shipmentId} and /shipping_quote/{shippingQuoteId}, so a rule can pin the agent to a single shipment or quote. The eBay OAuth seller credentials stay encrypted in your instance and are injected only at execution time, so the agent never handles them directly.
