Skip to content

Commit 45e316e

Browse files
authored
Merge pull request #918 from karrioapi/patch-2025.5.4
[patch] 2025.5.4
2 parents 9aa3e5a + d82fcbb commit 45e316e

File tree

99 files changed

+3128
-712
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

99 files changed

+3128
-712
lines changed

CHANGELOG.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,31 @@
44

55
### Feat
66

7+
- feat(WIP): introduce karrio studio to enhance dev experience and assist integration and development
8+
- feat: introduce shipping_documents field on shipment object that returns a more structured list of shipping documents details and include base64 documents version from purchasing APIs
9+
- feat: add audit log Model settings required by django-auditlog==3.4.0
10+
- feat: introduce `reason` field to karrio unified tracking event data
11+
12+
### Fix
13+
14+
- fix: idempotent API response for shipment cancellation when called twice on a shipment that was successfully cancelled return HTTP code 304
15+
16+
### Docs
17+
18+
- docs: karrio Shipping integration quick start with key APIs
19+
20+
### Chore
21+
22+
- chore: remove poorly implemented permissions layer
23+
24+
---
25+
26+
# Karrio 2025.5.3
27+
28+
## Changes
29+
30+
### Feat
31+
732
- feat: make shipment cancellation idempotent
833
- feat: Implement POST requests for shipping documents downloads
934
- feat: map error/message levels in carrier integrations and karrio server

apps/api/karrio/server/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2025.5.3
1+
2025.5.4

apps/web/public/carrier-integrations.json

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

apps/web/src/app/docs/developing/_meta.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,10 @@ export default {
3535
title: 'API Development',
3636
type: 'page'
3737
},
38+
"shipping-integration": {
39+
title: 'Shipping Integration',
40+
type: 'page'
41+
},
3842
"dashboard-guide": {
3943
title: 'Dashboard Guide',
4044
type: 'page'

apps/web/src/app/docs/developing/api-development/page.mdx

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -305,11 +305,25 @@ curl -X POST $KARRIO_API_URL/v1/shipments \
305305
"carrier_name": "generic",
306306
"service": "standard_service",
307307
"tracking_number": "TEST123456789",
308-
"label_url": "/v1/shipments/ship_xxxxx/label",
308+
"label_url": "/v1/shipments/ship_xxxxx/label.pdf",
309+
"invoice_url": null,
310+
"shipping_documents": [
311+
{
312+
"category": "label",
313+
"format": "PDF",
314+
"url": "/v1/shipments/ship_xxxxx/label.pdf",
315+
"base64": "JVBERi0xLjQKJeLjz9..."
316+
}
317+
],
309318
...
310319
}
311320
```
312321

322+
> [!TIP]
323+
> **Immediate Label Access**
324+
>
325+
> When creating a shipment with a service (single-call purchase) or purchasing a label, the `shipping_documents` array includes the `base64` encoded document content. This allows you to immediately render or print the label without making a second API call. For subsequent retrievals (list, get operations), `base64` will be `null` and you should use the `url` field to download the document.
326+
313327
**Save the shipment details:**
314328

315329
```bash filename="Terminal"

0 commit comments

Comments
 (0)