API для Российской общественной инициативы. Шаг 2.2: опыт США в работе с данными электронных петиций — API Белого Дома

в 10:15, , рубрики: api, Блог компании НП «Информационная культура», открытые данные, рои, российская общественная инициатива, США, метки: , , , ,

Ранее я писал в паре постов о том как устроена открытость электронных петиций в разных странах, какие данные есть в России и как можно сделать APO для небезызвестной Российской общественной инициативы — www.roi.ru.

Прочитать всё это можно здесь:

В этот раз мы рассмотрим то как устроены электронные петиции Белого Дома, в первую очередь, с точки зрения их открытости и пригодности к данных для использования.

API для Российской общественной инициативы. Шаг 2.2: опыт США в работе с данными электронных петиций — API Белого Дома

Справка

Особенности петиций в США

  1. Относятся именно к президенту и ответы дает его администрация.
  2. Не требуют ничего кроме email'а для подписи — дополнительная авторизация ненужна.
  3. Петиции должны пройти 2 порога — 150 подписей за 30 дней чтобы их можно было найти (по прямой ссылке они доступны) и 100 000 подписей за 30 дней чтобы получить официальный ответ — petitions.whitehouse.gov/how-why/terms-participation

В цифрах

  • всего 2246 петиций
  • даны ответы на 208 петиций
  • в ожидании ответа 26 петиций
  • закрыто 1972 петиций
  • открыто для голосования 40 петиций

Цифры учитывают только те петиции что прошли 1-й порог в 150 подписей за 30 дней.

WhiteHouse.gov/developers

Одно из важных отличий сайта Белого Дома США от сайтов всех лидеров в мире — это ориентированность на разработчиков. На сайте даже есть специальный раздел /Developers где размещены данные, раскрыт исходный код проектов и описаны API многих из инициатив если не всех вообще.

Открытый код

Поскольку нас интересуют в первую очередь петиции, то рассмотрим их подробнее.

Во первых исходный код петиций полностью опубликован на Github — https://github.com/WhiteHouse/petitions

У репозитория больше 15 контрибьюторов, несколько десятков багов и вопросов и мы можем говорить о том что разработка проекта идет открытым образом.

Открытое API

Другая сторона происходящего в том для разработчиков доступен не только исходный код, но и API и данные накопленные на сервисе.
Все API по петициям доступны по ссылке — https://petitions.whitehouse.gov/developers

API доступа к данным состоит из 3-х эндпоинтов:

  • GET /v1/petitions
  • GET /v1/petitions/{petition_id}
  • GET /v1/petitions/{petition_id}/signatures
Список петиций и выборки петиций (GET /v1/petitions)

Возвращает список петиций, отдельные петиции и подписи к отдельным петициям. Не поддерживает нелатинские символы и содержит ограничение в не более чем 10 запросов в секунду.

В описании API заложена фильтрация по: ссылке, статусу, числу подписавших и многому другому.
Подробнее — petitions.whitehouse.gov/developers#petitions-index

Карточка петиции (GET /v1/{petition_id})

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

Подробнее — petitions.whitehouse.gov/developers#petitions-retrieve

Список подписантов (GET /v1/{petition_id}/signatures)

И, наконец, по каждой петиции есть возможность получить список всех, или выборку по фильтрам, подписавших петицию без их полных ФИО, но с геокодом в виде почтового индекса и точными датой и временем подписи.

Вот как выглядит элемент массива подписи при ответе этого метода:

    "0": {
      "id": "5017a5ca6889385944000000",
      "type": "signature",
      "name": "DP",
      "zip": "94530",
      "created": 1343727050
    },

Подробнее — petitions.whitehouse.gov/developers#petitions-signatures

Особенно интересно последнее — возможность получить информации по каждому голосу даёт многое — немало разработчиков в США используют это для мониторинга активности подписей петиций.

Открытые данные

Но и это еще не все. Для тех кому не так важно получать данные в реальном времени, но важно иметь базу для анализа разработчики дают данные для массовой выгрузки. По ссылке https://api.whitehouse.gov/v1/downloads/data.sql.zip
файл архива адампа в SQL на 200 мегабайт.

Это к вопросу о том что когда есть желание сделать что-то открытым, то возникают не оговорки про то как это сложно, а быстро делается хотя бы таким самым простым образом.

Экосистема

Все вышеперечисленное было бы не так интересно если бы на примере открытия данных о петициях в Белом доме не появилось бы множество проектов использующих эту информацию. Проект изначально сделанный разработчиками для разработчиков очень быстро стал пользоваться популярностью у тех кто создавал экосистему вокруг.

На самом Белом доме есть раздел под названием API Gallery где я насчитал не менее 18 приложений.
API для Российской общественной инициативы. Шаг 2.2: опыт США в работе с данными электронных петиций — API Белого Дома

Вот лишь неполный список:

Петиции это далеко не все

Петиции — это, хотя и важно, но далеко не единственное что государство должно открывать для всех. API для петиций — это лишь малая часть всех API открытых ведомствами США за последние несколько лет. Вот тут можно посмотреть гораздо больше всего — gsa.github.io/slash-developer-pages/, а активисты давно уже создают проект / the united states собрав ключевые API в одном месте

В качестве послесловия. Главное отличие опыта США в работе с петициями — заведомая технологическая прозрачность и построение экосистемы. Кооперация с независимыми разработчиками позволяет привлекать к петициям гораздо большее внимание и использовать технические инструменты для продвижения инициатив.

Автор: ibegtin

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js