개발자 플랫폼 · REST · webhooks · SDK

당신의 플랫폼을 만드십시오 AI 운영 가능.

OpsIQ는 깨끗한 REST API, HMAC 서명된 webhooks, 액션 계약 레지스트리 및 준비-to-ship SDK를 노출합니다. AI가 실행될 수 있는 이벤트의 불을 정의하고, 어떤 데이터가 읽는 것이 안전합니다. OpsIQ는 서명, 화물, 감사 로그 및 확인 흐름을 처리합니다.

HMAC-SHA256 두 가지 방법PHP · 노드 · Python SDKOpenAPI 3.0.3 계약100% 감사 적용
로그인
로그인 _200 OK
레벨 컬 → OpsIQ → 서명된 webhook POST /v1/actions/run X-OpsIQ-Signature의 특징 { "action": 환불 청구서 진정한 검증 · 실행 · 감사 서명 ✓ 역할 + 범위 ✓ 감사 행은 썼습니다 @opsiq/sdk 위젯 on("action. executed")에 대한 자세한 정보 HMAC → 핸들을 확인 200 좋아요
3공식 SDK: PHP, 노드, 파이썬
HMAC의 특징SHA-256 모든 요청에 서명
40+구독하기
100%업무에 대한 감사의 말씀
요청 수명주기

.. 웹훅을 서명했습니다.

여러분의 범위의 Bearer 키와 OpsIQ API에 POST를 합니다. OpsIQ는 범위와 역할을 확인하고 계약된 작업을 실행하고 감사의 행을 작성합니다. 그러면 HMAC 서명된 웹훅을 엔드포인트로 다시 불러옵니다. 모든 hop는 인증, 공제 및 실패에 대한 재조정됩니다.

HMAC-SHA256 웹훅 - inbound 및 아웃 바운드 webhook 페이로드는 원료 몸에 서명됩니다. API은 범위의 Bearer 키로 정통합니다.
자동적인 retries - 배송을 다시 중단하고 재발송하지 않고 배송 ID를 추적 할 수 있습니다.
Idempotency 열쇠 - 디자인에 의해 재플레이 안전, 그래서 재개발된 납품 결코 두 배 행동.
앱을 POST /v1/actions/run X-OpsIQ-Signature의 특징 X-OpsIQ-Timestamp에 대한 VERIFY - RUN - 오디오 당신의 끝점 POST /webhooks HMAC 인증 200 좋아요 인증된 범위 + 역할 체크 계약된 동작 감사 행은 썼습니다 웹훅 PAYLOAD { "event"의 장점: "action. executed", "delivery_id"의 검색: "dlv_8f2a9", "idempotency_key"의 경우: "idem_31c7", : "이름을 입력하십시오", "신문"sha256=9c4e0a7b ..." } 전달됨
01 서명 요청 02 HMAC 인증 03 계약 실행 04 감사 행을 씁니다 05 webhook에 서명
퀵스타트

0에서 라이브 통합으로 4 단계.

중요한 생성, 첫 번째 이벤트를 불, 웹훅을 구독, 행동을 등록. 당신은 생산 데이터를 터치하기 전에 샌드 박스에 대한 전체 루프를 실행할 수 있습니다.

Sandbox 콘솔의 특징
DEVELOPER CONSOLE · 샌드박스 1 · 키 생성 opq_live_xxx · 1 개의 범위의 Bearer 키 2 · 화재 이벤트 POST /v1/events/fire "주문. shipped" 3 · webhook 구독 → https://api.you.com/webhooks에 4 · 행동 등록 saas. refund_invoice · 감사
의제정보Sandbox → 생산, 동일한 부호
01

키 받기

스코어의 수퍼 API 키 (을)를 호출하고 생성opq_…) 개발자 설정에서 각 통합을 필요로 하는 표면만 제공합니다.

02

화재 및 구독

POST 서명 events/fire (또는 SDK를 사용), 그 후 어떤 이벤트에서 URL를 점, 서명, 배달 ID와 백 오프 retries.

03

관련 기사

AI가 안전하게 작동할 수 있도록 서명된 행동 계약을 결정하여 역할 확인, 확인 정책 및 전체 감사 트레일과 함께 작업을 수행할 수 있습니다.

어떻게 함께 적합

1개의 연결관 본. 5개의 청결한 원시.

어떤 플랫폼 별은 커넥터에 살고 있습니다. OpsIQ 코어는 일반 유지, AI는 예측 가능, 귀하의 통합 감사를 유지.

01
트리거

OpsIQ 그냥 일어난 일에 대해 이야기하십시오.

플랫폼에서 화재 유니버설 이벤트 - 또는 자신의 사용자 정의 이벤트 이름. 모든 가입자는 즉시 반응, 우선순위 순서.

이벤트 참조
invoice.paid 이벤트. fire() AI 뇌의논하기 규칙우선순위 20 의 특징처음 읽기 웹훅이름 *
Universal + 맞춤 이벤트invoice.paid, ticket.created, subscription.cancelled, customer.signed_up 또는 당신의 자신의. 팬 아웃 가입자AI 뇌, 자동화 규칙, 거울 연결관 및 당신의 webhook 엔드포인트는 모든 반응합니다. 우선순위Deterministic 파견 그래서 거울은 경고를 불의 앞에 씁니다.
02 / 동작 계약

OpsIQ AI가 할 수 있는 것을 말해줍니다.

동작 컨트랙트는 JSON 선언: 어떤 행동이 실행될 수 있는지, 확인이 필요한지 여부, 그리고 호출에 종료점이 있는지 여부를 수락하는 매개 변수입니다.

활동 schema
AI는 동작을 발명하지 않습니다.등록한 것을 한 번만 운영하고 있습니다. 관련기관위험 작업은 어떤 부작용의 앞에 미리보기 카드를 트리거합니다. 역할 + 표면의 gating모든 행동은 실행할 수 있는 역할과 표면들을 선언합니다.
동작 계약 - 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 / 로그인 웹훅

쌓아 올리는 이벤트 - 암호화 증거.

어떤 이벤트에 URL를 구독하십시오. OpsIQ POSTs JSON는 원시 몸에 HMAC-SHA256과 서명했습니다. 몇 줄에서 확인하십시오.

Replay 보호추적 가능한 납품 ID뒤로 retries
Webhook 참조
웹훅 확인 - 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 / SDK의 경우

이미 사용하는 언어에 대한 Drop-in 클라이언트.

3개의 공식 SDK는 인증, 서명, retries, idempotency 열쇠 및 유형 응답을 취급합니다. 또는 기구 자유로운 체재 - 각 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",
})
PHP 8.4+에Node. js 18+에 대한 자세한 정보파이썬 3.10+3.0.3 에 대한 검색 결과
05 / 커넥터 패턴

