Skip to main content
GET
/
rentals
List all rentals
curl --request GET \
  --url https://app.supercycle.com/api/v1/rentals \
  --header 'Authorization: Bearer <token>'
{
  "data": [
    {
      "id": 123,
      "createdAt": "2023-11-07T05:31:56Z",
      "updatedAt": "2023-11-07T05:31:56Z",
      "customer": {
        "id": 123,
        "createdAt": "2023-11-07T05:31:56Z",
        "shopifyId": 123,
        "defaultAddress": {
          "customerId": 123,
          "default": true,
          "firstName": "<string>",
          "lastName": "<string>",
          "company": "<string>",
          "address1": "<string>",
          "address2": "<string>",
          "city": "<string>",
          "province": "<string>",
          "country": "<string>",
          "zip": "<string>",
          "phone": "<string>",
          "name": "<string>",
          "provinceCode": "<string>",
          "countryCode": "<string>",
          "countryName": "<string>"
        },
        "email": "<string>",
        "firstName": "<string>",
        "lastName": "<string>"
      },
      "itemId": 123,
      "packingStatus": "pending",
      "shopifyOrderId": 123,
      "shopifyOrderLineId": 123,
      "methodType": "calendar",
      "fulfillAt": "2023-11-07T05:31:56Z",
      "fulfilledAt": "2023-11-07T05:31:56Z",
      "minimumRentalEnd": "2023-11-07T05:31:56Z",
      "originRentalIntentToken": "<string>",
      "receiveAt": "2023-11-07T05:31:56Z",
      "receivedAt": "2023-11-07T05:31:56Z",
      "rentalStart": "2023-11-07T05:31:56Z",
      "rentalEnd": "2023-11-07T05:31:56Z",
      "restockBy": "2023-11-07T05:31:56Z",
      "restockedAt": "2023-11-07T05:31:56Z",
      "sequentialId": 123,
      "shopifyOrderName": "<string>",
      "status": "scheduled",
      "fulfillmentStatus": "pending",
      "receivalStatus": "pending",
      "returnOrderId": 123,
      "timelineEvents": [
        {
          "id": 123,
          "eventableId": 123,
          "eventableType": "<string>",
          "eventType": "<string>",
          "metadata": {},
          "createdAt": "2023-11-07T05:31:56Z",
          "updatedAt": "2023-11-07T05:31:56Z",
          "author": "<string>"
        }
      ],
      "tags": [
        "<string>"
      ],
      "customFields": [
        {
          "id": 123,
          "ownerId": 123,
          "ownerType": "Item",
          "definitionId": 123,
          "key": "<string>",
          "value": "<string>",
          "valueJson": "<unknown>"
        }
      ]
    }
  ],
  "nextPage": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

limit
integer<int32>

A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 50.

Required range: x <= 100
page
string

Cursor token to fetch next page of results.

shopifyOrderId
string

Filter rentals by Shopify Order ID

customerId
integer<int64>

Filter rentals by customer ID

itemId
integer<int64>

Filter by item ID

shopifyVariantId
integer<int64>

Filter by shopify variant ID

returnOrderStatus
string

Filter by return order status. Can be a comma-separated list of statuses.

Example:

"requested,expected,received,in_progress,completed,cancelled"

unfulfilled
boolean
default:false

When true, filter rentals to show only unfulfilled ones

created
object

Filter rentals by created at datetime (ISO 8601), using gt, lt, gte, lte operators which may be combined.

updated
object

Filter rentals by when they were last updated (ISO 8601), using gt, lt, gte, lte; operators may be combined. For incremental sync, use gte (on or after) with the time you last pulled data.

rentalStart
object

Filter rentals by rental start date (ISO 8601), using gt, lt, gte, lte operators which may be combined.

fulfillmentStatus
enum<string>

Filter rentals by fulfillment status, can be a comma-separated list of statuses

Available options:
due,
scheduled,
complete
receivalStatus
enum<string>

Filter rentals by receival status, can be a comma-separated list of statuses

Available options:
due,
scheduled,
complete

Filter rentals by titles and customer text

excludeCancelled
boolean
default:false

When true, omit rentals that have been cancelled (cancelledAt set). Defaults to false so cancelled rentals are included for incremental sync and external dashboards.

include
string

Comma-separated list of relations to include (e.g., item)

Example:

"item"

Response

A paged array of rentals

data
object[]
nextPage
null | string