| Для разработчиков
api.dxqso.net · v1.12.1

API синхронизации радиолюбительских аппаратных журналов

Подключите к своему радиолюбительскому приложению облачный аппаратный журнал за считаные часы, а не месяцы. API DxQSO Ham Logbook Sync™ позволяет любой программе для ведения журнала загружать QSO в реальном времени, скачивать журналы целиком в JSON или ADIF и синхронизироваться инкрементально — всё через простой REST API на базе AWS API Gateway.

REST / JSON
Протокол
api.dxqso.net
Базовый URL
2 000 QSO
За одну пакетную загрузку
AWS Gateway
Инфраструктура
Bearer-токен
Аутентификация
Что можно создать

Облачный бэкенд журнала
для вашего приложения

API DxQSO берёт на себя всю инфраструктуру — облачное хранение, удаление дубликатов, синхронизацию с LoTW® и QRZ, учёт достижений и мобильный доступ, — а вы сосредотачиваетесь на создании удобной программы для ведения журнала.

☁️

Облачный журнал сразу

Добавьте в приложение облачное хранилище журнала, не создавая собственной серверной инфраструктуры. DxQSO хранит, проверяет на дубликаты и индексирует каждое QSO, загруженное от имени ваших пользователей.

⚡

Загрузка QSO в реальном времени

Отправляйте QSO в облако сразу после записи в журнал. Эндпоинт POST /upload принимает до 2 000 QSO за запрос в формате JSON или в виде ADIF — в том, что уже формирует ваше приложение.

🔄

Инкрементальная синхронизация

Эндпоинт GET /logbook/download поддерживает фильтр Modified Since, поэтому приложение получает только QSO, изменённые после последней синхронизации, — трафик и нагрузка минимальны.

📄

Вывод в JSON и ADIF

Скачивайте журналы в JSON для отображения в приложении или в ADIF для экспорта в файл. Полная поддержка полей ADIF гарантирует, что каждое записанное пользователем поле сохраняется и доступно.

📃

Встроенная постраничная выдача

Большие журналы автоматически разбиваются на страницы с помощью заголовка ответа X-Next-Token. Передавайте его в следующем запросе, чтобы получить очередную страницу, и продолжайте, пока он не окажется пустым: страница может быть неполной, даже если данные ещё есть. Отправьте Accept-Encoding: gzip — и страницы придут сжатыми, примерно в 8 раз меньше.

🔍

Фильтры и запросы

Фильтруйте выгрузку по датам, диапазону и виду работы. Приложение показывает нужные QSO, не скачивая весь журнал, — меньше задержка и объём данных.

🔔

Синхронизация с LoTW® и QRZ включена

Каждое QSO, загруженное через ваше приложение, автоматически синхронизируется с LoTW® и QRZ Logbook согласно настройкам пользователя в DxQSO. Подтверждения QSL возвращаются без какой-либо дополнительной работы со стороны приложения.

🏆

Уведомления о достижениях для пользователей

QSO, загруженные через ваше приложение, учитываются в прогрессе каждого пользователя по DXCC, WAS и квадратам. Когда подтверждается новый рубеж, DxQSO уведомляет пользователя — от приложения ничего дополнительно не требуется.

🔒

Простая аутентификация двумя токенами

Аутентификация использует два Bearer-токена: долгосрочный токен разработчика, идентифицирующий ваше приложение, и токен, который пользователь создаёт в своём аккаунте DxQSO, — токен станции для одной станции или API-ключ аккаунта для всего журнала. Просто, надёжно и без хранения состояния.

API вкратце

Эндпоинт
Метод
Описание
/upload
POST
Загрузка QSO — до 2 000 за запрос в формате JSON или ADIF
/logbook/download
GET
Скачивание журнала в JSON или ADIF с необязательными фильтрами по дате, диапазону и виду работы
/logbook/download
GET
Инкрементальная синхронизация — передайте qso_since, чтобы получить только записи, изменённые после указанного момента
/logbook/station/station_info/
GET
Данные станции и позывного аутентифицированного пользователя

Для всех запросов обязательны: Authorization: Bearer <vendor_token> · dxqso-station-token: Bearer <station_token>

Начните за считаные минуты

Примеры кода на Python, C#/.NET, C++, Swift и cURL доступны в демо API.

Загрузка QSO · cURL
# Upload a single QSO
curl -X POST https://api.dxqso.net/upload \
     -H "Authorization: Bearer $VENDOR_TOKEN" \
     -H "dxqso-station-token: Bearer $STATION_TOKEN" \
     -H "Content-Type: application/json" \
     -d '{"qsos":[{"call":"VK2ABC","band":"40m","mode":"FT8","qso_date":"20240802","time_on":"015115"}]}'
# → returns each record's stable qso_id:
#   {"inserted":1,"updated":0,"rejected":0,"results":[{"action":"inserted","qso_id":"898193a7-…"}]}
#   Store qso_id to reference (or later update) the record.

# Upload an ADIF file (up to 2000 QSOs)
curl -X POST https://api.dxqso.net/upload \
     -H "Authorization: Bearer $VENDOR_TOKEN" \
     -H "dxqso-station-token: Bearer $STATION_TOKEN" \
     -H "Content-Type: text/plain" \
     --data-binary @my_log.adi

# Incremental sync — fetch only QSOs changed since a date
curl "https://api.dxqso.net/logbook/download?format=json&qso_since=2025-01-01T00:00:00" \
     -H "Authorization: Bearer $VENDOR_TOKEN" \
     -H "dxqso-station-token: Bearer $STATION_TOKEN"

С чего начать

1

Запросите токен разработчика

Напишите на support@dxqso.net, чтобы получить токен разработчика для вашего приложения. Токены разработчика долгосрочные и идентифицируют ваше приложение в каждом вызове API.

2

Попробуйте демо

С помощью интерактивного демо API проверьте загрузку и скачивание на реальном аккаунте DxQSO ещё до написания кода.

3

Изучите документацию API

В документации API подробно описаны все эндпоинты, модель аутентификации, форматы запросов и ответов, а также постраничная выдача.

4

Интегрируйте и выпускайте

Примеры кода есть на Python, C#/.NET, C++, Swift и cURL. Большинство интеграций запускаются за день. Свяжитесь с нами, если нужна помощь с вашей платформой.

Создано для разработчиков радиолюбительских приложений

📱
Мобильные приложения для журнала

Дайте приложениям для iOS и Android облачный бэкенд, чтобы пользователи открывали свой журнал на любом устройстве без возни с файлами ADIF.

💻
Настольные программы для журнала

Добавьте синхронизацию с облаком в реальном времени в программы для Windows и Mac. Пользователи получают автоматическое резервное копирование и доступ с других устройств.

🏁
Контестовые программы

Загружайте контестовые QSO в хранилища DxQSO пользователей, чтобы связи из соревнований автоматически шли в зачёт DXCC и дипломов за всё время.

🌲
Приложения для POTA и SOTA

Позвольте активаторам загружать QSO в реальном времени прямо из парка или с вершины в облачный журнал с автоматической передачей в LoTW® и QRZ.

📶
Программы для цифровых видов

FT8, FT4, WSPR и другие цифровые программы могут загружать связи в DxQSO в реальном времени — пользователи получают уведомления о достижениях и отслеживание QSL.

📡
ПО для SDR и удалённых станций

Платформы для удалённой работы и SDR могут отправлять QSO в DxQSO сразу после проведения, поддерживая удалённые журналы в синхронизации с основным хранилищем пользователя.

Готовы к интеграции?

Запросите токен разработчика, изучите демо и начинайте разработку. Большинство интеграций запускаются за день.