Errors
value_sql_not_permitted
400 — The request body carried raw SQL in a value_sql field
What happened
The request body contained a value_sql field somewhere inside it. Raw SQL is
never accepted in a request body, so the request was refused before anything
was saved or counted.
Why it usually happens
A metric or criteria definition was written with value_sql instead of the
structured fields. The check walks the whole body, so a value_sql nested deep
inside an audience criteria_json tree is refused the same way as one at the
top level.
How to fix
- Remove every
value_sqlfield from the body. - Describe the value with the structured fields instead: an aggregation plus filters for a metric, or the criteria grammar for an audience.
Envelope
{
"error": {
"code": "value_sql_not_permitted",
"message": "Raw SQL in a metric definition is not accepted. Describe the metric with aggregation + filters instead.",
"param": "numerator.value_sql",
"doc_url": "https://docs.fullvision.io/errors/value_sql_not_permitted",
"trace_id": "tr_01HXYZ..."
}
}