webinar.ru20_api_419

advertisement
Список запросов
Вебинары
GET session
GET sessions
PUT session
POST session
DELETE session
GET invitees
PUT invitee
POST invitee
DELETE invitee
Записи
GET recording
GET recordings
POST recording
DELETE recording
Аккаунты (пользователи)
GET user
GET users
PUT user
POST user
DELETE user
В разработке:
Файлы
Адресная книга
Отчеты
Важно:
1. В соответствии со стандартами PHP, при GET запросах все параметры должны передаваться
через URL/querystring.
2. В PUT, POST или DELETE запросах все параметры должны передаваться в теле запроса.
URL/querystring параметры в данных запросах будут проигнорированы, за исключением
переменных форматирования.
3. Данные в теле запроса должны передаваться в одном из следующих форматов:
а) содержать пары имя/значение: id=1&var2=val2 или
б) содержать переменные input_type (json) и rest_data (JSON массив)
input_type=json&rest_data={"id":"1","var2":"val2"}.
Авторизация
Доступ к API требует авторизации (в настоящий момент поддерживается “Basic HTTP
Authentication”, в планах поддержка “Digest HTTP Authentication”). При обращении к API
нужно передавать зашифрованные base64 авторизационные данные (строка Логин:Пароль) в
заголовке каждого запроса. Пример:
Authorization: Basic bWF0dGhpYXM6YWWtaW4=
Рекомендуем использовать Fiddler2 для дебагинга.
Коды ошибок (HTTP)
400
“Некорректный запрос”
401
“Ошибка авторизации”
404
“Не найден” – попытка обращения к URI, не связанного ни с каким ресурсом
(например, запрос к несуществующему пользователю).
405
“Недопустимый Запрос” – возвращается при попытке использования Запроса, который
не поддерживается данным ресурсом. Например, PUT или DELETE к ресурсу с правами «только
чтение».
409
“Конфликт” – возвращается при попытки записи данных, которые приведут к
конфликту ресурсов. Например, попытка изменить имя на то, которое уже занято.
410
“Ресурс отсутствует”
500
“Ошибка на сервере”
Коды подтверждения (HTTP)
200
“OK”
201
“Создан”
301
“Ресурс перемещен”
Форматы вывода
Формат
xml
json
serialize
php
(can be used in
eval)
Параметр URL
Пример ответа
<?xml version="1.0" encoding="utf-8"?>
<xml>
<item>
<id>1</id>
none (default)
<login>логин</login>
или
<email>email@domain.com</email>
/format/xml
<first_name>Имя</first_name>
<last_name>Фамилия</last_name>
[...]
</item>
</xml>
[
{
"id": "1",
"login": "логин",
"email": "email@domain.com",
/format/json
"first_name": "Имя",
"last_name": "Фамилия",
[...]
}
]
a:1:
{
i:0;a:5:
{
s:2:"id";
s:1:"1";
s:5:"login";
s:8:"логин";
/format/serialize
s:5:"email";
s:16:"email@domain.com";
s:10:"first_name";
s:10:"Имя";
s:9:"last_name";
s:9:"Фамилия ";
[...]
}
}
array (
0 =>
array (
/format/php
'id' => '1',
'login' => 'username',
'email' => 'email@domain.com',
'first_name' => 'First Name',
'last_name' => 'Last Name',
[...]
html
/format/html
csv
/html/csv
)
)
<table border="0" cellpadding="4" cellspacing="0">
<tr>
<th>id</th>
<th>login</th>
<th>email</th>
<th>first_name</th>
<th>last_name</th>
<th>[...]</th>
</tr>
<tr>
<td>1</td>
<td>логин</td>
<td>email@domain.com</td>
<td>Имя</td>
<td>Фамилия </td>
<td>[...]</td>
</tr>
</table>
id,login,email,first_name,last_name,[...]
1,"username","email@domain.com","First Name","Last
Name",[...]
Запрос
URL
Описание
Аргументы
Обязательные
Дополнительные
GET authverify
/api/[ver]/[username]/authverify
Тест авторизации
HTTP
GET
Ответ
authenticated (bool)
Запрос
URL
Описание
Если 1/true, авторизация пройдена.
GET session(s)
/api/[ver]/[username]/session/id/[session_id]
/api/[ver]/[username]/sessions
Вывод одного или нескольких вебинаров, связанных с данным
аккаунтом.
/session возвращает данные только об одном вебинаре по ID
/sessions множественный вывод
Аргументы
Обязательные
Дополнительные
ID вебинара для /session
отсутствует для /sessions
Укажите поля для вывода, например
.../sessions/return/id;topic;start_time
return(str)
В противном случае будут выданы поля по (см.
пример XML ниже)
Доступные только для /sessions
count(int)
Количество строк для вывода (по умолчанию 100).
offset(int)
HTTP
Вывод
Пример
Запрос
Тело запроса
Ответ
PHP
Пример
Запрос
Сдвиг (по умолчанию 0).
Порядок вывода результатов (по возрастанию или
убыванию ID вебинара (session ID), по умолчанию:
order(str)
по возрастанию).
Допустимые значения: asc, desc
Доступные только для /session
Вывод по ID вебинара. Если указан, то count, offset,
id(int)
order игнорируются.
GET
id (int)
ID вебинара.
topic (str)
Название вебинара.
start_time
Время начала вебинара.
(datetime)
duration (int)
Продолжительность вебинара.
Часовой пояс, в котором запланирован вебинар
timezone (str)
(UTC).
password (str)
Пароль вебинара.
Прямая ссылка на вебинар. Если friendly_url пуст,
session_link (str)
возвращается session_key.
GET http://connect1.webinar.ru/api/[ver]/[username]/session/id/1
<?xml version="1.0" encoding="UTF-8"?>
<root>
<sessions>
<session>
<id>1</id>
<topic>Мой первый вебинар</topic>
<start_time>2010-08-31 14:00:00</start_time>
<duration>60</duration>
<timezone>UP2</timezone>
<password>пароль</password>
<session_link>http://connect1.webinar.ru/user/friendly_url-orsession_key</session_link>
</session>
[...]
</sessions>
</root>
<?php
// GET session
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
$baseurl.$username.'/session/id/1');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
PUT http://connect1.webinar.ru/api/[ver]/[username]/authverify
Тело запроса
Ответ
PHP
Запрос
URL
Описание
Аргументы
Обязательные
<?xml version="1.0" encoding="utf-8"?>
<xml>
<authenticated>1</authenticated>
<message>You are authorized to use the API</message>
</xml>
<?php
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$parameters = array();
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
$baseurl.$username.'/authverify');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
PUT session
/api/[ver]/[username]/session
Создать новый вебинар.
topic (str)
duration (int)
start_time (datetime)
timezone (str)
Дополнительные
friendly_url (str)
password (str)
invited_participants
(arr)
Название вебинара.
Продолжительность в мин.
Время начала, формат: “2011-07-30
11:05:00”
Часовой пояс в формате UTC: “UTC”
или “UP25”.
Коротка ссылка (используется вместо
автоматически сгенерированного ID
вебинара).
Пароль вебинара.
JSON массив пользователей, которые
должны получить приглашение по
емейл:
[
{
"id": "1",
"email": "email@domain.com",
"first_name": "Имя",
"last_name": "Фамилия",
"role": 1,
"send_email_invitation": false
}
]
role (int): Определяет тип пользователя:
Модератор (1), Участник (2) или
Наблюдатель (3)
send_email_invitations (bool):
Установите 0 (false), чтобы не
отправлять сообщения с сервера
участникам.
По умолчанию: true. Емейлы будут
отправлены в момент обращения по
данному запросу. Если Вы хотите
самостоятельно отправить
приглашения, используйте GET
invitees, чтобы получить персональную
ссылку для каждого участника.
HTTP
Ответ
Пример
Запрос
Тело запроса
Ответ
PHP
PUT
id (int)
ID созданного вебинара.
PUT http://connect1.webinar.ru/api/[ver]/[username]/session
input_type=json&rest_data={"topic":"Тест","duration":60,
"start_time":"2010-09-10 12:00:00","timezone":"UP1",
"invited_participants":[{"email":"email@domain.com","first_name"
:"Иван","last_name":"Иванов","role":1,"send_email_invitation":0}]
}
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Session added</message>
</xml>
<?php
// PUT session
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$parameters = array(
'topic' => 'Test',
'duration' => 60,
'start_time' => '2010-10-09 12:00:00',
'timezone' => 'UP1',
'invited_participants' => array(
array(
'email'=>'email@domain.com',
'first_name'=>'Иван',
'last_name'=> 'Иванов',
'role'=> 1
),
array(
'email'=>'email2@domain.com',
'first_name'=>'Петр',
'last_name'=> 'Петров',
'role'=> 2
)
)
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $baseurl.$username.'/session');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password
);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Запрос
URL
Описание
Аргументы
Обязательные
Дополнительные
POST session
/api/[ver]/[username]/session
Редактировать существующий вебинар.
id (int)
topic (str)
duration (int)
start_time (datetime)
timezone (str)
friendly_url (str)
password (str)
invited_participants
(arr)
ID вебинара.
Название вебинара.
Продолжительность в мин.
Время начала, формат: “2011-07-30
11:05:00”
Часовой пояс в формате UTC: “UTC” или
“UP25”.
Коротка ссылка (используется вместо
автоматически сгенерированного ID
вебинара).
Пароль вебинара.
JSON массив пользователей, которые
должны получить приглашение по емейл:
[
{
"id": "1",
"email": "email@domain.com",
"first_name": "Имя",
"last_name": "Фамилия",
"role": 1,
"send_email_invitation": false
}
]
role (int): Определяет тип пользователя:
Модератор (1), Участник (2) или
Наблюдатель (3)
send_email_invitations (bool): Установите
0 (false), чтобы не отправлять сообщения
с сервера участникам.
По умолчанию: true. Емейлы будут
отправлены в момент обращения по
данному запросу. Если Вы хотите
самостоятельно отправить приглашения,
используйте GET invitees, чтобы
получить персональную ссылку для
каждого участника.
HTTP
Return
POST
id (int)
message (str)
ID вебинара.
“Session updated”.
Пример
Запрос
Тело запроса
Ответ
PHP
Запрос
URL
Описание
POST http://connect1.webinar.ru/api/[ver]/[username]/session
input_type=json&rest_data={"id":1,"topic":"Test","duration":60,
"start_time":"2011-07-10 12:00:00","timezone":"UP1",
"invited_participants":[{"email":"email@domain.com","first_name":"Ив
ан","last_name":"Иванов","role":1,"send_email_invitation":0}]}
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Session updated</message>
</xml>
<?php
// POST session
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$parameters = array(
'id' => 1,
'topic' => 'Test',
'duration' => 60,
'start_time' => '2010-09-10 12:00:00',
'timezone' => 'UP1',
'invited_participants' => array(
array(
'email'=>'email@domain.com',
'first_name'=>'Иван',
'last_name'=> 'Иванов',
'role'=> 1,
'send_email_invitation'=> 0
),
array(
'email'=>'email2@domain.com',
'first_name'=>'Петр',
'last_name'=> 'Петров',
'role'=> 2
)
)
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $baseurl.$username.'/session');
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
DELETE session
/api/[ver]/[username]/session
Удалить существующий вебинар.
Аргументы
Обязательные
Дополнительные
HTTP
Ответ
Пример
Запрос
Тело запроса
Ответ
PHP
Запрос
URL
Описание
id (int)
DELETE
id (int)
message (str)
ID вебинара.
ID вебинара.
“Session deleted”.
DELETE http://connect1.webinar.ru/api/[ver]/[username]/session
id=1
или
input_type=json&rest_data={"id":"1"}
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Session was deleted</message>
</xml>
<?php
// DELETE session
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$parameters = array(
'id' => 1
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $baseurl.$username.'/session');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
GET invitees
/api/[ver]/[username]/invitees/id/1/role/moderators
Получение данных об участниках, приглашенных на вебинар. Все
участники при создании вебинара группируются по ролям:
модераторы, участники (по умолчанию) и обозреватели.
Аргументы
Обязательные
id (int)
Дополнительные
role (string)
HTTP
Ответ
GET
first_name (str)
last_name (str)
email (str)
ID вебинара
Выдача по ролям. Возможные значения: all,
moderators, participants, observers.
Имя приглашенного участника.
Фамилия приглашенного участника.
Емейл приглашенного участника.
Персональная ссылка участника.
personal_session_link Персональная ссылка отличается от
(string)
session_link в запросе GET sessions. По
персональной ссылке участник сразу же
попадает в вебинар под своим именем. Кроме
того, по одной персональной ссылке может
находится только один участник (предыдущий
участник, зашедший по данной ссылке,
выбрасывается из вебинара).
Пример
Запрос
Тело запроса
Ответ
PHP
GET
http://connect1.webinar.ru/api/[ver]/[username]/invitees/id/1/role/modera
tors
<?xml version="1.0" encoding="UTF-8"?>
<root>
<invitees>
<moderators>
<invitee>
<first_name>Иван</first_name>
<last_name>Иванов</last_name>
<email>email@domain.com</email>
<personal_session_link>http://.../[user]/go/ABC123</personal_session_li
nk>
</invitee>
<invitee>
[...]
</invitee>
</moderators>
<participants>
[...]
</participants>
<observers>
[...]
</observers>
</invitees>
</root>
<?php
// GET invitees
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
$baseurl.$username.'/invitees/id/1/role/moderators');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Запрос
PUT invitee
URL
/api/[ver]/[username]/invitee
Описание
Добавить участника к вебинару.
Аргументы
Обязательные
Дополнительные
session_id (int)
ID вебинара.
email (str)
Емейл участника.
first_name (str)
Имя.
last_name (str)
Фамилия.
send_email_invitation Установите to false (или 0), чтобы не
(bool)
отправлять автоматические емейлы с
приглашением от Webinar.ru. По
умолчанию: true. В момент вызова
участнику будет отправлен емейл с
приглашением. Для самостоятельной
отправки приглашений, используйте
GET invitees, чтобы получить
персональную ссылку
(personal_session_link) для каждого
участника.
role(int)
HTTP
PUT
Ответ
id (int)
Определение роли участника. По
умолчению 2.
1 = Модератор, 2 = Участник, 3 =
Обозреватель.
Идентификатор (user_id) созданного
участника.
Пример
Запрос
PUT
http://domain.com/api/[ver]/[username]/invitee
Тело запроса
input_type=json&rest_data={"session_id":1,"email
":"robin@arsenal.com","first_name":"Robin",
"last_name":"van
Persie","send_email_invitation":false,"role":1}
Ответ
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Invitee added</message>
</xml>
PHP
<?php
// PUT invitee
$username = 'username';
$password = 'password';
$baseurl = 'http://domain.com/api/1/';
$parameters = array(
'session_id' => 1,
'email' => 'robin@arsenal.com',
'first_name' => 'Robin',
'last_name' => 'van Persie',
'send_email_invitation' => 0,
'role' => 1
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json
;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
ame.'/session');
$baseurl.$usern
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT')
;
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs
);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true)
;
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true)
;
curl_setopt($curl, CURLOPT_USERPWD, $username.':
'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Запрос
POST invitee
URL
/api/[ver]/[username]/invitee
Описание
Редактировать данные участника.
Аргументы
Обязательные
session_id (int)
ID вебинара, которому принадлежит
участник.
user_id(int)
Дополнительные send_email_invitation
(bool)
role(int)
HTTP
POST
Ответ
id (int)
ID участника (Используйте PUT чтобы
его узнать).
Установите to false (или 0), чтобы не
отправлять автоматические емейлы с
приглашением от Webinar.ru. По
умолчанию: true. В момент вызова
участнику будет отправлен емейл с
приглашением. Для самостоятельной
отправки приглашений, используйте
GET invitees, чтобы получить
персональную ссылку
(personal_session_link) для каждого
участника.
Определение роли участника. По
умолчению 2.
1 = Модератор, 2 = Участник, 3 =
Обозреватель.
ID (user_id) редактируемого
участника.
Пример
Запрос
POST http://domain.com/api/[ver]/[username]/invitee
Тело запроса
input_type=json&rest_data={"session_id":1,"user_id":1,"send_email_invitati
on":false,"role":1}
Ответ
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Invitation was updated</message>
</xml>
PHP
<?php
// POST invitee
$username = 'username';
$password = 'password';
$baseurl = 'http://domain.com/api/1/';
$parameters = array(
'session_id' => 1,
'user_id' => 1,
'send_email_invitation' => 0,
'role' => 1
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
$baseurl.$username.'/session');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Обратите внимание: Для редактирования email, first_name and last_name
участника, используйте запрос POST user.
Запрос
DELETE invitee
URL
/api/[ver]/[username]/invitee
Описание
Удалить участника вебинара.
Аргументы
Обязательные
HTTP
session_id (int)
ID вебинара, которому принадлежит
участник.
user_id (int)
ID участника.
DELETE
Ответ
Пример
Запрос
DELETE http://domain.com/api/[ver]/[username]/invitee
Тело запроса
input_type=json&rest_data={"session_id":1,"user_id":1}
Ответ
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Invitee deleted</message>
</xml>
PHP
<?php
// DELETE invitee
$username = 'username';
$password = 'password';
$baseurl = 'http://domain.com/api/1/';
$parameters = array(
'session_id' => 1,
'user_id' => 1
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
$baseurl.$username.'/session');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Запрос
URL
GET recording(s)
/api/[ver]/[username]/recording/id/[recording_id]
/api/[ver]/[username]/recordings
Описание
Получить одну или несколько записей, связанных с данным
аккаунтом.
/recording возвращает одну запись по id.
/recordings несколько записей.
Аргументы
Обязательные
Дополнительные
id для /recording
отсутствует для /recordings
Выбор полей, который должны быть в
выдаче (по шаблону через «;»):
return(str)
.../recordings/return/id;title;duration
По умолчанию выдача идет по стандартному
шаблону (см. XML ниже)
Только для множественной выдачи /recordings
Выдача записей, связанный с ID конкретного
session(int)
вебинара. По умолчанию возвращаются
записи, сделанные во всех вебинарах.
Количество выдаваемых строк в выдаче. По
count(int)
умолчанию 100.
offset(int)
Сдвиг. По умолчанию 0.
Порядок вывода результатов (по
возрастанию или убыванию ID записи
order(str)
(recording ID), по умолчанию: по
возрастанию).
Допустимые значения: asc, desc
Только для выдачи одной записи /recording
id(int)
HTTP
Ответ
Пример
Запрос
Тело запроса
Ответ
ID записи. Если указан, то count, offset, order
игнорируются.
GET
id (int)
session_id (int)
title (str)
description (str)
ID записи.
ID вебинара, в котором сделана запись.
Название записи.
Описание записи.
Пароль для просмотра записи. Наследуется
от вебинара, в котором сделана данная
password (str)
запись.
duration (int)
Продолжительность в мс.
Если true, пользователям не будет
allow_anonymous_play предлагаться вводить имя для просмотра.
back (bool)
Игнорируется, в случае если установлен
пароль.
recording_link (str)
Прямая ссылка на запись.
creation_date (datetime) Дата и время создания записи.
GET http://connect1.webinar.ru/api/[ver]/[username]/recording/id/1
none
<?xml version="1.0" encoding="UTF-8"?>
<root>
<recordings>
<recording>
<id>1</id>
<session_id>1</session_id>
<title>Моя запись</title>
<description>Это моя первая запись</description>
<password>password</password>
PHP
Запрос
URL
Описание
Аргументы
Обязательные
Дополнительные
<duration>25880</duration>
<allow_anonymous_playback>1</allow_anonymous_playback>
<recording_link>http://connect1.webinar.ru/play/1-My-firstrecording</recording_link>
<creation_date>2011-07-31 14:00:00</creation_date>
</recording>
[...]
</recordings>
</root>
<?php
// GET recording
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL,
$baseurl.$username.'/recording/id/1');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
POST recording
/api/[ver]/[username]/recording
Редактирование существующей записи.
id (int)
title (str)
description (str)
password (str)
allow_anonymous_playback
(bool)
HTTP
Ответ
Пример
Запрос
Тело запроса
Ответ
PHP
POST
id (int)
message (str)
ID записи.
Название записи.
Описание записи.
Установка пароля для просмотра
записи. Оставьте поле пустым для
открытого доступа.
Если true (или 1), пользователям не
будет предлагаться вводить имя для
просмотра. Игнорируется, в случае
если установлен пароль.
ID отредактированной записи.
“Recording updated”.
POST http://connect1.webinar.ru/api/[ver]/[username]/recording
input_type=json&rest_data={"id":1,"title":"My
recording","description":"Информация о записи",
"password":"mypassword"}
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Recording updated</message>
</xml>
<?php
// POST recording
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$parameters = array(
'id' => 1,
'title' => 'Моя запись',
'description' => 'Описание записи',
'password' => 'mypassword',
'allow_anonymous_playback' => 1,
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $baseurl.$username.'/recording');
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Запрос
URL
Описание
Аргументы
Обязательные
Дополнительные
DELETE recording
/api/[ver]/[username]/recording
Удаление записи
HTTP
Return
DELETE
id (int)
message (str)
Пример
Запрос
Тело запроса
Ответ
PHP
id (int)
none
ID записи для удаления.
ID удаленной записи.
“Recording deleted”.
DELETE http://connect1.webinar.ru/api/[ver]/[username]/recording
id=1
или
input_type=json&rest_data={"id":"1"}
<?xml version="1.0" encoding="utf-8"?>
<xml>
<id>1</id>
<message>Recording was deleted</message>
</xml>
<?php
// DELETE session
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru /api/1/';
$parameters = array(
'id' => 1
);
// encode as JSON
$json = json_encode($parameters);
$postArgs = 'input_type=json&rest_data=' . $json;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $baseurl.$username.'/recording');
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'DELETE');
curl_setopt($curl, CURLOPT_POSTFIELDS, $postArgs);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Запрос
URL
Описание
GET user
/api/[ver]/[username]/user
/api/[ver]/[username]/users
Получить данные об аккаунте.
Аргументы
Обязательные
Выбор полей, который должны быть
в выдаче (по шаблону через «;»):
Дополнительные
return(str)
.../user/return/id;login;email;last_name
По умолчанию выдача идет по
стандартному шаблону (см. XML
ниже)
HTTP
Return
GET
id (int)
login (str)
email (str)
first_name (str)
last_name (str)
company (str)
country (str)
language (str)
last_login (str)
activated (bool)
api_enabled (bool)
ID аккаунта
Логин аккаунта
Емейл аккаунта
Имя
Фамилия
Организация
Страна
Язык по умолчанию
Дата и время последнего входа
Активирован или нет аккаунт
Доступно или нет API для данного
аккаунта
Пример
GET http://connect1.webinar.ru/api/[ver]/[username]/user/id/1
Запрос
Тело запроса
GET
http://connect1.webinar.ru/api/[ver]/[username]/users/return/id;last_name/count/5
none
Ответ
PHP
<?xml version="1.0" encoding="UTF-8"?>
<root>
<users>
<user>
<id>1</id>
<login>[username]</login>
<email>user@domain.com</email>
<first_name>Иван</first_name>
<last_name>Иванов</last_name>
<company>ООО «Ромашка»</company>
<country>Россия</country>
<language>ru-RU</language>
<last_login>2011-07-31 14:00:00</last_login>
<activated>1</activated>
<api_enabled>0</api_enabled>
</user>
[...]
</users>
</root>
<?php
// GET user
$username = 'username';
$password = 'password';
$baseurl = 'http://connect1.webinar.ru/api/1/';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $baseurl.$username.'/user/id/1');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_USERPWD, $username.':'.$password);
$result = curl_exec($curl);
curl_close($curl);
echo $result;
?>
Download