Jobned

Начнем Edit

Добро пожаловать в наш API.

API все еще находится в стадии разработки и будет развиваться.

Точка входа всех запросов к API:
https://jobned.com/api/v1/

Описание информационных блоков:

У тебя все получится, если ты сделаешь это.

Вот некоторая полезная информация.

Что-то может не случиться, если вы попробуете это сделать.

Что-то плохое случится, если ты сделаешь это.

Аутентификация Edit

Вам необходимо пройти аутентификацию для всех запросов API. Для получения API ключа напишите на почту partners@jobned.com.

Добавьте ключ API ко всем запросам в качестве HTTP заголовка: Authorization: Bearer API ключ

Ничего не будет работать, если вы не укажете этот ключ API.

Лимиты Edit

Лимиты на количество запросов.
Рекомендуем 1 запрос в 10 секунд, но если вам нужно чаще то вы можете запрашивать с частотой 1 запрос в 1 секунду.

Мягкий лимит 1 запрос в 10 секунд (рекомендуем)

Жесткий лимит 1 запрос в 1 секунду

Ошибки Edit

Все ошибки вернут JSON в следующем формате:

{
  "error": "error message here"
}

/projects/ Edit

Получить список проектов

Parameters
sites
Массив фильтрации
keywords
Массив ключевых слов
start_from
Получить проекты новее определенного id

Возвращает массив проектов относительно параметров фильтрации, если параметры фильтрации не указаны то возвращает 100 последних проектов

Этот вызов вернет максимум 100 проектов

