Platform pengembang · Pelopor API · webhooks · penyambung

Kau harus membuat panggungmu Boleh dioperasikan AI.

Call 2,418 named operations through one contract-generated API, with least-privilege scopes, workspace pinning, dry-run validation and replay-safe writes. Subscribe to canonical events through HMAC-signed background webhooks, or build a governed package in the six-stage Connector Builder.

Kunci Bearer Skop Skop2,418 contract actionsKeuben BukaAPI 3.0.3 + PostmanKiriman HMAC webhook
Permintaan Skop SANGAT dalam
Signed webhook out → 200 OK
Aras Tindakan Bearer uf→ OpsIQ →Xok web yang ditandatangani oleh pengguna POST /api/v1.php Otorisasi: Bearer { "action": "tickets.reply", "dry_runBenar KETIGA key_kunci login + ruang kerja ✓ Skop Skop + kontrak ✓ permintaan palsu dilacak Kau tahu, kau adalah titik akhir webhook X-OpsIQ-Event: ticket. replited Verify HMAC → handle 200 OK
2,418Dinamakan General API Tindakan usil
69Skop hak istimewa paling tidak-tidak-keistimewaan
dry_runfrandikasi validasi kontrak tulis sebelum eksekusi
24jReplay idempoten-tulis sukses vindiagoden-demppotent
\"Tur-air\"

Permintaan Skop SANGAT masuk Acara ditandatangani.

KOSTA POS sebuah tindakan untuk /api/v1.php Spieper dengan kunci Bearer terskop.OpsIQMemindai area kerja, mengesahkan kontrak dan izin aksi, kemudian mengeksekusi atau mengeringkan.HMAC Saluran pengiriman yang ditandatangani dengan percobaan yang dapat dilacak dan retrie terikat.

¡HMAC-SHA256 webhooks - muatan webhook masuk dan outbound webhook ditandatangani di atas badan mentah; API panggilan otentifikasi dengan kunci Bearer terskop.
Coba lagi otomatis Automatik - Pengiriman gagal dibatalkan dan coba lagi, dengan ID pengiriman yang bisa kau lacak.
Penulisan Replay-safe Penulisan idempoten yang sukses - mengembalikan respon yang sama untuk 24 _jam; duplikat berkonversi berbagi satu klaim.
Aplikasi Anda POST /api/v1.php Otorisasi: Bearer IDdempotensi_key: idem_31c7 SAHKAN - JALANKAN - AUDIT Titik akhirmu POST /webhooks sahkan HMAC 200 OK key + ruang kerja disematkan skop + peranan ditanda contract validated Lupaan atau kering DICERSIKAN KITA SEMUA { X-OpsIQ-Event: ticket. replired X-OpsIQ-Delivery): dlv_8f2a9 X-OpsIQ-Timestamp: 1786584362 X-OpsIQ-Signature9c4e0a7b... } Diantarkan
01 Permintaan Bearer kinore 02 Ruangkerja pin rickexpedi 03 validate contract 04 Lupaan atau kering 05 NWNNN
Muckstart

Dari kunci untuk mengatur integrasi dalam Tiga langkah.

Keluarkan kunci yang paling tidak berharga, temukan kontrak yang dihasilkan, jalankan sebuah tulisan kering, lalu langgan webhook ketika aplikasi Anda membutuhkan pengiriman peristiwa latar belakang.

konsol console contracTerhubung
Kepantasan kontrak GEERAL API · Memerlukan kunci1 · Hasilkan · satu kunci Bearer terskop Memerlukan kontrak dengan2 · OST /api/v1.php · meta.actions 3 · Sahkan sebuah tulisan bookscapes. reply · dry_run: true Memerlukan4 · Langganan peristiwa ticket. replied · HMAC delivery
AYAH→ tulis disetujui, kontrak yang sama
01

Cari kunci

Janda tangan dan hasilkan kunci API Bearer terskop (_PH)opq_…) dalam pengaturan pengembang, dan memberikan setiap integrasi hanya permukaan yang dibutuhkan.

02

Discover & validate

Bacalah meta.actions, meta.action BAHWA DAN meta.scopes); gunakan dry_run Untuk mengesahkan penulisan sebelum eksekusi.

03

Langganan & Lakukan langgan

Tambahkan kunci idempotensi untuk menulis, lalu langgan titik akhir Anda ke acara kanonik yang diperlukan aplikasi Anda.

