engineer
Engineer Quickstart
Complete one assessment, signed event, and feedback cycle.
Reviewed 2026-08-13Product 1.1
Run this flow from a backend or controlled staging environment. Never put refresh tokens or signing secrets in client code.
You need a provisioned, active workspace; events:assess and feedback:submit; and an event signing secret from Developer Settings.
1. Authenticate
bash
export VERTEXY_API_BASE_URL="https://api.getvertexy.com/api"
curl -X POST "$VERTEXY_API_BASE_URL/auth/login" \
-H "Content-Type: application/json" \
-d '{
"companyId": "a1b2c3d4-e5f6-4789-abcd-ef1234567890",
"email": "risk-admin@example.com",
"password": "Sup3rSecurePass!"
}'Store the returned tokens server-side. Protected endpoints return 402 until the subscription is active. See Authentication for refresh and logout.
2. Assess
bash
curl -X POST "$VERTEXY_API_BASE_URL/risk-engine/assess" \
-H "Authorization: Bearer $VERTEXY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"transactionId": "ord_10492",
"userId": "usr_8f7b2c9a4d",
"ipAddress": "203.0.113.42",
"deviceFingerprint": "dev_iphone_15_7ac9",
"paymentMethodHash": "pmh_visa_44e9",
"amountMinor": 12999,
"currency": "USD"
}'Persist the returned assessmentId, action, score, and reason codes.
3. Send a signed event
javascript
import crypto from "node:crypto";
const payload = {
companyId: process.env.VERTEXY_COMPANY_ID,
eventSource: "checkout-service",
externalEventId: "evt_payment_10492",
idempotencyKey: "evt_payment_10492",
userId: "usr_8f7b2c9a4d",
eventType: "payment_succeeded",
timestamp: new Date().toISOString(),
metadata: { orderId: "ord_10492" },
};
const body = JSON.stringify(payload);
const signature = crypto.createHmac("sha256", process.env.VERTEXY_WEBHOOK_SECRET).update(body).digest("hex");
await fetch(`${process.env.VERTEXY_API_BASE_URL}/events/ingest`, {
method: "POST",
headers: {
"content-type": "application/json",
"x-event-signature": signature,
"x-event-timestamp": String(Math.floor(Date.now() / 1000)),
"x-event-nonce": crypto.randomUUID(),
},
body,
});4. Submit the outcome
bash
curl -X POST "$VERTEXY_API_BASE_URL/risk-engine/feedback" \
-H "Authorization: Bearer $VERTEXY_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"assessmentId": "c8acf6d5-8bf4-4b80-a7e5-1b33583c1c23",
"idempotencyKey": "feedback_ord_10492",
"outcome": "approved",
"occurredAt": "2026-06-21T10:35:00.000Z"
}'Success means each call returns 2xx, the assessment has an assessmentId, event ingestion reports accepted, and feedback returns { "accepted": true }. Before production, complete the go-live checklist.