Разработка платформа · REST · уебhooks · SDKs

Направете своя платформа - Може да се оперира.

OpsIQ_ излага чист REST API, HMAC-подписани уебhooks, регистър на екшън-договор и готов-кораб SDKs. Дефинирай какви събития пожар от вашата система, какви действия AI е позволено да се изпълняват, и какви данни е безопасно да се четат. OpsIQ_ се справя подписи, retries, одитни дневници и потвърждаващи потоци за вас.

HMAC- SHA256 и в двата случаяPHP · Възел · Питон SDKsОтворен API 3.0.3 договор100% одитно покритие
Подписано искане в
Подписано уебкасетофон → 200 OK
Живо къдрици → OpsIQ → подписано уебкасета POST /v1/actions/run Х-OpsIQ- Подпис { "action": "реподателство," "Потвърдено": вярно е VERIFY · RUN · СМЕТ подпис Роля + обхват . написаният одитен ред @opsiq/sdk джаджа на("действие. изпълнено") проверка на дръжка HMAC → 200 Добре.
3Официален SDKs: PHP, Node, Python
HMACSHA-256 подписано по всяко искане
40+универсални събития за записване
100%Обхват на одитния доклад относно действията
Искане за жизнен цикъл

Искаме разрешение. Подписано е.

Можете POST къмOpsIQ APIс твоя оптичен ключ.OpsIQ проверява обхвата и ролята, провежда договорените действия, пише одитен ред - след това уволнява HMAC-подписан уебкасета обратно към вашата крайна точка. Всеки хоп е автентично, idempotent и се опитва да се провали.

HMAC-SHA256 уебhooks - входящи и изходящи зарядни устройства са подписани върху суровия корпус; API_ призовава за удостоверяване с obspected Bearer ключ.
Автоматично възстановяване - неуспешни доставки и се опитайте отново, с ID за доставка можете да проследите.
Ключове за изпълнение - повторно възпроизвеждане безопасно по дизайн, така че рестартирана доставка никога не се извършва двойно.
Приложението Ви POST /v1/actions/run Х-OpsIQ- Подпис X-_OpsIQ-Timestamp VERIFY - RUN - СМЕТ Вашият краен резултат POST /webhooks проверка на HMAC 200 Добре. Верифицирани подписи обхват + проверени роли Според случая, ако е приложимо, се прилага член 4, параграф 1, буква б) от Регламент (ЕС) No 1303/2013. написаният одитен ред Подписано Webhook Payload { "събитие": "действие. изпълнено," "доставка_ID": "dlv_8f2a9," "indempotenty_key": "idem_31c7," "подпис"sha256=9c4e0a7b..." } доставено
01 подписано искане 02 проверка на HMAC 03 Изпълнение на договор 04 записа на реда за одит 05 Подписан уебкасета
Бързо стартиране

От нулата до жива интеграция в Четири стъпки.

Генерирайте ключ, уволнете първото си събитие, абонирайте се за уебкасета, регистрирайте действие. Можете да стартирате целия цикъл срещу пясъчника преди докосване на производствени данни.

Конзола за пясъчнициСвързва се
DEVELOPER CONSOLE · пясъчник 1· Генериране на ключ opq_live_xxx · един obspected Bearer ключ 2· Огън събитие ПОСТ/v1/events/fire"заповядайте." 3· Абониране на уебкаска → https://api.you.com/webhooks_ 4· Регистрирайте действие Saas. refund_invoice · одитирани
НасърчаванеСандбокс → производство, същия код
01

Вземи ключ.

Регистрирайте се и генерирайте обхватен Bearer API ключ (opq_…) в настройките на разработчиците и да даде всяка интеграция само повърхностите, които се нуждае.

02

& Запис на & огъня

ПОСТ подписано events/fire (или използвайте SDK), след това посочите всяко URL при всички случаи, подписано, с ID за доставка и връщане назад.

03

Регистриране на действие

Обявяване на подписан договор за действие, така че AI да може безопасно да извършва операции, с проверки на ролите, политика за потвърждение и пълна одитна следа.

Как се връзват

Един конектор. Пет чисти примитивни.

Всичко определено за платформата живее в конектор.OpsIQ Ядрото остава общо, ИИ остава предсказуемо и интеграцията ви остава ревизия.

01
Тригери

Кажи.OpsIQ какво се случи току що.

Изстреляйте универсални събития от вашата платформа - или собствени имена на събития. Всеки абонат реагира в реално време, в приоритетен ред.

Справка за събитието
invoice.paid събития. пожар() Мозък на Ал.контекст на живот правилаПриоритет 20 огледалопърво да напиша webhockПодпис
Универсални + потребителски събитияinvoice.paid, ticket.created, subscription.cancelled, customer.signed_up или твоя собствена. Абонати за развлекателни програмиAI мозъка, правилата за автоматизация, огледалните конектори и вашите уеб-кабини всички реагират. Приоритетно нарежданеОгледалата пишат преди да се разпалят.
02/ Договори за действие

Кажи.OpsIQ какво може да прави Ал.

Договор за действие е подписана JSON_ декларация: какво прави действието, кои роли могат да го изпълняват, какви параметри приема, дали е необходимо потвърждение и крайната точка, която трябва да се обади.

Екшън схема
AI не може да изобрети действияМоже да поиска само да проверите тези, които сте регистрирали. Политика за потвърждениеРискови действия предизвикват преглед на картата преди всеки страничен ефект. Роля + повърхностен сглобяванеВсяко действие декларира ролите и повърхностите, които са му позволени да изпълнява.
Договор за действие - JSON_
{
  "key": "saas.refund_invoice",
  "label": "Refund a paid invoice",
  "surface": ["admin"],
  "roles": ["owner", "billing_admin"],
  "requires_confirmation": true,
  "params": {
    "invoice_id": { "type": "int", "required": true },
    "reason": { "type": "string", "max": 500 }
  },
  "endpoint": "https://api.you.com/refund",
  "audit": true
}
03/ Подписани уебhooks

Натиснете събитията към стека си - с криптографски доказателства.

Абонирайте се за всичкиURLза всяко събитие.OpsIQPOSTsJSON полезен товар, подписан с HMAC-SHA256 над суровото тяло - да го проверите в няколко реда.

Защита срещу повторениеИдентификационен код на доставката за проследяванеОттегляне на задълженията
Справочник на уебкок
проверка на уеб-кабината - PHP
$raw = file_get_contents('php://input');
$sig = $_SERVER['HTTP_X_OPSIQ_SIGNATURE'] ?? '';
$expected = hash_hmac('sha256', $raw, $secret); // hex digest, no prefix
if (!hash_equals($expected, $sig)) http_response_code(401);
$event = json_decode($raw, true);
04/ SDKs

Нахлули са клиенти за езика, който вече използвате.

Три официални SDKs се справят с удостоверяването, подписването, връщането, неудобните ключове и напечатаните отговори. Или остават без рамка - всеки SDK__ е тънка обвивка около същата REST повърхност.

примери за клиенти
import { OpsIQ } from "@opsiq/sdk";
const ops = new OpsIQ({ apiKey: process.env.OPSIQ_KEY });

await ops.events.fire("order.shipped", {
  customer_id: 421,
  order_ref: "NB-9182",
  carrier: "DHL"
});

const result = await ops.actions.run("saas.send_kb_link", {
  ticket_id: 5519,
  article: "how-to-reset-password"
});
use OpsIQ\Client;

$ops = new Client([
  'api_key' => getenv('OPSIQ_KEY'),
]);

$ops->events->fire('order.shipped', [
  'customer_id' => 421,
  'order_ref' => 'NB-9182',
]);

$result = $ops->actions->run('saas.send_kb_link', [
  'ticket_id' => 5519,
  'article' => 'how-to-reset-password',
]);
from opsiq import OpsIQ

ops = OpsIQ(
    api_key=os.environ["OPSIQ_KEY"],
)

ops.events.fire("order.shipped", {
    "customer_id": 421,
    "order_ref": "NB-9182",
})

result = ops.actions.run("saas.send_kb_link", {
    "ticket_id": 5519,
    "article": "how-to-reset-password",
})
PHP8.4+Node.js18+Python3.10+REST · OpenAPI3.0.3
05/ Конекторът модел

Включи всичко.

Конекторът е папка с един клас PHP. OpsIQ_ го открива, регистърът свързва събитията, а вашият код остава ясно отделен от ядрото.

Наръчник за съединителя
Пет кукиidentityProviders(), contextProviders(), registerActions(), subscribers(), handleWebhook(). Задвижвани от манифестиactions.json както и settings.json декларира договори и конфигурации. Автоматично откритиПусни папката, подпиши я, включи я в администратор.
От намерение за безопасна работа

Влизаме на английски. Проверката приключи.

OpsIQ никога не изобретява правилното обаждане. Тя минава през регистрираните договори, подготвя полезния товар, иска потвърждение кога действието го изисква и произвежда пълен одитен ред, когато изпълнява, така че един AI, който може да го изпълни действие Никога не ставаш Ал, на когото не можеш да вярваш.

Договорно обвързани. Ал предлага само действия, които сте регистрирали.
Потвърдете преди страничните ефекти. Рискови действия се появяват първо на предварителен преглед карта.
Напълно отзован. Всеки бърз, отговор и действие водят до залавяне в историята на ИИ.
4 стъпкинамерение → одит
HMACПодписан преди изпълнение
"да върна последната фактура на Адам" Стъпка1· разрешаване на намеренията → съвпада: sas. refund_ invoice повърхност: администратор · роля: собственик · стъпка 2_ валидира Стъпка3· Потвърдете & знака предварителен преглед на карта · фактура #8421_ Потвърдено Стъпка4· Ред за одит Актьор · бърз · резултат · 412ms__ Само за собственици · износ, както CSV__
Не са измислили обаждания.само регистър на договорите
Потвърденопреглед преди странични ефекти
100% одитиранбърз + отговор + резултат
Референтен номер

API_ повърхност с поглед.

Всяка основна крайна точка, нейната ут, неуместност и лимит на скоростта на ключ. Пълният машинно четим договор живее в OpenAPI 3.0.3__ reference.

OpenAPI 3.0.3__ reference
Крайна точкаУдостоверяванеИмпотентностГранична стойност на лихвения процент
ЗаписПодписано страничен ефект повърхности
POST /v1/events/fireHMACДа.1000/ мин.
POST /v1/actions/runHMACДа.200/ мин.
POST /v1/webhooks/testHMACДа.60/ мин.
ЧетенеКонтекст, билети и конекторна инвентаризация
GET /v1/customers/{id}HMACДа.2000/ мин.
GET /v1/ticketsHMACДа.2000/ мин.
GET /v1/connectorsHMACДа.2000/ мин.

Границите на скоростта са за ключ и се връщат при всеки отговор като X-OpsIQ-RateLimit-Remaining; надхвърлящи лимита на възвръщаемост 429 с Retry-After Заглавна част. Пълният машинно четим договор (всяка крайна точка, схема и грешка) живее в OpenAPI 3.0.3__ reference.

Изграждане на конектор

Зареждам конектора. Пет стъпки.

Конекторът е самостоятелна папка. OpsIQ__ го открива, регистърът свързва събитията, а вашият код никога не изтича в ядрото.

1Разгъване на папка с connector.php удължаване AbstractConnector.
2Декларация actions.json както и settings.json манифести.
3Да се въведат доставчици на идентичност, контекст и уебкасета.
4Абонирайте се за събитията, за които ви е грижа.
5Подпиши, пусни го, включи го в администратор.
Тествайте преди да сте кораб

Ключ за пясъчник и тестер за уебкаска.

Всяко работно пространство излага пясъчник: отделен обхватен ключ, който удря една и съща повърхност API_ без да докосва данните за производството. POST /v1/webhooks/test да се изстреля подписана проба доставка в крайната си точка и да потвърдите вашата подпис проверка преди да отидете на живо. Самостоятелно инсталирани инсталират същия код път, без поведение дрифт между облака и на-прем.

Ключове за пясъчника Тестер за уеблок Работа, водена от Крон Облачно & самонаблюдение
конектор. php · php
клас Акмеконектор Разширяване AbstractConnector { Публична функция Ключ(): низ { връщане "акме"; } // Решавайте кой е актьорът Публична функция Идентификационен код на доставчика на данни [6]: масив { връщане [нов AcmeIdentityProvider()]; } / / Захранване на данни на живо в AI бърз Публична функция КонтекстПродажби [6]: масив { връщане [нов AcmeContextProvider()]; } / / Реагирате на OpsIQ_ събития Публична функция абонати(): масив { връщане ["Вакси, платени" => [нов BillingMirror()]]; } / / Получаване на входящи уебhooks от Acme Публична функция дръжка Webhook [6]масив $body): празно { /* … */ } }
го сравнява

OpsIQ спрямо a DIY интеграция.

Каква свързана с договора, подписана, одитирана платформа ви дава възможност да се въргаляте в собствените си уеб-hooks и AI-action водопровод никога няма да.

ВъзможностСнимайте си сам.OpsIQ
HMAC-signed requests & webhooks (both ways) Hand-rolled
Idempotency keys + replay protection DIY
Automatic back-off retries with delivery IDs DIY queue
Action-contract registry (AI can't invent calls)
Confirmation policy before side-effects
100% audit-log coverage on actions Manual logging
Official PHP / Node / Python SDKs Write your own
OpenAPI 3.0.3 machine-readable contract Maybe
Sandbox keys + webhook tester Build a staging rig
Cloud & self-hosted parity (same code path) Различно
Connector pattern: platform code stays isolated
Често задавани въпроси

Разработчиците задават въпроси. Отговори.

Аут, подписи, SDKs, пясъчни боксове и конектор модел: всичко, което ще поискате преди първата заявка.

API призовава автентичност с един-единствен observed Bearer ключ: изпращане Authorization: Bearer opq_…OpsIQ__ проверява обхвата на ключа и ролята на актьора преди всичко да се случи. Уебhookите са отделни: всеки уеб-шеф OpsIQ_ изпраща носи X-OpsIQ-Signature (хекс HMAC- SHA256 на суровото тяло) и X-OpsIQ-Timestamp За защита на повторението, така че можете да ни проверите в замяна, и входящи уеб-hooks, които изпращате се проверяват по същия начин.
Не. AI може да предлага само действия, които съществуват в регистъра на вашия договор за действие. Тя не може да измисли повикване. Всеки договор декларира повърхностите, ролите и параметрите, както и всяко действие маркирани requires_confirmation Преди да започне страничният ефект, се появява карта за преглед на човек.
Повторение hash_hmac('sha256', $rawBody, $secret) (хекс- смилаем без представка) и го сравнява с X-OpsIQ-Signature заглавна част с постоянна проверка (hash_equalsВсяка доставка също носи печат на времето, несигурен ключ и ID за доставка можете да проследите.
Доставките, които не връщат 200_ се опитват с експоненциално отстъпление, всеки от които носи същия ключ за нежеланост, така че дадена доставка никога да не се повтаря. Можете да проследите всеки опит чрез идентификация на доставката в администратор или вашите трупи.
Официални SDKs за PHP8.4+, Node.js18+ и Питон3.10+ дръжка подписване, retrites, Immpotency ключове и напечатани отговори. Те са тънки опаковки около повърхността на REST, така че можете да генерирате и свой собствен клиент от публикуваната OpenAPI3.0.3 договор или се обадете наAPI Директно.
Всяко работно място излага пясъчник със собствен ключ, който удря по същия начин.API повърхност без докосване на производствени данни, плюс POST /v1/webhooks/test да се изстреля подписана проба доставка в крайната си точка и да потвърдите вашата проверка преди да отидете на живо.
Да. Самостоятелно инсталирани инсталират идентичния кодов път (същия подпис, същия регистър на конектора, същия договор OpenAPI), така че няма поведенчески дрифт между облака и предмишницата.
Конекторът е самостоятелна папка с един PHP клас, който се разширява AbstractConnector, плюс actions.json както и settings.json Вие прилагате манифести. identityProviders(), contextProviders(), registerActions(), subscribers() както и handleWebhook()OpsIQ_ автодискриминиране на събитията, жици на събитията и поддържа вашия код платформа-ясно отделен от ядрото.