Neoship Api (1.0.0)

This API documentation describes the individual integration options with the Neoship

Production API: https://apiserver.neoship.sk/api
Test API: https://apiserver.nshptest.sk/api

Login

Login

Login to Neoship to obtain a token

Authorizations:
bearerAuth
Request Body schema: application/json
required
username
string non-empty

Name of user for log into application (usually email)

password
string non-empty

The user password used for login

Responses

Request samples

Content type
application/json
{
  • "username": "username@login.com",
  • "password": "AC123456"
}

Response samples

Content type
application/json
{
  • "token": "eyjiioajsiodj...",
  • "refresh_token": "23165c5..."
}

Refresh token

Refresh token

Refresh JWT token after expriation

Authorizations:
bearerAuth
Request Body schema: application/json
required
refresh_token
string non-empty

Refresh token returned in succesfull login action

Responses

Request samples

Content type
application/json
{
  • "refresh_token": "85fc4162fa3195bfa662b9bd759b3dae2e3a..."
}

Response samples

Content type
application/json
{
  • "token": "eyjiioajsiodj...",
  • "refresh_token": "23165c5..."
}

Package

New package

Create new package

Authorizations:
bearerAuth
path Parameters
shipper_id
required
integer

The id of shipper:
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

Request Body schema: application/json
required

Echo payload

reference_number
string non-empty

Reference number of package

sender_name
string non-empty

Full name of the sender

sender_company
string

Company of the sender

sender_street
string non-empty

Street of the sender (house number can be INCLUDED depends on situation)

sender_house_number
string

House number of the sender

sender_city
string non-empty

City of the sender

sender_zip
string non-empty

Postal code of the sender

sender_state_code
string non-empty

State code of the sender

sender_email
string non-empty

Email of the sender

sender_phone
string non-empty

Phone of the sender

receiver_name
string non-empty

Full name of the receiver

receiver_company
string

Company of the receiver

receiver_street
string non-empty

Street of the receiver (house number can be INCLUDED depends of situation)

receiver_house_number
string

House number of the receiver

receiver_city
string non-empty

City of the receiver

receiver_zip
string non-empty

Postal code of the receiver

receiver_state_code
string non-empty

State code of the receiver

receiver_email
string non-empty

Email of the receiver

receiver_phone
string non-empty

Phone of the receiver

cod_price
number

Amount of cash on delivery (In the currency of the destination country)

cod_currency_code
string

Currency of cash on delivery

cod_reference
string

Reference of cash on delivery (REQUIRED in DPD if defined, optional in GLS)

insurance
number

Amount of insurance (EUR)

reverse
boolean non-empty

Reverse shipment

parcelshop
string

ID of parcelshop (Required for parcelshop package)

count_of_packages
number

The number of packages to be created.

weight
number

Weight of package in kilograms (for Packeta and DPD only).

carrier_type
number

ID of carrier type for address delivery (for Packeta only).

Responses

Request samples

Content type
application/json
{
  • "reference_number": "AC123456",
  • "sender_name": "John Doe",
  • "sender_company": "John Doe",
  • "sender_street": "Charles street",
  • "sender_house_number": "3852/9",
  • "sender_city": "Bratislava",
  • "sender_zip": 81101,
  • "sender_state_code": "SK",
  • "sender_email": "test@neoship.sk",
  • "sender_phone": 900123456,
  • "receiver_name": "John Doe",
  • "receiver_company": "John Doe",
  • "receiver_street": "Charles street",
  • "receiver_house_number": "3852/9",
  • "receiver_city": "Bratislava",
  • "receiver_zip": 81101,
  • "receiver_state_code": "SK",
  • "receiver_email": "test@neoship.sk",
  • "receiver_phone": 900123456,
  • "cod_price": 55.25,
  • "cod_currency_code": "EUR",
  • "cod_reference": 984686,
  • "insurance": 230.2,
  • "reverse": false,
  • "parcelshop": "PS-BBMK0269",
  • "count_of_packages": 2,
  • "weight": 1,
  • "carrier_type": 131
}

Response samples

Content type
application/json
{
  • "id": 42,
  • "reference_number": "AC123456"
}

New package bulk

