Получение API ключа
Для начала вам нужно нажать на свой профиль справа вверху сайта, далее:
Управление ➜ Получить API-ключ ➜ Да
Откроется окно, в котором вы сможете скопировать свой API-ключ. В целях безопасности, API-ключ показывается только один раз.
Запросы по API
Запросы осуществляются с помощью URL, заголовка и API-ключа:
- Основной URL запроса:
https://flexy-ai.com/api - Заголовок:
X-API-Key - Значение:
flexy-*****************************
Виды запросов
Запросы могут быть двух типов: GET и POST
С помощью GET-запросов мы получаем данные, которые сервер уже имеет.
С помощью POST-запросов мы отправляем данные на сервер, чтобы он их сначала обработал.
Например, на сервере уже есть список стилей, который предопределён и мы делаем GET-запрос, чтобы получить его. А когда нам нужно что-то сгенерировать, нам нужно сначала послать информацию о том, что именно нужно сгенерировать с помощью POST-запроса и уже потом получать готовые данные с помощью GET-запроса.
Во избежание ошибок не рекомендуется делать запросы чаще 5 раз в 1 секунду
Пример запроса
Например, мы хотим получить список стилей, которые могут быть использованы во Flexy во время генераций изображений. Вот, как мы это сделаем на разных языках программирования:
curl https://flexy-ai.com/api/styles ^ -H "X-API-Key: flexy-*****************************"
<?php $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => 'https://flexy-ai.com/api/styles', CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => '', CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 0, CURLOPT_FOLLOWLOCATION => true, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => 'GET', CURLOPT_HTTPHEADER => array( 'X-API-Key: flexy-*****************************' ), )); $response = curl_exec($curl); curl_close($curl); echo $response;
import http.client conn = http.client.HTTPSConnection("flexy-ai.com") payload = '' headers = { 'X-API-Key': 'flexy-*****************************' } conn.request("GET", "/api/styles", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8"))
Ответ всегда приходит в формате JSON, и в нашем случае будет следующим:
{ "styles": [ "Flexy Cinematic", "Flexy Professional Photo", "Flexy Dramatic Photo", "Flexy Vintage Photo", "Flexy Fujifilm", "Flexy Neo Retro", "Flexy Gloomy", "Flexy Art (Abstract)", "Flexy Art (Painting)", "Flexy Art (Provocative)", "Flexy Art (Watercolor)", "Flexy 3D Movie", "Flexy Logo", "Flexy Caricature", "Flexy Isometric", "Flexy Illustration", "Flexy Comic book", "Flexy Story book", "Flexy Fantasy", "Flexy Line Art", "Flexy Sticker", "Flexy Anime" ] }