---
title: "Edit the concept or collection with id `c_id`."
method: PUT
path: "/conceptschemes/{scheme_id}/c/{c_id}"
tags: ["Atramhasis"]
---

# Edit the concept or collection with id \`c_id\`.

`PUT /conceptschemes/{scheme_id}/c/{c_id}`

## Request

- Base URL: `/` (relative, and the document was published on a file host, not at the API’s origin)
- URL: `/conceptschemes/{scheme_id}/c/{c_id}`
- Auth: none declared
- TypeScript: <https://skmtc.dev/onroerenderfgoed/apis/atramhasis-api/docs/conceptschemes/:scheme_id/c/:c_id/put.ts> (a function with typed inputs; its response is checked against the schema)

Edit the concept or collection with id `c_id`. The response body will contain a representation of the concept or collection after the modifications.

## Path parameters

- `scheme_id` string, required
- `c_id` string, required

## Request body

- union
  - ConceptDetail
    - `id` string
    - `type` 'concept', required
    - `labels` Label[], required
      - `type` string, required
      - `language` string, required: IANA language tag
      - `label` string, required
    - `notes` Note[]
      - `note` string
      - `type` string
      - `language` string
      - `markup` string, nullable
    - `sources` Source[]
      - `citation` string
      - `markup` string, nullable
    - `member_of` object[]
      - `id` string: A collection id
    - `related` object[]
      - `id` string: A concept id
    - `broader` object[]
      - `id` string: A concept id
    - `narrower` object[]
      - `id` string: A concept id
    - `matches` Matches
      - `broad` string[]
      - `close` string[]
      - `exact` string[]
      - `narrow` string[]
      - `related` string[]
    - `subordinate_arrays` object[]
      - `id` string: A collection id
    - `label` string
    - `uri` string
    - `concept_scheme` object
      - `uri` string
      - `labels` Label[]
        - `type` string, required
        - `language` string, required: IANA language tag
        - `label` string, required
  - CollectionDetail
    - `id` string: If the provider is set to have a manual id_generation_strategy
    - `type` 'collection', required
    - `labels` Label[], required
      - `type` string, required
      - `language` string, required: IANA language tag
      - `label` string, required
    - `notes` Note[]
      - `note` string
      - `type` string
      - `language` string
      - `markup` string, nullable
    - `sources` Source[]
      - `citation` string
      - `markup` string, nullable
    - `member_of` object[]
      - `id` string: A collection id
    - `members` object[]
      - `id` string: A concept or collection id
    - `superordinates` object[]
      - `id` string: A concept id
    - `infer_concept_relations` boolean
    - `label` string
    - `uri` string

## Response `200`

The concept or collection was edited succesfully.

- union
  - ConceptDetail
    - `id` string
    - `type` 'concept', required
    - `labels` Label[], required
      - `type` string, required
      - `language` string, required: IANA language tag
      - `label` string, required
    - `notes` Note[]
      - `note` string
      - `type` string
      - `language` string
      - `markup` string, nullable
    - `sources` Source[]
      - `citation` string
      - `markup` string, nullable
    - `member_of` object[]
      - `id` string: A collection id
    - `related` object[]
      - `id` string: A concept id
    - `broader` object[]
      - `id` string: A concept id
    - `narrower` object[]
      - `id` string: A concept id
    - `matches` Matches
      - `broad` string[]
      - `close` string[]
      - `exact` string[]
      - `narrow` string[]
      - `related` string[]
    - `subordinate_arrays` object[]
      - `id` string: A collection id
    - `label` string
    - `uri` string
    - `concept_scheme` object
      - `uri` string
      - `labels` Label[]
        - `type` string, required
        - `language` string, required: IANA language tag
        - `label` string, required
  - CollectionDetail
    - `id` string: If the provider is set to have a manual id_generation_strategy
    - `type` 'collection', required
    - `labels` Label[], required
      - `type` string, required
      - `language` string, required: IANA language tag
      - `label` string, required
    - `notes` Note[]
      - `note` string
      - `type` string
      - `language` string
      - `markup` string, nullable
    - `sources` Source[]
      - `citation` string
      - `markup` string, nullable
    - `member_of` object[]
      - `id` string: A collection id
    - `members` object[]
      - `id` string: A concept or collection id
    - `superordinates` object[]
      - `id` string: A concept id
    - `infer_concept_relations` boolean
    - `label` string
    - `uri` string

## Other responses

- `400`: The concept or collection could not be edited because the submitted json was invalid due to eg. validation errors.
- `404`: The conceptscheme `scheme_id` or the concept or collection `c_id` does not exist.
- `405`: The concept or collection could not be edited because the conceptscheme `scheme_id` is a readonly conceptscheme.
- `500`: OpenAPI request/response validation failed

## Changes

- **2025-11-20** `d98571488187`: 3 breaking, 13 warning, 2 info
  - the request's body type changed from `object` to no type
  - added `#/components/schemas/ConceptDetail, #/components/schemas/CollectionDetail` to the response body `oneOf` list for the response status `200`
  - the `errors` response's property type changed from `string` to `array` for status `400`
  - removed the request property `broader`
  - …14 more
- **2024-08-01** `20edc4da41fd`: 15 breaking, 1 info
  - the `broader/items/id` request property type changed from `integer` to `string`
  - the `id` request property type changed from `integer` to `string`
  - the `member_of/items/id` request property type changed from `integer` to `string`
  - the `members/items/id` request property type changed from `integer` to `string`
  - …12 more
- **2021-12-22** `042de7aa8903`: 2 info
  - api tag `Atramhasis` added
  - api tag `Concepts and collections` removed
- **2021-12-20** `720170256c20`: 4 breaking, 17 info
  - removed `#/components/schemas/ConceptDetail, #/components/schemas/CollectionDetail` from the request body `oneOf` list
  - the request's body type changed from no type to `object`
  - for the `path` request parameter `c_id`, the type changed from `string` to `integer`
  - the `errors` response's property type changed from `array` to `string` for status `400`
  - …17 more

[Operation history](https://skmtc.dev/onroerenderfgoed/apis/atramhasis-api/changes/conceptschemes/:scheme_id/c/:c_id/put.md)

---

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