Bulk action to create new packages. Packages are created only if all values are valid. If one package is invalid no one package is created

Authorizations:
bearerAuth
path Parameters
shipper_id
required
integer

The id of shipper:
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

Request Body schema: application/json
required

Echo payload

Array
reference_number
string non-empty

Reference number of package

sender_name
string non-empty

Full name of the sender

sender_company
string

Company of the sender

sender_street
string non-empty

Street of the sender (house number can be INCLUDED depends on situation)

sender_house_number
string

House number of the sender

sender_city
string non-empty

City of the sender

sender_zip
string non-empty

Postal code of the sender

sender_state_code
string non-empty

State code of the sender

sender_email
string non-empty

Email of the sender

sender_phone
string non-empty

Phone of the sender

receiver_name
string non-empty

Full name of the receiver

receiver_company
string

Company of the receiver

receiver_street
string non-empty

Street of the receiver (house number can be INCLUDED depends of situation)

receiver_house_number
string

House number of the receiver

receiver_city
string non-empty

City of the receiver

receiver_zip
string non-empty

Postal code of the receiver

receiver_state_code
string non-empty

State code of the receiver

receiver_email
string non-empty

Email of the receiver

receiver_phone
string non-empty

Phone of the receiver

cod_price
number

Amount of cash on delivery (In the currency of the destination country)

cod_currency_code
string

Currency of cash on delivery

cod_reference
string

Reference of cash on delivery (REQUIRED in DPD if defined, optional in GLS)

insurance
number

Amount of insurance (EUR)

reverse
boolean non-empty

Reverse shipment

parcelshop
string

ID of parcelshop (Required for parcelshop package)

count_of_packages
number

The number of packages to be created.

weight
number

Weight of package in kilograms (for Packeta and DPD only).

carrier_type
number

ID of carrier type for address delivery (for Packeta only).

Responses

Request samples

Content type
application/json
[
  • {
    • "reference_number": "AC123456",
    • "sender_name": "John Doe",
    • "sender_company": "John Doe",
    • "sender_street": "Charles street",
    • "sender_house_number": "3852/9",
    • "sender_city": "Bratislava",
    • "sender_zip": 81101,
    • "sender_state_code": "SK",
    • "sender_email": "test@neoship.sk",
    • "sender_phone": 900123456,
    • "receiver_name": "John Doe",
    • "receiver_company": "John Doe",
    • "receiver_street": "Charles street",
    • "receiver_house_number": "3852/9",
    • "receiver_city": "Bratislava",
    • "receiver_zip": 81101,
    • "receiver_state_code": "SK",
    • "receiver_email": "test@neoship.sk",
    • "receiver_phone": 900123456,
    • "cod_price": 55.25,
    • "cod_currency_code": "EUR",
    • "cod_reference": 984686,
    • "insurance": 230.2,
    • "reverse": false,
    • "parcelshop": "PS-BBMK0269",
    • "count_of_packages": 2,
    • "weight": 1,
    • "carrier_type": 131
    }
]

Response samples

Content type
application/json
[
  • {
    • "id": 42,
    • "reference_number": "AC123456"
    }
]

Bulk create and print

Combined endpoint that creates packages and immediately prints stickers in a single call. The label PDF is saved to storage (accessible via GET /package/{id}/label) and is not returned in the response.

This endpoint combines the functionality of POST /package/bulk/{shipper_id} (package creation) and POST /package/bulk/ with action=send_print_sticker (sticker printing) into one atomic operation.

Authorizations:
bearerAuth
path Parameters
shipper_id
required
integer

The id of shipper:
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

Request Body schema: application/json
required

Packages to create with printing options

required
Array of objects (Package_new)

Array of packages to create and print

object

Sticker printing options

Responses

Request samples

