# Filter Images

Returns a paginated collection of the tenant's images, filtered and sorted using OData query options ($filter, $orderby, $top, $skip).

## Authentication

Requires a valid API key in the X-API-KEY header.

## Status field values

- Vd - Void (not yet started processing)
- Up - Updating (being uploaded/updated)
- Ok - Processed correctly (ready to use)
- Re - Reprocessing
- Er - Error (processing failed)

## Examples

GET /images?$filter=fileType eq 'jpg'  
GET /images?$filter=status eq 'Ok'  
GET /images?$filter=fileType eq 'png' and status eq 'Ok'  
GET /images?$filter=status in ('Ok', 'Re')  
GET /images?$filter=contains(reference, 'product')  
GET /images?$orderby=createdOn desc  
GET /images?$filter=fileType ne 'gif'&$orderby=numLinks desc&$skip=0&$top=50

## Error Responses

- 400 Bad Request: Invalid filter syntax, unsupported orderby field, invalid pagination parameters, or invalid API key  
- 401 Unauthorized: Missing API key

Endpoint: GET /images
Version: 2.0.0

## Header parameters:

- `X-API-KEY` (string)  
    Tenant's API key (required)

## Query parameters:

- `$filter` (string)  
    OData $filter expression using supported operators and functions

- `$orderby` (string)  
    OData $orderby expression — only specific fields are supported

- `$top` (integer)  
    Maximum number of records to return (default: 100, max: 100)

- `$skip` (integer)  
    Number of records to skip for pagination (default: 0)

## Response 200 fields (application/json):
  
  - `items` (array,null)

- `items.id` (integer)

- `items.reference` (string,null)

- `items.numLinks` (integer)

- `items.status` (string,null)

- `items.modifiedOn` (string)

- `items.fileType` (string,null)

- `items.createdOn` (string,null)

- `items.tags` (array,null)

- `items.originalUrl` (string,null)

- `items.thumbnailUrl` (string,null)

- `items.thumbnailMediumUrl` (string,null)

- `items.thumbnailPreviewUrl` (string,null)

- `items.width` (integer)

- `items.height` (integer)

- `items.sizeInBytes` (integer)

- `count` (integer)

- `hasNext` (boolean)

## Response 400 fields (application/json):

- `type` (string,null)

- `title` (string,null)

- `status` (integer,null)

- `detail` (string,null)

- `instance` (string,null)
