Skip to content
  • Auto
  • Light
  • Dark
Talk to an expert

Edit Commit

Edit a commit
v2.contracts.edit_commit(**kwargs) -> dataIDContractEditCommitResponse
post/v2/contracts/commits/edit

Edit a customer or contract commit. Contract commits can only be edited using this endpoint if contract editing is enabled.

Parameters
commit_idString

ID of the commit to edit

formatuuid
customer_idString

ID of the customer whose commit is being edited

formatuuid
access_scheduleobject
optional
{ add_schedule_items, remove_schedule_items, update_schedule_items}
Hide ParametersShow Parameters
add_schedule_itemsarray
optional
Array[{ amount, ending_before, starting_at}]
Hide ParametersShow Parameters
amountFloat
ending_beforeTime
formatdate-time
starting_atTime
formatdate-time
remove_schedule_itemsarray
optional
Array[{ id}]
Hide ParametersShow Parameters
idString
formatuuid
update_schedule_itemsarray
optional
Array[{ id, amount, ending_before, starting_at}]
Hide ParametersShow Parameters
idString
formatuuid
amountFloat
optional
ending_beforeTime
optional
formatdate-time
starting_atTime
optional
formatdate-time
applicable_product_idsarray
optional
Array[String]

Which products the commit applies to. If applicable_product_ids, applicable_product_tags or specifiers are not provided, the commit applies to all products.

applicable_product_tagsarray
optional
Array[String]

Which tags the commit applies to. If applicable_product_ids, applicable_product_tags or specifiers are not provided, the commit applies to all products.

invoice_contract_idString
optional

ID of contract to use for invoicing

formatuuid
invoice_scheduleobject
optional
{ add_schedule_items, remove_schedule_items, update_schedule_items}
Hide ParametersShow Parameters
add_schedule_itemsarray
optional
Array[{ timestamp, amount, quantity, unit_price}]
Hide ParametersShow Parameters
timestampTime
formatdate-time
amountFloat
optional
quantityFloat
optional
unit_priceFloat
optional
remove_schedule_itemsarray
optional
Array[{ id}]
Hide ParametersShow Parameters
idString
formatuuid
update_schedule_itemsarray
optional
Array[{ id, amount, quantity, 2 more}]
Hide ParametersShow Parameters
idString
formatuuid
amountFloat
optional
quantityFloat
optional
timestampTime
optional
formatdate-time
unit_priceFloat
optional
priorityFloat
optional

If multiple commits are applicable, the one with the lower priority will apply first.

product_idString
optional
formatuuid
specifiersarray
optional
Array[{ presentation_group_values, pricing_group_values, product_id, product_tags}]

List of filters that determine what kind of customer usage draws down a commit or credit. A customer's usage needs to meet the condition of at least one of the specifiers to contribute to a commit's or credit's drawdown. This field cannot be used together with applicable_product_ids or applicable_product_tags. Instead, to target usage by product or product tag, pass those values in the body of specifiers.

Hide ParametersShow Parameters
presentation_group_valueshash
optional
Hash[Symbol, String]
pricing_group_valueshash
optional
Hash[Symbol, String]
product_idString
optional

If provided, the specifier will only apply to the product with the specified ID.

formatuuid
product_tagsarray
optional
Array[String]

If provided, the specifier will only apply to products with all the specified tags.

Returns
ContractEditCommitResponseclass
Hide ParametersShow Parameters
dataidStringID
require "metronome_sdk"

metronome = MetronomeSDK::Client.new(bearer_token: "My Bearer Token")

response = metronome.v2.contracts.edit_commit(
  commit_id: "5e7e82cf-ccb7-428c-a96f-a8e4f67af822",
  customer_id: "4c91c473-fc12-445a-9c38-40421d47023f"
)

puts(response)
200 Example
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e"
  }
}