Properties
| Name | Type | Description |
|---|---|---|
| body | string | The python body of the rule |
| createAlert | boolean | Determines whether the rule should create alerts when it triggers |
| dedupPeriodMinutes | integer | The amount of time in minutes for grouping alerts |
| description | string | The description of the rule |
| displayName | string | The display name of the rule |
| enabled | boolean | Determines whether or not the rule is active |
| id | string | The id of the rule |
| inlineFilters | string | The filter for the rule represented in YAML |
| logTypes | array | log types |
| managed | boolean | Determines if the rule is managed by panther |
| outputIDs | array | Destination IDs that override default alert routing based on severity |
| reference | string | A URL or note for additional reference material |
| reports | object | reports |
| runbook | string | How to handle the generated alert |
| severity | string | Severity level |
| summaryAttributes | array | A list of fields in the event to create top 5 summaries for |
| tags | array | The tags for the rule |
| tests | array | Unit tests for the Rule. Best practice is to include a positive and negative case |
| threshold | integer | the number of events that must match before an alert is triggered |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/runpanther-io/json-schema/runpanther-io-post-rules-request-schema.json",
"title": "PostRulesRequest",
"x-generated": "2026-10-29",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/_ae-authored/runpanther-io-openapi-generated.yml#/components/schemas/PostRulesRequest",
"type": "object",
"properties": {
"body": {
"type": "string",
"description": "The python body of the rule"
},
"createAlert": {
"type": "boolean",
"description": "Determines whether the rule should create alerts when it triggers"
},
"dedupPeriodMinutes": {
"type": "integer",
"description": "The amount of time in minutes for grouping alerts"
},
"description": {
"type": "string",
"description": "The description of the rule"
},
"displayName": {
"type": "string",
"description": "The display name of the rule"
},
"enabled": {
"type": "boolean",
"description": "Determines whether or not the rule is active"
},
"id": {
"type": "string",
"description": "The id of the rule"
},
"inlineFilters": {
"type": "string",
"description": "The filter for the rule represented in YAML"
},
"logTypes": {
"type": "array",
"description": "log types"
},
"managed": {
"type": "boolean",
"description": "Determines if the rule is managed by panther"
},
"outputIDs": {
"type": "array",
"description": "Destination IDs that override default alert routing based on severity"
},
"reference": {
"type": "string",
"description": "A URL or note for additional reference material"
},
"reports": {
"type": "object",
"description": "reports"
},
"runbook": {
"type": "string",
"description": "How to handle the generated alert"
},
"severity": {
"type": "string",
"description": "Severity level"
},
"summaryAttributes": {
"type": "array",
"description": "A list of fields in the event to create top 5 summaries for"
},
"tags": {
"type": "array",
"description": "The tags for the rule"
},
"tests": {
"type": "array",
"description": "Unit tests for the Rule. Best practice is to include a positive and negative case"
},
"threshold": {
"type": "integer",
"description": "the number of events that must match before an alert is triggered"
}
},
"required": [
"body",
"id",
"severity"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/runpanther-io-post-rules-request"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.