<?php
$base = 'https://jobned.com/api/v1';
$ch = curl_init($base . '/projects/');
$token = 'Your API key';
$data = array(
  "sites" => [ // массивы фильтрации по биржам, категориям, бюджетам
    [
      "id" => 1, // id биржи
      "cat" => [1], // массив id картегорий
      "subcat" => [30,45], // массив id подкатегорий (Указывайте только подкатегории которые не входят в категории выше)
    ],
    [
      "id" => 2, // id биржи
      "budgets" => [ // массив фильтрации по бюджетам (ипользуется валюта биржи)
        "budget" => 300, // бюджет от
        "budget_to" => 1500, // бюджет до
        "budget_per_hour" => 15, // бюджет в час от
        "budget_per_hour_to" => 2000, // бюджет в час до
        "price_per_symbol" => 10 // бюджет за 1000 знаков (только для контентных бирж)
      ]
    ]
  ],
  "keywords" => ["html", "web"], // массив с ключевыми словами или словосочетаниями
  "start_from" => 1622644515080 // получить проекты новее id в таком случае массив будет построен от старых к новым
);
$data_string = json_encode($data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$authorization = 'Authorization: Bearer ' . $token;
curl_setopt($ch, CURLOPT_HTTPHEADER, array($authorization));
$responce = curl_exec($ch);
curl_close($ch);
$responce = json_decode($responce, true);
var_dump($responce);
?>
[
  {
    "id": "1622729542595",
    "name": "MVP product using Betfair API",
    "text": "I'm looking for someone who can build an MVP product which uses the Betfair API. The product would be a web app that uses the Betfair API to obtain odds and then add to betslip in betfair to place the bets. First off I need to know if my idea is viable and can be achieved. Then to build an MVP to test it works.",
    "budgets": {
      "budget": "1000",
      "budget_to": "0",
      "budget_per_hour": "0",
      "budget_per_hour_to": "0",
      "price_per_symbol": "0"
    },
    "website": {
      "id": "8",
      "name": "Upwork.com",
      "logo": "https://jobned.com/img/sites/upwork.png",
      "currency": "$",
      "category": {
          "id": "74",
          "name": "Web, Mobile & Software Dev",
          "subcategory": {
              "id": "1188",
              "name": "Full Stack Development"
          }
      }
    },
    "link": "https://jobned.com/link/aHR0cHM6Ly93d3cudXB3b3JrLmNvbS9qb2JzL01WUC1wcm9kdWN0LXVzaW5nLUJldGZhaXItQVBJXyU3RTAxYjkzNTJhNTUxZTJjZWVmZj9zb3VyY2U9cnNz",
    "timestamp": "1622729542"
  },
  {
    "id": "1622729477629",
    "name": "A product company is looking for a permanent React frontend developer",
    "text": "Codedo Limited is a provider of video streaming, transcoding, processing, live composition, storage and delivery solutions. We are looking for a React developer to extend our core team. Primary responsibility is the extension and continued development of a club sound-oriented product that we co-own, the product has ample venture backing and lots of traction. Initial tasks will consist of building out a React frontend for an Electron.js application (no Electron-specific skills needed), continuing with development of fan web interface.",
    "budgets": {
      "budget": "0",
      "budget_to": "0",
      "budget_per_hour": "25",
      "budget_per_hour_to": "45",
      "price_per_symbol": "0"
    },
    "website": {
      "id": "8",
      "name": "Upwork.com",
      "logo": "https://jobned.com/img/sites/upwork.png",
      "currency": "$",
      "category": {
          "id": "74",
          "name": "Web, Mobile & Software Dev",
          "subcategory": {
              "id": "1186",
              "name": "Front-End Development"
          }
      }
    },
    "link": "https://jobned.com/link/aHR0cHM6Ly93d3cudXB3b3JrLmNvbS9qb2JzL3Byb2R1Y3QtY29tcGFueS1sb29raW5nLWZvci1wZXJtYW5lbnQtUmVhY3QtZnJvbnRlbmQtZGV2ZWxvcGVyXyU3RTAxMmRiYjdlYTg4OGQyY2FlOD9zb3VyY2U9cnNz",
    "timestamp": "1622729477"
  },
]
{
  "error": "Projects not found"
}

/sites/ Edit

Получить список бирж

Возвращает массив бирж.

<?php
$base = 'https://jobned.com/api/v1';
$ch = curl_init($base . '/sites/');
$token = 'Your API key';
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$authorization = 'Authorization: Bearer ' . $token;
curl_setopt($ch, CURLOPT_HTTPHEADER, array($authorization));
$responce = curl_exec($ch);
curl_close($ch);
$responce = json_decode($responce, true);
var_dump($responce);
?>
[
  {
      "id": "1",
      "name": "Fl.ru",
      "url": "https://fl.ru",
      "currency": "₽",
      "logo": "https://jobned.com/img/sites/fl-ru.png"
  },
  {
      "id": "2",
      "name": "Freelancehunt.com",
      "url": "https://freelancehunt.com",
      "currency": "₴",
      "logo": "https://jobned.com/img/sites/Freelancehunt.com.png"
  }
]
{
  "error": "Wrong api key"
}

/categories/ Edit

Получить список категорий

Parameters
sites
Массив с id бирж *

Возвращает массив категорий и подкатегорий.
Поля отмеченные * обязательны!

<?php
$base = 'https://jobned.com/api/v1';
$ch = curl_init($base . '/categories/');
$token = 'Your API key';
$data = array(
    "sites" => [1,2] // массив бирж
);
$data_string = json_encode($data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$authorization = 'Authorization: Bearer ' . $token;
curl_setopt($ch, CURLOPT_HTTPHEADER, array($authorization));
$responce = curl_exec($ch);
curl_close($ch);
$responce = json_decode($responce, true);
var_dump($responce);
?>
[
  {
      "id": "1",
      "site_id": "1",
      "name": "Разработка сайтов",
      "subcategories": [
          {
              "id": "1",
              "site_id": "1",
              "category_id": "1",
              "name": "Копирайтинг"
          },
          {
              "id": "2",
              "site_id": "1",
              "category_id": "1",
              "name": "Веб-программирование"
          }
      ]
  },
  {
      "id": "21",
      "site_id": "2",
      "name": "Программирование",
      "subcategories": [
          {
              "id": "243",
              "site_id": "2",
              "category_id": "21",
              "name": "1C"
          },
          {
              "id": "244",
              "site_id": "2",
              "category_id": "21",
              "name": "Blockchain"
          },
      ]
  }
]
{
  "error": "Site id is required"
}

/add_project/ Edit

Добавление проекта

Parameters
title
Заголовок *
content
Текст проекта *
site
Id вашего сайта *
ctegory
Id категории *
subcategory
Id подкатегории
url
Url страницы проекта *

Этот запрос добавляет проект в нашу базу
Поля отмеченные * обязательны!

Для получения id сайта, категорий и подкатегорий - напишите нам и мы добавим вашу биржу к нам в базу

<?php
$base = 'https://jobned.com/api/v1';
$ch = curl_init($base . '/add_project/');
$token = 'Your API key';
$data = array(
  "title" => "Project title",
  "content" => "Project text",
  "site" => "1",
  "category" => "1",
  "subcategory" => "1",
  "url" => "https://jobned.com/projects/project/1/"
);
$data_string = json_encode($data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$authorization = 'Authorization: Bearer ' . $token;
curl_setopt($ch, CURLOPT_HTTPHEADER, array($authorization));
$responce = curl_exec($ch);
curl_close($ch);
$responce = json_decode($responce, true);
var_dump($responce);
?>

{
  "success": "Ok"
}
{
  "error": "Wrong api key"
}