한번에 빌드하세요. 아무것도 입력하세요.

커넥터는 하나의 PHP 클래스와 폴더입니다. OpsIQ 그것을 발견, 레지스트리 와이어 이벤트, 플랫폼 별 코드는 코어에서 깨끗하게 분리 유지.

연결관 가이드
5개의 걸이identityProviders(), contextProviders(), registerActions(), subscribers(), handleWebhook(). 맨투맨드actions.json 의 의 settings.json 계약 및 설정 선언. 자동 발견폴더를 드롭, 로그인, admin에서 활성화.
안전한 행동에 intent에서

일반 영어 감사 작업.

OpsIQ 절대로 올바른 전화를 발명하지 않습니다. 등록 된 계약을 통해 걸어, 지불량을 준비, 작업이 필요할 때 확인을 요청하고, 실행 할 때 완벽한 감사 행을 생성, 그래서 AI는 할 수 의 의 신뢰가 없을 수 없는 AI가 되십시오.

계약하행. AI는 단지 당신이 등록한 행동을 제안합니다.
부작용의 앞에 확인하십시오. 위험 작업 표면 미리보기 카드 먼저.
총 회신. 모든 신속한, 응답 및 행동 결과 AI History에 캡처.
4 단계intent → 감사
HMAC의 특징시작하기 전에 서명
"refund Adam의 마지막 청구서" 단계 1 · 의도적 해상도 → 일치: saas. refund_invoice 표면: admin · 역할: 소유자 · 단계 2 validate Step 3 · 확인 및 서명 미리보기 카드 · 송장 #8421 확인 Step 4 · 감사 행 actor · 신속한 · 결과 · 412ms 소유자 전용 · CSV로 수출 가능
발명 통화계약 레지스트리 만
견적 요청부작용의 앞에 시동
100% 감사신속한 + 응답 + 결과
참조

API 표면 한 눈에.

모든 핵심 엔드포인트, 그 오, idempotency 및 per-key rate limit. 오픈 API 3.0.3 참조에서 전체 기계 읽기 가능한 계약 생활.

OpenAPI 3.0.3 참조
종료점의제의정부비율 제한
쓰기표시된 부작용 표면
POST /v1/events/fireHMAC의 특징1000 / 분
POST /v1/actions/runHMAC의 특징200 / 분
POST /v1/webhooks/testHMAC의 특징60 / 분
...Context, 티켓 및 커넥터 재고
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 참조.

연결관을 건설하십시오

연결기를 발송 5 단계.

커넥터는 자체 포함 된 폴더입니다. OpsIQ는 이벤트를 검색하고 플랫폼 별 코드를 코어로 누출하지 않습니다.

1폴더를 비계 connector.php 의 확장 AbstractConnector.
2딜레이 actions.json 의 의 settings.json 명세서
3ID, 컨텍스트 및 webhook 제공업체를 구현합니다.
4당신을 돌보는 이벤트에 가입하십시오.
5로그인, 그것을 드롭, 활성화에서 관리자.
배송하기 전에 테스트

