---
title: "Get Notification Tasks Page"
method: GET
path: "/notification-tasks"
tags: ["Notification Tasks"]
---

# Get Notification Tasks Page

`GET /notification-tasks`

## Request

- Base URL: `https://api.smartroutes.io/v2`
- URL: `https://api.smartroutes.io/v2/notification-tasks`
- Auth: none declared

Lists the SMS and email notifications scheduled for the depot your API key belongs to, with their recipient, rendered message, scheduled send time and status. Use it to check what was queued by `POST /notifications/schedule/orders` or by your notification automations, and whether it has been sent.

Results are paged, most recently updated first. Use `limit` (up to 100) and follow the `Link` header for the next page (see [Paging](#section/Getting-started/Paging)). Filters:

- `updated_at_min` returns only tasks updated at or after the given time.
- `status` matches the task status exactly, for example `Scheduled` or `Cancelled`.
- `type` is `SMS` or `EMAIL` (case-insensitive). Any other value returns `400 INVALID_INPUT`.

Each task links to the `order` or `visit` it was created for, and the other one is `null`. The `template` gives the id of the template that was used (see `GET /notifications/templates`).

## Query parameters

- `page_info` string: Pagination cursor generated by the API. Pass this value to retrieve the next page of results.
- `limit` integer: Maximum number of notification tasks to retrieve per page. Max 100.
- `updated_at_min` string, date-time: Filter tasks modified at or after this datetime. Format: YYYY-MM-DD hh:mm:ss or YYYY-MM-DDTHH:mm:ss.SSSZ.
- `status` string: Filter notification tasks by status.
- `type` 'SMS' | 'EMAIL': Filter notification tasks by type. Accepted values: SMS, EMAIL (case-insensitive).

## Response `200`

Successful response

## Other responses

- `400`: Invalid input. The request body failed validation.
- `403`: Forbidden. Returned for rate-limit exhaustion (`name = FORBIDDEN`, with `details.retry_after_seconds` and `Retry-After` header) and permission gate failures (`name = PERMISSION`). Inspect `name` to disambiguate. Send `x-sr-api-features: rate-limit-429` to receive `429 RATE_LIMIT_EXCEEDED` for the rate-limit case instead, leaving `403` to mean permission failures only — see [API Features](#section/Getting-started/API-Features).
- `429`: Rate limit exceeded (`name = RATE_LIMIT_EXCEEDED`). **Only returned to callers that opt in** with the `x-sr-api-features: rate-limit-429` request header; without it the same condition returns `403` with `name = FORBIDDEN` and an otherwise identical body. See [API Features](#section/Getting-started/API-Features).
- `500`: An unexpected server error occurred. The body carries only `name` and `description`: internal details are never returned.

---

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