# List Storage instances

Get `https://app.mk.io/api/v1/projects/:project_name/media/storage`

## Listing, Sorting and Filtering Storage Instances

This endpoint returns the list of storage instances in the specified project.

### Sorting

The results from this endpoint can be ordered using the `$orderby` query parameter. Specify a list of field names, separated by commas where each one can optionally specify `asc` or `desc`.

Sorting is valid on the following fields: `created`, `createdBy`, `id`, `name`, `privateLinkServiceConnectionStatus`, `type`, `updated`, `updatedBy`, `url`

### Filtering

The `$filter` query parameter allows for storage instances to be filtered on the basis of fields in the schema using OData query syntax. See [this document](https://learn.microsoft.com/en-us/odata/concepts/queryoptions-overview#filter) for more details on the syntax used.

Filters are valid on the following fields: `cloud/name`, `cloud/region/name`, `created`, `createdBy`, `createdByEmail`, `createdByName`, `id`, `name`, `privateLinkServiceConnectionStatus`, `region`, `type`, `updated`, `updatedBy`, `updatedByEmail`, `updatedByName`, `url`

### Examples:

`?$top=10` - Returns only the first 10 storage instances from the list.

`?$orderby=name desc` - Sorts storage instances by name in descending order.

`?$filter=name eq 'descriptive name'` - Returns storage instances that match the provided name.

`?$orderby=created desc` - Sorts storage instances by creation date in descending order.

`?$filter=created ge 2021-01-01T00:00:00Z` - Returns storage instances created after January 1, 2021.

RBAC Capability Required: `infra.storage.get`

## Authentication

Authorization Bearer

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

## Path parameters

project_name string Required

## Query parameters

- `$orderby` string Optional

Specifies the key by which the result collection should be ordered.

- `$filter` string Optional

Restricts the set of items returned.

- `$top` string Optional

Specifies a non-negative integer `n` that limits the number of items returned from a collection. The service returns the number of available items up to but not greater than the specified value `n`.

- `$skiptoken` string Optional

Specifies a start offset to support paginated results. Use `@odata.nextLink` in the result object to enumerate the collection - it will be present only if there's more than one page of entities.

## Response

200 A list of Storage instances

- `@odata.nextLink` string Optional

`@odata.nextLink` URL if the page length and number of items match.

- `supplemental` object [ListResponseSupplementalSchema](https://docs.mediakind.com/api-reference/media-api/schemas/listresponsesupplementalschema) Required

Supplemental info

- `count` integer Required

Number of items returned

- `kind` string Required

Type of items in the list

- `operation` string Required

Operation type. Should always say 'list'

- `pagination` object [PaginationInfoSchema](https://docs.mediakind.com/api-reference/media-api/schemas/paginationinfoschema) Required

Pagination info

- `end` integer Required

Position of the last item in the list

- `records` integer Required

Total number of items returned in the list

- `start` integer Required

Position of the first item in the list

- `total` integer Required

Total number of items in the project

- `subscription` object [ProjectInfoSchema](https://docs.mediakind.com/api-reference/media-api/schemas/projectinfoschema) Optional

Project info

- `id` string Required

Project ID

- `name` string Required

Project name

- `value` list of objects [StorageSchemaGet](https://docs.mediakind.com/api-reference/media-api/schemas/storageschemaget) Required

List of storage instances.

- `kind` string Optional

The kind of record.

- `metadata` object [BlobStorageMetadataSchema](https://docs.mediakind.com/api-reference/media-api/schemas/blobstoragemetadataschema) Required

Metadata about the storage instance.

- `created` string Optional format: date-time

The time when the resource was created

- `createdBy` string Optional format: uuid

ID of the user who created the resource

- `createdByEmail` string Optional

Email of the user who created the resource

- `id` string Required format: uuid

The ID of the resource

- `name` string Optional

The name of the resource

- `updated` string Optional format: date-time

The time when the resource was last updated

- `updatedBy` string Optional format: uuid

ID of the user who last updated the resource

- `updatedByEmail` string Optional

Email of the user who last updated the resource

- `spec` object Required

The specification of the storage instance.

Show 3 variants

Discriminated by `type`. Select one variant:

- `Microsoft.Storage` object [AzureStorageSpecRead](https://docs.mediakind.com/api-reference/media-api/schemas/azurestoragespecread)

- `AWS.S3` object [AWSStorageSpecRead](https://docs.mediakind.com/api-reference/media-api/schemas/awsstoragespecread)

- `Google.Storage` object [GoogleStorageSpecRead](https://docs.mediakind.com/api-reference/media-api/schemas/googlestoragespecread)

## Errors

### 400 Bad Request

- `error` object [ErrorDetail](https://docs.mediakind.com/api-reference/media-api/schemas/errordetail) Required

Pertinent information about the error

- `code` string Required

The error code.

- `detail` string Required

The error message.

- `extraDetail` map from strings to any Optional

Extra information regarding this error.

Show value schema

[any key] any

- `ref` string Required

A reference to the request that caused the error.

- `status` integer Required

The HTTP status code

### 401 Unauthorized

- `error` object [ErrorDetail](https://docs.mediakind.com/api-reference/media-api/schemas/errordetail) Required

Pertinent information about the error

- `code` string Required

The error code.

- `detail` string Required

The error message.

- `extraDetail` map from strings to any Optional

Extra information regarding this error.

Show value schema

[any key] any

- `ref` string Required

A reference to the request that caused the error.

- `status` integer Required

The HTTP status code

### 403 Forbidden

- `error` object [ErrorDetail](https://docs.mediakind.com/api-reference/media-api/schemas/errordetail) Required

Pertinent information about the error

- `code` string Required

The error code.

- `detail` string Required

The error message.

- `extraDetail` map from strings to any Optional

Extra information regarding this error.

Show value schema

[any key] any

- `ref` string Required

A reference to the request that caused the error.

- `status` integer Required

The HTTP status code

### 404 Not Found

- `error` object [ErrorDetail](https://docs.mediakind.com/api-reference/media-api/schemas/errordetail) Required

Pertinent information about the error

- `code` string Required

The error code.

- `detail` string Required

The error message.

- `extraDetail` map from strings to any Optional

Extra information regarding this error.

Show value schema

[any key] any

- `ref` string Required

A reference to the request that caused the error.

- `status` integer Required

The HTTP status code

### 429 Too Many Requests

- `error` object [ErrorDetail](https://docs.mediakind.com/api-reference/media-api/schemas/errordetail) Required

Pertinent information about the error

- `code` string Required

The error code.

- `detail` string Required

The error message.

- `extraDetail` map from strings to any Optional

Extra information regarding this error.

Show value schema

[any key] any

- `ref` string Required

A reference to the request that caused the error.

- `status` integer Required

The HTTP status code

### 500 Internal Server Error

- `error` object [ErrorDetail](https://docs.mediakind.com/api-reference/media-api/schemas/errordetail) Required

Pertinent information about the error

- `code` string Required

The error code.

- `detail` string Required

The error message.

- `extraDetail` map from strings to any Optional

Extra information regarding this error.

Show value schema

[any key] any

- `ref` string Required

A reference to the request that caused the error.

- `status` integer Required

The HTTP status code
