# GET `/merchant/v1/resources`

[Documentation page](/api-reference/resources/resources.list)

## Summary

List resources

## Description

Returns the Resources in the environment selected by this API key. Equivalent Resources in another environment may use the same integration key while keeping distinct Resource and revision IDs.

## Security requirements

```json
[
  {
    "OrganizationApiKeyAuth": []
  }
]
```

## Operation parameters

### query `archived`

```json
{
  "description": "Return archived resources instead of active resources.",
  "in": "query",
  "name": "archived",
  "required": false,
  "schema": {
    "default": false,
    "description": "Return archived resources instead of active resources.",
    "title": "Archived",
    "type": "boolean"
  }
}
```

### query `as_of`

```json
{
  "description": "Stable snapshot timestamp for this page sequence. Include a timezone; future timestamps are rejected.",
  "in": "query",
  "name": "as_of",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/SnapshotTimestamp"
  }
}
```

### query `order`

```json
{
  "description": "Show the newest or oldest records first.",
  "in": "query",
  "name": "order",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/ListOrder",
    "default": "newest"
  }
}
```

### query `page`

```json
{
  "description": "Page number to return. The first page is 1.",
  "in": "query",
  "name": "page",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/PageNumber",
    "default": 1
  }
}
```

### query `page_size`

```json
{
  "description": "Number of items to return on each page. Use 1 through 100.",
  "in": "query",
  "name": "page_size",
  "required": false,
  "schema": {
    "$ref": "#/components/schemas/PageSize",
    "default": 50
  }
}
```

## Responses

### 200

```json
{
  "content": {
    "application/json": {
      "examples": {
        "resource_page": {
          "summary": "Resource page",
          "value": {
            "as_of": "2026-08-12T09:30:00Z",
            "count": 1,
            "items": [
              {
                "created_at": "2026-08-01T08:00:00Z",
                "description": "Generate a paid quarterly research report.",
                "id": "res_00000000000070008000000000000000",
                "image_url": "https://merchant.example/report.png",
                "name": "Quarterly report",
                "updated_at": "2026-08-12T09:30:00Z"
              }
            ],
            "next": null
          }
        }
      },
      "schema": {
        "$ref": "#/components/schemas/PagedResourceSchema"
      }
    }
  },
  "description": "OK"
}
```

### 401

```json
{
  "content": {
    "application/json": {
      "examples": {
        "unauthenticated": {
          "summary": "API key required",
          "value": {
            "code": "unauthenticated",
            "message": "A valid Recuut API key is required."
          }
        }
      },
      "schema": {
        "additionalProperties": false,
        "description": "Error returned for this endpoint and HTTP status.",
        "properties": {
          "code": {
            "const": "unauthenticated",
            "description": "Stable error code your app can check.",
            "type": "string"
          },
          "message": {
            "description": "Short explanation of what went wrong.",
            "type": "string"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "type": "object"
      }
    }
  },
  "description": "Unauthorized"
}
```

### 403

```json
{
  "content": {
    "application/json": {
      "examples": {
        "forbidden": {
          "summary": "Capability denied",
          "value": {
            "code": "forbidden",
            "message": "This API key does not allow this operation."
          }
        }
      },
      "schema": {
        "additionalProperties": false,
        "description": "Error returned for this endpoint and HTTP status.",
        "properties": {
          "code": {
            "const": "forbidden",
            "description": "Stable error code your app can check.",
            "type": "string"
          },
          "message": {
            "description": "Short explanation of what went wrong.",
            "type": "string"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "type": "object"
      }
    }
  },
  "description": "Forbidden"
}
```

### 422

```json
{
  "content": {
    "application/json": {
      "examples": {
        "invalid_request": {
          "summary": "Invalid request",
          "value": {
            "code": "invalid_request",
            "message": "The request is invalid."
          }
        }
      },
      "schema": {
        "additionalProperties": false,
        "description": "Error returned for this endpoint and HTTP status.",
        "properties": {
          "code": {
            "const": "invalid_request",
            "description": "Stable error code your app can check.",
            "type": "string"
          },
          "message": {
            "description": "Short explanation of what went wrong.",
            "type": "string"
          }
        },
        "required": [
          "code",
          "message"
        ],
        "type": "object"
      }
    }
  },
  "description": "Unprocessable Content"
}
```

## First-party examples

### cURL

```json
{
  "label": "cURL",
  "lang": "shell",
  "source": "curl --request GET \\\n  --url \"$RECUUT_API_URL/merchant/v1/resources\" \\\n  --header \"Authorization: Bearer $RECUUT_API_KEY\"\n"
}
```

```shell
curl --request GET \
  --url "$RECUUT_API_URL/merchant/v1/resources" \
  --header "Authorization: Bearer $RECUUT_API_KEY"

```

## Canonical operation

