Retrieve an outgoing parcel
curl --request GET \
--url https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoingimport requests
url = "https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing")
.asString();require 'uri'
require 'net/http'
url = URI("https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": {
"parcel": {
"id": 1,
"address": "string",
"address_2": "string",
"address_divided": {
"street": "string",
"house_number": "string"
},
"house_number": "string",
"city": "string",
"company_name": "string",
"country": {
"iso_2": "NL",
"iso_3": "NLD",
"name": "string"
},
"to_state": "string",
"email": "string",
"name": "string",
"postal_code": "string",
"telephone": "string",
"tracking_number": "string",
"order_number": "string",
"to_coordinates": {
"latitude": -3.402823669209385e+38,
"longitude": -3.402823669209385e+38
},
"collo_count": 1,
"weight": "string",
"carrier": {
"code": "string"
}
},
"products": [
{
"id": "string",
"name": "string",
"price": "string",
"image_url": "https://example.com/image.png",
"quantity": 0,
"returnable": true
}
],
"carriers": [
{
"code": "string",
"name": "string",
"logo": {
"full": "../dictionary",
"icon": "../dictionary"
}
}
],
"service_point": {
"id": 10875349,
"code": "217165",
"is_active": true,
"shop_type": null,
"extra_data": {
"partner_name": "PostNL",
"sales_channel": "AFHAALPUNT",
"terminal_type": "NRS",
"retail_network_id": "PNPNL-01"
},
"name": "Media Markt Eindhoven Centrum B.V.",
"street": "Boschdijktunnel",
"house_number": "1",
"postal_code": "5611AG",
"city": "EINDHOVEN",
"latitude": "51.441444",
"longitude": "5.475185",
"email": "",
"phone": "",
"homepage": "",
"carrier": "postnl",
"country": "NL",
"formatted_opening_times": {
"0": [
"10:00 - 20:00"
],
"1": [
"10:00 - 20:00"
],
"2": [
"10:00 - 20:00"
],
"3": [
"10:00 - 20:00"
],
"4": [
"10:00 - 20:00"
],
"5": [
"10:00 - 18:00"
],
"6": []
},
"open_tomorrow": true,
"open_upcoming_week": true,
"distance": 381
},
"shop_distances": [
{
"id": 1,
"distance": 1
}
],
"national_carrier_contact": "https://example.com",
"national_carrier": {
"name": "string",
"drop_off_finder": "string",
"logo": {
"full": "https://sendcloud-prod-scp-static-files.s3.amazonaws.com/ups/img/logo.svg",
"icon": "https://sendcloud-prod-scp-static-files.s3.amazonaws.com/ups/img/icon.svg"
},
"code": "ups"
},
"carrier_drop_off_finder": {},
"labelless_service_point": {
"id": 10875349,
"code": "217165",
"is_active": true,
"shop_type": null,
"extra_data": {
"partner_name": "PostNL",
"sales_channel": "AFHAALPUNT",
"terminal_type": "NRS",
"retail_network_id": "PNPNL-01"
},
"name": "Media Markt Eindhoven Centrum B.V.",
"street": "Boschdijktunnel",
"house_number": "1",
"postal_code": "5611AG",
"city": "EINDHOVEN",
"latitude": "51.441444",
"longitude": "5.475185",
"email": "",
"phone": "",
"homepage": "",
"carrier": "postnl",
"country": "NL",
"formatted_opening_times": {
"0": [
"10:00 - 20:00"
],
"1": [
"10:00 - 20:00"
],
"2": [
"10:00 - 20:00"
],
"3": [
"10:00 - 20:00"
],
"4": [
"10:00 - 20:00"
],
"5": [
"10:00 - 18:00"
],
"6": []
},
"open_tomorrow": true,
"open_upcoming_week": true,
"distance": 381
},
"shipping_products": [
{
"name": "PostNL Standard return",
"carrier": "postnl",
"service_points_carrier": "postnl",
"functionalities": {
"age_check": 0,
"b2b": true,
"b2c": true,
"boxable": true,
"bulky_goods": true,
"carrier_billing_type": "country",
"cash_on_delivery": true,
"dangerous_goods": true,
"delivery_attempts": 0,
"delivery_before": "string",
"delivery_deadline": "best_effort",
"direct_contract_only": true,
"eco_delivery": true,
"ers": true,
"first_mile": "dropoff",
"flex_delivery": true,
"form_factor": "parcel",
"fragile_goods": true,
"fresh_goods": true,
"harmonized_label": true,
"id_check": true,
"incoterm": "ddp",
"insurance": 0,
"labelless": true,
"last_mile": "home_delivery",
"manually": true,
"multicollo": true,
"neighbor_delivery": true,
"non_conveyable": true,
"personalized_delivery": true,
"premium": true,
"priority": "standard",
"registered_delivery": true,
"returns": true,
"segment": "a+",
"service_area": "domestic",
"signature": true,
"size": "s",
"sorted": true,
"surcharge": true,
"tracked": true,
"tyres": true,
"weekend_delivery": "saturday"
},
"methods": [
{
"id": 1,
"name": "PostNL Return",
"functionalities": {
"age_check": 0,
"b2b": true,
"b2c": true,
"boxable": true,
"bulky_goods": true,
"carrier_billing_type": "country",
"cash_on_delivery": true,
"dangerous_goods": true,
"delivery_attempts": 0,
"delivery_before": "string",
"delivery_deadline": "best_effort",
"direct_contract_only": true,
"eco_delivery": true,
"ers": true,
"first_mile": "dropoff",
"flex_delivery": true,
"form_factor": "parcel",
"fragile_goods": true,
"fresh_goods": true,
"harmonized_label": true,
"id_check": true,
"incoterm": "ddp",
"insurance": 0,
"labelless": true,
"last_mile": "home_delivery",
"manually": true,
"multicollo": true,
"neighbor_delivery": true,
"non_conveyable": true,
"personalized_delivery": true,
"premium": true,
"priority": "standard",
"registered_delivery": true,
"returns": true,
"segment": "a+",
"service_area": "domestic",
"signature": true,
"size": "s",
"sorted": true,
"surcharge": true,
"tracked": true,
"tyres": true,
"weekend_delivery": "saturday"
},
"shipping_product_code": "string",
"properties": {
"min_weight": 0,
"max_weight": 0,
"max_dimensions": {
"length": 0,
"width": 0,
"height": 0,
"unit": "string"
}
},
"pickup_date": null
}
],
"code": "string"
}
],
"applicable_actions": [
{
"id": "ship_with",
"name": "Ship with",
"field": "ship_with",
"priority": 1,
"value": "dhl:complete/dropoff,return,labelless",
"condition": {
"all": [
{
"id": "from_country",
"operator": "eq",
"value": "NL"
}
]
}
}
]
},
"service_points_token": "string",
"access_token": "string"
}{
"error": {
"code": "invalid_postal_code",
"request": "api/v2/brand/devtest/return-portal/outgoing",
"message": "The postal code you provided is invalid."
}
}{
"error": {
"code": 404,
"request": "api/v2/brand/brand_domain/return-portal",
"message": "No ReturnsPortal matches the given query"
}
}{
"error": {
"code": "unprocessable_order_blob_data",
"request": "<string>",
"message": "Order details cannot be processed."
}
}Return portal API
Retrieve an outgoing parcel
Find an outgoing parcel via two mandatory query parameters: either the tracking number or the order number, and the postal code.
GET
/
brand
/
{brand_domain}
/
return-portal
/
outgoing
Retrieve an outgoing parcel
curl --request GET \
--url https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoingimport requests
url = "https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing"
response = requests.get(url)
print(response.text)const options = {method: 'GET'};
fetch('https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing"
req, _ := http.NewRequest("GET", url, nil)
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing")
.asString();require 'uri'
require 'net/http'
url = URI("https://panel.sendcloud.sc/api/v2/brand/{brand_domain}/return-portal/outgoing")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
response = http.request(request)
puts response.read_body{
"data": {
"parcel": {
"id": 1,
"address": "string",
"address_2": "string",
"address_divided": {
"street": "string",
"house_number": "string"
},
"house_number": "string",
"city": "string",
"company_name": "string",
"country": {
"iso_2": "NL",
"iso_3": "NLD",
"name": "string"
},
"to_state": "string",
"email": "string",
"name": "string",
"postal_code": "string",
"telephone": "string",
"tracking_number": "string",
"order_number": "string",
"to_coordinates": {
"latitude": -3.402823669209385e+38,
"longitude": -3.402823669209385e+38
},
"collo_count": 1,
"weight": "string",
"carrier": {
"code": "string"
}
},
"products": [
{
"id": "string",
"name": "string",
"price": "string",
"image_url": "https://example.com/image.png",
"quantity": 0,
"returnable": true
}
],
"carriers": [
{
"code": "string",
"name": "string",
"logo": {
"full": "../dictionary",
"icon": "../dictionary"
}
}
],
"service_point": {
"id": 10875349,
"code": "217165",
"is_active": true,
"shop_type": null,
"extra_data": {
"partner_name": "PostNL",
"sales_channel": "AFHAALPUNT",
"terminal_type": "NRS",
"retail_network_id": "PNPNL-01"
},
"name": "Media Markt Eindhoven Centrum B.V.",
"street": "Boschdijktunnel",
"house_number": "1",
"postal_code": "5611AG",
"city": "EINDHOVEN",
"latitude": "51.441444",
"longitude": "5.475185",
"email": "",
"phone": "",
"homepage": "",
"carrier": "postnl",
"country": "NL",
"formatted_opening_times": {
"0": [
"10:00 - 20:00"
],
"1": [
"10:00 - 20:00"
],
"2": [
"10:00 - 20:00"
],
"3": [
"10:00 - 20:00"
],
"4": [
"10:00 - 20:00"
],
"5": [
"10:00 - 18:00"
],
"6": []
},
"open_tomorrow": true,
"open_upcoming_week": true,
"distance": 381
},
"shop_distances": [
{
"id": 1,
"distance": 1
}
],
"national_carrier_contact": "https://example.com",
"national_carrier": {
"name": "string",
"drop_off_finder": "string",
"logo": {
"full": "https://sendcloud-prod-scp-static-files.s3.amazonaws.com/ups/img/logo.svg",
"icon": "https://sendcloud-prod-scp-static-files.s3.amazonaws.com/ups/img/icon.svg"
},
"code": "ups"
},
"carrier_drop_off_finder": {},
"labelless_service_point": {
"id": 10875349,
"code": "217165",
"is_active": true,
"shop_type": null,
"extra_data": {
"partner_name": "PostNL",
"sales_channel": "AFHAALPUNT",
"terminal_type": "NRS",
"retail_network_id": "PNPNL-01"
},
"name": "Media Markt Eindhoven Centrum B.V.",
"street": "Boschdijktunnel",
"house_number": "1",
"postal_code": "5611AG",
"city": "EINDHOVEN",
"latitude": "51.441444",
"longitude": "5.475185",
"email": "",
"phone": "",
"homepage": "",
"carrier": "postnl",
"country": "NL",
"formatted_opening_times": {
"0": [
"10:00 - 20:00"
],
"1": [
"10:00 - 20:00"
],
"2": [
"10:00 - 20:00"
],
"3": [
"10:00 - 20:00"
],
"4": [
"10:00 - 20:00"
],
"5": [
"10:00 - 18:00"
],
"6": []
},
"open_tomorrow": true,
"open_upcoming_week": true,
"distance": 381
},
"shipping_products": [
{
"name": "PostNL Standard return",
"carrier": "postnl",
"service_points_carrier": "postnl",
"functionalities": {
"age_check": 0,
"b2b": true,
"b2c": true,
"boxable": true,
"bulky_goods": true,
"carrier_billing_type": "country",
"cash_on_delivery": true,
"dangerous_goods": true,
"delivery_attempts": 0,
"delivery_before": "string",
"delivery_deadline": "best_effort",
"direct_contract_only": true,
"eco_delivery": true,
"ers": true,
"first_mile": "dropoff",
"flex_delivery": true,
"form_factor": "parcel",
"fragile_goods": true,
"fresh_goods": true,
"harmonized_label": true,
"id_check": true,
"incoterm": "ddp",
"insurance": 0,
"labelless": true,
"last_mile": "home_delivery",
"manually": true,
"multicollo": true,
"neighbor_delivery": true,
"non_conveyable": true,
"personalized_delivery": true,
"premium": true,
"priority": "standard",
"registered_delivery": true,
"returns": true,
"segment": "a+",
"service_area": "domestic",
"signature": true,
"size": "s",
"sorted": true,
"surcharge": true,
"tracked": true,
"tyres": true,
"weekend_delivery": "saturday"
},
"methods": [
{
"id": 1,
"name": "PostNL Return",
"functionalities": {
"age_check": 0,
"b2b": true,
"b2c": true,
"boxable": true,
"bulky_goods": true,
"carrier_billing_type": "country",
"cash_on_delivery": true,
"dangerous_goods": true,
"delivery_attempts": 0,
"delivery_before": "string",
"delivery_deadline": "best_effort",
"direct_contract_only": true,
"eco_delivery": true,
"ers": true,
"first_mile": "dropoff",
"flex_delivery": true,
"form_factor": "parcel",
"fragile_goods": true,
"fresh_goods": true,
"harmonized_label": true,
"id_check": true,
"incoterm": "ddp",
"insurance": 0,
"labelless": true,
"last_mile": "home_delivery",
"manually": true,
"multicollo": true,
"neighbor_delivery": true,
"non_conveyable": true,
"personalized_delivery": true,
"premium": true,
"priority": "standard",
"registered_delivery": true,
"returns": true,
"segment": "a+",
"service_area": "domestic",
"signature": true,
"size": "s",
"sorted": true,
"surcharge": true,
"tracked": true,
"tyres": true,
"weekend_delivery": "saturday"
},
"shipping_product_code": "string",
"properties": {
"min_weight": 0,
"max_weight": 0,
"max_dimensions": {
"length": 0,
"width": 0,
"height": 0,
"unit": "string"
}
},
"pickup_date": null
}
],
"code": "string"
}
],
"applicable_actions": [
{
"id": "ship_with",
"name": "Ship with",
"field": "ship_with",
"priority": 1,
"value": "dhl:complete/dropoff,return,labelless",
"condition": {
"all": [
{
"id": "from_country",
"operator": "eq",
"value": "NL"
}
]
}
}
]
},
"service_points_token": "string",
"access_token": "string"
}{
"error": {
"code": "invalid_postal_code",
"request": "api/v2/brand/devtest/return-portal/outgoing",
"message": "The postal code you provided is invalid."
}
}{
"error": {
"code": 404,
"request": "api/v2/brand/brand_domain/return-portal",
"message": "No ReturnsPortal matches the given query"
}
}{
"error": {
"code": "unprocessable_order_blob_data",
"request": "<string>",
"message": "Order details cannot be processed."
}
}API v2 is entering maintenance mode. New users should start with API v3 to access our latest features and improved performance. Already using v2? Don’t worry, your current integration remains fully functional. Read more about maintenance mode, or check out the migration guide for API v3.
Path Parameters
The domain you defined in the brand settings.
Minimum string length:
1Query Parameters
The postal code of the outgoing parcel.
Minimum string length:
1Either the tracking number or the order number of the outgoing parcel.
Minimum string length:
1If true, exclude response fields with basic service point information:
- service_point
- labelless_service_point
- shop_distances
Response
OK
Show child attributes
Show child attributes
Access token that can be used to fetch service points at https://servicepoints.sendcloud.sc/api/v2/service-points
Minimum string length:
1Access token that can be used when interacting with the Return portal API
Minimum string length:
1⌘I