Skip to content

Warnings

A write that carries revenue is not refused over a part of it that cannot be used. The rest lands, and each part that did not is a warning in response_metadata.warnings, with a code, the field it came from and a message:

{
"response_metadata": {
"warnings": [
{
"code": "property_type_mismatch",
"field": "properties.seats",
"message": "`seats` holds number values in this source, and `many` is not one."
}
]
}
}

The codes are property_type_mismatch, a value that does not fit its key’s type; property_key_refused, a key that could not be registered; and customers_merged, when the identities a write names belong to another customer, which is then merged into this one. A merge cannot be undone.

To have a write refused rather than partly applied, send "on_warning": "error". Nothing is saved, and the warnings come back as errors with the same codes. That suits a form, where somebody is waiting to be told what to fix; an integration that sends data usually wants the default, warn.