```json
{
  "description": "Returns the Resources in the environment selected by this API key. Equivalent Resources in another environment may use the same integration key while keeping distinct Resource and revision IDs.",
  "operationId": "resources.list",
  "parameters": [
    {
      "description": "Return archived resources instead of active resources.",
      "in": "query",
      "name": "archived",
      "required": false,
      "schema": {
        "default": false,
        "description": "Return archived resources instead of active resources.",
        "title": "Archived",
        "type": "boolean"
      }
    },
    {
      "description": "Stable snapshot timestamp for this page sequence. Include a timezone; future timestamps are rejected.",
      "in": "query",
      "name": "as_of",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/SnapshotTimestamp"
      }
    },
    {
      "description": "Show the newest or oldest records first.",
      "in": "query",
      "name": "order",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/ListOrder",
        "default": "newest"
      }
    },
    {
      "description": "Page number to return. The first page is 1.",
      "in": "query",
      "name": "page",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/PageNumber",
        "default": 1
      }
    },
    {
      "description": "Number of items to return on each page. Use 1 through 100.",
      "in": "query",
      "name": "page_size",
      "required": false,
      "schema": {
        "$ref": "#/components/schemas/PageSize",
        "default": 50
      }
    }
  ],
  "responses": {
    "200": {
      "content": {
        "application/json": {
          "examples": {
            "resource_page": {
              "summary": "Resource page",
              "value": {
                "as_of": "2026-08-12T09:30:00Z",
                "count": 1,
                "items": [
                  {
                    "created_at": "2026-08-01T08:00:00Z",
                    "description": "Generate a paid quarterly research report.",
                    "id": "res_00000000000070008000000000000000",
                    "image_url": "https://merchant.example/report.png",
                    "name": "Quarterly report",
                    "updated_at": "2026-08-12T09:30:00Z"
                  }
                ],
                "next": null
              }
            }
          },
          "schema": {
            "$ref": "#/components/schemas/PagedResourceSchema"
          }
        }
      },
      "description": "OK"
    },
    "401": {
      "content": {
        "application/json": {
          "examples": {
            "unauthenticated": {
              "summary": "API key required",
              "value": {
                "code": "unauthenticated",
                "message": "A valid Recuut API key is required."
              }
            }
          },
          "schema": {
            "additionalProperties": false,
            "description": "Error returned for this endpoint and HTTP status.",
            "properties": {
              "code": {
                "const": "unauthenticated",
                "description": "Stable error code your app can check.",
                "type": "string"
              },
              "message": {
                "description": "Short explanation of what went wrong.",
                "type": "string"
              }
            },
            "required": [
              "code",
              "message"
            ],
            "type": "object"
          }
        }
      },
      "description": "Unauthorized"
    },
    "403": {
      "content": {
        "application/json": {
          "examples": {
            "forbidden": {
              "summary": "Capability denied",
              "value": {
                "code": "forbidden",
                "message": "This API key does not allow this operation."
              }
            }
          },
          "schema": {
            "additionalProperties": false,
            "description": "Error returned for this endpoint and HTTP status.",
            "properties": {
              "code": {
                "const": "forbidden",
                "description": "Stable error code your app can check.",
                "type": "string"
              },
              "message": {
                "description": "Short explanation of what went wrong.",
                "type": "string"
              }
            },
            "required": [
              "code",
              "message"
            ],
            "type": "object"
          }
        }
      },
      "description": "Forbidden"
    },
    "422": {
      "content": {
        "application/json": {
          "examples": {
            "invalid_request": {
              "summary": "Invalid request",
              "value": {
                "code": "invalid_request",
                "message": "The request is invalid."
              }
            }
          },
          "schema": {
            "additionalProperties": false,
            "description": "Error returned for this endpoint and HTTP status.",
            "properties": {
              "code": {
                "const": "invalid_request",
                "description": "Stable error code your app can check.",
                "type": "string"
              },
              "message": {
                "description": "Short explanation of what went wrong.",
                "type": "string"
              }
            },
            "required": [
              "code",
              "message"
            ],
            "type": "object"
          }
        }
      },
      "description": "Unprocessable Content"
    }
  },
  "security": [
    {
      "OrganizationApiKeyAuth": []
    }
  ],
  "summary": "List resources",
  "tags": [
    "resources"
  ],
  "x-codeSamples": [
    {
      "label": "cURL",
      "lang": "shell",
      "source": "curl --request GET \\\n  --url \"$RECUUT_API_URL/merchant/v1/resources\" \\\n  --header \"Authorization: Bearer $RECUUT_API_KEY\"\n"
    }
  ],
  "x-recuut-filter": {
    "className": "ResourceFilter",
    "parameters": [
      "archived"
    ]
  },
  "x-recuut-pagination": {
    "requestPage": "page",
    "requestSnapshot": "as_of",
    "responseCount": "count",
    "responseItems": "items",
    "responseNext": "next",
    "responseSnapshot": "as_of"
  }
}
```
