---
title: "Create a rent index"
method: POST
path: "/legislative-zones/rent-indices"
tags: ["Rent Regulation & Rent Control"]
---

# Create a rent index

`POST /legislative-zones/rent-indices`

## Request

- Base URL: `https://api.faireplace.com/api`
- URL: `https://api.faireplace.com/api/legislative-zones/rent-indices`
- Auth: HTTP bearer

Creates a new rent index definition.

Requires the `leases:write` permission.

## Usage Example

```bash
curl -X POST https://api.faireplace.com/api/legislative-zones/rent-indices \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "code": "IRL",
    "name": "Indice de Référence des Loyers",
    "publication_frequency": "Quarterly",
    "source_organization": "INSEE"
  }'
```

## Request body

- CreateRentIndexRequest: Request to create a rent index.
  - `code` string, required: Index code (e.g. `IRL`). 1-20 characters.
  - `name` string, required: Index name. 1-255 characters.
  - `description` string, nullable: Optional description.
  - `publication_frequency` 'Quarterly' | 'Monthly' | 'Annually': Publication frequency of a rent index.
  - `source_organization` string, nullable: Organization publishing the index.

## Response `201`

Rent index created successfully

- RentIndex: A rent index definition (e.g. IRL: Indice de Référence des Loyers). Indices are referenced by rent revisions; their periodic values are stored separately (see `RentIndexValue`).
  - `id` string, uuid, required: Unique index identifier.
  - `tenant_id` string, nullable: Tenant (organization) identifier owning this index. Null for global/system indices.
  - `code` string, required: Index code (e.g. `IRL`, `ILC`, `ILAT`). 1-20 characters.
  - `name` string, required: Human-readable index name. 1-255 characters.
  - `description` string, nullable: Optional description of the index.
  - `publication_frequency` 'Quarterly' | 'Monthly' | 'Annually': Publication frequency of a rent index.
  - `source_organization` string, nullable: Organization publishing the index (e.g. INSEE).
  - `created_at` string, date-time, required: Creation timestamp (ISO 8601).
  - `updated_at` string, date-time, required: Last update timestamp (ISO 8601).

## Other responses

- `400`: Bad request
- `401`: Unauthorized
- `403`: Forbidden
- `422`: Unprocessable Entity
- `500`: Internal Server Error

---

[API](https://skmtc.dev/faireplace/apis/faireplace-property-management-api.md) · [All operations](https://skmtc.dev/faireplace/apis/faireplace-property-management-api/llms.txt) · [OpenAPI document](https://skmtc.dev/faireplace/apis/faireplace-property-management-api/revisions/69de39762919?raw)