Content type
application/json
Example
{
  • "packages": [
    • {
      • "reference_number": "AC123456",
      • "sender_name": "John Doe",
      • "sender_company": "ACME s.r.o.",
      • "sender_street": "Prievozská",
      • "sender_house_number": "14",
      • "sender_city": "Bratislava",
      • "sender_zip": "82109",
      • "sender_state_code": "SK",
      • "sender_email": "sender@example.sk",
      • "sender_phone": "0905123456",
      • "receiver_name": "Jane Smith",
      • "receiver_company": "",
      • "receiver_street": "Hlavná",
      • "receiver_house_number": "28/A",
      • "receiver_city": "Košice",
      • "receiver_zip": "04001",
      • "receiver_state_code": "SK",
      • "receiver_email": "receiver@example.sk",
      • "receiver_phone": "0911234567",
      • "cod_price": 89.9,
      • "cod_currency_code": "EUR",
      • "cod_reference": "COD-001",
      • "insurance": 350,
      • "reverse": false,
      • "count_of_packages": 1,
      • "weight": 2.5
      }
    ],
  • "options": {
    • "sticker_position": "1",
    • "print_type": "A4_2x2"
    }
}

Response samples

Content type
application/json
[
  • {
    • "id": 42,
    • "reference_number": "AC123456",
    • "tracking_number": "TX87VKD5000002BL3Y"
    }
]

Info package

Info package

Authorizations:
bearerAuth
path Parameters
package_id
required
string

Id of package

Responses

Response samples

Content type
application/json
{
  • "id": 42,
  • "reference_number": "AC123456",
  • "sender_name": "John Doe",
  • "sender_company": "John Doe",
  • "sender_street": "Charles street",
  • "sender_house_number": "3852/9",
  • "sender_city": "Bratislava",
  • "sender_zip": 81101,
  • "sender_state_code": "SK",
  • "sender_email": "test@neoship.sk",
  • "sender_phone": 900123456,
  • "receiver_name": "John Doe",
  • "receiver_company": "John Doe",
  • "receiver_street": "Charles street",
  • "receiver_house_number": "3852/9",
  • "receiver_city": "Bratislava",
  • "receiver_zip": 81101,
  • "receiver_state_code": "SK",
  • "receiver_email": "test@neoship.sk",
  • "receiver_phone": 900123456,
  • "cod_price": 55.25,
  • "cod_currency_code": "EUR",
  • "cod_reference": 984686,
  • "insurance": 230.2,
  • "reverse": false,
  • "parcelshop": "PS-BBMK0269",
  • "weight": 3.8,
  • "tracking_number": "Z123654987",
  • "cod_payment": 1,
  • "shipper": {
    • "id": 2,
    • "name": "Slovak Parcel Service",
    • "shortcut": "SPS"
    },
  • "statuses": [
    • {
      • "status_type": {
        • "id": 251,
        • "name": "Exportovaná"
        }
      }
    ],
  • "is_service": false,
  • "price_vat": 4.59,
  • "invoice_number": 4110075779,
  • "invoice_date": "2021-08-04"
}

Edit package

Edit package which has not been exported

Authorizations:
bearerAuth
path Parameters
package_id
required
string

Id of package

Request Body schema: application/json
required

Echo payload

reference_number
string non-empty

Reference number of package

sender_name
string non-empty

Full name of the sender

sender_company
string

Company of the sender

sender_street
string non-empty

Street of the sender

sender_house_number
string

House number of the sender

sender_city
string non-empty

City of the sender

sender_zip
string non-empty

Postal code of the sender

sender_state_code
string non-empty

State code of the sender

sender_email
string non-empty

Email of the sender

sender_phone
string non-empty

Phone of the sender

receiver_name
string non-empty

Full name of the receiver

receiver_company
string

Company of the receiver

receiver_street
string non-empty

Street of the receiver

receiver_house_number
string

House number of the receiver

receiver_city
string non-empty

City of the receiver

receiver_zip
string non-empty

Postal code of the receiver

receiver_state_code
string non-empty

State code of the receiver

receiver_email
string non-empty

Email of the receiver

receiver_phone
string non-empty

Phone of the receiver

cod_price
number

Amount of cash on delivery (In the currency of the destination country)

cod_currency_code
string

Currency of cash on delivery

cod_reference
string

Reference of cash on delivery (REQUIRED in DPD if defined, optional in GLS)

insurance
number

Amount of insurance (EUR)

reverse
boolean non-empty

Reverse shipment

parcelshop
string

ID of parcelshop (Required for parcelshop package)

count_of_packages
number

