---
title: Прочитане на паспорт
description: Прочитане на един паспорт по ID. ?lang резолвира всяко поле през viewer-locale веригата; ?format=full добавя етикети, единици и нива на достъп.
canonical: "https://www.tracepass.eu/bg/docs/get-passport"
locale: bg
source: "https://www.tracepass.eu/bg/docs/get-passport"
---

# Прочитане на паспорт

> Прочитане на един паспорт по ID. ?lang резолвира всяко поле през viewer-locale веригата; ?format=full добавя етикети, единици и нива на достъп.

```http
GET /api/v1/passports/{id}
```

Прочитане на паспорт по ID. По подразбиране отговорът включва пълен паспорт — преводимите полета носят своя `sourceLocale` и карта `translations` по локал. Подайте `?lang=<locale>`, за да накарате сървъра да разреши всяко поле по веригата на публичния преглед (превод на локала на гледащия → стойност на изходния локал → английски → първи приложен → универсален източник) и да върне една резолвирана стойност за всяко поле; картата `translations` се изхвърля при отговори, разрешени по lang.

Подайте `?format=full`, за да включите допълнително template-derived етикети на полета, мерни единици и нива на достъп заедно с всяка стойност — полезно за изграждане на персонализиран viewer или audit report. Двата query параметри се комбинират: `?format=full&lang=de` връща етикетите на DE плюс стойностите, разрешени до DE.

Алтернативна адресация: `GET /api/v1/passports/by-serial/{serial}` връща същата форма и приема същите query параметри. Има също `GET /api/v1/passports/{id}/qr` endpoint, който връща прясно рендериран SVG / PNG на QR кода — полезно, когато искате нашия renderer вместо сами да кодирате `gs1.digitalLinkUri`.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `Authorization` | header | string | yes | `Bearer <token>` — или `tp_` API ключ (Developer → API Keys; най-просто, за server-to-server), или OAuth 2.0 access token (Developer → OAuth Apps; за приложения, авторизирани от потребител, scoped и отзоваеми). Страницата Authentication съдържа пълния OAuth поток и списъка със scopes. |
| `id` | path | ObjectId | yes | ID на паспорта. |
| `format` | query | string | no | Задайте `full` за template field labels, мерни единици и access levels. |
| `lang` | query | string (ISO 639-1) | no | Разрешава стойностите на полетата до един локал на сървъра. Един от 24-те EU локала. |

## Examples

```bash
# Default response — full data, consumer resolves locales itself
curl -sS https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1 \
  -H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"

# Single-locale response with template labels
curl -sS \
  "https://app.tracepass.eu/api/v1/passports/6650b2c3d4e5f6a7b8c9d0e1?format=full&lang=de" \
  -H "Authorization: Bearer tp_REDACTED_xxxxxxxxxxxx"
```

```typescript
const url = new URL(`https://app.tracepass.eu/api/v1/passports/${id}`);
url.searchParams.set("format", "full");
url.searchParams.set("lang", "de");

const res = await fetch(url, {
  headers: { Authorization: `Bearer ${process.env.TRACEPASS_API_KEY}` },
});
if (res.status === 404) return null;
const passport = await res.json();
```

```python
import os, requests
res = requests.get(
    f"https://app.tracepass.eu/api/v1/passports/{passport_id}",
    headers={"Authorization": f"Bearer {os.environ['TRACEPASS_API_KEY']}"},
    params={"format": "full", "lang": "de"},
)
res.raise_for_status()
passport = res.json()
```

## Responses

### 200 — Default

```json
{
  "_id": "6650b2c3d4e5f6a7b8c9d0e1",
  "gs1": {
    "gtin": "04012345000016",
    "serialNumber": "BP-48V-100-000001",
    "digitalLinkUri": "https://id.tracepass.eu/p/01/04012345000016/21/BP-48V-100-000001"
  },
  "status": "published",
  "completionPercentage": 87,
  "fields": {
    "batteryChemistry": {
      "value": "NMC",
      "source": "manual",
      "status": "approved",
      "accessLevel": "public",
      "sourceLocale": "en",
      "translations": {
        "de": { "value": "NMC", "source": "ai-haiku-4.5", "generatedAt": "2026-05-02T10:00:00.000Z" }
      }
    }
  }
}
```

### 200 — ?lang=de

```json
{
  "_id": "6650b2c3d4e5f6a7b8c9d0e1",
  "gs1": { "...": "..." },
  "status": "published",
  "fields": {
    "batteryChemistry": {
      "value": "NMC",
      "source": "manual",
      "sourceLocale": "en"
    }
  }
}
```

### 404 — Не е намерен

```json
{ "error": "Passport not found" }
```

## Related

- [Списък на паспорти](https://www.tracepass.eu/bg/docs/list-passports.md)
- [Създаване на паспорт](https://www.tracepass.eu/bg/docs/create-passport.md)
