---
title: "Update existing bill."
method: PUT
path: "/v1/bills/{id}"
tags: ["bills"]
---

# Update existing bill.

`PUT /v1/bills/{id}`

Update existing bill.

## Path parameters

- `id` string, required

## Headers

- `X-Trace-Id` string, uuid

## Request body

- BillUpdate
  - `currency_id` string, string — Use either currency_id or currency_code
  - `currency_code` string, string — Use either currency_id or currency_code
  - `name` string, string, required
  - `amount_min` string, amount
  - `amount_max` string, amount
  - `date` string, date-time
  - `end_date` string, date-time — The date after which this bill is no longer valid or applicable
  - `extension_date` string, date-time — The date before which the bill must be renewed (or cancelled)
  - `repeat_freq` 'weekly' | 'monthly' | 'quarterly' | 'half-year' | 'yearly', string — How often the bill must be paid.
  - `skip` integer — How often the bill must be skipped. 1 means a bi-monthly bill.
  - `active` boolean — If the bill is active.
  - `notes` string, string, nullable
  - `object_group_id` string, string, nullable — The group ID of the group this object is part of. NULL if no group.
  - `object_group_title` string, string, nullable — The name of the group. NULL if no group.

## Response `200`

Updated bill stored, result in response

## Other responses

- `400` — Bad request
- `401` — Unauthenticated
- `404` — Page not found
- `422` — Validation error. The body will have the exact details.
- `500` — Internal exception

---

[API](https://skmtc.dev/firefly-iii/apis/firefly-iii-api-develop.md) · [All operations](https://skmtc.dev/firefly-iii/apis/firefly-iii-api-develop/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/firefly-iii/firefly-iii-api-develop/revisions/8a1f6472e04b/schema)
