Read Session Grid
POST /dialer/sessions/{session_id}/grid
CONTACTS NOBODY. Reads a page of the session’s contact grid.
A POST because the filter and sort specification is too large for a query
string, not because it changes anything - it mutates nothing and dials
nobody. Tiered read by an explicit rule for that reason, so a read-only
key can page through a queue.
Authorizations
Parameters
Path Parameters
Session id.
Session id.
Header Parameters
Request Body
Mirrors GridPageRequest. A read - it paginates the queue grid.
object
Which contacts in the list are eligible to be dialed.
Narrowing this on a RUNNING session changes who gets called next. It is not a display filter.
object
One clause of a queue filter. conditions nests for AND/OR groups.
conditions is typed as a list of plain objects rather than as a list of
FilterPredicate, ON PURPOSE. Voice’s own model IS recursive, and this
one was too, which made it the only self-referencing schema in the
published contract - and the developer-docs renderer recurses on a
self-referencing schema with no depth limit until Node runs out of memory
(verify-help-docs and User help coverage and rendering both died with
exit 134 on every head that carried it). The wire format is unchanged:
each entry has this same shape (field, op, value, values,
conditions) and is forwarded to voice as-is, which validates it against
its recursive model. The parity test compares field NAMES, so it still
pins this model to voice’s.
object
Responses
200
Successful Response
object
An open envelope for a LIST result, so a bare list keeps its shape.
object
422
Validation Error