Create override
https://app.iteras.dk/api/customers/createoverride/
The /api/customers/createoverride/ endpoint creates an override of an aspect on the customer or on a subscription for the customer, e.g. the delivery address, or a suspended delivery. Iteras uses this to model vacations, scheduled future changes and internally also suspensions due to missing payments.
The concept is useful if the modification is only temporary or in the future, otherwise you'd just change the customer or subscription directly. Scheduled future changes are applied automatically by Iteras when their time comes.
If you need to change or delete an override, use the update customer override or delete customer override endpoint. Some fields are locked once an override is active, and only overrides that have not taken effect yet can be deleted.
Available override types
| Name | Description |
|---|---|
| Future change of fields (customer or subscription) change-fields |
Set begin to when the change takes effect and new_values with the fields to change. |
| Future change of delivery address (customer or subscription) change-delivery-address |
Set begin to when the new address takes effect and address. |
| Future change of billing address (customer or subscription) change-billing-address |
Set begin to when the new address takes effect and address. |
| Pause deliveries (subscription) pause-delivery |
Set subscription_id, begin and end for the interval deliveries are paused. |
| Pause deliveries and donate (subscription) pause-delivery-donate |
Set subscription_id, begin and end for the interval deliveries are paused and donated. |
| Send to another address (subscription) alternative-delivery |
Set subscription_id, begin and end for the interval the subscription is sent to address; optionally weekdays. |
| Pause subscription (subscription) pause-subscription |
Set subscription_id, begin and end for the period the subscription is paused; optionally pause_reason, e.g. "Vacation". |
An address change on a subscription only works if the subscription has an address field for the relevant address type.
Parameters
-
id string requiredID of the customer.
-
subscription_id stringID of the subscription. Required for the subscription-only overrides
pause-delivery,pause-delivery-donate,alternative-deliveryandpause-subscription. -
override_type string requiredThe type of override. One of
change-fields,change-delivery-address,change-billing-address,pause-delivery,pause-delivery-donate,alternative-deliveryorpause-subscription. -
begin stringWhen the override takes effect, e.g.
2026-11-09T01:35:26. The default is now. -
end stringWhen the override ends. Required for
alternative-delivery,pause-delivery,pause-delivery-donateandpause-subscription, and not valid for the future change overrides. -
address objectThe new address, for the overrides that change the delivery or billing address, or send to another address, e.g.
{"name": "John Doe", "address": "Main Street 12\n8000 Aarhus", "country": "DK"}.address,countryandnameare required, orcompanyinstead ofnamefor the address types that allow a company. The country must be the customer's own where the subscription's policy does not allow sending to another country. -
new_values objectThe fields to change and their new values, for a
change-fieldsoverride. Reference built-in fields by name and custom fields by their field ID, e.g.{"name": "New Name", ":Membership level": "Gold"}. The field ID is the field name with a colon prepended or, if defined, the external identifier of the field. See the custom fields set up for your account below. -
pause_reason stringA reason for pausing, for a
pause-subscriptionoverride, e.g."Vacation". -
weekdays arrayThe weekdays the override applies to, for an address override, given as numbers with 1 being Monday and 7 being Sunday, e.g.
[1, 3, 5]. -
skip_processing booleanSet to
trueto register the override without processing it, for importing older overrides. The effective date and overlapping checks are skipped in this mode.
A change-fields override can change a built-in customer or subscription field, or a custom field.
You can set any custom customer field, using its field id (the field name with a colon prepended, or its external identifier).
Log in, or send your API key as a bearer token, to see the custom customer fields set up for your account.
You can set any custom subscription field, using its field id (the field name with a colon prepended, or its external identifier).
Log in, or send your API key as a bearer token, to see the custom subscription fields set up for your account.
Examples
Suspend deliveries for a period:
POST /api/customers/createoverride/ HTTP/1.1
Content-Type: application/json{
"id": "12345",
"override_type": "pause-delivery",
"end": "2026-11-09T01:35:26"
}Change the delivery address at a future date:
POST /api/customers/createoverride/ HTTP/1.1
Content-Type: application/json{
"id": "12345",
"override_type": "change-delivery-address",
"begin": "2026-11-09T01:35:26",
"address": {
"name": "John Doe",
"address": "Main Street 12\n8000 Aarhus",
"country": "DK"
}
}Change a built-in and a custom field at a future date:
POST /api/customers/createoverride/ HTTP/1.1
Content-Type: application/json{
"id": "12345",
"override_type": "change-fields",
"begin": "2026-10-23T01:35:26",
"new_values": {
"name": "New Name",
":Custom field": "Eksempeltekst"
}
}The endpoint returns the ID of the new override:
{ "override_id": "77642" }
Errors
Invalid requests due to programming error, e.g. invalid JSON, returns 400.
This also covers giving neither id nor
subscription_id, a missing subscription_id for a
subscription-only override, an unknown override_type, a
field with the wrong type, a field that does not belong to the override
type, e.g. new_values for an address override or
end for a future change override, and a missing required
field, e.g. new_values for a change-fields override,
end for a vacation override or address for an
address override.
A well-formed operation where a supplied value is invalid is not executed
and returns an HTTP 422 error. This covers an end that isn't
later than begin, an invalid new_values or
address, an override type the subscription's policy does not
allow, an override that takes effect before the earliest
possible delivery date or on a date blocked for delivery changes, and an
override that overlaps an existing one. Errors that are not specific to a
field are returned with the empty string as key, e.g. an unknown
subscription:
{
"": ["Subscription does not exist."]
}
A subscription that belongs to a different customer is reported under
subscription_id:
{
"subscription_id": ["The subscription does not belong to the customer."]
}