Demisto Reports API
The Reports API from Demisto — 4 operation(s) for reports.
The Reports API from Demisto — 4 operation(s) for reports.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.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.curl "https://apis.io/api/v1/apis/demisto-reports-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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.
openapi: 3.2.0
info:
description: 'This is the public REST API to integrate with the demisto server.
HTTP request can be sent using any HTTP-client.
For an example dedicated client take a look at: https://github.com/demisto/demisto-py.
Requests must include API-key that can be generated in the Demisto web client under ''Settings'' -> ''Integrations'' -> ''API keys''
Optimistic Locking and Versioning\:
When using Demisto REST API, you will need to make sure to work on the latest version of the item (incident, entry, etc.), otherwise, you will get a DB version error (which not allow you to override a newer item).
In addition, you can pass ''version\: -1'' to force data override (make sure that other users data might be lost).
Assume that Alice and Bob both read the same data from Demisto server, then they both changed the data, and then both tried to write the new versions back to the server. Whose changes should be saved? Alice’s? Bob’s?
To solve this, each data item in Demisto has a numeric incremental version.
If Alice saved an item with version 4 and Bob trying to save the same item with version 3, Demisto will rollback Bob request and returns a DB version conflict error.
Bob will need to get the latest item and work on it so Alice work will not get lost.
Example request using ''curl''\:
```
curl ''https://hostname:443/incidents/search'' -H ''content-type: application/json'' -H ''accept: application/json'' -H ''Authorization: <API Key goes here>'' --data-binary ''{"filter":{"query":"-status:closed -category:job","period":{"by":"day","fromValue":7}}}'' --compressed
```'
title: Demisto Apikeys Reports API
version: 2.0.0
servers:
- url: https://hostname:443
security:
- api_key: []
- csrf_token: []
- x-xdr-auth-id: []
tags:
- name: Reports
paths:
/reports:
get:
description: Get all of the reports
summary: Get all reports
operationId: getAllReports
responses:
'200':
description: Return array of reports
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Report'
tags:
- Reports
/reports/{id}:
get:
description: Get a report by its ID
summary: Get report by ID
operationId: getReportByID
parameters:
- description: the ID of the report to get
name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: Return a report
content:
application/json:
schema:
$ref: '#/components/schemas/Report'
tags:
- Reports
/reports/{id}/latest:
get:
description: Get the latest report by its ID
summary: Get latest report by ID
operationId: downloadLatestReport
parameters:
- description: the ID of the report to get
name: id
in: path
required: true
schema:
type: string
responses:
'200':
description: Return a report file
content:
application/octet-stream:
schema:
type: string
format: binary
tags:
- Reports
/reports/upload:
post:
description: Upload report file to Demisto
summary: Upload report file to Demisto
operationId: uploadReport
responses:
'200':
description: A list of all the reports in the instance
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Report'
tags:
- Reports
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
description: file
format: binary
required:
- file
components:
schemas:
ModuleArgs:
description: ModuleArgs represents module args
type: object
additionalProperties:
type: object
x-go-package: github.com/demisto/server/domain
ReportQuery:
type: object
title: ReportQuery ...
properties:
filter:
$ref: '#/components/schemas/RawMessage'
groupBy:
type: array
items:
type: string
x-go-name: GroupBy
keys:
type: array
items:
type: string
x-go-name: Keys
type:
type: string
x-go-name: Type
x-go-package: github.com/demisto/server/domain
Period:
type: object
title: Period holds the 'Period' query, such as last 3 days, last 6 hours, between 6 days from now until 3 days from now.
properties:
by:
description: By is used for legacty, and if exists it will override ByTo and ByFrom
type: string
x-go-name: By
byFrom:
type: string
x-go-name: ByFrom
byTo:
type: string
x-go-name: ByTo
field:
type: string
x-go-name: Field
fromValue:
type: string
format: duration
x-go-name: FromValue
toValue:
type: string
format: duration
x-go-name: ToValue
x-go-package: github.com/demisto/server/domain
Order:
description: Order struct holds a sort field and the direction of sorting
type: object
properties:
asc:
type: boolean
x-go-name: Asc
field:
type: string
x-go-name: Field
fieldType:
type: string
x-go-name: FieldType
x-go-package: github.com/demisto/server/domain
Section:
type: object
title: Section ...
properties:
automation:
$ref: '#/components/schemas/ReportAutomation'
data:
type: object
x-go-name: Data
description:
type: string
x-go-name: Description
displayType:
type: string
x-go-name: DisplayType
emptyNotification:
type: string
x-go-name: EmptyNotification
fromDate:
type: string
x-go-name: FromDate
layout:
type: object
x-go-name: Layout
query:
$ref: '#/components/schemas/ReportQuery'
title:
type: string
x-go-name: Title
titleStyle:
type: object
additionalProperties:
type: object
x-go-name: TitleStyle
toDate:
type: string
x-go-name: ToDate
type:
type: string
x-go-name: Type
x-go-package: github.com/demisto/server/domain
Widget:
description: 'Widget describe a widget component used to get statistics requests, based on parameters such as
dataType and widgetType. A widget can be a part of widgets collection inside a dashboard.'
type: object
required:
- name
- widgetType
properties:
category:
description: Category the widget is related to. Used to display in widget library under category or dataType if empty.
type: string
x-go-name: Category
commitMessage:
type: string
x-go-name: CommitMessage
dataType:
description: Data type of the widget. Describes what data does the widget query. supporting data types "incidents","messages","system","entries","tasks", "audit".
type: string
x-go-name: DataType
dateRange:
$ref: '#/components/schemas/DateRange'
description:
description: The description of the widget's usage and data representation.
type: string
x-go-name: Description
id:
type: string
x-go-name: ID
isPredefined:
description: Is the widget a system widget.
type: boolean
x-go-name: IsPredefined
locked:
description: Is the widget locked for editing.
type: boolean
x-go-name: Locked
modified:
type: string
format: date-time
x-go-name: Modified
name:
description: Default name of the widget.
type: string
x-go-name: Name
params:
description: Additional parameters for this widget, depends on widget type and data.
type: object
additionalProperties:
type: object
x-go-name: AdditionalParams
prevName:
description: The previous name of the widget.
type: string
x-go-name: PrevName
query:
description: Query to search on the dataType.
type: string
x-go-name: Query
shouldCommit:
type: boolean
x-go-name: ShouldCommit
size:
description: Maximum size for this widget data returned.
type: integer
format: int64
x-go-name: Size
sort:
description: Sorting array to sort the data received by the given Order parameters.
type: array
items:
$ref: '#/components/schemas/Order'
x-go-name: Sort
sortValues:
type: array
items:
type: string
x-go-name: SortValues
vcShouldIgnore:
type: boolean
x-go-name: VCShouldIgnore
version:
type: integer
format: int64
x-go-name: Versn
widgetType:
description: 'Widget type describes how does the widget should recieve the data, and display it. Supporting types: "bar", "column", "pie", "list", "number", "trend", "text", "duration", "image", "line", and "table".'
type: string
x-go-name: WidgetType
x-go-package: github.com/demisto/server/domain
RawMessage:
description: 'It implements Marshaler and Unmarshaler and can
be used to delay JSON decoding or precompute a JSON encoding.'
type: array
title: RawMessage is a raw encoded JSON value.
items:
type: integer
format: uint8
x-go-package: encoding/json
DateRange:
description: DateRange provides common fields for date filtering
type: object
properties:
fromDate:
type: string
format: date-time
x-go-name: FromDate
fromDateLicense:
type: string
format: date-time
x-go-name: FromDateLicenseVal
period:
$ref: '#/components/schemas/Period'
toDate:
type: string
format: date-time
x-go-name: ToDate
x-go-package: github.com/demisto/server/domain
WidgetCell:
type: object
title: WidgetCell ...
properties:
forceRange:
type: boolean
x-go-name: ForceRange
h:
type: integer
format: int64
x-go-name: Height
i:
type: string
x-go-name: Key
id:
type: string
x-go-name: ID
w:
type: integer
format: int64
x-go-name: Width
widget:
$ref: '#/components/schemas/Widget'
x:
type: integer
format: int64
x-go-name: Xs
y:
type: integer
format: int64
x-go-name: Ys
x-go-package: github.com/demisto/server/domain
EndingType:
description: EndingType holds the type of schedule Ending
type: string
x-go-package: github.com/demisto/server/domain
ReportFieldsDecoder:
type: object
title: ReportFieldsDecoder ...
properties:
type:
type: string
x-go-name: Type
value:
type: string
x-go-name: Value
x-go-package: github.com/demisto/server/domain
ReportAutomation:
type: object
title: ReportAutomation ...
properties:
args:
$ref: '#/components/schemas/ModuleArgs'
id:
type: string
x-go-name: ID
name:
type: string
x-go-name: Name
noEvent:
type: boolean
x-go-name: NoEvent
x-go-package: github.com/demisto/server/domain
Dashboard:
type: object
title: Dashboard ...
properties:
commitMessage:
type: string
x-go-name: CommitMessage
fromDate:
type: string
format: date-time
x-go-name: FromDate
fromDateLicense:
type: string
format: date-time
x-go-name: FromDateLicenseVal
id:
type: string
x-go-name: ID
isCommon:
type: boolean
x-go-name: IsCommon
layout:
$ref: '#/components/schemas/WidgetCells'
modified:
type: string
format: date-time
x-go-name: Modified
name:
type: string
x-go-name: Name
owner:
type: string
x-go-name: Owner
period:
$ref: '#/components/schemas/Period'
prevName:
type: string
x-go-name: PrevName
shared:
type: boolean
x-go-name: Shared
shouldCommit:
type: boolean
x-go-name: ShouldCommit
sortValues:
type: array
items:
type: string
x-go-name: SortValues
system:
type: boolean
x-go-name: System
toDate:
type: string
format: date-time
x-go-name: ToDate
vcShouldIgnore:
type: boolean
x-go-name: VCShouldIgnore
version:
type: integer
format: int64
x-go-name: Versn
x-go-package: github.com/demisto/server/domain
WidgetCells:
type: array
title: WidgetCells ...
items:
$ref: '#/components/schemas/WidgetCell'
x-go-package: github.com/demisto/server/domain
Report:
description: Report - represents report
type: object
properties:
commitMessage:
type: string
x-go-name: CommitMessage
createdBy:
type: string
x-go-name: CreatedBy
cron:
type: string
x-go-name: Cron
cronView:
type: boolean
x-go-name: CronView
dashboard:
$ref: '#/components/schemas/Dashboard'
decoder:
type: object
additionalProperties:
$ref: '#/components/schemas/ReportFieldsDecoder'
x-go-name: Decoder
description:
type: string
x-go-name: Description
disableHeader:
type: boolean
x-go-name: DisableHeader
endingDate:
type: string
format: date-time
x-go-name: EndingDate
endingType:
$ref: '#/components/schemas/EndingType'
humanCron:
$ref: '#/components/schemas/HumanCron'
id:
type: string
x-go-name: ID
latestReportName:
type: string
x-go-name: LatestReportName
latestReportTime:
type: string
format: date-time
x-go-name: LatestReportTime
latestReportUsername:
type: string
x-go-name: LatestReportUsername
latestScheduledReportTime:
type: string
format: date-time
x-go-name: LatestScheduledReportTime
locked:
type: boolean
x-go-name: Locked
modified:
type: string
format: date-time
x-go-name: Modified
name:
type: string
x-go-name: Name
nextScheduledTime:
type: string
format: date-time
x-go-name: NextScheduledTime
orientation:
type: string
x-go-name: Orientation
paperSize:
type: string
x-go-name: PaperSize
prevName:
type: string
x-go-name: PrevName
prevType:
type: string
x-go-name: PrevType
recipients:
type: array
items:
type: string
x-go-name: Recipients
recurrent:
type: boolean
x-go-name: Recurrent
reportType:
type: string
x-go-name: ReportType
runOnce:
type: boolean
x-go-name: RunOnce
runningUser:
type: string
x-go-name: RunningUser
scheduled:
description: is it scheduled
type: boolean
x-go-name: Scheduled
sections:
type: array
items:
$ref: '#/components/schemas/Section'
x-go-name: Sections
sensitive:
type: boolean
x-go-name: Sensitive
shouldCommit:
type: boolean
x-go-name: ShouldCommit
sortValues:
type: array
items:
type: string
x-go-name: SortValues
startDate:
type: string
format: date-time
x-go-name: StartDate
system:
type: boolean
x-go-name: System
tags:
type: array
items:
type: string
x-go-name: Tags
times:
type: integer
format: int64
x-go-name: Times
timezoneOffset:
type: integer
format: int64
x-go-name: TimezoneOffset
type:
type: string
x-go-name: Type
userAPIKey:
type: string
x-go-name: UserAPIKey
userAPIKeyID:
type: string
x-go-name: UserAPIKeyID
vcShouldIgnore:
type: boolean
x-go-name: VCShouldIgnore
version:
type: integer
format: int64
x-go-name: Versn
x-go-package: github.com/demisto/server/domain
HumanCron:
type: object
title: HumanCron ...
properties:
atTimeHour:
type: string
x-go-name: AtTimeHour
atTimeMinute:
type: string
x-go-name: AtTimeMinute
days:
type: array
items:
type: string
x-go-name: Days
hoursPeriod:
type: string
x-go-name: HoursPeriod
schedulingType:
description: the following fields are deprecated. do not use them.
type: string
x-go-name: SchedulingType
timePeriod:
type: integer
format: int64
x-go-name: TimePeriod
timePeriodType:
type: string
x-go-name: TimePeriodType
x-go-package: github.com/demisto/server/domain
securitySchemes:
api_key:
type: apiKey
name: Authorization
in: header
csrf_token:
type: apiKey
name: X-XSRF-TOKEN
in: header
x-xdr-auth-id:
type: apiKey
name: x-xdr-auth-id
in: header