The easiest way to integrate with the InPost API

One Sendcloud integration connects your WMS, marketplace, or 3PL stack to the InPost API and 170+ other couriers. Ship to parcel lockers across five European markets, without a separate InPost integration to build.

The easiest way to integrate with the InPost API

One Sendcloud integration connects your WMS, marketplace, or 3PL stack to the InPost API and 170+ other couriers. Ship to parcel lockers across five European markets, without a separate InPost integration to build.

The easiest way to integrate with the InPost API

One Sendcloud integration connects your WMS, marketplace, or 3PL stack to the InPost API and 170+ other couriers. Ship to parcel lockers across five European markets, without a separate InPost integration to build.

Easy to use and thoroughly documented

Tested on millions of shipments

Available on all plans

Why integrate InPost via the Sendcloud API?

Europe's leading parcel locker carrier

InPost is the leading parcel locker operator in Poland and is expanding across Western Europe. Sendcloud returns locker IDs per market and handles label format differences between countries automatically.

Three locker delivery flows

Locker 2 Locker, Address to Locker, and Instant Returns are all available through Sendcloud's REST API. Instant Returns lets shoppers drop off at any locker without a printed label.

Integrate with 170+ couriers at once

Stop maintaining and integrating different couriers and use one API for all.

GDPR Compliance

We comply with the GDPR rules to protect data and privacy in Europe.

API uptime of 99.99%

Reliable shipping software built on AWS and with leading market technologies.

ISO 27001 Certified

The world’s most rigorous standards for information security.

The complete shipping API for any system

Shipping API

Get rates, create shipments, download labels, configure webhooks and so much more.

Checkout API

Retrieve the list of active couriers, query service points by GPS location, and check their availability.

Pickup API

Schedule pickups to take place at the address of your choice.

Tracking API

Track parcels in real time, retrieve delivery time stamps, and consolidate statuses in an easy-to-read format.

Returns API

Build your own returns portal, find the nearest service point, create return shipments, and download return labels.

Webhooks API

Get parcel status, return, and integration updates pushed to your endpoint the moment they happen.

"Sendcloud allows us to connect to a lot of different couriers seamlessly."

Oscar Ziegler

Founder and CEO

-

Hive

API integration examples

API Integration

See a basic example of an API integration using Python.

Service Point Picker

See how to integrate the Service Point Picker into a custom application.

Where do you start?

1

Set up your account

2

Get your free API key

3

Start sending requests to the InPost API

Questions & answers

Why integrate the InPost API through Sendcloud rather than directly?

Direct InPost integration means managing separate APIs and credentials for each market: InPost UK, InPost Italy, InPost ES, and InPost Global. Each market has different fields (Client ID + API Token for UK, Organisation ID + Bearer Token + Brand ID + LoginAPI + API Key for Italy, Username + Password + Dual Courier API credentials for Spain). For the UK, every locker service needs its own credentials.

Through Sendcloud, you authenticate once with your Sendcloud API key and use a single REST schema for InPost alongside every other courier. A direct InPost contract is required either way; Sendcloud rates aren't offered for InPost.

What happens when InPost updates or breaks their API?

InPost runs separate APIs per market and updates them independently. Direct integrators have to track changes across InPost UK, Italy, Spain, and Global, refresh credentials when authentication updates, and adjust per-service routing logic when locker product codes change.

When you ship InPost through the Sendcloud REST API, the abstraction layer absorbs those changes. Sendcloud's engineering tracks each InPost market and updates the connectors internally. Your Sendcloud request schema stays the same whether you ship Locker 2 Locker, Address to Locker, or Instant Returns.

Can I use my own InPost contract?

Yes, and you have to. InPost requires direct contracts; Sendcloud rates aren't offered. Each InPost market is a separate contract set-up.

In Sendcloud, go to Shipping > Couriers, find the InPost variant you need (InPost UK, InPost Italy, InPost ES, or InPost Global), click Enable, and add your contract under My Contracts. For InPost UK, you also need separate credentials for each service (Locker 2 Locker, Locker to Address, etc.). Locker to Address and Locker to Address Returns share credentials.

