---
title: "Get all configurations or a sub-list."
method: GET
path: "/configuration"
tags: ["v1"]
---

# Get all configurations or a sub-list.

`GET /configuration`

## Request

- Base URL: `` (relative, and it does not resolve against the document’s source URL)
- URL: `/configuration`
- Auth: one of:
  - API key in header `sessionKey`
  - API key in header `clientCode`
  - API key in header `hmac-auth`
  - API key in header `jwt`
- TypeScript: <https://skmtc.dev/erply/apis/cafa-api/docs/configuration/get.ts> (a function with typed inputs; its response is checked against the schema)

All those parameters work like filters. You can search for all configs by type or by level. Or get all configs of Pos 1.
With `Look-Deeper` header set to `true` you will get the following logic of the request:
When you request a config at a User or Warehouse levels, if it is not there it will check Company level as well. When you request a config at a POS level, if it is not there it will check Warehouse (if request to ERPLY API was ok to get the Warehouse ID) and Company levels as well.

## Query parameters

- `application` string
- `level` 'Company' | 'Warehouse' | 'Pos' | 'User' | 'Device'
- `level_id` string
- `type` string
- `name` string

## Headers

- `timestamp` string
- `Look-Deeper` boolean

## Response `200`

OK

- Configuration[]
  - `added` integer
  - `addedby_id` integer
  - `application` string
  - `changed` integer
  - `changedby_id` integer
  - `id` string
  - `level` string: Level is optional
  - `level_id` string: LevelID is optional
  - `name` string
  - `type` string: Type is optional
  - `value` unknown

## Other responses

- `400`: Bad Request
- `500`: Internal Server Error

---

[API](https://skmtc.dev/erply/apis/cafa-api.md) - [All operations](https://skmtc.dev/erply/apis/cafa-api/llms.txt) - [OpenAPI document](https://skmtc.dev/erply/apis/cafa-api/revisions/dc9468557835?raw)