The number of packages to be created.

weight
number

Weight of package in kilograms (for Packeta and DPD only).

carrier_type
number

ID of carrier type for address delivery (for Packeta only).

Responses

Request samples

Content type
application/json
{
  • "reference_number": "AC123456",
  • "sender_name": "John Doe",
  • "sender_company": "John Doe",
  • "sender_street": "Charles street",
  • "sender_house_number": "3852/9",
  • "sender_city": "Bratislava",
  • "sender_zip": 81101,
  • "sender_state_code": "SK",
  • "sender_email": "test@neoship.sk",
  • "sender_phone": 900123456,
  • "receiver_name": "John Doe",
  • "receiver_company": "John Doe",
  • "receiver_street": "Charles street",
  • "receiver_house_number": "3852/9",
  • "receiver_city": "Bratislava",
  • "receiver_zip": 81101,
  • "receiver_state_code": "SK",
  • "receiver_email": "test@neoship.sk",
  • "receiver_phone": 900123456,
  • "cod_price": 55.25,
  • "cod_currency_code": "EUR",
  • "cod_reference": 984686,
  • "insurance": 230.2,
  • "reverse": false,
  • "parcelshop": "PS-BBMK0269",
  • "count_of_packages": 2,
  • "weight": 1,
  • "carrier_type": 131
}

Response samples

Content type
application/json
{
  • "cod_price": [
    • "Cannot be blank"
    ],
  • "sender_zip": [
    • "Not valid postal code"
    ],
  • "...": [ ]
}

Delete package

Delete package which has not been exported

Authorizations:
bearerAuth
path Parameters
package_id
required
string

Id of package

Responses

Download label

Downloads the label PDF for a package that has been exported (sticker printed). The label must have been previously generated via POST /package/bulk/ with action=send_print_sticker or via POST /package/bulk-create-and-print/{shipper_id}.

Authorizations:
bearerAuth
path Parameters
package_id
required
integer
Example: 42

Id of the package

Responses

Response samples

Content type
application/json
{
  • "error": "Label not found"
}

Cancel package

Cancel package. Cancels the shipment at the shipper and marks the package as cancelled. Reference number is prefixed with X. Only packages in shipping (not yet exported) or service packages can be cancelled.

Authorizations:
bearerAuth
path Parameters
package_id
required
integer
Example: 42

Id of package

Request Body schema: application/json
optional
source
string

Request source (e.g. WEB, API)

Responses

Request samples

Content type
application/json
{
  • "source": "API"
}

Response samples

Content type
application/json
{
  • "error": "string",
  • "shipper": "string",
  • "requestId": "string"
}

List of packages

List of packages

Authorizations:
bearerAuth
query Parameters
page
integer

The number of page

rows_per_page
integer

The numbers of items to return

reference_number
string

Packages with the specified reference number

tracking_number
string

Packages with the specified tracking number

Responses

Response samples

Content type
application/json
{
  • "rows": [
    • {
      • "id": 42,
      • "reference_number": "AC123456",
      • "sender_name": "John Doe",
      • "sender_company": "John Doe",
      • "sender_street": "Charles street",
      • "sender_house_number": "3852/9",
      • "sender_city": "Bratislava",
      • "sender_zip": 81101,
      • "sender_state_code": "SK",
      • "sender_email": "test@neoship.sk",
      • "sender_phone": 900123456,
      • "receiver_name": "John Doe",
      • "receiver_company": "John Doe",
      • "receiver_street": "Charles street",
      • "receiver_house_number": "3852/9",
      • "receiver_city": "Bratislava",
      • "receiver_zip": 81101,
      • "receiver_state_code": "SK",
      • "receiver_email": "test@neoship.sk",
      • "receiver_phone": 900123456,
      • "cod_price": 55.25,
      • "cod_currency_code": "EUR",
      • "cod_reference": 984686,
      • "insurance": 230.2,
      • "reverse": false,
      • "parcelshop": "PS-BBMK0269",
      • "weight": 3.8,
      • "tracking_number": "Z123654987",
      • "cod_payment": 1,
      • "shipper": {
        • "id": 2,
        • "name": "Slovak Parcel Service",
        • "shortcut": "SPS"
        },
      • "statuses": [
        • {
          • "status_type": {
            • "id": 251,
            • "name": "Exportovaná"
            }
          }
        ],
      • "is_service": false
      }
    ],
  • "count": 22
}

