# Changelog

> The changelog of the Diko API and what is not there yet.

Source: https://diko.app/en/api-docs/changelog

This page records every change to the public API: compatible ones and, in the future, breaking ones. The compatibility promises are on [Versioning and compatibility](https://diko.app/en/api-docs/versioning.md).

## 2026-10-15: higher export limit and `me`/`export` in `GET /me`

- The `export` policy (transcripts with `format=text`, `srt` or `vtt`) now allows a burst of 10 and refills **1 request per second** (it was a burst of 4 and 1 request per 5 seconds). Syncing 100 meetings now takes about two minutes instead of eight.
- `limits.rate` in the `GET /me` response now also lists the `me` and `export` policies, in the same `burst` / `per_second` shape. The new fields are additive; clients that ignore unknown fields need no change.

## 2026-10-12: security change

- **Security change:** `GET /me` now reveals less than before. [Versioning and compatibility](https://diko.app/en/api-docs/versioning.md) allows this exception for security fixes. `GET /me` follows least privilege: `user.email` is always masked (for example `j***@example.com`), and `credits` is returned only to a key with the `library:write` scope (the only scope that spends credits). Other keys get `credits: null`. Read the full address and balance in the Diko app.
- Webhook URLs are checked against an explicit table of special-purpose addresses: the local-use NAT64 prefix `64:ff9b:1::/48`, 6to4, Teredo and documentation ranges are refused; the well-known NAT64 prefix `64:ff9b::/96` is accepted only when the embedded IPv4 address is public.

## v1.0

Date: 2026-10-11. The first public `/v1` version.

**Keys and authentication**

- `Bearer` keys `dk_live_...` with a checksum, mandatory expiry (up to 365 days), rotation with a grace period, an IP allowlist and team oversight.
- Three scopes: `meetings:read`, `library:read`, `library:write`.
- Keys and webhooks are managed in the Diko app, under **Nustatymai → API** (Settings → API, `/settings/api`; the first release used the `/kurejams` path, which redirects).

**Endpoints**

- Account: `GET /`, `GET /me`.
- Meetings: the list, a single meeting, the transcript (JSON, text, SRT, VTT), minutes, action items.
- Library: the list of transcripts, a single transcript, the transcript text.
- Imports: importing YouTube videos with `Idempotency-Key`, the list of imports, import status and cancellation.
- Events: `GET /events` and `GET /events/{event_id}`.

**Events and webhooks**

- 12 event types (`meeting.*`, `library.*`, `webhook.test`).
- Webhooks following Standard Webhooks 1.0: signatures, retries, secret rotation, a delivery log.

**Shared rules**

- A uniform error format with `request_id` and `doc_url`, and an error catalog in Lithuanian and English.
- Rate-limit headers (`RateLimit-Policy`, `RateLimit`, `X-RateLimit-*`).
- Cursor-based pagination, `Idempotency-Key` and an OpenAPI 3.1 description.

## Planned

These are not supported in `v1` yet. They are given as a direction, without dates, and may change.

- **v1.1:** semantic search in the library, meeting audio upload through the API, team service keys, Python and TypeScript SDKs, a Postman collection, webhook management through the API.
- **v1.2:** OAuth 2.0 for third-party apps (for example Zapier and Make) and an MCP server.

## How to follow changes

- You can also read this page as [Markdown](https://diko.app/en/api-docs/changelog.md).
- The whole API description is [`/en/api-docs/openapi.json`](https://diko.app/en/api-docs/openapi.json); compare it with an earlier copy.
- Breaking changes are announced in advance, as described on [Versioning and compatibility](https://diko.app/en/api-docs/versioning.md).
