---
title: "Pobierz wiadomość"
method: GET
path: "/v1/messages/{id}"
tags: ["Wiadomości"]
---

# Pobierz wiadomość

`GET /v1/messages/{id}`

## Request

- Base URL: `https://api.przypominamy.com`
- URL: `https://api.przypominamy.com/v1/messages/{id}`
- Auth: HTTP bearer

## Path parameters

- `id` string, required

## Response `200`

Wiadomość wraz ze śledzonymi linkami (`links[]`, pusta tablica, gdy w treści nie było `{{link:…}}`)

- object
  - `id` string
  - `type` 'sms' | 'mms' | 'vms': Kanał: SMS, MMS, wiadomość głosowa
  - `status` 'scheduled' | 'queued' | 'sent' | 'delivered' | 'undelivered' | 'failed' | 'expired' | 'rejected' | 'cancelled' | 'unknown': `scheduled` - zaplanowana (`send_at` lub przesunięta przez `send_window`); `queued` - przyjęta; `sent` - przekazana do sieci; `delivered` - doręczona; `undelivered` - niedoręczona; `failed` - odrzucona przez dostawcę; `rejected` - odrzucona przez nas (numer na czarnej liście, koszt 0); `expired` - wygasła (m.in. po `expires_at`); `cancelled` - zaplanowana wysyłka anulowana przez `DELETE /v1/messages/{id}`, koszt zwrócony; `unknown` - dostawca nie potwierdził (timeout / 5xx), saldo zarezerwowane do uzgodnienia po idx albo DLR
  - `to` string
  - `from` string, nullable
  - `text` string: Treść po personalizacji - dokładnie to, co dostał odbiorca (link opt-out, śledzone linki `api.przypominamy.com/l/…` i placeholdery już podstawione)
  - `subject` string, nullable: Temat (tylko MMS)
  - `parts` integer
  - `cost_grosze` integer: Koszt w groszach (0 dla odrzuconych; po anulowaniu zwrócony na saldo)
  - `priority` boolean: Czy wysłano jako SMS priorytetowy (podwójna stawka)
  - `reference` string, nullable
  - `send_at` string, date-time, nullable: Termin wysyłki (po przesunięciu przez `send_window`, jeśli było)
  - `expires_at` string, date-time, nullable: Koniec prób doręczenia, gdy podano `expires_at`
  - `delivered_at` string, date-time, nullable
  - `error` string, nullable: Powód odrzucenia, gdy status = failed lub rejected (np. „Numer na czarnej liście (opt-out)”)
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `links` TrackedLink[]
    - `token` string: 8 znaków, część adresu `/l/{token}`
    - `short_url` string, uri: Pełny krótki adres; w SMS-ie idzie bez `https://`, żeby oszczędzić znaki
    - `url` string, uri: Adres docelowy z placeholdera
    - `message_id` string, nullable
    - `to` string, nullable: Odbiorca, który dostał ten link
    - `clicks` integer
    - `first_click_at` string, date-time, nullable
    - `last_click_at` string, date-time, nullable
    - `created_at` string, date-time

## Other responses

- `401`: Brak lub nieprawidłowy klucz API
- `403`: Klucz bez wymaganego zakresu (albo konto zawieszone / testowe wysyła na niezweryfikowany numer)
- `404`: Nie znaleziono

---

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