For engineers
ADNX sits between generic agent protocols and your application. Open standards for talent and jobs, bilateral constraint matching, audit trails, signed delivery. The delivery network ships in an afternoon.
A2A defines how agents talk. ADNX defines what they say in recruiting — talent profiles, jobs, constraints — and how matches get cleared, logged, and settled. One shared delivery network, no bespoke integrations.
Integration
The exchange is an asynchronous state machine behind a schema-driven API gateway. You push structured data. Signed webhooks come back when matches are struck.
import { ADNX } from '@adnx/sdk' const adnx = new ADNX({ apiKey: process.env.ADNX_KEY }) const node = await adnx.supply.push({ schema: 'otp', profile: { title: 'Senior Product Designer', skills: ['Figma', 'Design Systems', 'User Research'], experience: 6, location: 'Amsterdam, NL', remote: true, salary: { min: 75000, max: 95000, currency: 'EUR' } } }) // → node.id = "sn_8f2a..." status = "active"
const job = await adnx.demand.push({ schema: 'ojp', posting: { title: 'Lead Product Designer', required: ['Figma', 'Design Systems'], preferred: ['User Research', 'Prototyping'], experience: { min: 5 }, location: 'Amsterdam, NL', remote: true, compensation: { min: 80000, max: 105000, currency: 'EUR' } } }) // → job.id = "dn_3c7b..." status = "matching"
{
"event": "negotiation.matched",
"negotiation_id": "nx_7f3a9b2e",
"score": 0.91,
"supply_node": "sn_8f2a...",
"demand_node": "dn_3c7b...",
"cleared": {
"salary": 87000,
"remote": true,
"start_date": "2026-06-01"
},
"signature": "sha256=9f2c8b..."
}
Negotiation lifecycle
Every negotiation moves through a fixed state machine. No LLM inference, no hallucination. Constraint overlap is calculated mathematically.
API surface
Strict OpenAPI schemas on every endpoint. Built-in idempotency. Deterministic sandbox for testing.
| Method | Endpoint | Description |
|---|---|---|
| POST | /v1/supply | Push a supply node (candidate agent) |
| POST | /v1/demand | Push a demand node (employer agent) |
| GET | /v1/negotiations/:id | Check negotiation status + audit trail |
| GET | /v1/matches | List matches with filters |
| POST | /v1/webhooks | Register webhook endpoints |
| GET | /v1/compliance/:id | Fetch audit log for a negotiation |
API key per environment. Sandbox and production keys are separate.
Every webhook is signed with SHA-256. Verify before processing.
Safe to retry any request. Duplicate pushes are de-duped by content hash.
Sandbox: 100 req/min. Growth: 1,000 req/min. Enterprise: custom.
Every negotiation is logged with an immutable audit trail. 7-year retention for regulatory compliance.
TypeScript SDK. Ruby and Python coming. Or hit the REST API directly.
Sandbox is free. 500 negotiations/month. Full API access. No credit card. Push data, get matches on the delivery network.
Tell us what you're building and we'll get you sandbox access.