SeatScan::API

API позволяет работать напрямую с поиском билетов SeatScan.ru. Вы сможете получать оперативную информацию о доступных к продаже билетов на концерты, спектакли, детские и спортивные мероприятия, а также максимально полную афишу на интересующие вас города. API работает по протоколу HTTP через GET/POST-запросы, ответ возвращается в формате JSON.


Доступ к Seatscan::API это:

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

В настоящее время SeatScan::API имеет версию 1

Для получения доступа к API необходимо отправить запрос на info@seatscan.ru.

Авторизация

Все запросы к API необходимо отправлять по адресу http://api.otickets.ru/v1/.

Во все запросы к API необходимо добавлять ключ apikey. Запросы без apikey будут отклонены.

Для получения доступа к API необходимо отправить запрос на info@seatscan.ru.

Список запросов

В Seatscan::API доступны следующие запросы:


Информационные методы

/ping Проверка ключа
/limits Возвращает по каким методам сколько будет списано лимитов
/regions Возвращает список городов

Процесс поиска билетов и получение результатов

/events Возвращает список ожидаемых мероприятий
/event Возвращает данные по мероприятию
/tickets.searching Запускает поиск билетов
/tickets.data Возвращает информацию по найденным билетам
/tickets.info Возвращает информацию по статусу поиска билетов

Работа с накопленной статистикой билетов

/cacher.dates Получить список дат когда снималась статистика
/cacher.updates Получить список апдейтов и мероприятий данные которых были положены в кеш
/cacher.get Получить данные по билетам из кеша

API может быть доработано под требования заказчика.

Проверка ключа

http://api.otickets.ru/v1/ping?apikey=APIKEY - Проверка доступности API и Работоспособности ключа


Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [],
   "limit" : "1000",
   "message" : ""
}

Лимиты

Для некоторых запросов мы используем систему лимитов - которые учитывают суточную нагрузку на наш сервер


Лимиты обновляются ежедневно в 0ч по Московскому времени


Во все ответы запросов добавляется ветка limit, которая показывает сколько осталось лимитов для новых запросов.


Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [...],
   "limit" : "999",
   "message" : ""
}

Узнать по каким запросам сколько лимитов будет списано http://api.otickets.ru/v1/limits?apikey=APIKEY


Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : {
      "/events" : 5,
      "/regions" : 0,
      "/tickets.data" : 0,
      "/limits" : 0,
      "/tickets.searching" : 4,
      "/event" : 0
   },
   "limit" : "1000",
   "message" : ""
}

Список городов

http://api.otickets.ru/v1/regions?apikey=APIKEY


Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [
      {
         "region" : "Рязань",
         "regionid" : "33"
      },
      {
         "region" : "Новокузнецк",
         "regionid" : "63"
      },{
      
      ...

      }
   ],
   "limit" : "1000",
   "message" : ""
}

Мероприятия: Список

В запрос нужно добавить regionid=ID где ID - идентификатор региона, список можно получить отправив запрос на http://api.otickets.ru/v1/regions?apikey=APIKEY


Входные параметры:

regionid id региона

Пример запроса:

http://api.otickets.ru/v1/events?apikey=APIKEY&regionid=1 - возвращает список всех мероприятий в городе Москва


Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [
{
         "daytime" : {
            "daytime" : "201601241900",
            "time" : "1900",
            "day" : "20160124"
         },
         "frendlyurl" : "http://seatscan.ru/search/teatr-kinoaktera-valentinov-den/201601241900",
         "name" : "Валентинов день",
         "location" : "Театр Киноактера",
         "description" : {
            "frendlyurl" : "http://seatscan.ru/msk/dramaticheskij-teatr/teatr-kinoaktera/valentinov-den",
            "name" : "Валентинов день",
            "id" : "74:22941"
         },
         "image" : {
            "original" : "http://static.seatscan.ru/storage/6/4/big-8cc1e8038.png",
            "thumb" : "http://static.seatscan.ru/storage/6/4/thumb-8cc1e8038.png"
         },
         "summs" : {
            "min" : "600",
            "max" : "3500"
         },
         "events" : [
            "ticketland.ru:2016930",
            "ponominalu.ru:2058611",
            "bigbilet.ru:2018435",
            "biletmarket.ru:2054766",
            "concert.ru:2060121",
            "ticketland.ru:2017132",
            "concert.ru:2057878",
            "parter.ru:2044393"
         ],
         "eventid" : "1:74:706753:20160124:1900",
         "address" : "г. Москва, ул. Поварская, 33 стр. 1,  м. Баррикадная, м. Краснопресненская",
         "regionid" : "1"
      },
      ...
      ],
   "limit" : "999",
   "message" : ""
}

