---
title: "List SMS services for a country"
method: GET
path: "/services"
tags: ["Services"]
---

# List SMS services for a country

`GET /services`

## Request

- Base URL: `https://dashboard.voidmob.com/api/v1`
- URL: `https://dashboard.voidmob.com/api/v1/services`
- Auth: HTTP bearer

Returns the SMS service catalog for the requested country with a live
per-caller quote. Cacheable for 30 seconds via
`ETag` / `If-None-Match`.

The `quoted_price_cents` reflects per-caller pricing (account
discounts/overrides). Use it as the safe default for
`max_price_cents` when creating a verification.

## Query parameters

- `country` string
- `q` string

## Headers

- `If-None-Match` string

## Response `200`

Services for the requested country.

- object
  - `success` true, required
  - `data` object, required
    - `country` string, required
    - `services` Service[], required
      - `id` string, required: Opaque public service identifier.
      - `name` string, required
      - `icon_url` string, required: Path to an immutable PNG icon (cache forever).
      - `quoted_price_cents` integer, required: Live per-caller quote. This is what will be charged if the quote still holds at create time. Differs from `base_price_cents` when the caller has a category discount or per-service override.
      - `base_price_cents` integer, required: Retail price before any per-user discounts.
      - `discount_source` 'regular' | 'category' | 'override', required: Attribution for the current quote.
      - `price_ceiling_cents` integer, required: Upper bound on how far `quoted_price_cents` can drift under current market conditions. Set `max_price_cents` up to this value to absorb normal market drift without seeing `409 PRICE_OVER_CAP`.
      - `available` boolean, required: Whether stock is currently available. Unavailable services are still returned so a UI can grey them out.
      - `ltr_3d_price_cents` integer: Per-user quoted price for a 3-day long-term rental of this service. `0` means the duration is not available for this service.
      - `ltr_7d_price_cents` integer: Per-user quoted price for a 7-day long-term rental of this service. `0` means the duration is not available for this service.
      - `ltr_14d_price_cents` integer: Per-user quoted price for a 14-day long-term rental of this service. `0` means the duration is not available for this service.
      - `ltr_30d_price_cents` integer: Per-user quoted price for a 30-day long-term rental of this service. `0` means the duration is not available for this service.
    - `fetched_at` string, date-time, required

## Other responses

- `304`: Not Modified.
- `401`: 401 - Authentication required.
- `403`: 403 - Request source IP is not permitted for this key.
- `429`: 429 - Rate limit exceeded. Retry after the indicated interval.
- `500`: 500 - An unexpected error occurred. Please try again.

---

[API](https://skmtc.dev/voidmob/apis/voidmob-public-api.md) · [All operations](https://skmtc.dev/voidmob/apis/voidmob-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/voidmob/apis/voidmob-public-api/revisions/066023313ebe?raw)