See the InPost UK contract activation Help Centre article, the InPost Italy article, or the InPost ES article.

Which InPost products are supported through the API?

Through Sendcloud, you can ship InPost's full locker network:

  • InPost Locker 2 Locker and Locker 2 Locker Returns

  • InPost Locker to Address and Locker to Address Returns

  • InPost Address to Locker

  • InPost Returns and InPost Instant Returns

  • InPost Italy: international Locker shipments and domestic Home Delivery (via InPost Global)

  • InPost Spain: Dual Courier API services for Relay-to-Relay and pick-up variants

The Sendcloud shipping-methods endpoint returns the up-to-date list of methods enabled on your contract.

Which InPost-specific features does the API expose?

InPost-specific locker features exposed through the integration:

  • Locker-to-locker shipping: parcels move between InPost lockers without ever needing a home address

  • Address-to-locker and locker-to-address routing for hybrid flows

  • Instant Returns for low-friction return drop-off at any InPost locker

  • Per-market locker network access (UK, Spain, Italy, Poland, NL)

  • InPost Italy: international Locker shipments cross-border

  • InPost Spain: pick-up option (you are using a pick-up checkbox) for Relay-to-Relay variants

Each market’s locker network has its own coverage and density; check the InPost site for current locker availability per region.

How do I track InPost parcels?

InPost tracking surfaces locker drop-off, in-transit, and locker-arrival events. Each event appears with the locker location in the payload, so you can stream locker-readiness updates directly to your customer.

All events normalise to Sendcloud's status taxonomy through GET https://panel.sendcloud.sc/api/v2/tracking/{tracking_number}, with the chronological history under statuses and each event mapped to parent_status. Subscribe to the parcel-status-changed webhook for push updates. Reference: Tracking parcels.

How do I create InPost return labels?

Returns are core to InPost. Four dedicated services cover the locker network: Locker 2 Locker Returns, Locker to Address Returns, InPost Returns, and Instant Returns. All four use the same Sendcloud return endpoints as every other courier.

All return labels are created through Sendcloud's standalone v3 Returns API (synchronous or asynchronous; async is recommended for higher throughput). No outgoing parcel lookup or JWT tokens are required. Reference: Returns API overview.

How does Sendcloud's multi-carrier API compare to connecting carriers individually?

The Sendcloud REST API gives you access to 170+ couriers, including InPost, through one credential set, one schema, one webhook stream, and one error model. Connecting couriers individually means handling separate authentication, payload formats, and tracking systems for each, and redoing the work every time a courier ships breaking changes upstream.

With Sendcloud, you ship InPost alongside DHL, DPD, Royal Mail, and Evri, or any other courier in your account using the same code. Route shipments between couriers based on rules (weight, destination, service level, cost) without writing courier-specific routing logic. Fall back to alternative couriers automatically if InPost's upstream system has issues.

Adding a new courier later means adding it to your Sendcloud account, not building a new integration.

Questions & answers

Why integrate the InPost API through Sendcloud rather than directly?

Direct InPost integration means managing separate APIs and credentials for each market: InPost UK, InPost Italy, InPost ES, and InPost Global. Each market has different fields (Client ID + API Token for UK, Organisation ID + Bearer Token + Brand ID + LoginAPI + API Key for Italy, Username + Password + Dual Courier API credentials for Spain). For the UK, every locker service needs its own credentials.

Through Sendcloud, you authenticate once with your Sendcloud API key and use a single REST schema for InPost alongside every other courier. A direct InPost contract is required either way; Sendcloud rates aren't offered for InPost.

What happens when InPost updates or breaks their API?

InPost runs separate APIs per market and updates them independently. Direct integrators have to track changes across InPost UK, Italy, Spain, and Global, refresh credentials when authentication updates, and adjust per-service routing logic when locker product codes change.

When you ship InPost through the Sendcloud REST API, the abstraction layer absorbs those changes. Sendcloud's engineering tracks each InPost market and updates the connectors internally. Your Sendcloud request schema stays the same whether you ship Locker 2 Locker, Address to Locker, or Instant Returns.

