curl --request GET \
--url https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest \
--header 'x-rr-apikey: <api-key>' \
--header 'x-rr-apitoken: <api-key>'import requests
url = "https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest"
headers = {
"x-rr-apikey": "<api-key>",
"x-rr-apitoken": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-rr-apikey': '<api-key>', 'x-rr-apitoken': '<api-key>'}
};
fetch('https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest', 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://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-rr-apikey: <api-key>",
"x-rr-apitoken: <api-key>"
],
]);
$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://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-rr-apikey", "<api-key>")
req.Header.Add("x-rr-apitoken", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest")
.header("x-rr-apikey", "<api-key>")
.header("x-rr-apitoken", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-rr-apikey"] = '<api-key>'
request["x-rr-apitoken"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"returnRequestId": 123,
"returnRequestNumber": "<string>",
"sellerReferenceNumber": "<string>",
"returnStatusCode": "<string>",
"returnTitle": "<string>",
"totalValue": 123,
"totalValueCurrency": "<string>",
"rma": "<string>",
"remarks": "<string>",
"isArchived": true,
"returnRequestFrom": "<string>",
"shipments": [
{
"shipmentId": 123,
"returnRequestId": 123,
"shipmentNumber": "<string>",
"shipmentStatusCode": "<string>",
"shipmentServiceType": "<string>",
"label": {
"labelId": 123,
"labelRequestStatusCode": "<string>",
"trackingNumber": "<string>",
"labelUrl": "<string>",
"qrcodeUrl": "<string>",
"carrier": "<string>"
}
}
],
"returnRequestLineItems": [
{}
],
"returnInventoryList": [
{}
],
"returnShipmentCustomFieldList": [
{}
]
}{
"correlationId": "<string>",
"meta": {
"status": 123,
"data": {},
"errorCode": "<string>",
"error": {}
}
}取得 Return Shipment 詳情
curl --request GET \
--url https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest \
--header 'x-rr-apikey: <api-key>' \
--header 'x-rr-apitoken: <api-key>'import requests
url = "https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest"
headers = {
"x-rr-apikey": "<api-key>",
"x-rr-apitoken": "<api-key>"
}
response = requests.get(url, headers=headers)
print(response.text)const options = {
method: 'GET',
headers: {'x-rr-apikey': '<api-key>', 'x-rr-apitoken': '<api-key>'}
};
fetch('https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest', 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://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"x-rr-apikey: <api-key>",
"x-rr-apitoken: <api-key>"
],
]);
$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://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("x-rr-apikey", "<api-key>")
req.Header.Add("x-rr-apitoken", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest")
.header("x-rr-apikey", "<api-key>")
.header("x-rr-apitoken", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.returnshelper.com/uat/user/api/ReturnRequest/getReturnRequest")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["x-rr-apikey"] = '<api-key>'
request["x-rr-apitoken"] = '<api-key>'
response = http.request(request)
puts response.read_body{
"returnRequestId": 123,
"returnRequestNumber": "<string>",
"sellerReferenceNumber": "<string>",
"returnStatusCode": "<string>",
"returnTitle": "<string>",
"totalValue": 123,
"totalValueCurrency": "<string>",
"rma": "<string>",
"remarks": "<string>",
"isArchived": true,
"returnRequestFrom": "<string>",
"shipments": [
{
"shipmentId": 123,
"returnRequestId": 123,
"shipmentNumber": "<string>",
"shipmentStatusCode": "<string>",
"shipmentServiceType": "<string>",
"label": {
"labelId": 123,
"labelRequestStatusCode": "<string>",
"trackingNumber": "<string>",
"labelUrl": "<string>",
"qrcodeUrl": "<string>",
"carrier": "<string>"
}
}
],
"returnRequestLineItems": [
{}
],
"returnInventoryList": [
{}
],
"returnShipmentCustomFieldList": [
{}
]
}{
"correlationId": "<string>",
"meta": {
"status": 123,
"data": {},
"errorCode": "<string>",
"error": {}
}
}returnRequestId,取得單一退件運貨單的完整紀錄——包含運貨單、其明細、面單與任何自訂欄位。
退件運貨單代表倉庫收件前的包裹。一旦倉庫登錄該包裹,它便成為退貨庫存項目;自該階段起,請改用 取得 退貨庫存 詳情,其中帶有收件後的處理資料。
找回遺漏的面單
面單位於shipments[].label.labelUrl。此端點的主要用途是系統異常後的對帳:若您的接收端遺漏了某次面單通知,可使用 returnRequestId 呼叫本端點,直接讀取目前的 labelUrl 與 trackingNumber。labelUrl 為空表示面單尚未產生完成(或已失敗)——請檢查 shipments[].label.labelRequestStatusCode。
labelGenerated webhook 推送,那才是真實資料來源。請勿在正常運作下輪詢本端點來探知面單——請訂閱 Webhooks,僅在通知遺漏或推送失敗後,才用本端點補資料。授權
Your API key
Your API token — keep this private
查詢參數
Return request identifier, as returned by Create return shipment.
回應
Success
Full record of a return shipment. Successful responses also carry the standard envelope fields (correlationId, meta) alongside the fields below.
Return request identifier
Return request number
Your merchant-supplied reference, echoed back for reconciliation
Current return status code
Return title
Declared total value of the return
ISO 4217 currency code of totalValue (e.g. usd)
Warehouse-assigned RMA reference (uppercased). Populated once the warehouse processes the parcel.
Free-text remarks
Whether the return request is archived
Origin/source of the return request
Shipments belonging to this return request, each with its label.
Show child attributes
Show child attributes
Line items included in the return request.
Return inventory records derived from this request, populated once the warehouse has received the parcel. Empty before receipt — use Get return inventory details for full inventory data at that stage.
Custom fields attached to the return shipment.