Skip to main content

RACKCORP REST API

Rackcorp перенесла многие из своих функций для работы с архитектурой REST API, чтобы модернизировать и упростить процесс получения данных по протоколу HTTP. Каждый месяц мы добавляем новые сервисы через REST API. Важно, чтобы Вы подписались на нас, чтобы получать последние обновления и последнюю версию нашего API.

Информация об API:

Текущая версия: v2.8

Ссылка на API: https://www.rackcorp.net/api/v2.8

Прежде чем Вы начнете создавать какой-либо код или подключаться через наш API, Вам необходимо создать доступ к API-ключу, который позволит Вашему коду отправлять HTTP-запросы на нашу сторону и авторизоваться для получения данных из Ваших служб. Для этого Вам нужно связаться с нами по форме обратной связи. 

Чтобы создать учетные данные API, перейдите в АДМИНИСТРИРОВАНИЕ -> API на нашем портале. URL: https://portal.rackcorp.com/index.php?cmd=api 

Затем нажмите ДОБАВИТЬ, введите имя для этого нового ключа и секрет ( пароль ) и СОХРАНИТЕ

image.png

Обязательно запишите свою СЕКРЕТНУЮ фразу в безопасном месте. Он необходим для доступа к API и не может быть получен. Его можно сбросить только на странице сведений о ключе портала API.

Стандарт API:

Как описано в нашей статье «Архитектура и стандарты REST API», не существует определенных стандартных шаблонов, которым должны следовать все инженеры/разработчики при создании REST API для своего приложения. В Rackcorp все просто. Основная структура нашего REST API — это URL-адрес, который соответствует приведенным ниже шаблонам:

Версия: v2.8

Главный URL: https://api.rackcorp.net/api

Данные объекта: клиенты | DCS | сеть | API | днс | устройства

Формат URL: https://api.rackcorp.net/api/+version+/object data/+ID item

Пример запроса GET для всех данных: https://api.rackcorp.net/api/v2.8/device

Пример запроса GET на получение одного типа данных: https://api.rackcorp.net/api/v2.8/device/1 

Ниже вы видите код, который Вы можете использовать в качестве примера для реализации Вашего первого подключения REST API к нашей платформе:

Мы настоятельно рекомендуем выполнять вызовы REST API только из бэкэнда. Будьте осторожны при использовании кода javascript для вызова URL-адреса REST API. Никогда не добавляйте свои учетные данные во фронтэнд.

В этом простом введении в код REST API мы будем использовать языки программирования PHP и PYTHON.

PHP:

В примере ниже мы добавляем фиктивные API KEY и API SECRET. Пожалуйста, измените эти данные в соответствии с вашими данными

<?php
// Simple example to get a list of all datacenters
$version = 'v2.8';
$url = "https://api.rackcorp.net/api/". $version . "/dc";
$query = ["cmd"=>"dc.getall"];
$query['APIUUID'] = "";  // No authetnication required for getting datacenter list
$query['APISECRET'] = "";


$curl = curl_init($url);
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($query));
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($curl);

if($response) {
	return json_decode($response, true);
}

return false;
?>

PYTHON:

import json
import logging
import sys
import os
import glob
import re
from bson import json_util
from flask.helpers import make_response
from flask import request, jsonify

version = 'v2.8'
apiurl = 'https://api.rackcorp.net/api'+version+'/'+dc
setheaders = {
        'content-type': 'application/json',
        'User-Agent': 'Mozilla',
        'jwt': jwt
}

data = {}
data['APIUUID'] = ''
data['APISECRET'] = ''

apiresp = None
apiresp = requests.get(self.apiurl+'/sessions/logout',data=self.rcdata,headers=setheaders)

Как Вы можете видеть в обоих примерах, логика подключения через наш API довольно проста. Вам просто нужно, чтобы URL-адрес, APIUUID и APISECRET были частью объекта или массива, а также переменные, которые Вы передаете через API для построения запроса в бэкэнде.

Надеюсь, Вы получили общее представление о том, как использовать наши функции REST API. Ниже Вы можете найти ссылки с более продвинутой документацией по использованию нашего API. Кроме того, полный список служб REST API (URL-адреса) с объяснением данных запроса и ожидаемых данных ответа для каждой ситуации.

REST API GibHub Docs:

Link: https://github.com/RackCorpCloud/rackcorp-api/wiki/RACKCORP-REST-API

Swagger RACKCORP REST API:

Swagger — это набор инструментов разработчика API от SmartBear Software и бывшая спецификация, на которой основана спецификация OpenAPI. Эта платформа отображает в простом макете все функции REST API, позволяя Вам визуализировать то, что Ваш код должен ожидать в качестве ответа на каждый вызов (GET, PUT, PUSH, DELETE).

Через эту платформу Вы можете увидеть схему для каждой функции, а также ожидаемый ответ в формате JSON. Вы также можете сделать тесты для подключения через свои сервисы на наших серверах, используя свои настоящие APIUUID и APISECRET.

Это хорошо для тестирования промежуточных сред и убедиться, что Ваш вызов получит именно то, что ожидает Ваш код.

Не забудьте выбрать API пути URL, который Вы хотите использовать для тестов. На странице Swagger Вы можете увидеть три варианта. Первый — это URL-адрес, который не предназначен для тестов. Второй — RACKCORP Production REST API Core (пожалуйста, будьте осторожны при использовании этого URL-адреса). Третий — RACKCORP Staging REST API, который следует использовать для тестов.

Link: https://app.swaggerhub.com/apis/RackCorp/Rackcorp-REST-API/2.8