> ## Documentation Index
> Fetch the complete documentation index at: https://api-documentation.kare-app.fr/llms.txt
> Use this file to discover all available pages before exploring further.

# Templates

> API changes for the Templates module.

<Update label="2026-07-08">
  **12 API change(s) — ⚠️ includes 12 breaking change(s)**

  **`GET /rs/templates/v1/`**

  * api path removed without deprecation

  **`POST /rs/templates/v1/linked`**

  * api path removed without deprecation

  **`PATCH /rs/templates/v1/linked/{id}`**

  * api path removed without deprecation

  **`POST /rs/templates/v1/simple`**

  * api path removed without deprecation

  **`PATCH /rs/templates/v1/simple/{id}`**

  * api path removed without deprecation

  **`DELETE /rs/templates/v1/{id}`**

  * api path removed without deprecation

  **`GET /rs/templates/v1/{id}`**

  * api path removed without deprecation

  **`POST /rs/templates/v1/{id}/archive`**

  * api path removed without deprecation

  **`DELETE /rs/templates/v1/{id}/document`**

  * api path removed without deprecation

  **`PUT /rs/templates/v1/{id}/document`**

  * api path removed without deprecation

  **`PUT /rs/templates/v1/{id}/image`**

  * api path removed without deprecation

  **`PUT /rs/templates/v1/{id}/upload-examples/{kind}`**

  * api path removed without deprecation
</Update>

<Update label="2026-06-26">
  **11 API change(s)**

  **`GET /rs/templates/v1/`**

  * api operation id `listTemplatesRsV1` removed and replaced with `listTemplatesRSV1`

  **`POST /rs/templates/v1/linked`**

  * api operation id `createLinkedTemplateRsV1` removed and replaced with `createLinkedTemplateRSV1`

  **`PATCH /rs/templates/v1/linked/{id}`**

  * api operation id `updateLinkedTemplateRsV1` removed and replaced with `updateLinkedTemplateRSV1`

  **`PATCH /rs/templates/v1/simple/{id}`**

  * api operation id `updateSimpleTemplateRsV1` removed and replaced with `updateSimpleTemplateRSV1`

  **`DELETE /rs/templates/v1/{id}`**

  * api operation id `deleteTemplateRsV1` removed and replaced with `deleteTemplateRSV1`

  **`GET /rs/templates/v1/{id}`**

  * api operation id `getTemplateRsV1` removed and replaced with `getTemplateRSV1`

  **`POST /rs/templates/v1/{id}/archive`**

  * api operation id `archiveTemplateRsV1` removed and replaced with `archiveTemplateRSV1`

  **`DELETE /rs/templates/v1/{id}/document`**

  * api operation id `removeTemplateDocumentRsV1` removed and replaced with `removeTemplateDocumentRSV1`

  **`PUT /rs/templates/v1/{id}/document`**

  * api operation id `upsertTemplateDocumentRsV1` removed and replaced with `upsertTemplateDocumentRSV1`

  **`PUT /rs/templates/v1/{id}/image`**

  * api operation id `upsertTemplateImageRsV1` removed and replaced with `upsertTemplateImageRSV1`

  **`PUT /rs/templates/v1/{id}/upload-examples/{kind}`**

  * api operation id `upsertTemplateUploadExampleRsV1` removed and replaced with `upsertTemplateUploadExampleRSV1`
</Update>

<Update label="2026-06-10">
  **69 API change(s) — ⚠️ includes 51 breaking change(s)**

  **`GET /rs/templates/v1/`**

  * for the `query` request parameter `whereCategoryId`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * the `data/items/category/id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * the `data/items/categoryId` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * the `data/items/id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * the `data/items/organizationId` response's property type/format changed from `string`/`cuid2` to `string`/\`\` for status `200`
  * changed the pattern of the `query` request parameter `whereCategoryId` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * the `data/items/category/id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `data/items/categoryId` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `data/items/id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `data/items/organizationId` response's property pattern `^[0-9a-z]+$` was removed for the status `200`

  **`POST /rs/templates/v1/linked`**

  * the `parentId` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `tagIds/items/` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `201`
  * changed the pattern of the request property `parentId` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * changed the pattern of the request property `tagIds/items/` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * removed the pattern `^[0-9a-z]+$` from the request property `organizationId`
  * the `organizationId` request property type/format was generalized from `string`/`cuid2` to `string`/\`\`
  * the `id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `201`

  **`PATCH /rs/templates/v1/linked/{id}`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * the `parentId` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `tagIds/items/` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * changed the pattern of the request property `parentId` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * changed the pattern of the request property `tagIds/items/` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * the `id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`

  **`GET /rs/templates/v1/rate-limit-demo`**

  * api path removed without deprecation

  **`POST /rs/templates/v1/simple`**

  * the `categoryId` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `tagIds/items/` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `201`
  * changed the pattern of the request property `categoryId` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * changed the pattern of the request property `tagIds/items/` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * removed the pattern `^[0-9a-z]+$` from the request property `organizationId`
  * the `organizationId` request property type/format was generalized from `string`/`cuid2` to `string`/\`\`
  * the `id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `201`

  **`PATCH /rs/templates/v1/simple/{id}`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * the `categoryId` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `tagIds/items/` request property type/format changed from `string`/`cuid2` to `string`/`uuid`
  * the `id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * changed the pattern of the request property `categoryId` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * changed the pattern of the request property `tagIds/items/` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * the `id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`

  **`DELETE /rs/templates/v1/{id}`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`

  **`GET /rs/templates/v1/{id}`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * the `category/id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * the `categoryId` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * the `id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * the `organizationId` response's property type/format changed from `string`/`cuid2` to `string`/\`\` for status `200`
  * the `parentId` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * the `category/id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `categoryId` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `parentId` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`
  * the `organizationId` response's property pattern `^[0-9a-z]+$` was removed for the status `200`

  **`POST /rs/templates/v1/{id}/archive`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * the `id` response's property type/format changed from `string`/`cuid2` to `string`/`uuid` for status `200`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
  * the `id` response's property pattern was changed from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` for the status `200`

  **`DELETE /rs/templates/v1/{id}/document`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`

  **`PUT /rs/templates/v1/{id}/document`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`

  **`PUT /rs/templates/v1/{id}/image`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`

  **`PUT /rs/templates/v1/{id}/upload-examples/{kind}`**

  * for the `path` request parameter `id`, the type/format was changed from `string`/`cuid2` to `string`/`uuid`
  * changed the pattern of the `path` request parameter `id` from `^[0-9a-z]+$` to `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$`
</Update>
