Отримання ключа#
Отримуємо свій токен у налаштуваннях користувача.

І копіюємо отриманий ключ.

Специфікація#
Базовий URL: https://api.privateflare.com
Для авторизації необхідно передати заголовок X-Auth-Key зі значенням API ключа.
Доступні методи#
| Метод | Шлях | Опис |
|---|---|---|
| GET | /me | Інформація про користувача |
| GET | /domains/ | Список доменів |
| GET | /domains/{domain} | Деталі обраного домену |
| POST | /domains/ | Створити новий домен |
| PATCH | /domains/{domain} | Оновити параметри домену |
| DELETE | /domains/{domain} | Видалити домен |
| GET | /domains/{domain}/uptime | Статистика часу відповіді сервера |
| GET | /tasks/ | Активні завдання на генерацію сертифікатів |
| GET | /security/iplist/ | Список списків IP |
| POST | /security/iplist/ | Створити список IP |
| PATCH | /security/iplist/{listid} | Оновити список IP |
| DELETE | /security/iplist/{listid} | Видалити список IP |
| PUT | /security/iplist/{listid}/{ip} | Додати IP до списку блокування |
| DELETE | /security/iplist/{listid}/{ip} | Видалити IP зі списку блокування |
| GET | /nodes/ | Список нод |
| GET | /domains/{domain}/dnsrecords | DNS записи домену |
| POST | /domains/{domain}/dnsrecords | Створити DNS запис |
| PATCH | /domains/{domain}/dnsrecords/{id} | Оновити DNS запис |
| DELETE | /domains/{domain}/dnsrecords/{id} | Видалити DNS запис |
| GET | /domains/{domain}/certexport | Експорт SSL сертифіката (ZIP) |
| GET | /domains/{domain}/activatens | Активувати NS записи |
| GET | /domains/{domain}/deactivatens | Деактивувати NS записи |
Інформація#
# приклад для cURL
curl --location 'https://api.privateflare.com/me/' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Список доменів#
# приклад для cURL
curl --location 'https://api.privateflare.com/domains/' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Один домен#
# приклад для cURL
curl --location 'https://api.privateflare.com/domains/domain.com' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Створення домену#
# приклад для cURL
curl --location 'https://api.privateflare.com/domains/' \
--header 'Content-Type: application/json' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
--data '{
"enabled": true,
"domain": "domain.com",
"mask": "yandex.info",
"ssl": true,
"tags": ["tag1","tag2"],
"backend": "127.0.0.1",
"fhttps": true,
"cachelevel": 1
}'| Поле | Тип | Опис |
|---|---|---|
enabled | bool | Активність домену |
domain | string | Ім’я домену |
mask | string | Маска домену |
ssl | bool | Активність SSL |
tags | string[] | Список тегів |
backend | string | IP бекенду |
failover | string | IP резервного бекенду |
fhttps | bool | Примусовий редирект з http на https |
cachelevel | int | Рівень кешування (0-3) |
sjschallenge | bool | JS Challenge (аналог Under Attack) |
baseprotection | bool | Базовий WAF захист |
bwlimit | int | Ліміт пропускної здатності, KB/s (0 = без обмежень) |
geomode | int | Гео-фільтрація: 0=вимк, 1=дозволити лише, 2=заблокувати |
geolist | string[] | Список кодів країн (ISO 3166-1 alpha-2) |
bind_node | int[] | Прив’язка до конкретних нод (порожній = всі ноди) |
cachelargefiles | bool | Кешування великих файлів на нодах |
Модифікація параметрів домену#
# приклад для cURL
curl --location 'https://api.privateflare.com/domains/domain.com' \
--header 'Content-Type: application/json' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
--data '{
"enabled": true
}'Зверніть увагу, що можна передавати ЛИШЕ ЗМІНЮВАНІ параметри.
Видалення домену#
# приклад для cURL
curl --location --request DELETE 'https://api.privateflare.com/domains/domain.com' \
--header 'Content-Type: application/json' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Створити список блокування#
# приклад для cURL
curl --location 'https://api.privateflare.com/security/iplist/' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
--header 'Content-Type: application/json' \
--data '{
"name": "list name",
"ips": ["1.1.1.1"],
"allnodes": true,
"nodes": []
}'| Поле | Опис |
|---|---|
name | Ім’я списку |
ips | Список IP |
allnodes | Використовувати на всіх нодах |
nodes | Список нод, на яких список буде застосовано |
DNS записи домену#
curl --location 'https://api.privateflare.com/domains/domain.com/dnsrecords' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Створення DNS запису#
curl --location 'https://api.privateflare.com/domains/domain.com/dnsrecords' \
--header 'Content-Type: application/json' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx' \
--data '{
"name": "@",
"type": 1,
"value": "1.2.3.4",
"ttl": 3600,
"target": []
}'| Поле | Тип | Опис |
|---|---|---|
name | string | Ім’я запису (@ для кореня) |
type | int | Тип запису: 1=A, 2=AAAA, 3=CNAME, 4=MX, 5=NS, 6=TXT, 7=SOA, 8=SRV |
value | string | Значення запису |
ttl | int | TTL у секундах |
priority | int | Пріоритет (для MX, SRV) |
target | int[] | Гео-прив’язка: ID країн/континентів для GeoDNS (порожній = загальний запис) |
Активація NS записів#
Для використання DNS-сервісу PrivateFlare (ns1.privateflare.com, ns2.privateflare.com):
curl --location 'https://api.privateflare.com/domains/domain.com/activatens' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Додати IP до списку блокування та заблокувати#
curl --location --request PUT 'https://api.privateflare.com/security/iplist/6/2.2.2.2' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'Видалити IP зі списку блокування та розблокувати#
curl --location --request DELETE 'https://api.privateflare.com/security/iplist/6/2.2.2.2' \
--header 'X-Auth-Key: xxxxxxxxxxxxxxxxxxxxxxxx'