List of packages by reference numbers

List of packages by the list of reference numbers. If the list of reference numbers contains invalid reference numbers, the packages corresponding to invalid reference numbers are not included in response content.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Echo payload

reference_numbers
Array of arrays

List of reference numbers.

Responses

Request samples

Content type
application/json
{
  • "reference_numbers": [
    • "AB123456",
    • "BC987654",
    • "..."
    ]
}

Response samples

Content type
application/json
[
  • {
    • "id": 42,
    • "reference_number": "AC123456",
    • "sender_name": "John Doe",
    • "sender_company": "John Doe",
    • "sender_street": "Charles street",
    • "sender_house_number": "3852/9",
    • "sender_city": "Bratislava",
    • "sender_zip": 81101,
    • "sender_state_code": "SK",
    • "sender_email": "test@neoship.sk",
    • "sender_phone": 900123456,
    • "receiver_name": "John Doe",
    • "receiver_company": "John Doe",
    • "receiver_street": "Charles street",
    • "receiver_house_number": "3852/9",
    • "receiver_city": "Bratislava",
    • "receiver_zip": 81101,
    • "receiver_state_code": "SK",
    • "receiver_email": "test@neoship.sk",
    • "receiver_phone": 900123456,
    • "cod_price": 55.25,
    • "cod_currency_code": "EUR",
    • "cod_reference": 984686,
    • "insurance": 230.2,
    • "reverse": false,
    • "parcelshop": "PS-BBMK0269",
    • "weight": 3.8,
    • "tracking_number": "Z123654987",
    • "cod_payment": 1,
    • "shipper": {
      • "id": 2,
      • "name": "Slovak Parcel Service",
      • "shortcut": "SPS"
      },
    • "statuses": [
      • {
        • "status_type": {
          • "id": 251,
          • "name": "Exportovaná"
          }
        }
      ],
    • "is_service": false
    }
]

Stickers, Acceptance protocol

Bulk action for getting stickers or acceptance protocol.

Authorizations:
bearerAuth
Request Body schema: application/json

Echo payload

action
string non-empty


send_print_sticker - for get stickers

GLS (string) or SPS (string) or Packeta (string) or Packeta HD (string) or DPD (string) or Slovenská pošta (string) or SDS (string)

Type of format sticker to print

sticker_position
number or null
Enum: 1 2 3 4

Sticker position if shipper support this option

reference_numbers
Array of arrays non-empty

Array of packages reference numbers to print

Responses

Request samples

Content type
application/json
Example
{
  • "action": "send_print_sticker",
  • "print_type": "A4_2x2",
  • "sticker_position": 1,
  • "reference_numbers": [
    • "ASD1354"
    ]
}

Response samples

Content type
application/json
Example
{
  • "labels": "JVBERi0xLjUKJfLz9PX2CjEgMCBvYmoKPD...",
  • "errors": [
    • {
      • "reference_number": "AC123456",
      • "package_id": 42,
      • "shipper_id": 1,
      • "errors": [
        • "Cod not allowed for 'Client Id'",
        • "..."
        ]
      }
    ],
  • "tracking": {
    • "<package_id>": {
      • "reference_number": "ASD1354",
      • "tracking_number": "Z1234567890"
      }
    }
}

Package quotes

Calculate available package shipping quotes for the authenticated user.

Authorizations:
bearerAuth
Request Body schema: application/json
required

Quote calculation payload

sender_state_code
required
string

State code of the sender.

receiver_state_code
required
string

State code of the receiver.

weight
required
number >= 0

Package weight in kilograms.

cod_price
number >= 0
Default: 0

Amount of cash on delivery.

cod_currency_code
string
Default: "EUR"

Currency of cash on delivery.

payment_type
integer
Default: 0
Enum: 0 1

Cash on delivery payment type.
0 - cash
1 - card

insurance
number >= 0
Default: 0

Insurance amount.

parcelshop
boolean
Default: false