Can I use my own InPost contract?

Yes, and you have to. InPost requires direct contracts; Sendcloud rates aren't offered. Each InPost market is a separate contract set-up.

In Sendcloud, go to Shipping > Couriers, find the InPost variant you need (InPost UK, InPost Italy, InPost ES, or InPost Global), click Enable, and add your contract under My Contracts. For InPost UK, you also need separate credentials for each service (Locker 2 Locker, Locker to Address, etc.). Locker to Address and Locker to Address Returns share credentials.

See the InPost UK contract activation Help Centre article, the InPost Italy article, or the InPost ES article.

Which InPost products are supported through the API?

Through Sendcloud, you can ship InPost's full locker network:

  • InPost Locker 2 Locker and Locker 2 Locker Returns

  • InPost Locker to Address and Locker to Address Returns

  • InPost Address to Locker

  • InPost Returns and InPost Instant Returns

  • InPost Italy: international Locker shipments and domestic Home Delivery (via InPost Global)

  • InPost Spain: Dual Courier API services for Relay-to-Relay and pick-up variants

The Sendcloud shipping-methods endpoint returns the up-to-date list of methods enabled on your contract.

Which InPost-specific features does the API expose?

InPost-specific locker features exposed through the integration:

  • Locker-to-locker shipping: parcels move between InPost lockers without ever needing a home address

  • Address-to-locker and locker-to-address routing for hybrid flows

  • Instant Returns for low-friction return drop-off at any InPost locker

  • Per-market locker network access (UK, Spain, Italy, Poland, NL)

  • InPost Italy: international Locker shipments cross-border

  • InPost Spain: pick-up option (you are using a pick-up checkbox) for Relay-to-Relay variants

Each market’s locker network has its own coverage and density; check the InPost site for current locker availability per region.

How do I track InPost parcels?

InPost tracking surfaces locker drop-off, in-transit, and locker-arrival events. Each event appears with the locker location in the payload, so you can stream locker-readiness updates directly to your customer.

All events normalise to Sendcloud's status taxonomy through GET https://panel.sendcloud.sc/api/v2/tracking/{tracking_number}, with the chronological history under statuses and each event mapped to parent_status. Subscribe to the parcel-status-changed webhook for push updates. Reference: Tracking parcels.

How do I create InPost return labels?

Returns are core to InPost. Four dedicated services cover the locker network: Locker 2 Locker Returns, Locker to Address Returns, InPost Returns, and Instant Returns. All four use the same Sendcloud return endpoints as every other courier.

All return labels are created through Sendcloud's standalone v3 Returns API (synchronous or asynchronous; async is recommended for higher throughput). No outgoing parcel lookup or JWT tokens are required. Reference: Returns API overview.

How does Sendcloud's multi-carrier API compare to connecting carriers individually?

The Sendcloud REST API gives you access to 170+ couriers, including InPost, through one credential set, one schema, one webhook stream, and one error model. Connecting couriers individually means handling separate authentication, payload formats, and tracking systems for each, and redoing the work every time a courier ships breaking changes upstream.

With Sendcloud, you ship InPost alongside DHL, DPD, Royal Mail, and Evri, or any other courier in your account using the same code. Route shipments between couriers based on rules (weight, destination, service level, cost) without writing courier-specific routing logic. Fall back to alternative couriers automatically if InPost's upstream system has issues.

Adding a new courier later means adding it to your Sendcloud account, not building a new integration.

Questions & answers

Why integrate the InPost API through Sendcloud rather than directly?

Direct InPost integration means managing separate APIs and credentials for each market: InPost UK, InPost Italy, InPost ES, and InPost Global. Each market has different fields (Client ID + API Token for UK, Organisation ID + Bearer Token + Brand ID + LoginAPI + API Key for Italy, Username + Password + Dual Courier API credentials for Spain). For the UK, every locker service needs its own credentials.

Through Sendcloud, you authenticate once with your Sendcloud API key and use a single REST schema for InPost alongside every other courier. A direct InPost contract is required either way; Sendcloud rates aren't offered for InPost.

