Developer API

Build faster with nshift Go API

One API. All carriers. Ship parcels across the Nordics and Europe with a single integration.

RESTful API
Webhook Events
99.9% Uptime
~/nshift-go ─ curl
200 OK
$ curl -X POST https://api.nshift.com/v1/shipments
{
"status": "created",
"shipment_id": "shp_7x8k2m9n",
"tracking_url": "https://track.nshift.com/..."
}
Avg latency 142 ms
Uptime 99.99%
Quick Start

Ship your first parcel in minutes

A single API call is all you need. Choose your language and start building.

Request
curl -X POST https://api.nshiftgo.com/v1/shipments \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "carrier": "postnord",
    "sender": {
      "name": "Your Company",
      "address": "Street 1",
      "city": "Copenhagen",
      "zip": "1000",
      "country": "DK"
    },
    "recipient": {
      "name": "Customer Name",
      "address": "Customer Street 42",
      "city": "Aarhus",
      "zip": "8000",
      "country": "DK"
    },
    "parcels": [{ "weight": 1.5 }]
  }'
const response = await fetch('https://api.nshiftgo.com/v1/shipments', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    carrier: 'postnord',
    sender: {
      name: 'Your Company',
      address: 'Street 1',
      city: 'Copenhagen',
      zip: '1000',
      country: 'DK'
    },
    recipient: {
      name: 'Customer Name',
      address: 'Customer Street 42',
      city: 'Aarhus',
      zip: '8000',
      country: 'DK'
    },
    parcels: [{ weight: 1.5 }]
  })
});

const shipment = await response.json();
console.log(shipment.tracking_number);
import requests

response = requests.post(
    'https://api.nshiftgo.com/v1/shipments',
    headers={
        'Authorization': 'Bearer YOUR_API_KEY',
        'Content-Type': 'application/json'
    },
    json={
        'carrier': 'postnord',
        'sender': {
            'name': 'Your Company',
            'address': 'Street 1',
            'city': 'Copenhagen',
            'zip': '1000',
            'country': 'DK'
        },
        'recipient': {
            'name': 'Customer Name',
            'address': 'Customer Street 42',
            'city': 'Aarhus',
            'zip': '8000',
            'country': 'DK'
        },
        'parcels': [{'weight': 1.5}]
    }
)

shipment = response.json()
print(shipment['tracking_number'])
200 OK
Response
{
  "id": "shp_9f8e7d6c5b4a",
  "status": "created",
  "tracking_number": "JJD000390015678901234",
  "carrier": "postnord",
  "label_url": "https://api.nshiftgo.com/labels/shp_9f8e7d6c5b4a.pdf",
  "estimated_delivery": "2025-01-03",
  "created_at": "2025-01-01T12:00:00Z"
}
One-click labels

Print labels in seconds, not hours

Stop copy-pasting between systems. Your orders flow in, labels print out. It's that simple. Works with thermal printers too.

  • Batch printing for bulk orders
  • Works with any printer
  • No more Excel sheets
Customer tracking

Your customers know where their stuff is

Branded tracking page with your logo. Real-time updates sent automatically. Fewer "where's my order?" emails for you.

  • Branded tracking page
  • Automatic SMS/email updates
  • Fewer support tickets
Multi-carrier

The right carrier for every order

Some packages need express, some need economy. Set your rules once, and we'll pick the best carrier automatically.

  • 70+ carriers connected
  • Smart carrier selection
  • Use your own rates
Works with your stack

Connects to your webshop in minutes

One-click integrations with all major e-commerce platforms. No developers needed.

Coming_soon

Magento

Enterprise-ready Adobe Commerce integration

API ready
The boring numbers

E-commerce shops that ditched the spreadsheets

70+
5 min
0
24/7
FAQ

Frequently asked questions

No sales pitch, just straight answers

Are there really no hidden fees?

Really. Pay per order created in Delivery. That is it. 

What if I want to cancel?

Cancel anytime on our month to month plan, no exit fees. Annual plans can be canceled at the end of the period. 

Which e-commerce platforms do you integrate with?

All the big ones: Shopify, WooCommerce, Magento. More on the way! 

Do I talk to real people or AI chatbots?

Real humans. In your language. We have local support teams across Europe who actually know shipping. No scripts, no chatbots, no "your call is important to us" nonsense.

Can I use my own carrier contracts?

Absolutely. Bring your own rates and contracts. We're not a middleman – we just make the connection smoother. Your deals stay your deals.

I have a warehouse can I use Delivery?

Yes! We connected with over 450 different systems. Either direct to your e-commerce platform or via your backend WMS or ERP system. Speak to our sales team to make sure everything works. 

Sign up now

Ready to ditch the manual work ?

Stop typing labels by hand. Start your 14-day free trial in 5 minutes — no commitment, cancel anytime.