Whether to calculate parcelshop delivery quotes.

reverse
boolean
Default: false

Whether to calculate reverse shipment quotes.

Array of integers or string

Optional shipper IDs to limit quote calculation. Can be sent as an array or comma-separated string.
The id of shipper:
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

Responses

Request samples

Content type
application/json
{
  • "sender_state_code": "SK",
  • "receiver_state_code": "CZ",
  • "weight": 1.5,
  • "cod_price": 55.25,
  • "cod_currency_code": "EUR",
  • "payment_type": 0,
  • "insurance": 230.2,
  • "parcelshop": false,
  • "reverse": false,
  • "shipper_ids": [
    • 1,
    • 3,
    • 5
    ]
}

Response samples

Content type
application/json
{
  • "quotes": [
    • {
      • "carrier": {
        • "shipper_id": "3",
        • "shipper_shortcut": "Packeta",
        • "shipper_name": "Packeta",
        • "carrier_type": 131,
        • "carrier_name": "Packeta Home HD"
        },
      • "price": {
        • "currency": "EUR",
        • "amount_without_vat": "4.20",
        • "amount_with_vat": "5.17",
        • "vat_rate": "0.23"
        },
      • "breakdown": [
        • {
          • "code": "shipping",
          • "label": "Základná cena dopravy",
          • "amount_without_vat": "3.50",
          • "amount_with_vat": "4.31"
          }
        ],
      • "purchase": {
        • "price": {
          • "currency": "EUR",
          • "amount_without_vat": "4.20",
          • "amount_with_vat": "5.17",
          • "vat_rate": "0.23"
          },
        • "breakdown": [
          • {
            • "code": "shipping",
            • "label": "Základná cena dopravy",
            • "amount_without_vat": "3.50",
            • "amount_with_vat": "4.31"
            }
          ]
        },
      • "purchase_error": {
        • "code": "missing_shipping_price",
        • "message": "Chýba cena dopravy",
        • "carrier": {
          • "shipper_id": "3",
          • "shipper_shortcut": "Packeta",
          • "shipper_name": "Packeta",
          • "carrier_type": 131,
          • "carrier_name": "Packeta Home HD"
          }
        }
      }
    ],
  • "errors": [
    • {
      • "code": "missing_shipping_price",
      • "message": "Chýba cena dopravy",
      • "carrier": {
        • "shipper_id": "3",
        • "shipper_shortcut": "Packeta",
        • "shipper_name": "Packeta",
        • "carrier_type": 131,
        • "carrier_name": "Packeta Home HD"
        }
      }
    ]
}

Admin package

Package quotes for user

Calculate available package shipping quotes for a selected user. The response includes purchase prices when available.

Authorizations:
bearerAuth
path Parameters
user_id
required
integer

User ID for quote calculation

Request Body schema: application/json
required

Quote calculation payload

sender_state_code
required
string

State code of the sender.

receiver_state_code
required
string

State code of the receiver.

weight
required
number >= 0

Package weight in kilograms.

cod_price
number >= 0
Default: 0

Amount of cash on delivery.

cod_currency_code
string
Default: "EUR"

Currency of cash on delivery.

payment_type
integer
Default: 0
Enum: 0 1

Cash on delivery payment type.
0 - cash
1 - card

insurance
number >= 0
Default: 0

Insurance amount.

parcelshop
boolean
Default: false

Whether to calculate parcelshop delivery quotes.

reverse
boolean
Default: false

Whether to calculate reverse shipment quotes.

Array of integers or string

Optional shipper IDs to limit quote calculation. Can be sent as an array or comma-separated string.
The id of shipper:
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

Responses

Request samples

Content type
application/json
{
  • "sender_state_code": "SK",
  • "receiver_state_code": "CZ",
  • "weight": 1.5,
  • "cod_price": 55.25,
  • "cod_currency_code": "EUR",
  • "payment_type": 0,
  • "insurance": 230.2,
  • "parcelshop": false,
  • "reverse": false,
  • "shipper_ids": [
    • 1,
    • 3,
    • 5
    ]
}

Response samples

