iPhone 16e
Nothing Phone 3a
Оживление фото LumaAI
Велосипед Mercedes
Робота научили делать сальто
Grok vs ChatGPT vs Claude
Генерация видео от Google

DataHub: организовываем доступ к публичным данным через Predefined Queries

Привет! Меня зовут Андрей Шмиг, я разработчик платформы DataHub, платформа для совместной работы над данными - своего рода GitHub для данных. В этой статье покажу, каким образом можно организовать доступ для внешних пользователей к репозиториям данных через Predefined Queries.

DataHub: организовываем доступ к публичным данным через Predefined Queries

Предыдущие статьи

Полный список связанных статей:

Демо-репозиторий

Из прошлых статей у нас сохранился демо-репозиторий с данными списка стран доступный по этой ссылке - база стран всего мира (демо).

В этом демо-репозитории создана одна единственная таблица countries:

DataHub: организовываем доступ к публичным данным через Predefined Queries

Содержащая три записи:

DataHub: организовываем доступ к публичным данным через Predefined Queries

На основе этих данных я и продемонстрирую, каким образом использовать Predefined Queries для предоставления доступов к данным стороннему пользователю.

Predefined Queries

Predefined Queries - это заранее подготовленные запросы владельцем репозитория к хранилищам данных. Запросы могут быть как на чтение, так и на запись. Могут быть приватными, а могут быть публичными. Основная задача predefined queries предоставить контролируемый и гибкий доступ к данным всем заинтересованным сторонам.

Predefined Queries в PRIVATE режиме могут быть использованы разработчиками ботов, мобильных приложений или игр для реализации MVP продуктов.

Для создания первого predefined-запроса переходим в режим редактирования репозитория данных и переключаемся на вкладку SQI (Storage Query Interface):

DataHub: организовываем доступ к публичным данным через Predefined Queries

Нажимаем на кнопку "+ Query":

DataHub: организовываем доступ к публичным данным через Predefined Queries

Настраиваемые значения:

  • HTTP Method: по-умолчанию на текущий момент всегда GET. HTTP метод для выполнения запроса доступа к данным по сгенерированному endpoint (URL).

  • Название: публичное название метода (например: Получение информации о пользователе по уникальному идентификатору).

  • Тип запроса: PRIVATE (приватный) или PUBLIC (публичный).

  • Storage: хранилище данных к которому относится создаваемый запрос.

  • Predefined Query: текст запроса (язык запроса зависит от типа выбранного хранилища - MySQL, MongoDB, прочие).

  • HTTP Query Alias: имя (url alias) для predefined query. Сокращенное название метода (endpoint), например, user_by_id или total_users.

Пишем наш первый predefined запрос - получение информации о стране по коду (двух-трёх буквенному коду):

DataHub: организовываем доступ к публичным данным через Predefined Queries

Приведенный в примере запрос является простейшим и служит лишь для демонстрации работы predefined queries. Фактические запросы могут быть любой сложности - хранилище данных MySQL поддерживает практически все возможности одноименной базы данных (триггеры, процедуры, функции, события, индексы и пр).

Обратите внимание, что в запрос мы подставляем переменную :alias, которая будет извлекаться из GET запроса query-строки.

Формат подставляемых переменных :[name], например:

  • :id

  • :user_name

  • :nick10

Сохраняем наш запрос:

DataHub: организовываем доступ к публичным данным через Predefined Queries

У репозитория стал доступен SQI метод country_by_code по ссылке (без параметров данный метод будет возвращать сообщение об ошибке).

https://datahub.su/api/v1/r/3/sqi/country_by_code

Чтобы выполнить этот запрос необходимо передать параметр alias в GET запросе:

https://datahub.su/api/v1/r/3/sqi/country_by_code?alias=ru

Результаты выполнения запроса:

DataHub: организовываем доступ к публичным данным через Predefined Queries
{ "status": true, "price": 0, "payload": [ { "id": 1, "name": "Russia", "alias": "ru", "phone_code": "+7" } ] }

Параметры ответа:

  • status: true или false, был ли выполнен запрос удачно.

  • price: стоимость запроса (при типе репозитория данных FREE и SPONSORED значение будет равно нулю, при типе COMMERCIAL - стоимости выборки данных);

  • payload: результат выполнения запроса.

Поддерживаемые форматы ответа на текущий момент:

  • application/json;

Надеюсь, что возможности DataHub позволят вам делиться, монетизировать и работать с данными эффективно!

В следующих статьях рассмотрим возможности веб-редактора хранилища MySQL - редактора, который перенимает лучший опыт взаимодействия и работы с данными у MySQL Workbench.

Если вам понравилась статья — ставьте лайк и оставляйте комментарий. Подписывайтесь на мой блог про DataHub на vc.ru, а так же на Телеграм канал поддержки сервиса.

Мой публичный профиль на DataHub — @aashmig.

Буду рад ответить на ваши вопросы и дополнить статью.

33
реклама
разместить
Начать дискуссию
⭐️ Ждет ли нас доллар по 50?
⭐️ Ждет ли нас доллар по 50?

Все знают, что долгосрочно рубль теряет в цене. За последние 20 лет, в среднем, доллар рос на 6% в год. Но многие заметят, что девальвация происходит всплесками. 1998, 1999, 2014. А в среднем 6% 😉

1515
1212
реклама
разместить
Купил мопед и сдаю его в Таиланде, а сам живу в России. И вот что из этого вышло…
***
1111
22
11
11
Скандал вокруг цензуры Grok 3: как Илон Маск пытается вколотить в свое детище «любовь к бате»

Самое интересное, что прямо сейчас присходит в AI-отрасли – это гомерически смешная ситуация с новой нейросетевой моделью Grok 3. «Самый умный интеллект в мире», как выяснилось, не очень хорошо относится к своему создателю – и у Маска, видимо, от этого дичайше подгорает. В этой статье мы разберем на скриншотах неуклюжие попытки xAI пофиксить ситуац…

Твое лицо, когда у любимого AI-чада начинается переходный период, и оно объявляет бунт против своих родителей
33
День 1098: банки снизили ставки по рублёвым вкладам, австралийским чиновникам запретили пользоваться ПО «Лаборатории Касперского»

Собираем новости, события и мнения о рынках, банках и реакциях компаний.

Источник фото: «РИА Рейтинг»
33
11
11
11
11
11
Почему 80% распилов могут решить финансовые проблемы вашего бизнеса

В статье решил разобрать проблему расчета себестоимости. Оказалось, что иногда при хорошем обороте прибыль может не расти, а выгодные товары приносить убытки. Расскажу на примере моего производства.

Это мои первые шаги в мебельном бизнесе
88
22
ЕС утвердил 16 пакет санкций против России — под них попали 13 банков и восемь СМИ

А также поставки PlayStation и Xbox в страну.

Фото «РИА Новости» 
4444
3333
1212
44
11
11
Когда на Санлайт наложат санкции?
"Доплата пенсии за стаж в 2025 году: что нужно знать каждому пенсионеру"

Пенсия — это не просто сумма, которую вы получаете после выхода на заслуженный отдых; это результат ваших трудовых усилий, накопленных за годы работы. В 2025 году в России ожидаются изменения в пенсионной системе, касающиеся доплат за стаж. В этой статье мы подробно рассмотрим, как будет происходить доплата пенсии за стаж, какие изменения вступят в…

Как сделать крутой контент-план и посты за 1 час: пошаговое руководство с промтами
Как сделать крутой контент-план и посты за 1 час: пошаговое руководство с промтами
55
[]