Страница 1 из 1

API для получения информации о своей учетной записи

СообщениеДобавлено: 27 янв 2011, 18:03
sd
Обращение к API происходит по протоколу HTTP(S) (методы POST или GET) по адресу:

Код: Выделить всё
http://api.comtube.ru/scripts/api/user.php

В дополнение к адресу необходимо передавать следующие параметры:

  • geo - Возвращать ли местоположение пользователя: 1 - да (по ip-адресу), 0 - нет (по умолчанию). Необязательный параметр
  • username – логин пользователя (свою учетную запись). Обязательный параметр
  • type – тип возвращаемого результата: xml (по умолчанию), html, json. Необязательный параметр
  • signature – подпись запроса. Обязательный параметр. Как создать подпись смотрите раздел "Создание подписи (signature)"

Обработка результата запроса

Ниже приводится пример ответа в формате XML:

Код: Выделить всё
<result>
<userinfo>
<profileid>880832734343430434</profileid>
<login>sd</login>
<username>Сергей</username>
<country>Россия</country>
<city>Москва</city>
<account>99999999</account>
<balance>842.60</balance>
<critbalance>100.00</critbalance>
<crcy>RUB</crcy>
<sip_number>999999</sip_number>
<tplan>Премиум</tplan>
<status>200</status>
<contacts>
<contact>
<type>101</type>
<type_desc>Mobile phone</type_desc>
<default>1</default>
<value>79261234567</value>
</contact>
<contact>
<type>700</type>
<type_desc>E-mail</type_desc>
<default>1</default>
<value>xxxxx@yyyyyy.zzz</value>
</contact>
<contact>
<type>600</type>
<type_desc>ICQ</type_desc>
<default>0</default>
<value>111111111</value>
</contact>
</contacts>
</userinfo>
<geo_info>
<ip>000.000.000.000</ip>
<country_id>183</country_id>
<country_name_eng>Russia</country_name_eng>
<country_name_rus>Россия</country_name_rus>
<alpha2>RU</alpha2>
<alpha3>RUS</alpha3>
<city_id>40414</city_id>
<city_name_eng>Moscow</city_name_eng>
<city_name_rus>Москва</city_name_rus>
<country_code>7</country_code>
<phone_len_min>11</phone_len_min>
<phone_len_max>11</phone_len_max>
</geo_info>
<code>200</code>
<desc>OK</desc>
</result>


Внутри тега <userinfo> указывается информация о контактах, указанных пользователем в личном кабинете:

  • profileid - Идентификатор профиля пользователя
  • login - логин пользователя
  • username - Отображаемой имя пользователя
  • country - Страна, указанная в личном кабинете пользователя
  • city - Город, указанный в личном кабинете пользователя
  • account - Номер счета
  • balance - Баланс пользователя
  • critbalance - Критический баланс пользователя
  • crcy - Валюта, в которой указан баланс
  • sip_number - SIP-номер пользователя
  • tplan - Наименование тарифного плана пользователя
  • status - Статус пользователя: 200 - ОК, 400 - заблокирован

Внутри тега <contact> указывается информация о контактах, указанных пользователем в личном кабинете:

  • type указывает тип контакта.
  • type_desc указывает описание типа контакта на английском языке.
  • default указывает, является ли контакт контактом по умолчанию (1 - да, 0 - нет) с разделением по группам типов контактов (телефоны отдельно, email отдельно)
  • value сам номер телефона, email и т.д.

В теге <geo_info> указана информация о текущем местоположении пользователя на основе его IP-адреса:

  • id - Идентификатор страны
  • name_eng - Название страны на английском
  • name_rus - Название страны на русском
  • alpha2 - Двухбуквенный код страны
  • alpha3 - Трехбуквенный код страны
  • phone_code - Телефонный код страны
  • min_phone_len - Минимально допустимая длина номера для страны
  • max_phone_len - Максимально допустимая длина номера для страны

Поле code указывает код выполнения операции:

  • 200 - OK – Операция прошла успешно. В случаях, когда запрашивается статистика в формате csv, html и операция прошла успешно, код ошибки не возвращается.
  • 400 – Bad Request – указывает, что один или несколько параметров указаны не верно или отсутствуют. В поле desc, как правило, возвращается название параметра, который указан не правильно
  • 401 – Authorization Failed – Неправильно указан логин/пароль или неправильно сформирована подпись signature
  • 403 – Account Blocked OR User Blocked – Указывает, что учетная запись пользователя заблокирована по тем или иным причинам
  • 500 – Internal Server Error – Возникла внутренняя ошибка

Поле desc предоставляет дополнительное описание ошибки.