sandbox 키와 webhook 테스터.

모든 작업 공간은 sandbox를 노출시킵니다. 생산 데이터를 터치하지 않고 동일한 API 표면과 같은 범위를 갖는 별도의 키입니다. 사용 POST /v1/webhooks/test 엔드포인트에서 서명한 샘플 배송을 불허하고 라이브를 하기 전에 서명 확인. 셀프 호스팅은 클라우드와 온프레미스 사이에 행동 무인과 같은 코드 경로 실행,.

Sandbox 열쇠 Webhook 테스터 Cron 구동 작업 클라우드 및 자체 호스팅 패리티
커넥터. php · PHP
클래스 ACMEConnector에 대한 의 확장 AbstractConnector { 공공 기능 키 (): 뚱 베어 { 의논하기 ᄋᄋ; } // 배우가 누구인지 해결 공공 기능 메시지 목록 의 특징 { 의논하기 [의 새로운 AcmeIdentityProvider()]; } // AI 프롬프트에 실시간 데이터를 먹이는 공공 기능 contextProviders() : 의 특징 { 의논하기 [의 새로운 AcmeContextProvider()]; } // React to OpsIQ 이벤트 공공 기능 가입자(): 의 특징 { 의논하기 ['invoice. paid''의 의미 => [의 새로운 BillingMirror()]]; } // Acme에서 inbound webhooks 수신 공공 기능 handleWebhook(웹훅)의 특징 $body): 뚱 베어 { /* … */ } }
ܧ️ 어떻게 비교

OpsIQ 대 DIY 통합.

계약 경계선, 서명, 감사 플랫폼은 자신의 웹훅과 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
의논하기

개발자 질문, ...

Auth, 서명, SDK, 샌드박스 및 커넥터 모델: 첫 번째 요청 전에 요청할 수 있는 모든 것.

API는 단일 범위의 Bearer 키로 인증합니다. Authorization: Bearer opq_…. OpsIQ 키의 범위와 배우의 역할은 어떤 실행 전에 확인합니다. Webhooks는 분리됩니다: 각 webhook OpsIQ는 운반합니다 X-OpsIQ-Signature (HMAC-SHA256의 원료)와 X-OpsIQ-Timestamp 재생 보호를 위해, 그래서 당신은 반환에서 저희를 확인할 수 있고, 당신이 보내는 inbound webhooks는 동일한 방법을 확인했습니다.
아니. AI는 행동 계약 레지스트리에 존재하는 동작을 제안 할 수 있습니다. 그것은 전화를 발명 할 수 없습니다. 각 계약은 표면, 역할 및 매개 변수를 준수하고, 표시된 모든 동작 requires_confirmation 측면 효과 실행 전에 인간의 미리보기 카드.
관련 상품 hash_hmac('sha256', $rawBody, $secret) (그릭스는 접두사 없이 소화) X-OpsIQ-Signature 일정표(Time check)를 가진 헤더 (hash_equals). 각 납품은 또한 timetamp, idempotency 열쇠를 나르고 당신이 추적할 수 있는 납품 ID를 나릅니다. 이 페이지에 PHP 스니펫은 전체적인 검증입니다.
200를 반환하지 않는 전달은 exponential 백 오프로 재향 군인, 동일한 idempotency 키를 운반하므로 재향 배송이 두 배로 제한되지 않습니다. 관리자 또는 로그에 대한 모든 시도를 추적 할 수 있습니다.
PHP 8.4+, Node. js 18+ 및 Python 3.10+ 핸들 서명, retries, idempotency 키 및 유형 응답을위한 공식 SDK. 그들은 REST 표면 주위에 얇은 래퍼입니다, 그래서 당신은 또한 게시 OpenAPI 3.0.3 계약에서 자신의 클라이언트를 생성하거나 API 직접 호출 할 수 있습니다.
예. 모든 작업 공간은 생산 데이터를 터치하지 않고 동일한 API 표면과 같은 범위의 키를 가진 sandbox를 노출시킵니다. POST /v1/webhooks/test 당신의 endpoint에 서명한 표본 납품을 불기 위하여는 당신의 검증을 살아있는 하려고 하기 전에 확인합니다.
예. 자체 호스팅 설치는 동일한 코드 경로 (같은 서명, 같은 커넥터 레지스트리, 동일한 OpenAPI 계약)을 실행하므로 클라우드와 온프레미스 사이에 행동 무인 항공기가 없습니다.
커넥터는 한 PHP 클래스 확장을 가진 자체 포함 된 폴더입니다. AbstractConnector, 더하기 actions.json 의 의 settings.json 나. 당신은 구현 identityProviders(), contextProviders(), registerActions(), subscribers() 의 의 handleWebhook(). OpsIQ 자동 발견, 이벤트를 와이어하고 코어에서 안전하게 분리되는 플랫폼 별 코드를 유지.