GET
/
consultations
cURL
curl --request GET \
  --url http://localhost:8080/consultations
{
  "data": [
    {
      "benefit_id": "<string>",
      "benefit_provider_id": "<string>",
      "created_at": "<string>",
      "dependant_id": "<string>",
      "id": "<string>",
      "last_modified_at": "<string>",
      "primary_user_id": "012345678901",
      "primary_user_phone_number": "<string>",
      "benefit_name": "<string>",
      "benefit_provider_name": "<string>",
      "dependant_first_name": "<string>",
      "dependant_last_name": "<string>",
      "external_reference_id": "<string>",
      "primary_user_first_name": "<string>",
      "primary_user_last_name": "<string>",
      "primary_user_phone_country_code": "<string>"
    }
  ],
  "limit": 123,
  "offset": 123,
  "total": 123
}

Query Parameters

primary_user_id
null | string

A validated 12-digit numeric user identifier.

Every external entry point validates:

  • JSON Deserialize runs [UserId::parse] (outer whitespace trimmed, length and digit-only enforced) via #[serde(try_from = "String")].
  • DB FromSql runs [UserId::parse] on every row read.

Display / Deref<Target = str> / AsRef<str> / Into<String> are derived via derive_more — the inner String is pass-through for every read-only borrow, display, and move-out.

Example:

"012345678901"

dependant_id
string
required
benefit_id
string
required
statuses
string | null
limit
integer<int32> | null
offset
integer<int32> | null

Response

Paginated consultations across users

data
object[]
required
limit
integer<int32>
required
offset
integer<int32>
required
total
integer<int64>
required