Content type
application/json
{
  • "quotes": [
    • {
      • "carrier": {
        • "shipper_id": "3",
        • "shipper_shortcut": "Packeta",
        • "shipper_name": "Packeta",
        • "carrier_type": 131,
        • "carrier_name": "Packeta Home HD"
        },
      • "price": {
        • "currency": "EUR",
        • "amount_without_vat": "4.20",
        • "amount_with_vat": "5.17",
        • "vat_rate": "0.23"
        },
      • "breakdown": [
        • {
          • "code": "shipping",
          • "label": "Základná cena dopravy",
          • "amount_without_vat": "3.50",
          • "amount_with_vat": "4.31"
          }
        ],
      • "purchase": {
        • "price": {
          • "currency": "EUR",
          • "amount_without_vat": "4.20",
          • "amount_with_vat": "5.17",
          • "vat_rate": "0.23"
          },
        • "breakdown": [
          • {
            • "code": "shipping",
            • "label": "Základná cena dopravy",
            • "amount_without_vat": "3.50",
            • "amount_with_vat": "4.31"
            }
          ]
        },
      • "purchase_error": {
        • "code": "missing_shipping_price",
        • "message": "Chýba cena dopravy",
        • "carrier": {
          • "shipper_id": "3",
          • "shipper_shortcut": "Packeta",
          • "shipper_name": "Packeta",
          • "carrier_type": 131,
          • "carrier_name": "Packeta Home HD"
          }
        }
      }
    ],
  • "errors": [
    • {
      • "code": "missing_shipping_price",
      • "message": "Chýba cena dopravy",
      • "carrier": {
        • "shipper_id": "3",
        • "shipper_shortcut": "Packeta",
        • "shipper_name": "Packeta",
        • "carrier_type": 131,
        • "carrier_name": "Packeta Home HD"
        }
      }
    ]
}

User

User detail

Detail about user

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "id": 4,
  • "username": "AC123456",
  • "roles": [ ],
  • "credit": 1234.95,
  • "variable_number": 2236345,
  • "address": {
    • "name": "John Doe",
    • "company": "John Doe",
    • "street": "Charles street",
    • "city": "Bratislava",
    • "zip": 81101,
    • "email": "test@neoship.sk",
    • "phone": 900123456,
    • "tin": 534353,
    • "oin": 448164,
    • "vatin": 146846
    },
  • "invoice_address": {
    • "name": "John Doe",
    • "company": "John Doe",
    • "street": "Charles street",
    • "city": "Bratislava",
    • "zip": 81101,
    • "email": "test@neoship.sk",
    • "phone": 900123456,
    • "tin": 534353,
    • "oin": 448164,
    • "vatin": 146846
    }
}

Parcelshop

List of parcelshops

List of parcelshop

Authorizations:
bearerAuth
path Parameters
shipper_id
required
integer

The id of shipper:
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

Responses

Response samples

Content type
application/json
[
  • {
    • "id": 42,
    • "parcelshop_id": "AC123456",
    • "name": "Tesco Galanta (TABAK PRESS)",
    • "street": "Galanta street",
    • "city": "Galanta",
    • "zip": 81101,
    • "state_code": "SK",
    • "shipper": "GLS",
    • "shipper_id": 2
    }
]

Parcelshop detail

Detail of parcelshop

Authorizations:
bearerAuth
path Parameters
id
required
integer

Id of parcelshop

Responses

Response samples

Content type
application/json
{
  • "id": 42,
  • "parcelshop_id": "AC123456",
  • "name": "Tesco Galanta (TABAK PRESS)",
  • "street": "Galanta street",
  • "city": "Galanta",
  • "zip": 81101,
  • "state_code": "SK",
  • "shipper": "GLS",
  • "shipper_id": 2
}

Tracking

By tracking number

Tracking of packages by tracking number. This is usefull, if you want to show the information in your app.

Authorizations:
bearerAuth
path Parameters
tracking_number
required
string

Tracking number of package

Responses

Response samples

Content type
application/json
{
  • "logo": "https:storage.cloud.com/app/logo.png",
  • "weight": 2,
  • "sender": "SK 02901 Martin",
  • "receiver": "SK 03601 Martin",
  • "reference_number": 2236345,
  • "statuses": {
    • "created_at": "2021-09-09",
    • "center": "SPS Hub",
    • "name": "Doruceny"
    }
}

