---
title: "Partially Update Contract Usage Revenue"
method: PATCH
path: "/rr/api/v1/contracts/{contract_id}/usage/{id}"
tags: ["Revenue Recognition"]
---

# Partially Update Contract Usage Revenue

`PATCH /rr/api/v1/contracts/{contract_id}/usage/{id}`

Retrieve, update, and delete contract usage revenue records

## Path parameters

- `contract_id` integer, required
- `id` integer, required

## Request body

- PatchedContractUsage
  - `id` integer
  - `contract` integer
  - `product` integer, nullable
  - `product_bundle` string
  - `contract_product_bundle` ContractProductBundleRead — Read-only serializer for ContractProductBundle in milestone responses.
    - `id` integer, required
    - `source_bundle` integer, nullable — Original ProductBundle template this was created from
    - `source_bundle_name` string, nullable, required
    - `total_amount` number, double, required — Total amount to be allocated across products
    - `currency` string
    - `lines` ContractProductBundleLineRead[], required
      - `id` integer, required
      - `product` integer, required
      - `product_name` string, required
      - `amount` number, double, required — Dollar amount allocated to this product
      - `percentage` string, required
      - `original_percentage` number, double, nullable — Original percentage from source ProductBundle for auditing
  - `product_name` string
  - `product_bundle_name` string
  - `usage_group` integer, nullable
  - `usage_group_name` string
  - `department` integer, nullable
  - `tags` string
  - `description` string, nullable
  - `start_date` string, date, nullable
  - `end_date` string, date, nullable
  - `lines` string
  - `created_at` string, date-time, nullable
  - `last_modified_at` string, date-time, nullable

## Response `200`

- ContractUsage
  - `id` integer, required
  - `contract` integer, required
  - `product` integer, nullable
  - `product_bundle` string, required
  - `contract_product_bundle` ContractProductBundleRead, required — Read-only serializer for ContractProductBundle in milestone responses.
    - `id` integer, required
    - `source_bundle` integer, nullable — Original ProductBundle template this was created from
    - `source_bundle_name` string, nullable, required
    - `total_amount` number, double, required — Total amount to be allocated across products
    - `currency` string
    - `lines` ContractProductBundleLineRead[], required
      - `id` integer, required
      - `product` integer, required
      - `product_name` string, required
      - `amount` number, double, required — Dollar amount allocated to this product
      - `percentage` string, required
      - `original_percentage` number, double, nullable — Original percentage from source ProductBundle for auditing
  - `product_name` string, required
  - `product_bundle_name` string, required
  - `usage_group` integer, nullable
  - `usage_group_name` string, required
  - `department` integer, nullable
  - `tags` string
  - `description` string, nullable
  - `start_date` string, date, nullable
  - `end_date` string, date, nullable
  - `lines` string, required
  - `created_at` string, date-time, nullable, required
  - `last_modified_at` string, date-time, nullable, required

---

[API](https://skmtc.net/campfire/apis/campfire-developer-apis.md) · [All operations](https://skmtc.net/campfire/apis/campfire-developer-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/campfire/campfire-developer-apis/versions/6945ebc3180e/schema)
