Connect AI Sec Watch to your existing security workflows. Whether you need machine-readable threat feeds, real-time alerts in Slack, or raw data for research, there is an integration for your use case.
Full programmatic access to all issues, sources, and statistics. JSON responses with pagination, filtering by severity, type, vendor, date range, and more.
# Fetch recent critical AI security issues curl "https://aisecwatch.com/api/v1/issues?severity=critical&limit=10" \ -H "Accept: application/json"
Structured Threat Information Expression (STIX) bundle endpoint for seamless integration with threat intelligence platforms like MISP, OpenCTI, and ThreatConnect.
# Fetch STIX 2.1 bundle of recent threats curl "https://aisecwatch.com/api/v1/issues/stix?days=7" \ -H "Accept: application/json"
Receive real-time push notifications when new AI security issues are published. Every payload is signed with HMAC-SHA256 so you can verify authenticity.
# Example webhook payload header
X-Webhook-Signature: sha256=a1b2c3d4e5...
Content-Type: application/json
# Payload body
{
"event": "new_issues",
"issues": [
{
"id": "abc-123",
"title": "CVE-2026-1234: Prompt injection in...",
"severity": "critical",
"issueType": "vulnerability",
"llmSpecific": true,
"sourceUrl": "https://nvd.nist.gov/vuln/detail/..."
}
],
"deliveredAt": "2026-03-12T10:00:00.000Z"
}Subscribe to category-specific RSS feeds in your favorite reader, or use them as input to automation platforms like Zapier, n8n, or IFTTT.
Download the full dataset as CSV for analysis in Excel, Google Sheets, pandas, R, or any data tool. Includes all 44 structured fields per issue.
# Export issues as CSV curl "https://aisecwatch.com/api/issues/export?format=csv" \ -o aisecwatch-export.csv
Get AI security alerts directly in your Slack channels. Set up a Cloudflare Worker (or any serverless function) to bridge our webhook API to Slack's Incoming Webhooks format.
// Cloudflare Worker: AI Sec Watch -> Slack bridge
export default {
async fetch(request) {
const payload = await request.json();
const { issue } = payload;
// Verify HMAC signature (recommended)
// const sig = request.headers.get("X-Webhook-Signature");
const severity = issue.severity.toUpperCase();
const emoji =
severity === "CRITICAL" ? ":rotating_light:" :
severity === "HIGH" ? ":warning:" : ":information_source:";
await fetch(SLACK_WEBHOOK_URL, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
blocks: [
{
type: "section",
text: {
type: "mrkdwn",
text: `${emoji} *${severity}*: <${issue.url}|${issue.title}>`,
},
},
{
type: "context",
elements: [
{
type: "mrkdwn",
text: `Type: ${issue.issueType} | LLM-specific: ${issue.llmSpecific ? "Yes" : "No"}`,
},
],
},
],
}),
});
return new Response("OK", { status: 200 });
},
};Post AI security alerts to Discord channels using Discord's webhook API. Similar to the Slack setup, use a lightweight serverless bridge to transform payloads.
// Cloudflare Worker: AI Sec Watch -> Discord bridge
export default {
async fetch(request) {
const payload = await request.json();
const { issue } = payload;
const colors = {
critical: 0xff0000,
high: 0xff8c00,
medium: 0xffd700,
low: 0x00bfff,
info: 0x808080,
};
await fetch(DISCORD_WEBHOOK_URL, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
embeds: [
{
title: issue.title,
url: issue.url,
color: colors[issue.severity] || 0x808080,
fields: [
{ name: "Severity", value: issue.severity, inline: true },
{ name: "Type", value: issue.issueType, inline: true },
{ name: "LLM-specific", value: issue.llmSpecific ? "Yes" : "No", inline: true },
],
},
],
}),
});
return new Response("OK", { status: 200 });
},
};All integrations use the same underlying REST API. Start by reviewing the API documentation, then pick the integration that fits your workflow. The API requires no authentication for read-only access and supports CORS for browser-based tools.