Client Snippets
curl decision
curl -s -X POST 'https://www.prelistproof.com/api/agent/decision' \
-H 'content-type: application/json' \
-H "x-prelistproof-api-key: ${PRELISTPROOF_API_KEY}" \
-d '{"marketplace": "amazon_us", "category": "electronics", "title": "SDK Test RF Speaker", "brand": "SDKTest", "model": "SDK-RF-1", "fcc_id": "2AH25NT311H", "intended_action": "recommend"}'
javascript decision
const response = await fetch("https://www.prelistproof.com/api/agent/decision", {
method: "POST",
headers: {
"content-type": "application/json",
"x-prelistproof-api-key": process.env.PRELISTPROOF_API_KEY
},
body: JSON.stringify({
"marketplace": "amazon_us",
"category": "electronics",
"title": "SDK Test RF Speaker",
"brand": "SDKTest",
"model": "SDK-RF-1",
"fcc_id": "2AH25NT311H",
"intended_action": "recommend"
})
});
const decision = await response.json();
python decision
import json, os, urllib.request
payload = {
"marketplace": "amazon_us",
"category": "electronics",
"title": "SDK Test RF Speaker",
"brand": "SDKTest",
"model": "SDK-RF-1",
"fcc_id": "2AH25NT311H",
"intended_action": "recommend"
}
request = urllib.request.Request(
"https://www.prelistproof.com/api/agent/decision",
data=json.dumps(payload).encode("utf-8"),
headers={
"content-type": "application/json",
"x-prelistproof-api-key": os.environ["PRELISTPROOF_API_KEY"],
},
method="POST",
)
with urllib.request.urlopen(request) as response:
decision = json.loads(response.read().decode("utf-8"))
curl outcome listener
curl -s -X POST 'https://www.prelistproof.com/api/outcome/listener' \
-H 'content-type: application/json' \
-d '{"connector": "marketplace_webhook", "source_type": "marketplace_outcome", "subject": "Compliance documents accepted", "body": "Report pl_... compliance documents accepted after reviewer evidence check.", "report_id": "pl_...", "marketplace": "amazon_us", "category": "electronics"}'
event polling
const events = await fetch("https://www.prelistproof.com/api/webhooks/events").then((response) => response.json());
webhook subscription
const subscription = await fetch("https://www.prelistproof.com/api/webhooks/subscriptions", {
method: "POST",
headers: { "content-type": "application/json" },
body: JSON.stringify({
account_id: "acct_...",
company: "Marketplace QA",
email: "integrations@example.test",
endpoint_url: "https://example.test/prelistproof/webhook",
event_types: ["verification.report.created", "marketplace.outcome.recorded", "learning.loop.recorded", "rule_pack.recommendation.recorded", "rule_pack.release_candidate.recorded", "source.watchlist.recorded", "source.intelligence.recorded"],
delivery_mode: "webhook_handoff"
})
}).then((response) => response.json());
Self-Test Sequence
create or attach platform account
Create a fixed-fee platform account and store the one-time API key in the caller's secret manager.
Endpoint
agent-ownedfounder false
credential lifecycle
Read key lifecycle policy and confirm the caller can rotate or revoke API keys without founder hand-work.
Endpoint
agent-ownedfounder false
decision api test
Run one keyed decision call and confirm usage metering records the request.
Endpoint
agent-ownedfounder false
event subscription or polling
Create a webhook subscription or poll the replayable event stream.
Endpoint
agent-ownedfounder false
outcome ingestion
Post marketplace outcome text so reports feed the trust graph and calibration loop.
Endpoint
agent-ownedfounder false
refund policy loop
Post a routine fixed-fee refund support case and confirm the refund worker records connector-ready policy instructions without founder review.
Endpoint
agent-ownedfounder false
source watchlist materialization
Post or update a watched source and run the worker so policy/case/source changes become source intelligence and candidate rules.
Endpoint
agent-ownedfounder false
integration conformance report
Read the conformance report and confirm the partner can self-audit setup without founder review.
Endpoint
agent-ownedfounder false
security trust center
Post a procurement/security questionnaire through the connector inbox and confirm trust-center answers are generated from factual controls without founder review.
Endpoint
agent-ownedfounder false
safe rule pack review
Read advisory rule-pack recommendations without changing live rules automatically.
Endpoint
agent-ownedfounder false
safe release candidate gate
Read gated rule-pack release candidates without changing live rules automatically.
Endpoint
agent-ownedfounder false