Skip to main content
A schema defines the structured output fields a request returns and which inputs are required to submit one. Pass its schemaId on POST /v1/requests to invoke it. Two endpoints make request creation self-service: discover the schemas your account is provisioned for, and look up the input keys each one needs. Both endpoints use the same bearer-token authentication as the rest of the API. All non-2xx responses use the uniform {error, message, [details]} envelope (see Errors).

List your schemas

Response

Schemas that are no longer accessible for your account are filtered out of this list.

Look up required and optional inputs

Once you have a schemaId, fetch the input keys it accepts. The response carries two sorted, disjoint lists: requiredInputs.fields (must be supplied or you get INVALID_INPUTS) and optionalInputs.fields (accepted but not required, useful for “build a request” forms that want to surface every accepted key).

Response

Field-name keys are returned verbatim: the same names the POST /v1/requests validator expects in inputs. If SuperDial updates the schema, call this endpoint again (or refresh your cache) before relying on a fixed list in code.
If your account is enabled for payer phone number lookup, phoneNumber moves out of requiredInputs.fields and into optionalInputs.fields for this endpoint, because you can omit it and let SuperDial fill it in from payerName. With lookup off (the default), phoneNumber stays required.
If your account is enabled for per-payer required inputs, some payers require additional inputs that aren’t listed here. Treat this list as the baseline; a request for one of those payers may need more.

End-to-end discovery flow

After this you have everything you need to call POST /v1/requests: pass the schemaId and populate every key in required inside the inputs object. The requestType is server-derived; you’ll see it on the response.

Errors

Every non-2xx response uses the uniform envelope:

Example error responses

For the full response and parameter schemas, see the API Reference → Schemas.