By reference number

Tracking of packages by reference number and user id. This tracking is returning the page with the styles, not needed parsing response or anything else.

Authorizations:
bearerAuth
path Parameters
user_id
required
number

Id of user

reference_number
required
string

Reference number of package

Responses

Tracking public

By tracking number

Tracking of packages by tracking number. This tracking is returning the page with the styles, not needed parsing response or anything else.

Authorizations:
bearerAuth
path Parameters
tracking_number
required
string

Tracking number of package

Responses

Parcelshops

Parcelshops in your page

The parcelshop picker is an embeddable iframe UI for selecting a parcelshop from a map and list. It is intended for checkout or shipment forms where the customer chooses a delivery point.

The picker is not a JSON API endpoint. Render it in an iframe or open it with your own modal, then listen for window.postMessage events from the iframe. Use https://app.neoship.sk for production and https://app.nshptest.sk for testing.

Basic iframe

<iframe
  src="https://app.neoship.sk/neoship/parcelshop-picker/?apiKey=XXXXXXXXXXXXX"
  title="Výber parcelshopu"
  allow="geolocation"
  style="width: 100%; height: 700px; border: 0;"
></iframe>

For usage on your own domain, create a parcelshop picker API key in Neoship and store the exact parent page origin for that key, for example https://eshop.example. One key can have multiple allowed origins in Neoship. External iframe usage sends apiKey; Neoship uses the stored origins to decide where the iframe may be embedded. If apiKey is omitted, the picker is only intended for Neoship's own origin.

Receiving the selected parcelshop

const pickerOrigin = "https://app.neoship.sk";

window.addEventListener("message", (event) => {
  if (event.origin !== pickerOrigin) {
    return;
  }

  const message = event.data || {};

  if (message.type === "neoship:parcelshop-picker:selected") {
    const parcelshop = message.detail;
    // Save parcelshop.parcelshopId into your order/package parcelshop field.
  }

  if (message.type === "neoship:parcelshop-picker:close") {
    // Close your modal or hide the iframe.
  }
});

Posted messages

The iframe sends these message types to the parent window:

  • neoship:parcelshop-picker:ready - picker loaded and initialized
  • neoship:parcelshop-picker:selected - user selected a parcelshop
  • neoship:parcelshop-picker:error - picker initialization or data loading failed
  • neoship:parcelshop-picker:close - user clicked close or pressed Escape

Selection payload

The neoship:parcelshop-picker:selected message contains the selected parcelshop in event.data.detail:

{
  "shipperId": "3",
  "parcelshopId": "12345",
  "name": "Parcelshop name",
  "street": "Main street 1",
  "zip": "81101",
  "city": "Bratislava",
  "stateCode": "SK",
  "lat": 48.1486,
  "lng": 17.1077,
  "openingHours": null,
  "boxType": null,
  "occupancyStatus": null
}

Use parcelshopId as the parcelshop value when creating a parcelshop package.

Authorizations:
bearerAuth
query Parameters
apiKey
string
Default: null
Example: apiKey=XXXXXXXXXXXXX

API key assigned to your Neoship account for this iframe origin. Required when embedding the picker from an external origin. Default is no API key, which only allows same-origin Neoship usage.

theme
string
Default: "light"
Enum: "light" "dark"
Example: theme=light

Visual theme for the picker iframe. Default is light.

selected_shipper_id
integer or null
Default: null
Example: selected_shipper_id=1

Initially selected shipper. If available_shipper_ids is not provided, this also limits the picker to this shipper. Default is no selected shipper and no single-shipper filter.

available_shipper_ids
string
Default: ""
Example: available_shipper_ids=1,3,5

Comma-separated list of shipper IDs available in the picker. Default is empty, which means all available parcelshop shippers are shown.
GLS - 1
SPS - 2
Packeta - 3
DPD - 5
Slovenská pošta - 7
SDS - 8

auto_zoom_to_user
boolean
Default: false
Example: auto_zoom_to_user=true

Enables browser geolocation and automatic zoom to the customer's current position when allowed by the browser. Default is false.

Responses