Glossary
API |
Application programming interface - programming gateway. Will be used to integrate customers service (online shop, etc.) with bliskapaczka.pl. |
API key |
Your personal and private key to access and authenticate API communication. |
Operator |
Specific bliskapaczka.pl partner whom parcel pick up and delivery will be delegated to. |
POS or Point |
Point of Service - partners point where customer can send or pick up a parcel sent using bliskapaczka.pl service. |
Production environment |
An environment where real-time ready to use system is hosted. Should not be use for testing purpose, every operation cause real communication with bliskapaczka.pl partners and eventually creation of real orders. |
Sandbox environment |
Isolated independent environment for testing purpose. None of the operations on this environment would be sent to partners production environments and would not create real orders. |
Widget |
JavaScript component containing a map with POSes list, used by customer to choose the place, where the parcel will be delivered to. |
Overview
Bliskapaczka.pl provides an easy and convenient way for integration.
This documentation describes integration protocols of bliskapaczka.pl based on REST API.
Integration process consists of following steps:
-
create the account at bliskapaczka.pl services
-
request access to API integration
-
place bliskapaczka.pl widget on your page to provide to your clients an easy way to pick up delivery points
-
implement communication with bliskapaczka.pl via API to be able to create order, process it and monitor its status
All those steps will be detailed described later in current documentation.
Environments:
Look here for detailed API documentation.
Contact with technical support regarding integration process wsparcie@sendit.pl
How to get access to API bliskapaczka.pl?
-
Register regular account on the service:
-
Sandbox: https://sandbox-bliskapaczka.pl/
-
Production: https://bliskapaczka.pl
-
-
Send an email message to wsparcie@sendit.pl using the email your account is registered with request to provide you access to integration functionality.
Such email could looks like:Hi, Please provide me the access to integration functionality on the account registered on my email. Sincerely yours, [name]
-
After successful proceeding your request you should receive a confirmation email.
-
After re-login, you should be able to find the "Integracja" tab in your account settings:
-
Generate your personal API key using the "Wygeneruj klucz API" button.
Please keep in mind this key is a part of sensitive data and should be kept in a private place also please do not share it with anyone. In case of suspicion that your key may be used by any unauthorized person, please contact us at wsparcie@sendit.pl immediately with the request to remove the old key, so you can generate a new one. -
New key should look like this:
You can copy the key to the clipboard using "SKOPIUJ DO SCHOWKA" button. -
Received key will be used to authenticate your API requests. To sign your requests please add following HTTP header to each API request:
Authorization: Bearer {apiKey}
where in place of {apiKey}
you should use your own key, e.g.:
Authorization: Bearer 00d92e6b-xxxx-4318-841e-6cdc414a49d3
How to use bliskapaczka.pl Widget?
Current documentation refers to widget version: v5.4
Widget demo can be found https://widget.bliskapaczka.pl/prod/demo.html
Latest documentation can be found: https://widget.bliskapaczka.pl
-
In order to install bliskapaczka.pl Widget on your web page include following code snippets in head section of your html document:
<script type="text/javascript" src="https://widget.bliskapaczka.pl/v5.4/main.js"></script> <link rel="stylesheet" href="https://widget.bliskapaczka.pl/v5.4/main.css" />
-
bliskapaczka.pl Widget exposes one object through global variable
BPWidget
. To initialize widget use method:BPWidget.prototype.init(element, options)
First argument is html element that should hold widget content. Element has to have width and height defined and should be displayed on page when map is initialized. E.g.
<div id="bpWidget" style="height: 800px; width: 1024px;"></div>
-
To get Widget to work, you must provide google maps API key in widget options object. The widget takes an options object as the second argument of init() method. You can use example google maps api key for testing purposes:
BPWidget.init( document.getElementById('bpWidget'), { googleMapApiKey: 'AIzaSyCUyydNCGhxGi5GIt5z5I-X6hofzptsRjE' } );
-
In case you would like to display to your customers only points where the shipment can be delivered, you may use
posType
option:BPWidget.init( document.getElementById('bpWidget'), { googleMapApiKey: 'AIzaSyCUyydNCGhxGi5GIt5z5I-X6hofzptsRjE', posType: 'DELIVERY' } );
-
To allow your customers to select point on map, provide callback function in Widget callback option:
BPWidget.init( document.getElementById('bpWidget'), { googleMapApiKey: 'AIzaSyCUyydNCGhxGi5GIt5z5I-X6hofzptsRjE', posType: 'DELIVERY', callback: function(point) { console.log("selected point operator: ", point.operator); console.log("selected point code: ", point.code); } } )
Pricing API, configuration panel and displaying shipping prices in widget
-
If you are able to provide parcel dimensions based on size of products, you can use our pricing API to can calculated offer of bliskapaczka.pl order
curl -X POST https://api.sandbox-bliskapaczka.pl/{api-version}/pricing \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \ -d '{ "parcel": { "dimensions": { "length": 20, "width": 20, "height": 40, "weight": 0.9 }, "codValue":101.50, "insuranceValue":101.50 } }'
In response, you receive the list of operators, with an offer for each one or information that operator is unavailable together with reason:
[{ "operatorName": "INPOST", "availabilityStatus": true, "serviceName": "Typ A", "price": { "net": 6.74, "vat": 1.55, "gross": 8.29 }, "unavailabilityReason": null }, { "operatorName": "RUCH", "availabilityStatus": true, "serviceName": "Mini", "price": { "net": 4.06, "vat": 0.93, "gross": 4.99 }, "unavailabilityReason": null }, { "operatorName": "POCZTA", "availabilityStatus": false, "serviceName": null, "price": null, "unavailabilityReason": { "errors": [{ "messageCode": "ppo.api.error.pricing.algorithm.constraints.dimensionsTooSmall", "message": "Allowed parcel dimensions too small. Min dimensions: 16x10x1 cm", "field": null, "value": null }] } } ]
An operator can be unavailable because of one of the following reasons:
-
provided dimensions exceeds operator limits
-
operator was disabled at bliskapaczka.pl account configuration panel
-
-
You can modify the list of available operators or shipping prices depending on your needs. To change that option, you can use 'Integracja' tab of your bliskapaczka.pl account configuration panel.
-
You can manipulate operators available on bliskapaczka.pl widget or display shipment prices for end user convenience, e.g. using information from bliskapaczka.pl pricing api. To do so use
operators
option.Option
operators
as value can take an array of objects with following properties:-
operator [required] - operator code name
-
price [optional] - price of the shipment, that would be displayed for this operator
Currently supported operators:
RUCH
,INPOST
,POCZTA
,DPD
.Example:
BPWidget.init( document.getElementById('bpWidget'), { googleMapApiKey: 'AIzaSyCUyydNCGhxGi5GIt5z5I-X6hofzptsRjE', posType: 'DELIVERY', callback: function(point) { console.log("selected point:", point); }, operators: [ { operator: "RUCH", price: 5 }, { operator: "INPOST" } ] } );
-
Order API
-
To create an order, first you need to gather information regarding posting/delivery points, sender and receiver data. You can take it from widget callback or from any other source. Having all required informations, you can use API to create order:
curl -X POST https://api.sandbox-bliskapaczka.pl/{api-version}/order \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \ -d '{ "number":"000000000P-000000000", "senderFirstName":"Sender", "senderLastName":"Sender", "senderPhoneNumber":"123456789", "senderEmail":"sender@example.com", "senderStreet":"Rynek", "senderBuildingNumber":"1", "senderFlatNumber":"1", "senderPostCode":"00-000", "senderCity":"Wroclaw", "receiverFirstName":"Receiver", "receiverLastName":"Receiver", "receiverPhoneNumber":"987654321", "receiverEmail":"receiver@example.com", "operatorName":"INPOST", "destinationCode":"KRA010", "postingCode":"KRA011", "additionalInformation": "Some additional information", "parcels":[{ "dimensions":{ "height":20, "length":20, "width":20, "weight":20 }, "insuranceValue":100 }], "codValue":110, "codPayoutBankAccountNumber":"16102019120000910201486273" }'
Example response:
{ "number": "000000001P-000000006", "senderFirstName": "Sender", "senderLastName": "Sender", "senderPhoneNumber": "123456789", "senderEmail": "sender@example.com", "senderStreet": "Rynek", "senderBuildingNumber": "1", "senderFlatNumber": "1", "senderPostCode": "00-000", "senderCity": "Wroclaw", "receiverFirstName": "Receiver", "receiverLastName": "Receiver", "receiverPhoneNumber": "987654321", "receiverEmail": "receiver@example.com", "receiverStreet": "Ulica", "receiverBuildingNumber": "1A", "receiverFlatNumber": "2B", "receiverPostCode": "99-999", "receiverCity": "Kraków", "receiverCountryCode": "PL", "operatorName": "INPOST", "destinationCode": "KRA010", "postingCode": "KRA011", "additionalInformation": null, "parcels": [{ "dimensions": { "length": 20, "height": 20, "width": 20, "weight": 20 }, "insuranceValue": null }], "codValue":110, "codPayoutBankAccountNumber":"16102019120000910201486273", "status": "SAVED", "deliveryType": "TO_POINT", "creationDate": "2017-06-28T15:00:31.254", "adviceDate": null, "trackingNumber": null, "postingPostCode": "31-274", "postingCity": "Kraków", "postingStreet": "Opolska 9", "destinationPostCode": "30-624", "destinationCity": "Kraków", "destinationStreet": "Malborska 130", "orderItems": [], "price": null }
An order created this way will be in state
SAVED
, which means that it is still available for modifications. It can be done via user interface on bliskapaczka.pl or by sending same request with modified values, and fieldnumber
set to value received in response. -
To advise an order, first you need to gather information regarding posting/delivery points, sender, receiver. You can take them from widget callback or from any other source. Having all required informations, you can use API to advise order:
curl -X POST https://api.sandbox-bliskapaczka.pl/{api-version}/order/advice \ -H "Content-Type: application/json" \ -H "Accept: application/json" \ -H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \ -d '{ "number":"000000000P-000000000", "senderFirstName":"Sender", "senderLastName":"Sender", "senderPhoneNumber":"123456789", "senderEmail":"sender@example.com", "senderStreet":"Rynek", "senderBuildingNumber":"1", "senderFlatNumber":"1", "senderPostCode":"00-000", "senderCity":"Wroclaw", "receiverFirstName":"Receiver", "receiverLastName":"Receiver", "receiverPhoneNumber":"987654321", "receiverEmail":"receiver@example.com", "operatorName":"INPOST", "destinationCode":"KRA010", "postingCode":"KRA011", "additionalInformation": "Some additional information", "parcels":[{ "dimensions":{ "height":20, "length":20, "width":20, "weight":20 } }], "codValue":110, "codPayoutBankAccountNumber":"16102019120000910201486273" }'
Example response:
{ "number": "000000001P-000000007", "senderFirstName": "Sender", "senderLastName": "Sender", "senderPhoneNumber": "123456789", "senderEmail": "sender@example.com", "senderStreet": "Rynek", "senderBuildingNumber": "1", "senderFlatNumber": "1", "senderPostCode": "00-000", "senderCity": "Wroclaw", "receiverFirstName": "Receiver", "receiverLastName": "Receiver", "receiverPhoneNumber": "987654321", "receiverEmail": "receiver@example.com", "receiverStreet": "Ulica", "receiverBuildingNumber": "1A", "receiverFlatNumber": "2B", "receiverPostCode": "99-999", "receiverCity": "Kraków", "receiverCountryCode": "PL", "operatorName": "INPOST", "destinationCode": "KRA010", "postingCode": "KRA011", "additionalInformation": null, "parcels": [{ "dimensions": { "length": 20, "height": 20, "width": 20, "weight": 20 }, "insuranceValue": null }], "codValue":110, "codPayoutBankAccountNumber":"16102019120000910201486273", "status": "PROCESSING", "deliveryType": "TO_POINT", "creationDate": "2017-06-28T15:13:35.592", "adviceDate": null, "trackingNumber": null, "postingPostCode": "31-274", "postingCity": "Kraków", "postingStreet": "Opolska 9", "destinationPostCode": "30-624", "destinationCity": "Kraków", "destinationStreet": "Malborska 130", "orderItems": [{ "pricelistItemType": "SHIPMENT", "serviceName": "Typ C", "price": { "net": 8.35, "vat": 1.92, "gross": 10.27 } }], "price": null }
An order is in state
PROCESSING
, which means that it is not available for modifications and advising process has been started. -
You can retrieve order information from API using order number provided in save/advice operation response:
curl -X GET https://api.sandbox-bliskapaczka.pl/{api-version}/order/000000001P-000000007 \ -H "Accept: application/json" \ -H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{ "number": "000000001P-000000007", "senderFirstName": "Sender", "senderLastName": "Sender", "senderPhoneNumber": "123456789", "senderEmail": "sender@example.com", "senderStreet": "Rynek", "senderBuildingNumber": "1", "senderFlatNumber": "1", "senderPostCode": "00-000", "senderCity": "Wroclaw", "receiverFirstName": "Receiver", "receiverLastName": "Receiver", "receiverPhoneNumber": "987654321", "receiverEmail": "receiver@example.com", "receiverStreet": "Ulica", "receiverBuildingNumber": "1A", "receiverFlatNumber": "2B", "receiverPostCode": "99-999", "receiverCity": "Kraków", "receiverCountryCode": "PL", "operatorName": "INPOST", "destinationCode": "KRA010", "postingCode": "KRA010", "additionalInformation": null, "parcels": [{ "dimensions": { "length": 20, "height": 20, "width": 20, "weight": 20 }, "insuranceValue": null }], "codValue":110, "codPayoutBankAccountNumber":"16102019120000910201486273", "status": "READY_TO_SEND", "deliveryType": "TO_POINT", "creationDate": "2017-06-28T15:30:04.078", "adviceDate": "2017-06-28T15:30:10.39", "trackingNumber": "2065149336", "postingPostCode": "30-624", "postingCity": "Kraków", "postingStreet": "Malborska 130", "destinationPostCode": "30-624", "destinationCity": "Kraków", "destinationStreet": "Malborska 130", "orderItems": [{ "pricelistItemType": "SHIPMENT", "serviceName": "Typ C", "price": { "net": 8.35, "vat": 1.92, "gross": 10.27 } }], "price": { "net": 8.35, "vat": 1.92, "gross": 10.27 } }
-
You can retrieve order waybill document from api using order number provided in save/advice operation response:
curl -X GET https://api.sandbox-bliskapaczka.pl/{api-version}/order/000000001P-000000007/waybill \ -H "Accept: application/json" \ -H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{ "url": "https://storage.googleapis.com/test.cloud.senditstatic.pl/ppo/inpost/waybill/2017/06/26/000000001P-000000008.pdf?GoogleAccessId=storage@archiwum-140107.iam.gserviceaccount.com&Expires=1499299200&Signature=N50f96tIEP4RHsAvpFBRhjNp%2Fw8z5gS%2B0yzQnc8%2BTFOw9u9HLgulq6GZXpPPxQfzp1GxbeHIehNigYQYIOIi3juxbxTydhlLUGC0dwdpuoNrvJUrSH%2BKhNufo7LrGU3GNCG6cMUIv1XhnA%2BY3SKul1Ee4nfzGjHOD%2FMZJYJOkcZYJDO6krH%2FDB%2FL36ylE2cVJR53%2F4H%2FhajljMH8r80He8OFY8e8q7UZoZx9oQiyaDftaoJfqB5PItJewuNqd8Zyx8lOwFyactGkU9kVisnf%2FN%2Fz2fp6BnNVzhdXQCYCwKVURaVWyY5UJg4fG86qfyNczC60uOWo4e%2F08%2FQqLMQkFQ%3D%3D" }
Response JSON contains signed URL to google storage, where waybill is available for download. URL has the lifetime of 7 days, after this time it is required to generate a new one. Waybill is stored in google storage in PDF format.
-
You can retrieve order tracking from api using order number provided in save/advice operation response:
curl -X GET https://api.sandbox-bliskapaczka.pl/{api-version}/order/000000001P-000000007/tracking \ -H "Accept: application/json" \ -H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{ "changes": [{ "dateTime": "2017-06-28T15:30:04.033", "status": "SAVED" }, { "dateTime": "2017-06-28T15:30:04.11", "status": "PAYMENT_CONFIRMED" }, { "dateTime": "2017-06-28T15:30:04.121", "status": "PROCESSING" }, { "dateTime": "2017-06-28T15:30:04.161", "status": "ADVISING" }, { "dateTime": "2017-06-28T15:30:10.39", "status": "READY_TO_SEND" } ] }
Order statuses
NEW |
Unsaved order. |
SAVED |
Order is saved, but it is not validated. It still can be incomplete, any field can be modified and whole order saved again as many times as needed. No information has been sent to operator yet. |
WAITING_FOR_PAYMENT |
Waiting for confirmation from external payment service that user successfully paid for order. |
PAYMENT_CONFIRMED |
Payment was confirmed by external payment service. |
PAYMENT_REJECTED |
Payment was rejected by external payment service. |
PAYMENT_CANCELLATION_ERROR |
An error occurred when trying to cancel payment in external payment service. |
PROCESSING |
Order is preparing to send to an operator system. |
ADVISING |
Order is registering in an operator system. |
ERROR |
An error occurred when registering an order in an operator system. |
READY_TO_SEND |
Order was registered in an operator system and waybill was generated. Order can be delivered to a posting point. |
POSTED |
Order was delivered to a posting point. |
ON_THE_WAY |
Order was taken from a posting point and it is traveling to a destination point. |
READY_TO_PICKUP |
Order is waiting for pick up in a destination point. |
OUT_FOR_DELIVERY |
Order was handed to deliver it to a receiver. |
DELIVERED |
Order was delivered to a receiver. |
REMINDER_SENT |
Order is waiting at a destination point to be collected. A reminder has been sent to a receiver. |
PICKUP_EXPIRED |
Receiver did not collect order in given time. |
AVIZO |
Avizo left |
CLAIMED |
Order was claimed. |
RETURNED |
Order was not taken by a receiver and it was returned to a sender. |
ARCHIVED |
Order was not collected by a receiver and it was moved to archive. |
OTHER |
Order is in unknown status. |
MARKED_FOR_CANCELLATION |
Order was marked to be canceled. Waiting 24h to confirm cancellation. |
CANCELED |
Order was canceled. |
WAITING_FOR_PAYOUT |
Order has been delivered. Waiting for payout to be sent (only for orders with COD). |
PAYOUT_SENT |
Payout was sent (only for orders with COD). |
Order operations
Save |
Advice |
Cancel |
End state |
|
SAVED |
+ |
+ |
+ |
- |
WAITING_FOR_PAYMENT |
- |
- |
+ |
- |
PAYMENT_CONFIRMED |
- |
- |
+ |
- |
PAYMENT_REJECTED |
- |
- |
+ |
- |
PAYMENT_CANCELLATION_ERROR |
- |
- |
- |
- |
PROCESSING |
- |
- |
+ |
- |
ADVISING |
- |
- |
- |
- |
ERROR |
- |
- |
+ |
- |
READY_TO_SEND |
- |
- |
+ |
- |
POSTED |
- |
- |
- |
- |
ON_THE_WAY |
- |
- |
- |
- |
READY_TO_PICKUP |
- |
- |
- |
- |
OUT_FOR_DELIVERY |
- |
- |
- |
- |
DELIVERED |
- |
- |
- |
+ |
REMINDER_SENT |
- |
- |
- |
- |
PICKUP_EXPIRED |
- |
- |
- |
- |
AVIZO |
- |
- |
- |
- |
CLAIMED |
- |
- |
- |
+ |
RETURNED |
- |
- |
- |
- |
ARCHIVED |
- |
- |
- |
+ |
OTHER |
- |
- |
- |
- |
MARKED_FOR_CANCELLATION |
- |
- |
- |
- |
CANCELED |
- |
- |
- |
- |
API Description
This section contains detailed API description for all available endpoints.
v2
Common model:
RUCH |
Ruch |
POCZTA |
Poczta Polska |
INPOST |
Inpost |
DPD |
DPD |
UPS |
UPS |
FEDEX |
FedEx |
GLS |
GLS |
XPRESS |
X-press Couriers |
UPS |
UPS |
UPSAP |
UPS Access Point |
DPD |
DPD |
FEDEX |
Fedex |
INPOST |
Inpost |
INPOST_COURIER |
Inpost Kurier |
EKSPRES_24 |
Poczta Polska Ekspres 24 |
KURIER_48 |
Poczta Polska Kurier 48 |
RUCH |
Ruch |
GLS |
GLS |
XPRESS |
Xpress Couriers |
DHL |
DHL |
SHIPMENT |
Shipment |
INSURANCE |
Insurance |
COD |
Cash on delivery |
P2P |
Shipment from drop off to destination point. |
D2P |
Shipment from sender address to destination point. |
P2D |
Shipment from drop off point to receiver address. |
D2D |
Shipment from sender to receiver address. |
LOCAL |
Local |
COUNTRY |
Country |
INTERNATIONAL |
International |
VOIVODESHIP |
Voivodeship |
ECOMMERCE |
E-commerce |
PICKUP_FROM_SENDER |
GLS: Pickup from sender address instead of agreement address |
INSURANCE |
Insurance |
COD |
Cash on delivery |
NON_STANDARD |
Non standard |
REAL |
Weight measured |
VOLUMETRIC |
Weight calculated by the formula provided by a operator |
INVALID_DESTINATION_POINT |
Chosen destination point is invalid |
INVALID_POSTING_POINT |
Chosen posting point is invalid |
OPERATOR_VALIDATION_ERROR |
Order was rejected by operator validation |
GENERIC_ADVICE_ERROR |
Something went wrong on the operator side and we were not able to distinguish what |
AUTHORIZATION_ERROR |
Wrong own agreement credentials were used for the order |
LABEL_GENERATION_ERROR |
Generating waybill failed |
WAYBILL_PROCESS_ERROR |
Processing of the waybill failed |
BACKEND_ERROR |
Something went terribly wrong on our side |
Config
Configuration options declared in user panel.
Model:
Name | Type |
---|---|
configModel |
OperatorConfig[] |
Name | Type |
---|---|
operator |
Operator |
cod |
number |
prices |
Map<DeliveryType>,PriceLevel> |
Name | Type |
---|---|
maxWeight |
number |
price |
number |
Name | Type |
---|---|
operator |
Operator |
code |
string |
Get
GET /v2/config
Returns configuration options.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/config \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"configModel": [
{
"operator": "RUCH",
"cod": null,
"prices": {
"TO_DOOR": null,
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
},
{
"operator": "POCZTA",
"cod": null,
"prices": {
"TO_DOOR": null,
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
},
{
"operator": "DPD",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
},
{
"operator": "GLS",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": null
}
},
{
"operator": "FEDEX",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": null
}
},
{
"operator": "INPOST",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
}
]
}
Get return config
GET /v2/config/returns
Returns configuration options for return orders.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/config/returns \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"returnPoints": [
{
"operator": "RUCH",
"code": "WR-547950-72-59"
},
{
"operator": "POCZTA",
"code": "275425"
},
{
"operator": "DPD",
"code": "PL11776"
},
{
"operator": "INPOST",
"code": "POP-WRO46"
}
]
}
Health
Bliskapaczka.pl api health check.
GET /health
Returns service status
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/health
Example response:
{
"status": "OK"
}
Order
Bliskapaczka.pl order api.
Model:
Name | Type | Description |
---|---|---|
number |
string |
Optional order number. If left empty, will be generated. Otherwise existing order will be used. |
senderFirstName |
string |
max length 30 Required when senderCompanyName is blank |
senderLastName |
string |
max length 30 Required when senderCompanyName is blank |
senderCompanyName |
string |
max length 50 Required when senderFirstName or senderLastName is blank |
senderPhoneNumber |
string |
max length 30 |
senderEmail |
string |
max length 60, valid value: email address |
senderStreet |
string |
max length 30 |
senderBuildingNumber |
string |
max length 10 |
senderFlatNumber |
string |
max length 10 |
senderPostCode |
string |
max length 10 |
senderCity |
string |
max length 30 |
countryCode |
string |
Optional ISO 3166-1 alfa-2 country code max lenght 2 |
receiverFirstName |
string |
max length 30 Required when receiverCompanyName is blank |
receiverLastName |
string |
max length 30 Required when receiverCompanyName is blank |
receiverCompanyName |
string |
max length 50 Required when receiverFirstName or receiverLastName is blank |
receiverPhoneNumber |
string |
max length 30 |
receiverEmail |
string |
max length 60, valid value: email address |
receiverStreet |
string |
required only for *_TO_DOOR parcels |
receiverBuildingNumber |
string |
required only for *_TO_DOOR parcels |
receiverFlatNumber |
string |
required only for *_TO_DOOR parcels |
receiverPostCode |
string |
required only for *_TO_DOOR parcels |
receiverCity |
string |
required only for *_TO_DOOR parcels |
receiverCountryCode |
string |
used only for *_TO_DOOR parcels |
operatorName |
Operator |
|
destinationCode |
string |
required only for *_TO_POINT parcels |
postingCode |
string |
required only for POINT_TO_* parcels |
additionalInformation |
string |
max length 100 |
reference |
string |
unique in scope of user |
additionalReference |
string |
unique in scope of broker orders |
codValue |
decimal(10,2) |
nullable |
parcels |
Parcel |
|
codPayoutBankAccountNumber |
string |
nullable |
chooseDestinationPoint |
boolean |
used only for *_TO_POINT parcels |
autoPickup |
boolean |
Optional. Automatically orders a pickup for D2D and D2P orders. |
serviceType |
ServiceType |
optional service type |
serviceId |
string |
optional service identifier |
errorReason |
string |
Order model representation has changed. The new approach is to use a list of parcels instead of a single Parcel entity. The api will support the old concept only for so long. Please migrate as this backward compatibility will be removed in the future.
Name | Type | Description |
---|---|---|
dimensions.height |
decimal(10,2) |
min value 0.01 |
dimensions.length |
decimal(10,2) |
min value 0.01 |
dimensions.width |
decimal(10,2) |
min value 0.01 |
dimensions.weight |
decimal(10,2) |
min value 0.01 |
insuranceValue |
decimal(10,2) |
nullable |
nonStandard |
boolean |
nullable |
Name | Type |
---|---|
number |
string |
changes |
OrderStatusChange[] |
Name | Type |
---|---|
dateTime |
DateTime |
status |
OrderStatus |
Name | Type | Description |
---|---|---|
orderNumbers |
String[] |
Required |
pickupWindow |
Optional |
|
pickupAddress |
Required |
|
firstAvailable |
boolean |
Optional |
Name | Type | Format |
---|---|---|
date |
LocalDate |
yyyy-MM-dd |
timeRange |
TimeRange |
Name | Type | Format |
---|---|---|
from |
String |
hh-MM |
to |
String |
hh-MM |
Name | Type |
---|---|
street |
String |
buildingNumber |
String |
flatNumber |
String |
city |
String |
postCode |
String |
Name | Type |
---|---|
operatorService |
|
serviceType |
|
price |
|
parcels |
|
pallets |
|
globalUnavailableReasons |
|
unavailableReasons |
|
additionalServices |
|
available |
boolean |
ownAgreement |
boolean |
Name | Type |
---|---|
net |
decimal(10,2) |
vat |
decimal(10,2) |
gross |
decimal(10,2) |
Name | Type |
---|---|
ref |
String |
serviceName |
string |
weightType |
|
price |
|
additionalServices |
Name | Type |
---|---|
serviceName |
|
price |
|
changed |
boolean |
Name | Type |
---|---|
messageCode |
string |
message |
string |
field |
string |
value |
string |
Name | Type |
---|---|
reference |
string |
reasons |
Save
POST /v2/order
Save order. Updates existing when body parameter "number" is provided or creates new one.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"countryCode":"PL",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverCompanyName":"Receiver Company",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode":"PL",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"autoPickup": "true",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue":150
}],
"codValue":110.50,
"additionalServices": [{
"name": "PICKUP_FROM_SENDER"
}],
"codPayoutBankAccountNumber":"16102019120000910201486273",
"deliveryType":"P2P"
}'
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": "KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": 150
}],
"codValue":110.50,
"additionalServices": [{
"name": "PICKUP_FROM_SENDER"
}],
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "SAVED",
"deliveryType": "P2P",
"creationDate": "2017-11-28T13:04:32.071",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [],
"price": null
}
Advice
POST /v2/order/advice
Advice order. Updates existing when body parameter "number" is provided or creates new one.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/advice \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderCompanyName":"Sender Company",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"countryCode":"PL",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverCompanyName":"Receiver Company",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode":"PL",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"autoPickup": "true",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue": 1200.00,
"nonStandard": false
}],
"codValue":110,
"additionalServices": [{
"name": "PICKUP_FROM_SENDER"
}],
"codPayoutBankAccountNumber":"16102019120000910201486273",
"deliveryType":"P2P",
"serviceId": "SAME_DAY_18_22"
}'
Example response:
{
"number": "000000001P-000000073",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": "KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": null,
"nonStandard": false,
"parcelItems": [
{
"itemType": "SHIPMENT",
"serviceName": "5-10kg",
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}
]
}],
"codValue":110,
"additionalServices": [{
"name": "PICKUP_FROM_SENDER"
}],
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "PROCESSING",
"deliveryType": "P2P",
"creationDate": "2017-11-28T14:45:29.195",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}],
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}
Confirm
POST /v2/orders/confirm?operatorName=$operator
Confirms orders for given "operator". Currently supported only for POCZTA.
Sends the parcels buffer to Poczta Institution with PNI saved in own agreement configuration panel in bliskapaczka.pl
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/orders/confirm?operatorName=POCZTA \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: no body
Confirm multiple
POST /v2/orders/confirm/multiple
Confirms list of orders for any "operator".
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/orders/confirm/multiple \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
--header 'bp-source: some-source' \
--header 'content-type: application/json' \
--header 'bp-check-price: Validate orders price, boolean value. If true, Price object is required in request body. ' \
--data '[{
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"countryCode": "PL",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode": "PL",
"operatorName": "POCZTA",
"destinationCode": "242132",
"postingCode": "432082",
"additionalInformation": "Some additional information",
"autoPickup": "true",
"parcels": [
{
"dimensions": {
"height": 5,
"length": 20,
"width": 15,
"weight": 20
},
"insuranceValue": 500
}
],
"codValue": 300,
"codPayoutBankAccountNumber": "16102019120000910201486273",
"deliveryType": "P2P",
"price": {
"net": 12.92,
"vat": 2.97,
"gross": 15.89
}
}]'
Example response:
[
{
"number": "000000000P-000000001",
"source": "API",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderCompanyName": null,
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverCompanyName": null,
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode": "PL",
"operatorName": "POCZTA",
"additionalInformation": "Some additional information",
"parcels": [
{
"dimensions": {
"length": 20,
"height": 5,
"width": 15,
"weight": 20
},
"insuranceValue": 500
}
],
"codValue": 300,
"insuranceValue": null,
"additionalServices": [
],
"codPayoutBankAccountNumber": "16102019120000910201486273",
"destinationCode": "242132",
"postingCode": "432082",
"chooseDestinationPoint": false,
"deliveryType": "P2P",
"reference": null,
"additionalReference": null,
"allegroTransactionId": null,
"allegroOffers": [
],
"status": "PROCESSING",
"creationDate": "2020-06-19T17:34:34.917",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "87-327",
"postingCity": "Bobrowo",
"postingStreet": "Bobrowo 20a",
"destinationPostCode": "37-620",
"destinationCity": "Horyniec-Zdrój",
"destinationStreet": "Aleja Przyjaźni 5",
"discount": null,
"orderItems": [
{
"itemType": "COD",
"serviceName": null,
"price": {
"net": 3.99,
"vat": 0.92,
"gross": 4.91
},
"value": null
},
{
"itemType": "INSURANCE",
"serviceName": null,
"price": {
"net": 0.00,
"vat": 0.00,
"gross": 0.00
},
"value": null
},
{
"itemType": "SHIPMENT",
"serviceName": "5-20kg",
"price": {
"net": 8.93,
"vat": 2.05,
"gross": 10.98
},
"value": null
}
],
"price": {
"net": 12.92,
"vat": 2.97,
"gross": 15.89
},
"subsidizedPrice": null,
"errorReason": null,
"waybillNumber": null,
"trackings": [
],
"promoCode": null,
"promoAmount": null,
"notes": [
],
"changes": [
{
"dateTime": "2020-06-19T17:34:34.892",
"status": "SAVED",
"reason": null,
"operatorStatusChanges": [
]
},
{
"dateTime": "2020-06-19T17:34:35.371",
"status": "PAYMENT_CONFIRMED",
"reason": null,
"operatorStatusChanges": [
]
},
{
"dateTime": "2020-06-19T17:34:35.371",
"status": "PROCESSING",
"reason": null,
"operatorStatusChanges": [
]
}
],
"paymentType": "POST",
"paymentUrl": null,
"paymentSessionId": null,
"internalPayuSessionId": null,
"payoutPayuSessionId": null,
"userId": 1828,
"hasInvoice": false,
"invoiceNumber": null,
"invoiceId": null,
"token": null,
"pickups": [
],
"brokerId": null,
"adviceSource": "some-source",
"creationSource": "some-source"
}
]
Pickup
Bliskapaczka.pl pickup api.
Get available pickup windows
GET /v2/order/pickup
Query parameters:
Name | Type | Description |
---|---|---|
orderNumbers |
String[] |
Required |
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order/pickup?orderNumbers=000000001P-000000001,000000001P-000000002 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
[
{
"orderNumber": "000000001P-000000001",
"availablePickups": [
{
"date": "2020-07-15",
"timeFrom": "10:00",
"timeTo": "14:00"
},
{
"date": "2020-07-15",
"timeFrom": "12:00",
"timeTo": "16:00"
}
]
},
{
"orderNumber": "000000001P-000000002",
"availablePickups": null,
"description": "pl.bliskapaczka.operator.order.availablePickups: This operator doesn't support fetching available pickup windows"
}
]
Create pickup
POST /v2/order/pickup
Orders pickup for given data and returns pickup id
-
READY_TO_SEND
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/pickup \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"orderNumbers": [
"000000001P-000000007"
],
"pickupWindow": {
"date": "2018-02-01",
"timeRange": {
"from": "14:00",
"to": "16:00"
}
},
"pickupAddress": {
"street": "Wagonowa",
"buildingNumber": "2b",
"flatNumber": "",
"city": "Wrocław",
"postCode": "53-609"
},
"firstAvailable": false
}'
Example response:
{
"id": 2,
"number": "2929602E9CP",
"pickupWindow": {
"date": "2018-02-01",
"timeFrom": "14:00",
"timeTo": "16:00"
},
"address": {
"street": "Bulwar Ikara",
"buildingNumber": "1",
"flatNumber": "1",
"city": "Lwówek Śląski",
"postCode": "59-600"
}
}
Get order
GET /v2/order/$number
Returns order by given order number.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000002 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000002",
"senderFirstName": "IamTest",
"senderLastName": "IamTest",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "testuser@example.com",
"senderStreet": "Testowa",
"senderBuildingNumber": "1",
"senderFlatNumber": "2",
"senderPostCode": "12-345",
"senderCity": "Testowe",
"receiverFirstName": "IamTest",
"receiverLastName": "IamTest",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "696452246",
"receiverEmail": "testuser@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "RUCH",
"destinationCode": "BD-388553-45-18",
"postingCode": "BD-619544-42-08",
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 10
},
"insuranceValue": null
}],
"codValue": null,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "READY_TO_SEND",
"deliveryType": "P2P",
"creationDate": "2017-01-19T09:34:28.37",
"adviceDate": "2017-01-19T09:35:08.179",
"trackingNumber": "3400013623451",
"postingPostCode": null,
"postingCity": null,
"postingStreet": null,
"destinationPostCode": null,
"destinationCity": "Inowrocław",
"destinationStreet": null,
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 10.00,
"vat": 2.30,
"gross": 12.30
}
}],
"price": {
"net": 10.00,
"vat": 2.30,
"gross": 12.30
}
}
Get order list
GET /v2/order
Returns paged and filtered order list.
Query parameters:
Name | Type | Description |
---|---|---|
page |
Number |
Required |
size |
Number |
Required |
numbers |
String[] |
Optional |
status |
Optional |
|
operatorName |
Optional |
|
trackingNumber |
String |
Optional |
receiverFirstName |
String |
Optional |
receiverLastName |
String |
Optional |
receiverCompanyName |
String |
Optional |
creationDateFrom |
DateTime |
Optional |
creationDateTo |
DateTime |
Optional |
isAllegro |
boolean |
Optional |
allegroOfferId |
String |
Optional |
allegroTransactionId |
String |
Optional |
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order?size=10&page=0&numbers=000000000P-000000000,000000000P-000000001 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
curl --request GET \
--url 'https://api.sandbox-bliskapaczka.pl/v2/order?numbers=000000000P-000000000&size=10&page=0' \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"content": [
{
"status": "SAVED",
"number": "000000001P-Z00000001",
"creationDate": "2018-03-08T13:41:48.059",
"adviceDate": null,
"trackingNumber": null,
"senderFirstName": "Jacek",
"senderLastName": "Leszczynski",
"senderCompanyName": null,
"receiverFirstName": null,
"receiverLastName": null,
"receiverCompanyName": "Eastend",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": null,
"paymentType": "POST",
"userId": 1
},
{
"status": "SAVED",
"number": "000000000P-000000000",
"creationDate": "2016-07-21T16:10:53.72",
"adviceDate": null,
"trackingNumber": null,
"senderFirstName": "Test",
"senderLastName": "Test",
"senderCompanyName": "Test",
"receiverFirstName": null,
"receiverLastName": null,
"receiverCompanyName": null,
"operatorName": null,
"destinationCode": null,
"postingCode": null,
"paymentType": "POST",
"userId": 1
}
],
"totalElements": 2
}
Get waybill
GET /v2/order/$number/waybill
Returns url to waybill file of order with given order number.
-
NEW
-
SAVED
-
WAITING_FOR_PAYMENT
-
PAYMENT_CONFIRMED
-
PAYMENT_REJECTED
-
PAYMENT_CANCELLATION_ERROR
-
PROCESSING
-
ADVISING
-
ERROR
-
CANCELED
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000002/waybill \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
[
{
"url" : "https://storage.googleapis.com/test.cloud.senditstatic.pl/ppo/ruch/waybill/2017/01/03/000000001P-000000002.pdf?GoogleAccessId=storage@archiwum-140107.iam.gserviceaccount.com&Expires=1512471128&Signature=k1aQ3MKqI37Kg8mnbMwxJ8danOGEKgwXFmUb2Lg6szxStoGl5OLmlDugCTVMA8YUNVR%2FTz"
},
{
"url" : "https://storage.googleapis.com/test.cloud.senditstatic.pl/ppo/ruch/waybill/2017/01/03/000000001P-000000002.pdf?GoogleAccessId=storage@archiwum-140107.iam.gserviceaccount.com&Expires=1512471128&Signature=k1aQ3MKqI37Kg8mnbMwxJ8danOGEKgwXFmUb2Lg6szxStoGl5OLmlDugCTVMA8YUNVR%2FTz"
}
]
Get waybill by reference number
GET /v2/order/waybills/reference/$reference?format=$[PDF|ZPL]
Returns url to waybill file of order with given order reference.
-
NEW
-
SAVED
-
WAITING_FOR_PAYMENT
-
PAYMENT_CONFIRMED
-
PAYMENT_REJECTED
-
PAYMENT_CANCELLATION_ERROR
-
PROCESSING
-
ADVISING
-
ERROR
-
CANCELED
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order/waybills/reference/ref-123?format=PDF \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
["Base64 encoded waybill"]
Get tracking
GET /v2/order/$number/tracking
Returns order status changes by given order number.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000002/tracking \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000002",
"changes": [{
"dateTime": "2017-11-21T12:10:55.971",
"status": "SAVED"
}, {
"dateTime": "2017-11-21T12:10:56.208",
"status": "PAYMENT_CONFIRMED"
}, {
"dateTime": "2017-11-21T12:10:56.208",
"status": "PROCESSING"
}, {
"dateTime": "2017-11-21T12:10:56.37",
"status": "ADVISING"
}, {
"dateTime": "2017-11-21T12:11:40.233",
"status": "READY_TO_SEND"
}]
}
Cancel
POST /v2/order/$number/cancel
Cancel order. Triggers cancellation process. When orders is already advised its status is changed to MARKED_FOR_CANCELLATION for 24 hours, then operator status is checked whether the order was sent and if not its status is changed to CANCELLED
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000072/cancel \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": "KRA011",
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "MARKED_FOR_CANCELLATION",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T14:45:29.195",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}],
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}
Retry
POST /v2/order/$number/retry
Retry order advice. Used to trigger order processing when given order is in ERROR status and that error reason allows for this action.
-
GENERIC_ADVICE_ERROR
-
AUTHORIZATION_ERROR
-
LABEL_GENERATION_ERROR
-
WAYBILL_PROCESS_ERROR
-
BACKEND_ERROR
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000072/retry \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: no body
Get access link
GET /v2/order/$number/accessLink
It is possible to let end user choose parcel destination. This endpoint Returns order with access link that can be sent to end user to pick destination point. Bliskapaczka.pl post about the feature
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000002/accessLink \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000002",
"senderFirstName": "IamTest",
"senderLastName": "IamTest",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "testuser@example.com",
"senderStreet": "Testowa",
"senderBuildingNumber": "1",
"senderFlatNumber": "2",
"senderPostCode": "12-345",
"senderCity": "Testowe",
"receiverFirstName": "IamTest",
"receiverLastName": "IamTest",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "912345678",
"receiverEmail": "testuser@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": null,
"destinationCode": null,
"postingCode": null,
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 10,
"height": 10,
"width": 10,
"weight": 10
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": true,
"status": "SAVED",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T12:52:02.441",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": null,
"postingCity": null,
"postingStreet": null,
"destinationPostCode": null,
"destinationCity": null,
"destinationStreet": null,
"orderItems": [],
"price": null,
"tokenLink": "https://sandbox-bliskapaczka.pl/wybierz-punkt/115b902709f34c1eb417fc22125dce84"
}
Notify
POST /v2/order/$number/notify
Sends email notification to end user to choose destination point.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/000000001P-000000072/notify \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "IamTest",
"senderLastName": "IamTest",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "testuser@example.com",
"senderStreet": "Testowa",
"senderBuildingNumber": "1",
"senderFlatNumber": "2",
"senderPostCode": "12-345",
"senderCity": "Testowe",
"receiverFirstName": "Marcin",
"receiverLastName": "dfgfd",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "912345678",
"receiverEmail": "marcin.architek@sendit.pl",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": null,
"destinationCode": null,
"postingCode": null,
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 10,
"height": 10,
"width": 10,
"weight": 10
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": true,
"status": "SAVED",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T15:14:13.761",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": null,
"postingCity": null,
"postingStreet": null,
"destinationPostCode": null,
"destinationCity": null,
"destinationStreet": null,
"orderItems": [],
"price": null,
"tokenLink": "https://sandbox-bliskapaczka.pl/wybierz-punkt/96b3e12da0704357a335e05beda47c8d"
}
Available services
POST /v2/order/services
Returns services available for posted order details.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/services \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderCompanyName":"Sender Company",
"senderPhoneNumber":"666777888",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"53-019",
"senderCity":"Wrocław",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverCompanyName":"Receiver Company",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Wagonowa",
"receiverBuildingNumber":"2b",
"receiverFlatNumber":null,
"receiverPostCode":"53-019",
"receiverCity":"Wrocław",
"operatorName":"XPRESS",
"parcels":[
{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue":150
}
],
"codValue":11.1,
"codPayoutBankAccountNumber":"61109010140000071219812874",
"deliveryType": "D2D",
"serviceType": "COUNTRY"
}'
Example response:
[
"SAME_DAY_18_22"
]
Pricing
Bliskapaczka.pl order pricing api.
Calculate order price
POST /v2/order/pricing
Prices an order
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/pricing \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"countryCode":"PL",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverCompanyName":"Receiver Company",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode":"PL",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue": 150
}],
"deliveryType":"P2P"
}'
Example response:
[
{
"operatorService": "KURIER_48",
"serviceType": "P2P",
"price": {
"net": 10.00,
"vat": 2.30,
"gross": 12.30
},
"parcels": [
{
"ref": "reference_number",
"serviceName": "0-5",
"weightType": "REAL",
"price": {
"net": 7.00,
"vat": 1.61,
"gross": 8.61
},
"additionalServices": [
{
"serviceName": "INSURANCE",
"price": {
"net": 2.00,
"vat": 0.46,
"gross": 2.46
},
"changed": false
}
]
}
],
"pallets": [],
"globalUnavailableResons": [],
"unavailableReasons": [],
"additionalServices": [
{
"serviceName": "COD",
"price": {
"net": 1.00,
"vat": 0.23,
"gross": 1.23
},
"changed": false
}
],
"available": true,
"ownAgreement": false
}
]
Validate
Bliskapaczka.pl order validation.
Validate order
POST /v2/order/validate
Validate an order data
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/validate \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderCompanyName":"Sender Company",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"countryCode":"PL",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverCompanyName":"Receiver Company",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode":"PL",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue": 1200.00
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"deliveryType":"P2P",
"serviceId": "SAME_DAY_18_22"
}'
Example response:
{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderCompanyName":"Sender Company",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"countryCode":"PL",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverCompanyName":"Receiver Company",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Aleje Jerozolimskie",
"receiverBuildingNumber":"2A",
"receiverFlatNumber":"3",
"receiverPostCode":"11-111",
"receiverCity":"Warszawa",
"receiverCountryCode":"PL",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"additionalReference": "Some additional reference",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue": 1200.00
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"deliveryType":"P2P",
"serviceId": "SAME_DAY_18_22"
}
Pricing
Returns prices configured by customer in configuration panel (https://bliskapaczka.pl/panel/narzedzia/integracja), according to parcel dimensions.
By delivery type
Prices for given delivery type. Allowed delivery types: P2P, P2D, D2P, D2D. By default P2P will be used.
POST /v2/pricing/
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/pricing \
-H 'authorization: Bearer xxxx-xxxx-xxxx-xxxx' \
-H 'content-type: application/json' \
-d '{
"parcel":{
"dimensions":{
"length":10,
"width":10,
"height":10,
"weight":1
},
"insuranceValue":10
},
"codValue":10,
"deliveryType":"P2P"
}'
Example response:
[
{
"operatorName": "DPD",
"operatorFullName": "DPD",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "RUCH",
"operatorFullName": "Ruch",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "INPOST",
"operatorFullName": "Inpost",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "POCZTA",
"operatorFullName": "Poczta Polska",
"availabilityStatus": false,
"price": null,
"unavailabilityReason": {
"errors": [
{
"messageCode": "pl.bliskapaczka.pricing.unavailable.noShipmentOffer",
"message": "No shipment offer available",
"field": null,
"value": null
}
]
}
}
]
To door
Prices for door to door (D2D) delivery type.
POST /v2/pricing/todoor
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/pricing/todoor \
-H 'authorization: Bearer xxxx-xxxx-xxxx-xxxx' \
-H 'content-type: application/json' \
-d '{
"parcel":{
"dimensions":{
"length":10,
"width":10,
"height":10,
"weight":1
},
"insuranceValue":10
},
"codValue":10
}'
Example response:
[
{
"operatorName": "DPD",
"operatorFullName": "DPD",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "INPOST",
"operatorFullName": "Inpost",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "GLS",
"operatorFullName": "GLS",
"availabilityStatus": false,
"price": null,
"unavailabilityReason": {
"errors": [
{
"messageCode": "pl.bliskapaczka.pricing.unavailable.noShipmentOffer",
"message": "No shipment offer available",
"field": null,
"value": null
}
]
}
}
]
Report
Bliskapaczka.pl reports utilities.
Pickup confirmation
GET /v2/report/pickupconfirmation
Query parameters:
Name | Type | Description |
---|---|---|
numbers |
String[] |
required |
Returns pickup confirmation report for given order numbers
-
have same operatorName
-
be in "READY_TO_SEND" status
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/report/pickupconfirmation?numbers=000000001P-0000000001,000000001P-0000000002 \
-H "Accept: application/pdf" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: PDF
Pickup confirmation for operator
GET /v2/report/pickupconfirmation/$operator
Query parameters:
Name | Type | Description |
---|---|---|
startPeriod |
DateTime |
Optional |
endPeriod |
DateTime |
Optional |
Returns pickup confirmation report for given operator orders in status 'READY_TO_SEND'.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/report/pickupconfirmation/ruch?startPeriod=2017-10-23T12:00:00 \
-H "Accept: application/pdf" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: PDF
Returns
Bliskapaczka.pl returns api.
Model:
Name | Type | Required | Description |
---|---|---|---|
senderFirstName |
string |
Required when senderCompanyName is blank. |
max length 30 |
senderLastName |
string |
Required when senderCompanyName is blank. |
max length 30 |
senderCompanyName |
string |
Required when senderFirstName or senderLastName is blank. |
max length 50 |
senderPhoneNumber |
string |
required |
max length 30 |
senderEmail |
string |
required |
max length 60, valid value: email address |
senderStreet |
string |
required |
max length 30 |
senderBuildingNumber |
string |
required |
max length 10 |
senderFlatNumber |
string |
optional |
max length 10 |
senderPostCode |
string |
required |
max length 10 |
senderCity |
string |
required |
max length 30 |
countryCode |
string |
optional |
ISO 3166-1 alfa-2 country code max lenght 2 |
receiverFirstName |
string |
Required when receiverCompanyName is blank. When empty, authenticated user first name by default. |
max length 30 |
receiverLastName |
string |
Required when receiverCompanyName is blank. When empty, authenticated user last name by default. |
max length 30 |
receiverCompanyName |
string |
Required when senderFirstName or senderLastName is blank. When empty, authenticated user company name by default. |
max length 50 |
receiverPhoneNumber |
string |
Required. When empty, authenticated user phone number by default. |
max length 30 |
receiverEmail |
string |
Required. When empty, authenticated user email by default. |
max length 60, valid value: email address |
receiverStreet |
string |
Required. When empty, authenticated user street by default. |
max length 30 |
receiverBuildingNumber |
string |
Required. When empty, authenticated user building number by default. |
max length 10 |
receiverFlatNumber |
string |
Optional. When empty, authenticated user flat number by default. |
max length 10 |
receiverPostCode |
string |
Required. When empty, authenticated user post code by default. |
max length 10 |
receiverCity |
string |
Required. When empty, authenticated user city by default. |
max length 30 |
additionalInformation |
string |
optional |
max length 100 |
reference |
string |
optional |
max length 30 |
parcels |
Parcel |
required |
|
Name | Type | required | Description |
---|---|---|---|
dimensions.height |
decimal(10,2) |
required |
min value 0.01 |
dimensions.length |
decimal(10,2) |
required |
min value 0.01 |
dimensions.width |
decimal(10,2) |
required |
min value 0.01 |
dimensions.weight |
decimal(10,2) |
required |
min value 0.01 |
insuranceValue |
decimal(10,2) |
optional |
min value 0.01 |
Save
POST /v2/order/return
Save return order. Return order is an order paid by the user but sent by the end user (customer).
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v2/order/return \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"parcel": {
"dimensions": {
"height": 20,
"length": 20,
"width": 20,
"weight": 20
}
},
"insuranceValue": 1000
}'
Example response:
{
"number": "000000001P-000000001",
"returnLink": "https://bliskapaczka.pl/zwrot/bacb02ceee564703abd84077ea21809c"
}
Tracking
Bliskapaczka.pl tracking api.
Model:
Name | Type | Description |
---|---|---|
operator |
Operator |
|
trackingNumber |
string |
|
currentStatus |
Status |
|
changes |
Status[] |
List of statuses |
Name | Type | Description |
---|---|---|
updatedAt |
DateTime |
|
status |
OrderStatus |
|
operatorStatuses |
OperatorStatus[] |
Name | Type | Description |
---|---|---|
updatedAt |
DateTime |
|
status |
string |
|
description |
string |
|
place |
string |
Get tracking
GET /v2/tracking/$number
Returns tracking by given tracking number.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/tracking/123456789 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"operator": "POCZTA",
"trackingNumber": "123456789",
"currentStatus": {
"updatedAt": "2020-01-10T09:54:47",
"status": "READY_TO_SEND",
"trackingOperatorStatuses": [
{
"updatedAt": "2020-01-10T09:54:47",
"status": "1",
"description": "PRZESYŁKA ZAREJESTROWANA W SYSTEMIE",
"place": null
}
]
},
"changes": [
{
"updatedAt": "2020-01-10T09:54:47",
"status": "READY_TO_SEND",
"trackingOperatorStatuses": [
{
"updatedAt": "2020-01-10T09:54:47",
"status": "1",
"description": "PRZESYŁKA ZAREJESTROWANA W SYSTEMIE",
"place": null
}
]
}
]
}
Get tracking with operator
GET /v2/tracking/$operator/$number
Returns tracking by given tracking number and operator.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v2/tracking/POCZTA/123456789 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"operator": "POCZTA",
"trackingNumber": "123456789",
"currentStatus": {
"updatedAt": "2020-01-10T09:54:47",
"status": "READY_TO_SEND",
"trackingOperatorStatuses": [
{
"updatedAt": "2020-01-10T09:54:47",
"status": "1",
"description": "PRZESYŁKA ZAREJESTROWANA W SYSTEMIE",
"place": null
}
]
},
"changes": [
{
"updatedAt": "2020-01-10T09:54:47",
"status": "READY_TO_SEND",
"trackingOperatorStatuses": [
{
"updatedAt": "2020-01-10T09:54:47",
"status": "1",
"description": "PRZESYŁKA ZAREJESTROWANA W SYSTEMIE",
"place": null
}
]
}
]
}
v1
Common model:
RUCH |
Ruch |
POCZTA |
Poczta Polska |
INPOST |
Inpost |
DPD |
DPD |
UPS |
UPS |
FEDEX |
FedEx |
GLS |
GLS |
XPRESS |
X-press Couriers |
SHIPMENT |
Shipment |
INSURANCE |
Insurance |
COD |
Cash on delivery |
TO_POINT |
Shipment to destination point. |
TO_DOOR |
Shipment to receiver address. |
LOCAL |
Local |
COUNTRY |
Country |
INTERNATIONAL |
International |
VOIVODESHIP |
Voivodeship |
ECOMMERCE |
E-commerce |
INVALID_DESTINATION_POINT |
Chosen destination point is invalid |
INVALID_POSTING_POINT |
Chosen posting point is invalid |
OPERATOR_VALIDATION_ERROR |
Order was rejected by operator validation |
GENERIC_ADVICE_ERROR |
Something went wrong on the operator side and we were not able to distinguish what |
AUTHORIZATION_ERROR |
Wrong own agreement credentials were used for the order |
LABEL_GENERATION_ERROR |
Generating waybill failed |
WAYBILL_PROCESS_ERROR |
Processing of the waybill failed |
BACKEND_ERROR |
Something went terribly wrong on our side |
Config
Configuration options declared in user panel.
Model:
Name | Type |
---|---|
configModel |
OperatorConfig[] |
Name | Type |
---|---|
operator |
Operator |
cod |
number |
prices |
Map<DeliveryType>,PriceLevel> |
Name | Type |
---|---|
maxWeight |
number |
price |
number |
Name | Type |
---|---|
operator |
Operator |
code |
string |
Get
GET /v1/config
Returns configuration options.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/config \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"configModel": [
{
"operator": "RUCH",
"cod": null,
"prices": {
"TO_DOOR": null,
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
},
{
"operator": "POCZTA",
"cod": null,
"prices": {
"TO_DOOR": null,
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
},
{
"operator": "DPD",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
},
{
"operator": "GLS",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": null
}
},
{
"operator": "FEDEX",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": null
}
},
{
"operator": "INPOST",
"cod": null,
"prices": {
"TO_DOOR": [
{
"maxWeight": 5,
"price": 5
}
],
"TO_POINT": [
{
"maxWeight": 5,
"price": 5
}
]
}
}
]
}
Get return config
GET /v1/config/returns
Returns configuration options for return orders.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/config/returns \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"returnPoints": [
{
"operator": "RUCH",
"code": "WR-547950-72-59"
},
{
"operator": "POCZTA",
"code": "275425"
},
{
"operator": "DPD",
"code": "PL11776"
},
{
"operator": "INPOST",
"code": "POP-WRO46"
}
]
}
Health
Bliskapaczka.pl api health check.
GET /health
Returns service status
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/health
Example response:
{
"status": "OK"
}
Order
Bliskapaczka.pl order api.
Model:
Name | Type | Description |
---|---|---|
number |
string |
Optional order number. If left empty, will be generated. Otherwise existing order will be used. |
senderFirstName |
string |
max length 30 |
senderLastName |
string |
max length 30 |
senderPhoneNumber |
string |
max length 30 |
senderEmail |
string |
max length 60, valid value: email address |
senderStreet |
string |
max length 30 |
senderBuildingNumber |
string |
max length 10 |
senderFlatNumber |
string |
max length 10 |
senderPostCode |
string |
max length 10 |
senderCity |
string |
max length 30 |
receiverFirstName |
string |
max length 30 |
receiverLastName |
string |
max length 30 |
receiverPhoneNumber |
string |
max length 30 |
receiverEmail |
string |
max length 60, valid value: email address |
receiverStreet |
string |
required only for TO_DOOR parcels |
receiverBuildingNumber |
string |
required only for TO_DOOR parcels |
receiverFlatNumber |
string |
required only for TO_DOOR parcels |
receiverPostCode |
string |
required only for TO_DOOR parcels |
receiverCity |
string |
required only for TO_DOOR parcels |
receiverCountryCode |
string |
used only for TO_DOOR parcels |
operatorName |
Operator |
|
destinationCode |
string |
required only for TO_POINT parcels |
postingCode |
string |
required only for TO_POINT parcels |
additionalInformation |
string |
max length 100 |
codValue |
decimal(10,2) |
nullable |
parcels |
Parcel |
|
codPayoutBankAccountNumber |
string |
nullable |
chooseDestinationPoint |
boolean |
used only for TO_POINT parcels |
serviceType |
ServiceType |
optional service type |
serviceId |
string |
optional service identifier |
errorReason |
string |
Order model representation has changed. The new approach is to use a list of parcels instead of a single Parcel entity. The api will support the old concept only for so long. Please migrate as this backward compatibility will be removed in the future.
Name | Type | Description |
---|---|---|
dimensions.height |
decimal(10,2) |
min value 0.01 |
dimensions.length |
decimal(10,2) |
min value 0.01 |
dimensions.width |
decimal(10,2) |
min value 0.01 |
dimensions.weight |
decimal(10,2) |
min value 0.01 |
insuranceValue |
decimal(10,2) |
nullable |
Name | Type |
---|---|
number |
string |
changes |
OrderStatusChange[] |
Name | Type |
---|---|
dateTime |
DateTime |
status |
OrderStatus |
Save
POST /v1/order
Save order. Updates existing when body parameter "number" is provided or creates new one.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue":150
}],
"codValue":110.50,
"codPayoutBankAccountNumber":"16102019120000910201486273"
}'
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": "KRA011",
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": 150
}],
"codValue":110.50,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "SAVED",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T13:04:32.071",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [],
"price": null
}
Advice
POST /v1/order/advice
Advice order. Updates existing when body parameter "number" is provided or creates new one.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/advice \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"operatorName":"INPOST",
"destinationCode":"KRA010",
"postingCode":"KRA011",
"additionalInformation": "Some additional information",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue": 1200.00
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"serviceId": "SAME_DAY_18_22"
}'
Example response:
{
"number": "000000001P-000000073",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": "KRA011",
"additionalInformation": "Some additional information",
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "PROCESSING",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T14:45:29.195",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}],
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}
Confirm
POST /v1/orders/confirm?operatorName=$operator
Confirms orders for given "operator". Currently supported only for POCZTA.
Sends the parcels buffer to Poczta Institution with PNI saved in own agreement configuration panel in bliskapaczka.pl
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/orders/confirm?operatorName=POCZTA \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: no body
Get order
GET /v1/order/$number
Returns order by given order number.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000002 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000002",
"senderFirstName": "IamTest",
"senderLastName": "IamTest",
"senderPhoneNumber": "123456789",
"senderEmail": "testuser@example.com",
"senderStreet": "Testowa",
"senderBuildingNumber": "1",
"senderFlatNumber": "2",
"senderPostCode": "12-345",
"senderCity": "Testowe",
"receiverFirstName": "IamTest",
"receiverLastName": "IamTest",
"receiverPhoneNumber": "696452246",
"receiverEmail": "testuser@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "RUCH",
"destinationCode": "BD-388553-45-18",
"postingCode": "BD-619544-42-08",
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 10
},
"insuranceValue": null
}],
"codValue": null,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "READY_TO_SEND",
"deliveryType": "TO_POINT",
"creationDate": "2017-01-19T09:34:28.37",
"adviceDate": "2017-01-19T09:35:08.179",
"trackingNumber": "3400013623451",
"postingPostCode": null,
"postingCity": null,
"postingStreet": null,
"destinationPostCode": null,
"destinationCity": "Inowrocław",
"destinationStreet": null,
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 10.00,
"vat": 2.30,
"gross": 12.30
}
}],
"price": {
"net": 10.00,
"vat": 2.30,
"gross": 12.30
}
}
Get order list
GET /v1/order
Returns paged and filtered order list.
Query parameters:
Name | Type | Description |
---|---|---|
page |
Number |
Required |
size |
Number |
Required |
numbers |
String[] |
Optional |
status |
Optional |
|
operatorName |
Optional |
|
trackingNumber |
String |
Optional |
receiverFirstName |
String |
Optional |
receiverLastName |
String |
Optional |
creationDateFrom |
DateTime |
Optional |
creationDateTo |
DateTime |
Optional |
isAllegro |
boolean |
Optional |
allegroOfferId |
String |
Optional |
allegroTransactionId |
String |
Optional |
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/order?size=10&page=0&numbers=000000000P-000000000,000000000P-000000001 \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
curl --request GET \
--url 'http://https://api.sandbox-bliskapaczka.pl/v1/order?numbers=000000000P-000000000&size=10&page=0' \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"content": [
{
"status": "SAVED",
"number": "000000001P-Z00000001",
"creationDate": "2018-03-08T13:41:48.059",
"adviceDate": null,
"trackingNumber": null,
"senderFirstName": "Jacek",
"senderLastName": "Leszczynski",
"receiverFirstName": "Eastend",
"receiverLastName": "Buty",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": null,
"paymentType": "POST",
"userId": 1
},
{
"status": "SAVED",
"number": "000000000P-000000000",
"creationDate": "2016-07-21T16:10:53.72",
"adviceDate": null,
"trackingNumber": null,
"senderFirstName": "Test",
"senderLastName": "Test",
"receiverFirstName": null,
"receiverLastName": null,
"operatorName": null,
"destinationCode": null,
"postingCode": null,
"paymentType": "POST",
"userId": 1
}
],
"totalElements": 2
}
Get waybill
GET /v1/order/$number/waybill
Returns url to waybill file of order with given order number.
-
NEW
-
SAVED
-
WAITING_FOR_PAYMENT
-
PAYMENT_CONFIRMED
-
PAYMENT_REJECTED
-
PAYMENT_CANCELLATION_ERROR
-
PROCESSING
-
ADVISING
-
ERROR
-
CANCELED
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000002/waybill \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"url" : "https://storage.googleapis.com/test.cloud.senditstatic.pl/ppo/ruch/waybill/2017/01/03/000000001P-000000002.pdf?GoogleAccessId=storage@archiwum-140107.iam.gserviceaccount.com&Expires=1512471128&Signature=k1aQ3MKqI37Kg8mnbMwxJ8danOGEKgwXFmUb2Lg6szxStoGl5OLmlDugCTVMA8YUNVR%2FTz"
}
Get tracking
GET /v1/order/$number/tracking
Returns order status changes by given order number.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000002/tracking \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000002",
"changes": [{
"dateTime": "2017-11-21T12:10:55.971",
"status": "SAVED"
}, {
"dateTime": "2017-11-21T12:10:56.208",
"status": "PAYMENT_CONFIRMED"
}, {
"dateTime": "2017-11-21T12:10:56.208",
"status": "PROCESSING"
}, {
"dateTime": "2017-11-21T12:10:56.37",
"status": "ADVISING"
}, {
"dateTime": "2017-11-21T12:11:40.233",
"status": "READY_TO_SEND"
}]
}
Save (to door)
POST /v1/order/todoor
Save "to door" order. Updates existing when body parameter "number" is provided or creates new one.
This feature is experimental and disabled by default. To use it, please contact us on: wsparcie@sendit.pl.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/todoor \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Testowa",
"receiverBuildingNumber":"1",
"receiverFlatNumber":null,
"receiverPostCode":"12-345",
"receiverCity":"Testowe",
"receiverCountryCode":"PL",
"additionalInformation":"Some additional information",
"operatorName":"DPD",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue":110
}],
"codValue":150,
"codPayoutBankAccountNumber":"16102019120000910201486273"
}'
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet":"Testowa",
"receiverBuildingNumber":"1",
"receiverFlatNumber":null,
"receiverPostCode":"12-345",
"receiverCity":"Testowe",
"operatorName": "DPD",
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": 110
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "SAVED",
"deliveryType": "TO_DOOR",
"creationDate": "2017-11-28T13:04:32.071",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [],
"price": null
}
Advice (to door)
POST /v1/order/advice/todoor
Advice "to door" order. Updates existing order when body parameter "number" is provided or creates new one.
This feature is experimental and disabled by default. To use it, please contact us on: wsparcie@sendit.pl.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/advice/todoor \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderPhoneNumber":"123456789",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"00-000",
"senderCity":"Wroclaw",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Testowa",
"receiverBuildingNumber":"1",
"receiverFlatNumber":null,
"receiverPostCode":"12-345",
"receiverCity":"Testowe",
"receiverCountryCode":"PL",
"operatorName":"DPD",
"additionalInformation": "Some additional information",
"parcels":[{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue":1200.00
}],
"codValue":110,
"serviceId": "SAME_DAY_18_22"
}'
Example response:
{
"number": "000000001P-000000073",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet":"Testowa",
"receiverBuildingNumber":"1",
"receiverFlatNumber":null,
"receiverPostCode":"12-345",
"receiverCity":"Testowe",
"operatorName": "DPD",
"additionalInformation": "Some additional information",
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "PROCESSING",
"deliveryType": "TO_DOOR",
"creationDate": "2017-11-28T14:45:29.195",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}],
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}
Cancel
POST /v1/order/$number/cancel
Cancel order. Triggers cancellation process. When orders is already advised its status is changed to MARKED_FOR_CANCELLATION for 24 hours, then operator status is checked whether the order was sent and if not its status is changed to CANCELLED
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000072/cancel \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": "INPOST",
"destinationCode": "KRA010",
"postingCode": "KRA011",
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 20,
"height": 20,
"width": 20,
"weight": 20
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": false,
"status": "MARKED_FOR_CANCELLATION",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T14:45:29.195",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": "31-274",
"postingCity": "Kraków",
"postingStreet": "Opolska 9",
"destinationPostCode": "30-624",
"destinationCity": "Kraków",
"destinationStreet": "Malborska 130",
"orderItems": [{
"itemType": "SHIPMENT",
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}],
"price": {
"net": 8.25,
"vat": 1.90,
"gross": 10.15
}
}
Retry
POST /v1/order/$number/retry
Retry order advice. Used to trigger order processing when given order is in ERROR status and that error reason allows for this action.
-
GENERIC_ADVICE_ERROR
-
AUTHORIZATION_ERROR
-
LABEL_GENERATION_ERROR
-
WAYBILL_PROCESS_ERROR
-
BACKEND_ERROR
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000072/retry \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: no body
Get access link
GET /v1/order/$number/accessLink
It is possible to let end user choose parcel destination. This endpoint Returns order with access link that can be sent to end user to pick destination point. Bliskapaczka.pl post about the feature
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000002/accessLink \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000002",
"senderFirstName": "IamTest",
"senderLastName": "IamTest",
"senderPhoneNumber": "123456789",
"senderEmail": "testuser@example.com",
"senderStreet": "Testowa",
"senderBuildingNumber": "1",
"senderFlatNumber": "2",
"senderPostCode": "12-345",
"senderCity": "Testowe",
"receiverFirstName": "IamTest",
"receiverLastName": "IamTest",
"receiverPhoneNumber": "912345678",
"receiverEmail": "testuser@example.com",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": null,
"destinationCode": null,
"postingCode": null,
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 10,
"height": 10,
"width": 10,
"weight": 10
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": true,
"status": "SAVED",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T12:52:02.441",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": null,
"postingCity": null,
"postingStreet": null,
"destinationPostCode": null,
"destinationCity": null,
"destinationStreet": null,
"orderItems": [],
"price": null,
"tokenLink": "https://sandbox-bliskapaczka.pl/wybierz-punkt/115b902709f34c1eb417fc22125dce84"
}
Notify
POST /v1/order/$number/notify
Sends email notification to end user to choose destination point.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/000000001P-000000072/notify \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Example response:
{
"number": "000000001P-000000072",
"senderFirstName": "IamTest",
"senderLastName": "IamTest",
"senderPhoneNumber": "123456789",
"senderEmail": "testuser@example.com",
"senderStreet": "Testowa",
"senderBuildingNumber": "1",
"senderFlatNumber": "2",
"senderPostCode": "12-345",
"senderCity": "Testowe",
"receiverFirstName": "Marcin",
"receiverLastName": "dfgfd",
"receiverPhoneNumber": "912345678",
"receiverEmail": "marcin.architek@sendit.pl",
"receiverStreet": "Ulica",
"receiverBuildingNumber": "1A",
"receiverFlatNumber": "2B",
"receiverPostCode": "99-999",
"receiverCity": "Kraków",
"receiverCountryCode": "PL",
"operatorName": null,
"destinationCode": null,
"postingCode": null,
"additionalInformation": null,
"parcels": [{
"dimensions": {
"length": 10,
"height": 10,
"width": 10,
"weight": 10
},
"insuranceValue": null
}],
"codValue":110,
"codPayoutBankAccountNumber":"16102019120000910201486273",
"chooseDestinationPoint": true,
"status": "SAVED",
"deliveryType": "TO_POINT",
"creationDate": "2017-11-28T15:14:13.761",
"adviceDate": null,
"trackingNumber": null,
"postingPostCode": null,
"postingCity": null,
"postingStreet": null,
"destinationPostCode": null,
"destinationCity": null,
"destinationStreet": null,
"orderItems": [],
"price": null,
"tokenLink": "https://sandbox-bliskapaczka.pl/wybierz-punkt/96b3e12da0704357a335e05beda47c8d"
}
Available services
POST /v1/order/services
Returns services available for posted order details.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/services \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName":"Sender",
"senderLastName":"Sender",
"senderPhoneNumber":"666777888",
"senderEmail":"sender@example.com",
"senderStreet":"Rynek",
"senderBuildingNumber":"1",
"senderFlatNumber":"1",
"senderPostCode":"53-019",
"senderCity":"Wrocław",
"receiverFirstName":"Receiver",
"receiverLastName":"Receiver",
"receiverPhoneNumber":"987654321",
"receiverEmail":"receiver@example.com",
"receiverStreet":"Wagonowa",
"receiverBuildingNumber":"2b",
"receiverFlatNumber":null,
"receiverPostCode":"53-019",
"receiverCity":"Wrocław",
"operatorName":"XPRESS",
"parcels":[
{
"dimensions":{
"height":20,
"length":20,
"width":20,
"weight":20
},
"insuranceValue":150
}
],
"codValue":11.1,
"codPayoutBankAccountNumber":"61109010140000071219812874",
"serviceType": "COUNTRY"
}'
Example response:
[
"SAME_DAY_18_22"
]
Pricing
Bliskapaczka.pl pricing api.
To point
Bliskapaczka.pl to point pricing api.
POST /v1/pricing/
Returns pricing for given parcel according to the user configuration from https://bliskapaczka.pl/panel/narzedzia/integracja.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/pricing \
-H 'authorization: Bearer xxxx-xxxx-xxxx-xxxx' \
-H 'content-type: application/json' \
-d '{
"parcel":{
"dimensions":{
"length":10,
"width":10,
"height":10,
"weight":1
},
"insuranceValue":10
},
"codValue":10
}'
Example response:
[
{
"operatorName": "DPD",
"operatorFullName": "DPD",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "RUCH",
"operatorFullName": "Ruch",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "INPOST",
"operatorFullName": "Inpost",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "POCZTA",
"operatorFullName": "Poczta Polska",
"availabilityStatus": false,
"price": null,
"unavailabilityReason": {
"errors": [
{
"messageCode": "pl.bliskapaczka.pricing.unavailable.noShipmentOffer",
"message": "No shipment offer available",
"field": null,
"value": null
}
]
}
}
]
To door
Bliskapaczka.pl to door pricing api.
POST /v1/pricing/todoor
Returns pricing for given courier parcel according to the user configuration from https://bliskapaczka.pl/panel/narzedzia/integracja.
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/pricing/todoor \
-H 'authorization: Bearer xxxx-xxxx-xxxx-xxxx' \
-H 'content-type: application/json' \
-d '{
"parcel":{
"dimensions":{
"length":10,
"width":10,
"height":10,
"weight":1
},
"insuranceValue":10,
},
"codValue":10
}'
Example response:
[
{
"operatorName": "DPD",
"operatorFullName": "DPD",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "INPOST",
"operatorFullName": "Inpost",
"availabilityStatus": true,
"price": {
"net": 4.07,
"vat": 0.93,
"gross": 5.00
},
"unavailabilityReason": null
},
{
"operatorName": "GLS",
"operatorFullName": "GLS",
"availabilityStatus": false,
"price": null,
"unavailabilityReason": {
"errors": [
{
"messageCode": "pl.bliskapaczka.pricing.unavailable.noShipmentOffer",
"message": "No shipment offer available",
"field": null,
"value": null
}
]
}
}
]
Report
Bliskapaczka.pl reports utilities.
Pickup confirmation
GET /v1/report/pickupconfirmation
Query parameters:
Name | Type | Description |
---|---|---|
numbers |
String[] |
required |
Returns pickup confirmation report for given order numbers
-
have same operatorName
-
be in "READY_TO_SEND" status
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/report/pickupconfirmation?numbers=000000001P-0000000001,000000001P-0000000002 \
-H "Accept: application/pdf" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: PDF
Pickup confirmation for operator
GET /v1/report/pickupconfirmation/$operator
Query parameters:
Name | Type | Description |
---|---|---|
startPeriod |
DateTime |
Optional |
endPeriod |
DateTime |
Optional |
Returns pickup confirmation report for given operator orders in status 'READY_TO_SEND'.
Try it out:
curl -X GET https://api.sandbox-bliskapaczka.pl/v1/report/pickupconfirmation/ruch?startPeriod=2017-10-23T12:00:00 \
-H "Accept: application/pdf" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx"
Response: PDF
Returns
Bliskapaczka.pl returns api.
Model:
Name | Type | Required | Description |
---|---|---|---|
senderFirstName |
string |
required |
max length 30 |
senderLastName |
string |
required |
max length 30 |
senderPhoneNumber |
string |
required |
max length 30 |
senderEmail |
string |
required |
max length 60, valid value: email address |
senderStreet |
string |
required |
max length 30 |
senderBuildingNumber |
string |
required |
max length 10 |
senderFlatNumber |
string |
optional |
max length 10 |
senderPostCode |
string |
required |
max length 10 |
senderCity |
string |
required |
max length 30 |
countryCode |
string |
optional |
ISO 3166-1 alfa-2 country code max lenght 2 |
receiverFirstName |
string |
Required. When empty, authenticated user first name by default. |
max length 30 |
receiverLastName |
string |
Required. When empty, authenticated user last name by default. |
max length 30 |
receiverPhoneNumber |
string |
Required. When empty, authenticated user phone number by default. |
max length 30 |
receiverEmail |
string |
Required. When empty, authenticated user email by default. |
max length 60, valid value: email address |
receiverStreet |
string |
Required. When empty, authenticated user street by default. |
max length 30 |
receiverBuildingNumber |
string |
Required. When empty, authenticated user building number by default. |
max length 10 |
receiverFlatNumber |
string |
Optional. When empty, authenticated user flat number by default. |
max length 10 |
receiverPostCode |
string |
Required. When empty, authenticated user post code by default. |
max length 10 |
receiverCity |
string |
Required. When empty, authenticated user city by default. |
max length 30 |
additionalInformation |
string |
optional |
max length 100 |
reference |
string |
optional |
max length 30 |
parcels |
Parcel |
required |
|
Name | Type | required | Description |
---|---|---|---|
dimensions.height |
decimal(10,2) |
required |
min value 0.01 |
dimensions.length |
decimal(10,2) |
required |
min value 0.01 |
dimensions.width |
decimal(10,2) |
required |
min value 0.01 |
dimensions.weight |
decimal(10,2) |
required |
min value 0.01 |
insuranceValue |
decimal(10,2) |
optional |
min value 0.01 |
Save
POST /v1/order/return
Save return order. Return order is an order paid by the user but sent by the end user (customer).
Try it out:
curl -X POST https://api.sandbox-bliskapaczka.pl/v1/order/return \
-H "Accept: application/json" \
-H "Authorization: Bearer xxxx-xxxx-xxxx-xxxx" \
-H "Content-Type: application/json" \
-d '{
"senderFirstName": "Sender",
"senderLastName": "Sender",
"senderCompanyName": "Sender Company",
"senderPhoneNumber": "123456789",
"senderEmail": "sender@example.com",
"senderStreet": "Rynek",
"senderBuildingNumber": "1",
"senderFlatNumber": "1",
"senderPostCode": "00-000",
"senderCity": "Wroclaw",
"receiverFirstName": "Receiver",
"receiverLastName": "Receiver",
"receiverCompanyName": "Receiver Company",
"receiverPhoneNumber": "987654321",
"receiverEmail": "receiver@example.com",
"additionalInformation": "Some additional information",
"reference": "Some reference",
"parcel": {
"dimensions": {
"height": 20,
"length": 20,
"width": 20,
"weight": 20
}
},
"insuranceValue": 1000
}'
Example response:
{
"number": "000000001P-000000001",
"returnLink": "https://bliskapaczka.pl/zwrot/bacb02ceee564703abd84077ea21809c"
}
Points API Overview
Bliskapaczka.pl points API provides an easy and convenient way to show and filter points on your website.
This documentation describes integration protocols of pos.bliskapaczka.pl based on REST API.
Environments:
Look here for detailed API documentation.
Contact with technical support regarding integration process wsparcie@sendit.pl
Points API Description
This section contains detailed Points API description for all available endpoints.
v1
Common model:
Name | Type | Description |
---|---|---|
operator |
Enum value for point operator |
|
operatorPretty |
String |
Pretty printed operator name |
brand |
Enum value for point brand |
|
brandPretty |
String |
Pretty printed brand name |
postingPoint |
Boolean |
Is point available as posting place |
deliveryPoint |
Boolean |
Is point available as destination place |
cod |
Boolean |
Does point offer cash on delivery service |
code |
String |
Unique point code |
street |
String |
Point street address |
city |
String |
Point city |
postalCode |
String |
Point postal code |
longitude |
number |
Point location longitude |
latitude |
number |
Point location latitude |
openingHoursMap |
Map<String, {from, to}> |
Point opening hours map |
description |
String |
Point description |
available |
boolean |
Point availability |
pointTypes |
Point types |
Enum value | Pretty printed |
---|---|
RUCH |
Ruch |
POCZTA |
Poczta Polska |
INPOST |
InPost |
DPD |
DPD |
UPS |
UPS |
FEDEX |
FedEx |
Enum value | Pretty printed |
---|---|
INPOST |
Punkt sieci InPost |
ONEMINUTE |
Sklep 1 Minut |
MALPKA |
Sklep Małpka Express |
POCZTA_POLSKA |
Punkt Poczty Polskiej |
ORLEN |
Stacja benzynowa Orlen |
ZABKA |
Sklep Żabka |
RUCH |
Punkt Paczka w RUCHu |
DPD |
Punkt DPD Pickup |
UPS |
Punkt UPS Access Point |
KOLPORTER |
Salonik Kolportera |
Value | Operator |
---|---|
PSD |
RUCH |
PSP |
RUCH |
APM |
RUCH |
PKN |
RUCH |
PARCEL_LOCKER |
INPOST |
POP |
INPOST |
PARCEL_LOCKER_ONLY |
INPOST |
PARCEL_LOCKER_SUPERPOP |
INPOST |
List
GET /api/v1/pos
Get available point list
Query parameters:
Name | Type | Description |
---|---|---|
operators |
List<Operator> |
Required |
posType |
all | delivery | posting |
Optional |
cod |
Boolean |
Optional |
fields |
Optional |
|
pointTypes |
Optional |
Try it out:
curl --request GET \
--url 'https://pos.bliskapaczka.pl/api/v1/pos?operators=INPOST,POCZTA,RUCH&fields=operator,code,latitude,longitude,brand,brandPretty,operatorPretty,cod,pointTypes&posType=delivery&cod=false'
Example response:
[
{
"code": "WS-741478-15-03",
"brandPretty": "Punkt Paczka w RUCHu",
"latitude": 52.3385,
"pointTypes": [
"PSP"
],
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 21.2354
},
{
"code": "GD-604645-76-65",
"brandPretty": "Punkt Paczka w RUCHu",
"latitude": 54.0542,
"pointTypes": [
"PSP"
],
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 19.2046
},
{
"code": "MYS226",
"brandPretty": "InPost Paczkomaty 24/7 ",
"latitude": 50.24268,
"pointTypes": [
"PARCEL_LOCKER"
],
"operatorPretty": "InPost",
"cod": true,
"brand": "INPOST",
"operator": "INPOST",
"longitude": 19.13285
}
]
Details
GET /api/v1/pos/{operator}/{code}
Get important point details
Try it out:
curl --request GET \
--url 'https://pos.bliskapaczka.pl/api/v1/pos/inpost/KRA01A'
Example response:
{
"operator": "INPOST",
"operatorPretty": "InPost",
"brand": "INPOST",
"brandPretty": "Punkt sieci InPost",
"postingPoint": true,
"deliveryPoint": true,
"cod": true,
"code": "KRA01A",
"street": "Władysława Broniewskiego 1",
"city": "Kraków",
"postalCode": "31-801",
"district": null,
"province": "małopolskie",
"longitude": 20.01884,
"latitude": 50.08593,
"openingHoursMap": {},
"description": "Przy DH Wanda",
"available": true,
"pointTypes": [
"PARCEL_LOCKER"
]
}
Filter
GET /api/v1/pos/filter
Get filters point list
Query parameters:
Name | Type | Description |
---|---|---|
operators |
List<Operator> |
Required |
posType |
all | delivery | posting |
Optional |
cod |
Boolean |
Optional |
fields |
Optional |
|
searchText |
String |
Optional |
distance |
number |
Optional |
distanceUnit |
KM | M |
Optional |
lat |
number |
Optional |
lon |
number |
Optional |
size |
number |
Optional |
Try it out:
curl --request GET \
--url 'https://pos.bliskapaczka.pl/api/v1/pos/filter?distance=5&distanceUnit=km&lat=49.97605&lon=20.44091&operators=RUCH&fields=operator,code,city,latitude,longitude,brand,brandPretty,operatorPretty,cod&size=5'
Example response:
[
{
"code": "3505-7003-70-88",
"brandPretty": "Punkt Paczka w RUCHu",
"city": "Bochnia",
"latitude": 49.9796,
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 20.4398
},
{
"code": "3505-7588-70-80",
"brandPretty": "Punkt Paczka w RUCHu",
"city": "Bochnia",
"latitude": 49.9712,
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 20.4326
},
{
"code": "3505-7379-70-82",
"brandPretty": "Punkt Paczka w RUCHu",
"city": "Bochnia",
"latitude": 49.9671,
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 20.4266
},
{
"code": "3505-7598-70-73",
"brandPretty": "Punkt Paczka w RUCHu",
"city": "Bochnia",
"latitude": 49.9699,
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 20.4325
},
{
"code": "3505-7259-70-75",
"brandPretty": "Punkt Paczka w RUCHu",
"city": "Bochnia",
"latitude": 49.9697,
"operatorPretty": "RUCH",
"cod": false,
"brand": "RUCH",
"operator": "RUCH",
"longitude": 20.4327
}
]
Release notes
v2
- Non-standard additional service
-
A parcel can be marked as non-standard when it has unusual packing method or dimensions. Additional payment will be added in this case.
- New delivery types
-
Delivery types P2P, D2P, P2D and D2D are now available. TO_POINT and TO_DOOR are no longer available.
- "todoor" endpoints removed
-
Dedicated endpoints to save or advice shipments to door were removed. Generic save and advice endpoints should be used instead. A proper delivery type is required in the request body. Delivery type can be also used to get pricing.
- Waybills collection returned instead of single waybill
-
When asking for a waybill for a shipment, the collection is returned instead of a single object. It allows to handle shipments with multiple parcels.
- "Reference" field in order
-
When saving or advising an order, a reference can be added to it. This reference is passed on to operators and can be used to link Bliska Paczka order with an external order.
- Company name for a sender and receiver
-
When a sender or receiver is not a private person, a company name can be used instead of first and last name.