Любой желающий может создавать свои приложения или использовать данные с joby.su в своих веб-проектах.
Запросы на чтение данных выполняются методом GET, запросы на изменение данных, создание новых, удаление - методом POST. Для методов POST в каждом запросе необходимо передавать логин и пароль пользователя.
Ответы на запросы приходят в формате
JSON.
В данной версии API доступны только данные для чтения. Обработка POST запросов в разработке. Следите за новостями сайта. Запросы на чтение
Во всех ответах есть однотипные поля, описывать которые в каждом запросе смысла нет. Например:
- pk: первичный ключ
- slug: ссылка/название латиницей
- title: название/наименование
- descr/txt: описание/полный текст
- image/photo/avatar: ссылка на картинку/фото/аватар
- date: дата
В некоторых запросах, ответ включает в себя пагинацию, например:
{"count":1,"next":null,"previous":null,"results":[]
Где
- count: количество страниц
- next: ссылка на следующую страницу
- previous: ссылка на предыдущую страницу
-
Категории
Категории, это основные направления проектов, а также профиля пользователя. Категории включают в себя подкатегории. Полный список категорий и подкатегорий вы можете посмотреть, например, тут. Запрос на получение категорий с подкатегориями необходимо направлять на url
https://joby.su/api/cats/
В ответе вы получите список { pk: 17 slug: "flash" subcategories: [ {pk: 38, slug: "bannery", title: "Баннеры"},… ] title: "Flash" twitter: "" vk: "" },...
- subcategories: список подкатегорий
- twitter: ссылка на твиттер, где публикуются проекты из данной категории
- vk: ссылка на группу vkontakte, где публикуются проекты из данной категории
-
Технологии
Технологии. Используются в профилях фрилансеров, в тестировании. Запрос на получение списка технологий: https://joby.su/api/techs/
В ответе вы получите список [ {"id":2,"title":"JavaScript"}, {"id":6,"title":"Assembler"}... ]
-
Список фрилансеров
https://joby.su/api/users/
В ответе вы получите список { first_name: "Сергей" get_avatar_api: "https://joby.su/static/img/nophoto.png" last_name: "Шоломицкий" lastactivity: "2015-01-14T13:19:14.397195" pk: 1 podpis: "" rating: "100.00" username: "admin" }...
- first_name/last_name: имя/фамилия
- get_avatar_api: ссылка на аватар (фото)
- lastactivity: дата последней активности
- podpis: подпись
- rating: рейтинг
- username: логин пользователя
-
Данные пользователя
В запрос подставляется логин пользователя
https://joby.su/api/users/admin/
В ответе вы получите birth: null city: "Дзержинск" coord: "56.237592,43.459856" country: "r" create_date: "2013-11-08" cv: "" descr: "" first_name: "Сергей" get_avatar_api: "https://joby.su/static/img/nophoto.png" is_online: true last_name: "Шоломицкий" lastactivity: "2015-01-14T13:24:50.165752" podpis: "" pol: "m" portfolio_set: [705] rating: "100.00" rss: "http://criticweb.ru/feed/" site: "http://criticweb.ru/" stack_rating: 0 subcategories: [43, 12, 9] technologies: [2, 19, 23, 24, 27, 28, 29, 30, 39] username: "admin"
- birth: дата рождения
- city: город проживания
- coord: координаты на карте
- country: страна. r - Россия, u - Украина, b - Белоруссия, k - Казахстан, z - Узбекистан
- create_date: дата регистрации
- cv: ссылка на резюме
- descr: о себе
- is_online: сейчас на сайте (да/нет)
- pol: пол. f - женский, m - мужской
- portfolio_set: список из pk портфолио пользователя
- rss: ссылка на rss ленту личного блога
- site: ссылка на личный вебсайт
- stack_rating: рейтинг stackoverflow
- subcategories: список подкатегорий
- technologies: список технологий
-
Список портфолио
https://joby.su/api/portfolio/
В ответе вы получите список { comments_count: 1 get_preview_api: "http://s3.joby.su/preview.." likes: 0 pk: 705 subcategory: 39 title: "Регион" user: 1 }...
- comments_count: количество комментариев
- get_preview_api: ссылка на превью
- likes: кол-во лайков
- subcategory: подкатегория
- user: pk пользователя
-
Данные портфолио
В запрос подставляется pk портфолио
https://joby.su/api/portfolio/705/
В ответе вы получите { comments_count: 1 descr: "erew" file: null get_big_preview: "http://s3.joby.su/preview/..." get_preview_api: "http://s3.joby.su/preview/..." images: [{get_big_preview: "http://s3.joby.su/portfolio/..."}] likes: 0 link: "http://market.yandex.ru" portfoliocomments_set: [{pk: 706, descr: "123123", date: "2015-01-14T10:29:16.586982", children: [34,12], user: 1, likes: 0}] subcategory: 39 title: "Интернет-магазин" user: 1 }...
- file: ссылка на прикрепленный файл
- get_big_preview: ссылка изображение в большом размере
- images: список прикреплённых изображений
- link: ссылка
- portfoliocomments_set: Дерево комментариев к портфолио. Где descr: текст комментария, date: дата, children: список из ответов, user: pk пользователя, likes: лайки комментария
-
Проекты
Кроме полного списка активных проектов
https://joby.su/api/projects/
Проекты можно отфильтровать по категориям и подкатегориям https://joby.su/api/projects/?subcategory=15
или
https://joby.su/api/projects/?category=17
В ответе вы получите список { activetill: "2015-01-23" date: "2015-01-06T12:54:18.807380" pk: 15 requests: 0 subcategory: 15 title: "Создать интернет-магазин" user: 1 views: 1 vip: false }...
- activetill: до какого числа размещен проект
- requests: кол-во заявок
- subcategory: подкатегория проекта
- user: pk пользователя, разместившего проект. Может быть null, если разместил неавторизованный пользователь
- views: количество просмотров
- vip: вип проект (да/нет)
-
Данные проекта
В запрос подставляется pk проекта https://joby.su/api/projects/15/
В ответе вы получите список { active: true activetill: "2015-01-23" date: "2015-01-06T12:54:18.807380" descr: "info" file: null maxprice: null pk: 15 request_set: [] security: false selected: null subcategory: 15 title: "Создать интернет-магазин" user: 1 views: 1 vip: false }...
- active: если false, значит проект закрыт
- file: ссылка на прикреплённый файл
- maxprice: максимальная цена, которую заказчик готов заплатить
- security: только безопасная сделка
- selected: pk выбранной заявки (из request_set)
- request_set: список заявок, где days: кол-во дней, за которые фрилансер готов выполнить проект, price: сумма, указанная фрилансером, rejected: заявка отклонена заказчиком
-
Проекты с других бирж
https://joby.su/api/other/
В ответе вы получите список { 'pk':100, 'title':'Создать копию яндекса', 'date':'2015-01-06T12:54:18.807380', }...
-
Данные проекта стороней биржи
В запросе необходимо подставлять pk из предыдущего запроса https://joby.su/api/other/100/
В ответе вы получите { 'pk':100, 'title':'Создать копию яндекса', 'description':'Хочу свой поисковик', 'date':'2015-01-06T12:54:18.807380', 'link','http://weblancer.net/.... }...
-
Список новостей сайта
https://joby.su/api/news/
В ответе вы получите список { date: "2015-01-04T15:52:45.462508" slug: "novost" title: "Новость" }...
- В запрос необходимо подставлять slug новости
Запрос на чтение новости
https://joby.su/api/news/novost/
В ответе вы получите { blogcomments_set: [{pk: 701, descr: "1", date: "2015-01-05T13:06:56.058229", children: [], user: 1, likes: 0},…] date: "2015-01-04T15:52:45.462508" slug: "novost" title: "Новость" txt: "текст новости" }
-
Список FAQ
https://joby.su/api/faq/
В ответе вы получите список вопросов и ответов { pk: 2 title: "Вывод средств" }
-
Прочитать ответ на вопрос (FAQ)
В запрос необходимо подставлять pk вопроса https://joby.su/api/faq/2/
В ответе вы получите { pk: 2, title: "Вывод средств", answer: "Минимальная сумма вывода - 100 рублей. Заказать вывод можно на ..' }
-
Разделы форума
https://joby.su/api/forum/
В ответе вы получите список разделов { descr: "Критика, пожелания, вопросы и предложения по улучшение сервиса" messages_count: 1 slug: "joby" themes_count: 2 title: "JOBY" }
- messages_count: кол-во сообщений
- themes_count: кол-во тем
-
Темы в разделе форума
В запрос необходимо подставлять slug раздела https://joby.su/api/forum/joby/
В ответе вы получите список тем в theme_set { descr: "Критика, пожелания, вопросы и предложения по улучшение сервиса" messages_count: "1" theme_set: [ { title: "Тема", slug: "tema", user: 1, descr: "а вы что думаете по этому поводу?", date: "2015-01-03T06:33:20.777235" },... ] themes_count: 2 title: "JOBY" }
- title: название темы
- descr: сообщение
-
Сообщения в теме форума
В запрос необходимо подставлять slug раздела и slug темы https://joby.su/api/forum/joby/tema/
В ответе вы получите список сообщений { date: "2015-01-06T12:09:57.110437" descr: "Первое сообщение" images: [ {image: "http://.."} ] user: 1 }
- images: список ссылок на прикреплённые изображения к сообщению