What happens when InPost updates or breaks their API?

InPost runs separate APIs per market and updates them independently. Direct integrators have to track changes across InPost UK, Italy, Spain, and Global, refresh credentials when authentication updates, and adjust per-service routing logic when locker product codes change.

When you ship InPost through the Sendcloud REST API, the abstraction layer absorbs those changes. Sendcloud's engineering tracks each InPost market and updates the connectors internally. Your Sendcloud request schema stays the same whether you ship Locker 2 Locker, Address to Locker, or Instant Returns.

Can I use my own InPost contract?

Yes, and you have to. InPost requires direct contracts; Sendcloud rates aren't offered. Each InPost market is a separate contract set-up.

In Sendcloud, go to Shipping > Couriers, find the InPost variant you need (InPost UK, InPost Italy, InPost ES, or InPost Global), click Enable, and add your contract under My Contracts. For InPost UK, you also need separate credentials for each service (Locker 2 Locker, Locker to Address, etc.). Locker to Address and Locker to Address Returns share credentials.

See the InPost UK contract activation Help Centre article, the InPost Italy article, or the InPost ES article.

Which InPost products are supported through the API?

Through Sendcloud, you can ship InPost's full locker network:

  • InPost Locker 2 Locker and Locker 2 Locker Returns

  • InPost Locker to Address and Locker to Address Returns

  • InPost Address to Locker

  • InPost Returns and InPost Instant Returns

  • InPost Italy: international Locker shipments and domestic Home Delivery (via InPost Global)

  • InPost Spain: Dual Courier API services for Relay-to-Relay and pick-up variants

The Sendcloud shipping-methods endpoint returns the up-to-date list of methods enabled on your contract.

Which InPost-specific features does the API expose?

InPost-specific locker features exposed through the integration:

  • Locker-to-locker shipping: parcels move between InPost lockers without ever needing a home address

  • Address-to-locker and locker-to-address routing for hybrid flows

  • Instant Returns for low-friction return drop-off at any InPost locker

  • Per-market locker network access (UK, Spain, Italy, Poland, NL)

  • InPost Italy: international Locker shipments cross-border

  • InPost Spain: pick-up option (you are using a pick-up checkbox) for Relay-to-Relay variants

Each market’s locker network has its own coverage and density; check the InPost site for current locker availability per region.

How do I track InPost parcels?

InPost tracking surfaces locker drop-off, in-transit, and locker-arrival events. Each event appears with the locker location in the payload, so you can stream locker-readiness updates directly to your customer.

All events normalise to Sendcloud's status taxonomy through GET https://panel.sendcloud.sc/api/v2/tracking/{tracking_number}, with the chronological history under statuses and each event mapped to parent_status. Subscribe to the parcel-status-changed webhook for push updates. Reference: Tracking parcels.

How do I create InPost return labels?

Returns are core to InPost. Four dedicated services cover the locker network: Locker 2 Locker Returns, Locker to Address Returns, InPost Returns, and Instant Returns. All four use the same Sendcloud return endpoints as every other courier.

All return labels are created through Sendcloud's standalone v3 Returns API (synchronous or asynchronous; async is recommended for higher throughput). No outgoing parcel lookup or JWT tokens are required. Reference: Returns API overview.

How does Sendcloud's multi-carrier API compare to connecting carriers individually?

The Sendcloud REST API gives you access to 170+ couriers, including InPost, through one credential set, one schema, one webhook stream, and one error model. Connecting couriers individually means handling separate authentication, payload formats, and tracking systems for each, and redoing the work every time a courier ships breaking changes upstream.

With Sendcloud, you ship InPost alongside DHL, DPD, Royal Mail, and Evri, or any other courier in your account using the same code. Route shipments between couriers based on rules (weight, destination, service level, cost) without writing courier-specific routing logic. Fall back to alternative couriers automatically if InPost's upstream system has issues.

Adding a new courier later means adding it to your Sendcloud account, not building a new integration.

One API for all your shipping needs

No set-up fees

Same-day integration

Ship with Europe’s top couriers