Bagaimana bisa cocok bersama-sama

Satu pola konektor. Lima primitif bersih.

Apa pun yang spesifik platform hidup di konektor. inti OpsIQ tetap generik, AI tetap dapat diprediksi, dan integrasi Anda tetap dapat audit.

01
Pencetus

TellVed OpsIQ Apa yang baru saja terjadi.

Apa yang terjadi di platform Anda, atau definisikan acara adat yang diatur.

Rujukan peristiwa
invoice.paid Peristiwa kanonikal Otak AIKonteks langsung quot; Aturan-aturan di AmerikaKeutamaan 20_ Cermin ismorganio write first webhookDitandatangani oleh Sony
Umumumumon + acara suaiinvoice.paid, ticket.created, subscription.cancelled, customer.signed_up Kau sendiri atau kau. pelanggan luar-anOtak AI, aturan otomatisasi, penyambung cermin dan titik akhir webhook Anda semua bereaksi. Urutan Keutamaan Keprioritasan UGPemutusan deterministik , jadi cermin menulis sebelum peringatan kebakaran.
02 Kontrak / Aksi

Beritahu OpsIQ apa yang AI diperbolehkan lakukan.

Setiap operasi bernama menerima kontrak yang dihasilkan: skop, fitur, jenis baca atau tulis, risiko, kebijakan konfirmasi, permintaan dan respon skema, dukungan dry-run, idemptensi dan kesalahan stabil.

Skema aksi
AI tidak dapat menemukan tindakanIni hanya bisa meminta untuk menjalankan yang Anda telah terdaftar. Kebijakan pengesahan untuk CovidenceTindakan berisiko memicu kartu pratinjau sebelum efek samping apapun. Peranan + penggetah permukaanSetiap aksi menyatakan peran dan permukaan diizinkan untuk menjalankannya.
Kontrak aksi yang dihasilkan · JSON_
{
  "action": "tickets.reply",
  "kind": "write",
  "scopes": ["tickets.write", "admin"],
  "feature": "ticket_system",
  "risk": "medium",
  "confirmation": "recommended",
  "idempotency": "supported",
  "dry_run": true,
  "request": { "type": "object" },
  "response": { "required": ["success"] }
}
03 / Jarum web bertandatangan

- Dengan bukti kriptografi.

Subscribe any URL to any of the 52 deliverable events. OpsIQ POSTs the JSON payload signed with HMAC-SHA256 over the scheme version, the timestamp, the delivery ID and the body together, not the body alone, so yesterday's delivery cannot be replayed at you today.

Perlindungan ReplayID pengiriman dapat dilacak5-step back-off
Referensi webfinghook
saringan webhook - php
$raw = file_get_contents('php://input');
$sig = $_SERVER['HTTP_X_OPSIQ_SIGNATURE'] ?? '';   // "v2=<hex>"
$ts  = (int)($_SERVER['HTTP_X_OPSIQ_TIMESTAMP'] ?? 0);
$id  = (int)($_SERVER['HTTP_X_OPSIQ_DELIVERY'] ?? 0);

if (abs(time() - $ts) > 300) http_response_code(401);   // replay window
[$ver, $hex] = array_pad(explode('=', $sig, 2), 2, '');  // split the prefix

$signed   = $ver . '.' . $ts . '.' . $id . '.' . $raw;   // NOT the body alone
$expected = hash_hmac('sha256', $signed, $secret);
if (!hash_equals($expected, $hex)) http_response_code(401);

$event = json_decode($raw, true);   // $id is stable across retries
04 6 / SDK

Use HTTP langsung tanpa menggunakan nama samaran atau menghasilkan klien yang anda sukai.

Jenderal penuhAPI Buku ini diterbitkan sebagai OpenAPI 3.0.3 Dan Postman. Pengirim referensi PHP ditambah Node dan klien integrasi Python meliputi acara yang ditandatangani dan aliran webhook; setiap tumpukan dapat memanggil sama JSON Tindakan permukaan langsung.