Мероприятия: Информация

Возвращает детали по мероприятию

http://api.otickets.ru/v1/event?apikey=APIKEY&eventid=1:74:706753:20160124:1900


Входные параметры:

eventid id мероприятия

Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [
      {
         "frendlyurl" : "http://seatscan.ru/search/teatr-kinoaktera-valentinov-den/201601241900",
         "status" : "found",
         "name" : "Валентинов день",
         "location" : {
            "frendlyurl" : "http://seatscan.ru/msk/dramaticheskij-teatr/teatr-kinoaktera",
            "name" : "Театр Киноактера",
            "address" : "г. Москва, ул. Поварская, 33 стр. 1,  м. Баррикадная, м. Краснопресненская"
         },
         "description" : [
            {
               "text" : "Валентин и Валентина - история человеческой любви ...",
               "url" : "http://...",
               "id" : "..."
            },{

             ...

             }
         ],
         "age" : "12",
         "image" : {
            "original" : "http://static.seatscan.ru/storage/6/4/big-8cc1e8038.png",
            "thumb" : "http://static.seatscan.ru/storage/6/4/thumb-8cc1e8038.png"
         },
         "summs" : {
            "min" : "600",
            "max" : "3500"
         },
         "eventid" : "1:74:706753:20160124:1900"
      }
   ],
   "limit" : "999",
   "message" : ""
}

Билеты: Поиск

Запускает процесс поиска билетов. Данный процесс может занять некоторое время от нескольких секунд до нескольких десятков секунд. Скорость зависеть от количества продавцов, а также от величины мероприятия. Определенно, что поиск билетов для камерного зала моментально выполнится, но поиск огромного стадиона может занять некоторое время.

http://api.otickets.ru/v1/tickets.searching?apikey=APIKEY&eventid=1:74:706753:20160124:1900


Входные параметры:

eventid id мероприятия
force=1 Принудительно запустить новый поиск

Статус поиска

searching Сообщает о том, что идет поиск
actual Сообщает о том, что поиск уже выполнен и можно получить данные о билетах выполнив запрос на http://api.otickets.ru/v1/tickets.data

Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [
      {
         "timeleft" : "9000",
         "cacheid" : "f05523eecda69485f53463d7af5452f8bdcd99ab",
         "eventname" : "Валентинов день",
         "status" : "searching",
         "eventid" : "1:74:706753:20160124:1900"
      }
   ],
   "limit" : "998",
   "message" : ""
}

Билеты: Результат поиска

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

http://api.otickets.ru/v1/tickets.data?&apikey=APIKEY&eventid=1:74:706753:20160124:1900


Входные параметры:

eventid id мероприятия

Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [
      {
         "cacheid" : "f05523eecda69485f53463d7af5452f8bdcd99ab",
         "timeleft" : "8560",
         "status" : "actual",
         "name" : "Валентинов день",
         "eventid" : "1:74:706753:20160124:1900",
         "location" : "Театр Киноактера",
         "tickets" : [
            {
               "cost" : "1500.00",
               "sector" : "Партер",
               "gate" : "...",
               "tickets" : "4",
               "row" : "11",
               "url" : "http://...",
               "seats" : "5-8",
               "etickets" : "1",
               "list" : "seats",
               "eventurl" : "http://..."
            },{
               "cost" : "750.00",
               "sector" : "Бельэтаж",
               "gate" : "...",
               "tickets" : "6",
               "row" : "1",
               "url" : "http://...",
               "seats" : "3-4,29-32",
               "etickets" : "1",
               "list" : "seats",
               "eventurl" : "http://..."
            },{

            ...

            }
           ],
   "limit" : "998",
   "message" : ""
}

Билеты: Данные о поиске

http://api.otickets.ru/v1/tickets.info?apikey=APIKEY&eventid=1:74:706753:20160124:1900


Входные параметры:

eventid id мероприятия

Пример JSON-ответа:

{
   "version" : "1",
   "status" : "ok",
   "data" : [
      {
         "timeleft" : "8288",
         "cacheid" : "f05523eecda69485f53463d7af5452f8bdcd99ab",
         "status" : "actual",
         "name" : "Валентинов день",
         "eventid" : "1:74:706753:20160124:1900"
      }
   ],
   "limit" : "998",
   "message" : ""
}

Статистика: Получить список дат когда снималась статистика

Для запрошенного мероприятия возвращает список дат по которым произошли обновления, даты из списка понадобится при использовании cacher.get.

http://api.otickets.ru/v1/cacher.dates?apikey=APIKEY&eventid=1:295:1154142:20171104:2000


Входные параметры:

eventid id мероприятия

Пример JSON-ответа:

{
   "status" : "ok",
   "version" : "1",
   "data" : [
      1489606022,
      1489298221,
      1489007703,
      1488673143,
      1488247444,
      1487922062,
      1487575984,
      1487235123,
      1486869187,
      1486551364,
      1486185123,
      1485815104,
      1485466805,
      1485118742,
      1484760903,
      1484417643,
      1484089685
   ],
   "limit" : "998",
   "message" : ""
}

Статистика: Получить список апдейтов и мероприятий данные которым были положены в кеш

Список содержит мероприятия по которым с момента date и до текущего момента времени пришли обновления данных

http://api.otickets.ru/v1/cacher.updates?apikey=APIKEY&regionid=&&date=1489827041


Входные параметры:

regionid id региона
date timestamp
day yyyy-MM-dd - получить список апдейтов на определенный день

Пример JSON-ответа:

{
    "status" : "ok",
    "version" : "1",
    {
    "data" : [
       {
         "eventName" : "Три сестры",
         "date" : 1489827902,
         "region" : "1",
         "eventPlace" : "Центр имени Вс. Мейерхольда",
         "myEventID" : "1:122:1173475:20170418:1900"
      },
      {
         "eventName" : "На высоких каблуках",
         "date" : 1489828023,
         "region" : "1",
         "eventPlace" : "Театр Эстрады",
         "myEventID" : "1:38:1187620:20170402:1900"
      },      
      ...
   ],
   "limit" : "998",
   "message" : ""
}

Статистика: Получить данные по билетам из кеша

Возвращает содержимое апдейтов в виде данных по билетам

http://api.otickets.ru/v1/cacher.get?apikey=APIKEY&eventid=21:888:1174601:20170331:1900&date=1488118023&batch=1


Входные параметры:

eventid id мероприятия
date timestamp - время когда был сделан апдейт кеша, если параметр не указывать то будет возвращен самый последний апдейт
batch 1 - вернуть несколько апдейтов начиная
0 - вернуть только один апдейт сделанный в определенную дату date
опционально параметр batch=1 можно комбинировать с date, где в date возможно задать timestamp-значения с момента которого вернуть все апдейты, или вовсе не указывать date, то метод вернет все имеющиеся апдейты по мероприятию

Пример JSON-ответа:

{
	"status" : "ok",
	"version" : "1",
	"data" : [
	    {
	      "eventName" : "Metallica",
	      "timestamp" : 1489631165,
	      "eventID" : "21:888:1174601:20170331:1900",
	      "eventPlace" : "Красноярская краевая филармония",
	      "tickets" : {
	         "Партер" : {
	            "6" : {
	               "2600.00" : {
	                  "GATE" : {
	                     "count" : 4,
	                     "seats" : [
	                        "17",
	                        "15",
	                        "18",
	                        "16"
	                     ]
	                  }
	               },
      ...
   ],
   "limit" : "998",
   "message" : ""
}

Планы

SeatScan API возможно доработать под ваши требования.


В настоящий момент в API реализована выгрузка афиш, поиск билетов, работа с кешем билетов, в будущем планируем расширить функционал.