# Get Return Orders GET https://api.shipbob.com/2026-01/return Retrieves a paginated list of return orders with optional filters for IDs, statuses, dates, and other criteria. Use this to track all returns across your ShipBob account. Reference: https://developer.shipbob.com/api/returns/get-return-orders ## OpenAPI Specification ```yaml openapi: 3.1.1 info: title: | Get Return Orders version: endpoint_returns.getReturnOrders paths: /2026-01/return: get: operationId: get-return-orders summary: | Get Return Orders description: > Retrieves a paginated list of return orders with optional filters for IDs, statuses, dates, and other criteria. Use this to track all returns across your ShipBob account. tags: - - subpackage_returns parameters: - name: Ids in: query description: > The IDs of the returns to fetch. Accepts a comma-separated list of return IDs (e.g., 123,456,789). required: false schema: type: string - name: ReferenceIds in: query description: > Comma-separated list of return reference IDs (RMA numbers) to filter by. required: false schema: type: string - name: Status in: query description: > Comma-separated list of return statuses to filter by (e.g., AwaitingArrival,Arrived,Processing,Completed,Cancelled). required: false schema: type: string - name: FulfillmentCenterIds in: query description: | Comma-separated list of fulfillment center IDs to filter by. required: false schema: type: string - name: TrackingNumbers in: query description: | Comma-separated list of tracking numbers to filter by. required: false schema: type: string - name: OriginalShipmentIds in: query description: | Comma-separated list of original shipment IDs to filter by. required: false schema: type: string - name: InventoryIds in: query description: | Comma-separated list of inventory IDs to filter by. required: false schema: type: string - name: StartDate in: query description: | Filter returns created on or after this date (ISO 8601 format). required: false schema: type: string format: date-time - name: EndDate in: query description: | Filter returns created on or before this date (ISO 8601 format). required: false schema: type: string format: date-time - name: ReturnTypes in: query description: > Comma-separated list of return types to filter by (e.g., Regular,ReturnToSender). required: false schema: type: string - name: ReturnActions in: query description: > Comma-separated list of return actions to filter by (e.g., Restock,Quarantine,Dispose). required: false schema: type: string - name: StoreOrderIds in: query description: | Comma-separated list of store order IDs to filter by. required: false schema: type: string - name: Sortby in: query description: | Field to sort results by. required: false schema: type: string - name: CompletedStartDate in: query description: | Filter returns completed on or after this date (ISO 8601 format). required: false schema: type: string format: date-time - name: CompletedEndDate in: query description: | Filter returns completed on or before this date (ISO 8601 format). required: false schema: type: string format: date-time - name: Cursor in: query description: | Page number to retrieve. Used for pagination through result sets. required: false schema: type: integer - name: Limit in: query description: | Maximum number of records to return per page. required: false schema: type: integer - name: SortOrder in: query description: > Sort order for results. Desc = newest to oldest, Asc = oldest to newest, Desc is default required: false schema: $ref: '#/components/schemas/202601ReturnGetParametersSortOrder' - name: Authorization in: header description: Authentication using Personal Access Token (PAT) token or OAuth2 required: true schema: type: string - name: shipbob_channel_id in: header description: >- Retrieve your channel ID from the [GET /channel](/api/channels/get-channels) endpoint. Use the channel ID that has write scopes. required: false schema: type: string format: int32 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Returns.PublicReturnDtoPagedUrlResultDto' '400': description: Bad Request content: {} '401': description: Authorization missing or invalid content: {} '403': description: The provided credentials are not authorized to access this resource content: {} '404': description: Not Found content: {} components: schemas: 202601ReturnGetParametersSortOrder: type: string enum: - value: Asc - value: Desc Returns.ChannelDto: type: object properties: id: type: integer description: Unique Id of the channel name: type: - string - 'null' description: Name given to the channel Returns.FulfillmentCenterDto: type: object properties: id: type: integer description: Unique id of the fulfillment center name: type: - string - 'null' description: Name give to the fulfillment center Returns.ActionRequestedDto: type: object properties: action: type: - string - 'null' description: The action to take action_type: type: - string - 'null' description: >- The source of the action to take, i.e. Inventory Default or Overriden by Merchant at creation instructions: type: - string - 'null' description: >- The instructions for how to take the action given by inventory owning Merchant Returns.ActionTakenDto: type: object properties: action: type: - string - 'null' description: The return action taken action_reason: type: - string - 'null' description: The reason the action was taken image_url: type: - string - 'null' format: uri description: Image of inventory processed with this action. quantity_processed: type: integer description: >- The quantity of inventory items processed with this reason and action Returns.LotInformationDto: type: object properties: expiration: type: - string - 'null' format: date-time description: The expiration date for this lot. minimumShelfLife: type: - integer - 'null' description: >- A minimum amount of time in days this product can be safely returned to the shelf without expiring. number: type: - string - 'null' description: >- An alphanumeric string uniquely identifying this lot of produced inventory. Returns.InventoryItemDto: type: object properties: action_requested: $ref: '#/components/schemas/Returns.ActionRequestedDto' action_taken: type: - array - 'null' items: $ref: '#/components/schemas/Returns.ActionTakenDto' description: List of actions taken barcodes: type: - array - 'null' items: type: string description: List of barcodes associated with the inventory item id: type: integer description: Unique id of the inventory lot_information: $ref: '#/components/schemas/Returns.LotInformationDto' name: type: - string - 'null' description: Name of the product quantity: type: integer description: Number of inventory that is being returned sku: type: - string - 'null' description: Stock keeping unit identifier for the inventory item Returns.InvoiceDto: type: object properties: amount: type: - number - 'null' format: double description: Amount being charged currency_code: type: - string - 'null' description: Currency code of amount Returns.StatusHistoryDto: type: object properties: status: type: - string - 'null' description: Status to change timestamp: type: string format: date-time description: Date change status Returns.TransactionDto: type: object properties: amount: type: number format: double description: The amount charged for this transaction transaction_type: type: - string - 'null' description: The type of transaction Returns.PublicReturnDto: type: object properties: arrived_date: type: - string - 'null' format: date-time description: The date and time when the return arrived at the fulfillment center awaiting_arrival_date: type: - string - 'null' format: date-time description: The date and time when the return entered Awaiting Arrival status cancelled_date: type: - string - 'null' format: date-time description: The date and time when the return was cancelled, if applicable channel: $ref: '#/components/schemas/Returns.ChannelDto' completed_date: type: - string - 'null' format: date-time description: The date and time for when the return order was completely processed customer_name: type: - string - 'null' description: Name of merchant that return belongs to fulfillment_center: $ref: '#/components/schemas/Returns.FulfillmentCenterDto' id: type: integer description: Unique id of the return order insert_date: type: string format: date-time description: The date and time for when the return order was created inventory: type: - array - 'null' items: $ref: '#/components/schemas/Returns.InventoryItemDto' description: List of inventory items in return order invoice: $ref: '#/components/schemas/Returns.InvoiceDto' original_shipment_id: type: - integer - 'null' description: ShipmentId for which return was created processing_date: type: - string - 'null' format: date-time description: The date and time when the return started processing reference_id: type: - string - 'null' description: >- Unique reference id of the return order. Created by merchant if a regular return. return_type: type: - string - 'null' description: Type of the return, i.e. Regular, RTS shipment_tracking_number: type: - string - 'null' description: The tracking number of the original shipment status: type: - string - 'null' description: Status of the return order, i.e. Awaiting Arrival status_history: type: - array - 'null' items: $ref: '#/components/schemas/Returns.StatusHistoryDto' description: List of status history in return order store_order_id: type: - string - 'null' description: Reference to external order id tracking_number: type: - string - 'null' description: The tracking number of the return shipping label transactions: type: - array - 'null' items: $ref: '#/components/schemas/Returns.TransactionDto' description: >- List of transactions that make up the billable amount to invoice a merchant Returns.PublicReturnDtoPagedUrlResultDto: type: object properties: first: type: - string - 'null' format: uri description: Return url for first cursor items: type: - array - 'null' items: $ref: '#/components/schemas/Returns.PublicReturnDto' description: Return records last: type: - string - 'null' format: uri description: Return url for last cursor next: type: - string - 'null' format: uri description: Return url for next cursor prev: type: - string - 'null' format: uri description: Return url for prev cursor ``` ## SDK Code Examples ```python Returns_getReturnOrders_example import requests url = "https://api.shipbob.com/2026-01/return" headers = {"Authorization": "Bearer "} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript Returns_getReturnOrders_example const url = 'https://api.shipbob.com/2026-01/return'; const options = {method: 'GET', headers: {Authorization: 'Bearer '}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go Returns_getReturnOrders_example package main import ( "fmt" "net/http" "io" ) func main() { url := "https://api.shipbob.com/2026-01/return" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("Authorization", "Bearer ") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby Returns_getReturnOrders_example require 'uri' require 'net/http' url = URI("https://api.shipbob.com/2026-01/return") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer ' response = http.request(request) puts response.read_body ``` ```java Returns_getReturnOrders_example import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.get("https://api.shipbob.com/2026-01/return") .header("Authorization", "Bearer ") .asString(); ``` ```php Returns_getReturnOrders_example request('GET', 'https://api.shipbob.com/2026-01/return', [ 'headers' => [ 'Authorization' => 'Bearer ', ], ]); echo $response->getBody(); ``` ```csharp Returns_getReturnOrders_example using RestSharp; var client = new RestClient("https://api.shipbob.com/2026-01/return"); var request = new RestRequest(Method.GET); request.AddHeader("Authorization", "Bearer "); IRestResponse response = client.Execute(request); ``` ```swift Returns_getReturnOrders_example import Foundation let headers = ["Authorization": "Bearer "] let request = NSMutableURLRequest(url: NSURL(string: "https://api.shipbob.com/2026-01/return")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```