Contoh klien pada tahun 2008
const response = await fetch(`${base}/api/v1.php`, {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${process.env.OPSIQ_KEY}`,
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    action: "tickets.reply",
    dry_run: true,
    idempotency_key: crypto.randomUUID(),
    body: "Thanks. We are checking this now."
  })
});
$payload = json_encode([
  'action' => 'tickets.reply',
  'dry_run' => true,
  'idempotency_key' => bin2hex(random_bytes(16)),
  'body' => 'Thanks - we are checking this now.',
]);

$ch = curl_init($base . '/api/v1.php');
curl_setopt_array($ch, [
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => $payload,
  CURLOPT_HTTPHEADER => [
    'Authorization: Bearer ' . getenv('OPSIQ_KEY'),
    'Content-Type: application/json',
  ],
]);
response = requests.post(
    f"{base}/api/v1.php",
    headers={
        "Authorization": f"Bearer {os.environ['OPSIQ_KEY']}",
        "Content-Type": "application/json",
    },
    json={
        "action": "tickets.reply",
        "dry_run": True,
        "idempotency_key": str(uuid.uuid4()),
        "body": "Thanks - we are checking this now.",
    },
)
JSON HTTP LangsungKemudia BukaAPI 3.0.3_Koleksi PostmanPenyepaduan para pembantu
05 / Pola penghubung

Membina sekali.

Konektor A adalah paket terkonektor yang dibuat atau diimpor melalui Identity, Auth, Test, Actions, Triggers and Review. manifestonya menyatakan permukaan kapabilitas OpsIQ diizinkan untuk mengekspos.

Buka gedung enam tahap
Tahap enam tahap yang dipandu oleh pesawatIdentity, Auth, Test, Actions, Triggers and Review menjaga pembuatan paket tetap dapat dijelaskan. Kontrak-didorong8 profiles and 57 capability types declare the surfaces a package implements. DicairkanKemanduan, pembuktian dan pemeriksaan kesesuaian berjalan sebelum paket diperlakukan sebagai siap.
Dari niat untuk tindakan aman

Bahasa Inggris masuk. Operasi Audited keluar.

OpsIQ Ini berjalan melalui kontrak terdaftar, mempersiapkan muatan, meminta konfirmasi ketika tindakan memerlukannya, dan menghasilkan baris audit lengkap ketika itu mengeksekusi, jadi AI yang dapat tindakan Kau tak bisa percaya pada AI.

Kontrak yang terikat. AI hanya mengusulkan tindakan Anda telah terdaftar.
Konfirmasi sebelum efek samping. Tindakan yang berisiko muncul di kartu pratinjau pertama.
Ingatan yang sangat banyak. Setiap prompt, respon dan tindakan hasil yang ditangkap dalam AI History.
4 Langkah-langkahNiat → audit
OOB HMACXerL ditandatangani sebelum dieksekusi
"pulangkan bil terakhir Adam" Langkah 1 _· resolusi maksud → dicocokkan: saas. refund_invoice permukaan: admin · peran: pemilik · Step 2 **Valasi * Langkah 3 _· Konfirmasi tanda & Kartu pratinjau · invoice #8421 Konfirmasi Baris Audit Step 4 · Memerlukan Methodiry Aktor · · prompt · hasil · 412ms_ Hanya-pemilik-hanya-saja · dapat diekspor sebagai CSV_
Tidak ada panggilan palsupendaftar kontrak sahaja
Dikonfirmasi-dipastikanPreview sebelum efek samping
Jejak permintaanaktor + kontrak + hasil
Rujukan

API Permukaan Hanya sekilas.

One JSON POST surface exposes 2,418 named actions. Each generated contract declares auth scopes, read/write kind, risk, confirmation, request schema, dry-run, idempotency and stable errors.

KeuasanaaaAPI 3.0.3 _butuh rujukan
AksiJohnWritake safetyBatas
Tindakan penulisan somesomesomeKeisahan kontrak · /api/v1.php disahkan
ACTION tickets.replytickets.writeiranophry_run + idempotensiDikonfigurasi / jam
ACTION security.reportsecurity.writeiranophry_run + idempotensiDikonfigurasi / jam
ACTION platform.routes.writesistemdyakunci konfirmasi + konfirmasiDikonfigurasi / jam
Tindakan penemuan Baca & baca ungkapPermukaan POST sama TOW · amplop stabil
ACTION meta.actionsPenemuan umum pada zaman kunoHanya Baca-bacaDikonfigurasi / jam
ACTION tickets.listtickets.readHanya Baca-bacaDikonfigurasi / jam
ACTION connectors.listconnectors.readHanya Baca-bacaDikonfigurasi / jam
Aksi HR OR orgosDiurasi hr.* contracts · hr.read / hr.write skop
ACTION hr.people.listhr.readHanya Baca-bacaDikonfigurasi / jam
ACTION hr.people.createhr.writeiranophry_run + idempotensiDikonfigurasi / jam
ACTION hr.org.treehr.readHanya Baca-bacaDikonfigurasi / jam
ORANGOS HR tidak mengirimkan acara webhook HR yang outbound. Mencapainya melalui permukaan POST yang sama, atau berlangganan peristiwa-peristiwa yang diterbitkan modul lain. Referensi lengkap: ORANGOSAPIKonektor dan konektor Dan Bagian dari referensi pengembang dari masyarakatModul ini diberi judul digerbang, jadi kunci tanpa hr Lufine mendapat penolakan, bukan daftar kosong. Apa itu HR PeopleOS.

Batasan angka UDDA dikonfigurasi per tombol pada jendela per jam. Respons ekspos X-RateLimit-Limit, X-RateLimit-Remaining BAHWA DAN X-RateLimit-Reset[5] ; sebuah permintaan ditolak kembali 429 DENGAN BAHASA Retry-AfterGunakan KemuaaaaAPI Buka 3.0.3 kontrak OR atau ORANG Koleksi Postman , dihasilkan dari aturan waktu berjalan yang sama.

Bina penyambung

Build, uji dan lepas masuk Tahap ke enam.

Dari profil yang diatur atau definisikan kontraknya sendiri.

1Identitas. Nama, siput, profil dan menyatakan permukaan kemampuan.
2Auth. API Kunci, Bearer, dasar, OAuth 2.0, HMAC atau klien langganan.
3Tes. Pembuktian validasi pengaturan sambungan yang terikat sebelum pengepakan.
4Tindakan. Peta nama operasi, parameter, ruang lingkup dan risiko.
5Pemicu. ¡OC Declare inbound events, webhooks, polling dan perilaku sinkronisasi.
6Review (dalam bahasa Inggris). Periksa kontrak yang dihasilkan dan lulus pintu keluar.
Tes sebelum kau berlayar

Memvalidasi dengan selamat, lalu melewati pintu keluar.

Guna dry_run Pada tindakan tulis yang didukung oleh pihak-pihak yang didukung, jalankan uji koneksi terbatas Builder, dan memeriksa manifes dan kontrak yang dihasilkan sebelum rilis. Paket validasi memeriksa nama kapabilitas, pengaturan, pembuktian dan berkas yang diperlukan; pekerja latar belakang menangani pemungutan suara reaktif dan pengiriman outbound.

Penulisan karya tulis Widry-run Uji sambungan tanpa batas Kontrak berkonforman Transmisi Cron-driven
konektor. php · php
kelas AcmeConnector Arsenal AbstractConnector { Fungsi publik nikif (): rentetan { Kembali \"Acme\"; } Fungsi publik Nama pengguna ((): rentetan { Kembali \"Acme\"; } Fungsi publik Keterangan lau_san ((): rentetan { Kembali Jembatan Acme yang jahat.; } // Gunakan nama dari KonektorContract Fungsi publik 444CAL(): array BAHASA YA { Kembali [\"aksi\", \"webhook\"]; } Fungsi publik Tablet pengaturan array BAHASA YA { Kembali [[\"Key\" => \"token\", type => kata sandi 'kata-kata sandi' ungutan]]; } Fungsi publik Sambungan tes (()array BAHASA YA $settings): array BAHASA YA { Kembali [\"Keberuntungan\" => true]; } Fungsi publik handelWebhook() array BAHASA YA $payload, array BAHASA YA $headers, array BAHASA YA $settings ): array BAHASA YA { Kembali [\"Keberuntungan\" => true]; } }
01 · Connector contract 2.4

Paket tidak bisa mengklaim kemampuan Kodenya tidak memiliki.

OpsIQ\Connectors\ConnectorContract Penemuan waktu berjalan, pembangun, paket pihak pertama, kesesuaian, Jenderal API Dan setiap referensi membaca bahwa satu registry. menyatakan kemampuan dan tiga file harus saling setuju satu sama lain sebelumnya OpsIQ Rute satu baris untuk Anda.

FIG. 01_Paket penyambung, bagian-bagiannya nyata scale 1:1 · contract 2.4
  1. 01 connector.php Kelas waktu berjalan
  2. 02 IdentityProvider.php Kunci eksternal stabil
  3. 03 SalesIngest.php Julukan Berdamai ()
  4. 04 actions.json Operasi yang dinamai
  5. 05 settings.json operator configuration
  6. 06 connector_contract.json otoritas mudah dibaca mesin
07 signature.json one HMAC Shadine atas SHA-256 Dari setiap berkas di atas, ditambah bukti asal dari ed25519
Matriks kapabilitas bersikukulin all 57, as registered
Tindakan usil Pemicu ham webhook journey_events Konteks guest_lookup identiti sales sales_reconciliation PILANG payments Perdagangan inbound_ticket outbound_reply ticket_merge sync_users sync_departments sync_orders sync_products sync_projects customer_import security_events security_native_block survey reply_feedback promo_audience promo_feed email_mailbox inbound_email outbound_email mailbox ai_tickets ai_reply ai_brain_aware native_api platform_bridge native_data kim block_registry inbound_comment outbound_note outbound_notification oauth reviews KANIN iran site_intelligence analitik comms admin_assets enterprise_hooks durable_queue ticket_mirror attachment_bridge database_migrations scheduled_workers conflict_resolution
janajana 30 duklaratif 20 ekstensi 7
Dua tanda tangan, dua pertanyaan.

hmac-sha256 \"Fodin over a deterministik muatan dari per-berkas SHA-256 Whats hashes jawaban Ini sudah diubah sejak penandatangananAn ed25519 Jawaban tanda tangan Apa itu ditandatangani oleh Nabtech_Dicek dengan kunci publik yang dibundel dan tidak ada rahasia bersama.

marketplace.json onymous berada di luar tanda tangan dengan definisi: pemasang menulisnya setelah penandatanganan, sehingga penerbit tidak pernah bisa menandatanganinya.
02 · alat/mutasi_proof.php

Penjaga yang tidak pernah gagal Tidak terbukti.

Tes hijau mengatakan padamu bahwa tidak ada yang rusak hari ini mereka tidak memberitahu penjaga yang kau tulis akan menghentikan hal itu ditulis untuk berhenti karena seorang penjaga yang tidak pernah menjalankannya seperti penjaga yang tak melakukan apa-apa jadi kami sengaja menghentikan jantungnya dan menuntut bahwa monitor berteriak

Penjaga · penjaga · baca peran harus menolak operasi destruktif KANTOR CH1 verify_commerce_contracts
src/Connectors/CommerceRoleMapVerifier.php DIHADAP
211    /* A read role must never reach a destructive operation. */
212-   if ($isRead && $isDestructive) {
212+   if (false) {
213        $errors[] = "read role '{$role}' points at a destructive op";
214        return false;
215    }
Tepatnya one Kecocokan tekstual diperlukan.
$ php tools/mutation_proof.php --spec=proofs.json
1[ ok ]hash    sha256 4f2a9c1e…
          remember the file exactly as it is
2[ ok ]control exit 0
          green BEFORE anything is touched
3[ ok ]mutate  1 match, lint ok
          one replacement, then php -l the mutant
4[RED ]prove   exit 1
          and "read role destructive" IS in the failures
5[ ok ]restore bytes written
          the original, not a regenerated copy
6[ ok ]verify  sha256 matches
          and the check is green again
 ══ PROVEN. file restored, hash matched, 1 proof run, 0 failed.
Bukti yang gagal adalah Tak pernah Bukti bahwa cek yang salah bukanlah bukti bahwa penjaga bekerja.

Mutasi tidak pernah diterapkan.

Teks pencarian tidak cocok, filenya tidak tersentuh, suitenya lulus, dan buktinya direkam Hijau di bawah kode lama Tertangkap dengan memerlukan satu kecocokan tekstual dan membandingkan file hashes kedua sisi.

Mutasi mutasi itu merusak sesuatu yang lain.

Kamar itu menjadi merah karena file berhenti parsing atau bootstrap mati, dan bukti mencatat merah yang tidak ada hubungannya dengan penjaga. Nama Tes di antara kegagalan.

Ini tidak bisa meninggalkan mutan di disk.

Setiap mutasi salinan asli ke sebuah sidecar di luar pohon yang diserved web, menulis penanda penamaan perubahan menonjol, dan dibatalkan oleh handler matikan pada setiap jalur keluar. Penanda dari run jatuh dihormati sebelum mutasi berikutnya file itu.

Konformansi 03 · Memerlukan

Sertifikasi adalah perintah Dengan kode keluar.

Not a review queue where somebody reads your code and forms an opinion. Run the same suites we run, on your own machine, before you submit. 8 published JSON Schemas under doc/contracts/schemas/ Pengaturan sampul, tindakan, spesifikasi pembangun, pemetaan acara perjalanan dan perdagangan, resep alur kerja, kontrak konektor dan manifes rilis.

  1. manifests (Dan mereka saling bersesuaian) dalam masalah agama (dan saling bermufakat) dalam setiap urusan
  2. Kemampuan berbisa ada idi dalam kelas runtime
  3. interfaces Diimplementasikan di mana dinyatakan
  4. files Semua berkas yang diperlukan ada
  5. Tindakan usil Kecocokan dengan tindakan nyata
  6. destructive \"Penguatan\"
  7. identiti * Kunci eksternal stabil, bukan email
  8. [Redplay] replay Ulang ulang pembaruan, jangan pernah duplikat
  9. syarikat deklarasi python cocok dengan ekstensi
  10. doc gelar doktor INGGAL, BERLARANG, MENGUBAH
  11. Skema JSON _validasi
exit 0 acme: conformant against contract 2.4 Kau perbaiki, bukan kami.
$ php tools/test_connector_conformance_all.php --connector=acme $ php tools/test_connector_json_schemas.php $ php tools/verify_commerce_contracts.php $ php tools/release_gate_connectors.php --require-signatures

Dia yang pertama di rekening non-produksi nyata dengan --live-settings=/secure/test-acme.jsonSementara kau masih merasa gatal, tukar yang terakhir untuk --unsigned-okIni menganggap tanda tangan yang hilang sebagai peringatan yang diharapkan daripada berpura-pura itu baik-baik saja.

04 · Perdagangan.json

Memaktakan apa yang bisa kau jual Dia bukan sebuah berkas, bukan pendaftaran.

Sebuah penyambung yang bisa menjual menyatakan mana yang Milik mereka sendiri Operasi-operasi magazore menjawab peran perdagangan kanonik OpsIQ_. kehadiran file adalah klaim. itu muncul dalam pengaturan penjualan saat ia menyatakan dan menghilang ketika berhenti tidak ada daftar untuk bergabung dan tidak ada yang bertanya

Peranan kanonikal commerce_roles.json Kau operasikan operasimu
catalog_search READ acme_search_products KANINO ok order_get READ acme_get_order KANINO ok order_create WRITE acme_create_order recovery: acme_get_order order_create WRITE db_insert_record Penulisan catatan generik, tidak ada pemulihan
RUJU

Apa yang kau lakukan? write Peranan lendir dipetakan ke penulisan catatan generik. Padanannya adalah struktural: sebuah noun penyimpanan disamping kata kerja mutating, apapun konvensi penamaan Anda. Menulis baris bisnis langsung melewati harga platform, penguncian ketersediaan dan konfirmasi surat, dan menghasilkan perintah sistem pedagang sendiri hanya setengah percaya. recovery Jadi, waktu habis juga tidak bisa dipulihkan.

commerce_roles.jsonBAHWA
{
  "commerce": {
    "roles": {
      "catalog_search": { "operation": "acme_search_products", "transport": "http" },
      "order_get":      { "operation": "acme_get_order",       "transport": "http" },
      "order_create":   { "operation": "acme_create_order",    "transport": "http",
                         "recovery":  "acme_get_order" }
    }
  }
}
Berkasnya sendiri dengan sengaja: connector_contract.json Khagon dijana dan skemanya ditetapkan additionalProperties:falseJadi blok yang diberi izin akan gagal validasi dan kemudian ditulis ganti pada generator berikutnya dijalankan.
01
Kata kerja yang dibubuhi kata

Peran A tidak masuk CommerceRole Tidak ada. OpsIQ _tidak pernah menyimpulkan satu dari nama operasi, karena sebuah nama bukanlah janji.

02
Tindakanmu sendiri

Operasi harus muncul dalam Anda actions.jsonMenyatakan satu yang tidak ada menjanjikan sesuatu pada pelanggan yang kemudian menghasilkan apa-apa.

03
Para penulis menyatakan pemulihan

The most dangerous timeout is the one after the platform may already have done the work. Without an idempotent "did my write land" lookup, the only options are retry blind or lose the order.

04
Peranan bayaran yuran [P] dengan sertifikat

Setiap pekerjaan yang juga menyatakan peran kelas pembayaran payment_profile Dan dengan Persekitaran, webhook_verify Memanfaatkan skema penyedia sendiri, dan event_mapLingkungan yang tidak dinyatakan adalah bagaimana penyedia mode uji coba mengambil pembayaran langsung.

Pembangun menvalidasi ini seperti yang Anda ketik dan penerang mengesahkan paket yang dikirim. keduanya memanggil fungsi yang sama, jadi mereka tidak bisa tidak setuju.
⚖️ Bagaimana ia dibandingkan

OpsIQ vs a Integrasi DIY.

Apa kontrak-bound, ditandatangani, audit platform memberi Anda bahwa bergulir webhooks Anda sendiri dan AI-action pipa tidak akan pernah.

Kemampuan berbakatKau sendiri yang harus pergiOpsIQ
Skop API + HMAC-signed webhooks Tangan-digulung
Penulisan Dry-run + 24_jam sukses replay AYAH
1m → 5m → 30m → 2h → 12h retries Antrian DIY
Registrasi aksi-kontrak-aksi (AI tidak dapat menemukan panggilan)
Kebijakan pengesahan kejelasan sebelum efek samping
Selubung galat stabil + ID permintaan Pengelogan Manual Uggging
HTTP langsung Ukraina + pilihan klien yang dihasilkan Kau harus menulis sendiri.
KehampaanAPI 3.0.3 kontrak mudah dibaca mesin Mungkin
Builder 6 tahap + gerbang pelepasan paket Ufinah membangun sebuah rantaian alat
Kunci dan batas per jam yang dipinda oleh Ruang Kerja-Cyword Varian
Pola konektor: kode platform tetap terisolasi
Soalan Lazim

Pertanyaan pengembang, Dijawab oleh Meka.

Autentifikasi, kontrak, retries, generasi klien, pengujian aman dan model konektor, sebelum permintaan produksi pertama.

Kirim panggilan API mulia Authorization: Bearer opq_…Kunci dapat dibatasi, dibatasi atau hanya dibaca, membawa lingkup yang tidak layak, mematuhi batas per jam dan dapat disematkan ke ruang kerja. Penandatanganan Webhook terpisah: outbound pengiriman barang X-OpsIQ-Signature, X-OpsIQ-Timestamp, X-OpsIQ-Event BAHWA DAN X-OpsIQ-Delivery.
No. AI hanya dapat mengusulkan operasi yang dinamakan dalam registry action. Setiap kontrak yang dihasilkan menyatakan ruang lingkup, medan permintaan, kebijakan risiko dan konfirmasi; operasi yang kebijakannya memerlukan kepastian permukaan pratinjau manusia sebelum eksekusi.
Penghitungan Ulang hash_hmac('sha256', $rawBody, $secret) Dan membandingkannya dengan digest heksadesimal X-OpsIQ-Signature jar menggunakan hash_equalsValidate X-OpsIQ-Timestamp Di dalam jendela replay dan penggunaan X-OpsIQ-Delivery Sebagai pengecam pengiriman yang dapat dilacak.
Usaha yang tidak berhasil memasuki antrian pengiriman latar belakang. OpsIQ Retries pada1-minit, 5-minit, 30-minit,2-jam dan 12- Tangga jam sambil mempertahankan identifier pengiriman dan mencoba sejarah untuk diagnostik.
Call the JSON action surface directly, import the generated Postman collection, or generate a client from OpenAPI 3.0.3. PHP reference senders and Node/Python integration clients support event and webhook flows; they are helpers rather than separate API contracts.
Guna dry_run Tindakan yang kontraknya dijangkiti mendukungnya, menjalankan tes koneksi Terikat Connector Builder, memeriksa file-file yang dihasilkannya, dan melewati kesesuaian paket dan pintu gerbang rilis sebelum memperlakukan konektor sebagai siap.
Pelepasan yang telah dipasangkan tidak menghasilkannya. API dan kontrak konektor dari perusahaan runtime sendiri. pengerahan Anda memiliki publik URL, rahasia, penyimpanan dan cron/pekerja, sehingga perilaku harus diverifikasi terhadap pelepasan terpasang daripada diasumsikan dari lingkungan awan.
Konektor adalah paket yang diatur berisi adapter, settings.json, opsional actions.json---- -- enam tahap membangunnya, registry menemukan itu; sesuai dan lepaskan gerbang validasi itu.