---
title: "Bulk-update configuration values for one slug"
method: POST
path: "/configuration"
tags: ["Admin Configuration"]
---

# Bulk-update configuration values for one slug

`POST /configuration`

## Request

- Base URL: `http://localhost:8000/api/admin`
- URL: `http://localhost:8000/api/admin/configuration`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/bagisto/apis/bagisto-admin-api/docs/configuration/post.ts> (a function with typed inputs; its response is checked against the schema)

Upserts every value in `values` under the given slug, validating server-side against each field's registered `validation` string. Send as `application/json` for scalars or as `multipart/form-data` (with `values[<dotted.code>]` as the file part) when uploading file/image fields.

## Request body

- object
  - `slug` string, required
  - `channel` string
  - `locale` string
  - `values` object, required

## Response `200`

Configuration updated. Returns the freshly-resolved values for the slug.

## Other responses

- `400`: Invalid input
- `401`: Unauthenticated.
- `403`: Missing system.configuration.edit permission.
- `404`: Slug not registered.
- `422`: Validation failed, scope-escape, missing slug/values, or custom-view field write attempt.

---

[API](https://skmtc.dev/bagisto/apis/bagisto-admin-api.md) - [All operations](https://skmtc.dev/bagisto/apis/bagisto-admin-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bagisto/apis/bagisto-admin-api/revisions/3198f11be70f?raw)
