# Event
## Filter and list events
**GET** `/accounts/{account_id}/cloudforce-one/events`
When `datasetId` is unspecified, events will be listed from the `Cloudforce One Threat Events` dataset. To list existing datasets (and their IDs), use the [`List Datasets`](https://developers.cloudflare.com/api/resources/cloudforce_one/subresources/threat_events/subresources/datasets/methods/list/) endpoint). Also, must provide query parameters.
### Responses
#### 200 Returns a list of events.
> Data is at `body["result"]`
```json
[
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
]
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Aggregate events by single or multiple columns with optional date filtering
**GET** `/accounts/{account_id}/cloudforce-one/events/aggregate`
Aggregate threat events by one or more columns (e.g., attacker, targetIndustry) with optional date filtering and daily grouping. Supports multi-dimensional aggregation for cross-analysis.
### Responses
#### 200 Returns aggregated event data.
> Data is at `body["result"]`
```json
{
"aggregateBy": "*string*",
"aggregations": [
{
"count": "*number*",
"date": "*string*"
}
],
"dateRange": {
"endDate": "*string*",
"startDate": "*string*"
},
"total": "*number*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Creates a new event
**POST** `/accounts/{account_id}/cloudforce-one/events/create`
To create a dataset, see the [`Create Dataset`](https://developers.cloudflare.com/api/resources/cloudforce_one/subresources/threat_events/subresources/datasets/methods/create/) endpoint. When `datasetId` parameter is unspecified, it will be created in a default dataset named `Cloudforce One Threat Events`.
### Responses
#### 200 Returns the created event.
> Data is at `body["result"]`
```json
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Creates bulk events
**POST** `/accounts/{account_id}/cloudforce-one/events/create/bulk`
The `datasetId` parameter must be defined. To list existing datasets (and their IDs) in your account, use the [`List Datasets`](https://developers.cloudflare.com/api/resources/cloudforce_one/subresources/threat_events/subresources/datasets/methods/list/) endpoint.
### Responses
#### 202 Accepted. Events created; indicators queued for async processing.
> Data is at `body["result"]`
```json
{
"createBulkEventsRequestId": "*string*",
"createdEvents": [
{
"eventIndex": "*number*",
"shardId": "*string*",
"uuid": "*string*"
}
],
"createdEventsCount": "*number*",
"createdTagsCount": "*number*",
"errorCount": "*number*",
"errors": [
{
"error": "*string*",
"eventIndex": "*number*"
}
],
"queuedIndicatorsCount": "*number*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Creates bulk DOS event with relationships and indicators
**POST** `/accounts/{account_id}/cloudforce-one/events/create/bulk/relationships`
This method is deprecated. Please use `event_create_bulk` instead
### Responses
#### 200 Returns the number of created bulk events with relationships.
> Data is at `body["result"]`
```json
{
"createdEventsCount": "*number*",
"createdIndicatorsCount": "*number*",
"createdRelationshipsCount": "*number*",
"errorCount": "*number*",
"errors": [
{
"error": "*string*",
"eventIndex": "*number*"
}
]
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Reads an event
**GET** `/accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/events/{event_id}`
Retrieves a specific event by its UUID.
### Responses
#### 200 Returns the event.
> Data is at `body["result"]`
```json
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Moves specified events from one dataset to another dataset
**POST** `/accounts/{account_id}/cloudforce-one/events/dataset/{dataset_id}/move`
### Responses
#### 200 Returns the number of moved events
> Data is at `body["result"]`
```json
"*number*"
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Removes a tag from an event
**DELETE** `/accounts/{account_id}/cloudforce-one/events/event_tag/{event_id}`
### Responses
#### 200 Returns success if operation succeeded.
> Data is at `body["result"]`
```json
{
"success": "*boolean*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Adds a tag to an event
**POST** `/accounts/{account_id}/cloudforce-one/events/event_tag/{event_id}/create`
### Responses
#### 200 Returns success if operation succeeded.
> Data is at `body["result"]`
```json
{
"success": "*boolean*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## List all saved event queries
**GET** `/accounts/{account_id}/cloudforce-one/events/queries`
Retrieve all saved event queries for the account
### Responses
#### 200 Returns a list of event queries.
> Data is at `body["result"]`
```json
[
{
"account_id": "*integer*",
"alert_enabled": "*boolean*",
"alert_rollup_enabled": "*boolean*",
"created_at": "*string*",
"id": "*integer*",
"name": "*string*",
"query_json": "*string*",
"rule_enabled": "*boolean*",
"rule_scope": "*string*",
"updated_at": "*string*",
"user_email": "*string*"
}
]
```
#### 500 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## List all event query alerts
**GET** `/accounts/{account_id}/cloudforce-one/events/queries/alerts`
Retrieve all event query alerts for the account
### Responses
#### 200 Returns a list of event query alerts.
> Data is at `body["result"]`
```json
[
{
"account_id": "*integer*",
"created_at": "*string*",
"enabled": "*boolean*",
"frequency": "*string*",
"id": "*integer*",
"last_sent_at": "*string*",
"notification_type": "*string*",
"query_id": "*integer*",
"updated_at": "*string*",
"user_email": "*string*"
}
]
```
#### 500 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Create an event query alert
**POST** `/accounts/{account_id}/cloudforce-one/events/queries/alerts/create`
Create a new alert subscription for an event query
### Responses
#### 200 Returns the created event query alert.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"created_at": "*string*",
"enabled": "*boolean*",
"frequency": "*string*",
"id": "*integer*",
"last_sent_at": "*string*",
"notification_type": "*string*",
"query_id": "*integer*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Update an event query alert
**POST** `/accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}`
Update an existing event query alert by its ID
### Responses
#### 200 Returns the updated event query alert.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"created_at": "*string*",
"enabled": "*boolean*",
"frequency": "*string*",
"id": "*integer*",
"last_sent_at": "*string*",
"notification_type": "*string*",
"query_id": "*integer*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Update an event query alert
**PATCH** `/accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}`
Update an existing event query alert by its ID
### Responses
#### 200 Returns the updated event query alert.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"created_at": "*string*",
"enabled": "*boolean*",
"frequency": "*string*",
"id": "*integer*",
"last_sent_at": "*string*",
"notification_type": "*string*",
"query_id": "*integer*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Read an event query alert
**GET** `/accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}`
Retrieve an event query alert by its ID
### Responses
#### 200 Returns the event query alert.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"created_at": "*string*",
"enabled": "*boolean*",
"frequency": "*string*",
"id": "*integer*",
"last_sent_at": "*string*",
"notification_type": "*string*",
"query_id": "*integer*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Delete an event query alert
**DELETE** `/accounts/{account_id}/cloudforce-one/events/queries/alerts/{alert_id}`
Delete an event query alert subscription by its ID
### Responses
#### 200 Event query alert deleted successfully.
> Data is at `body["result"]`
```json
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Create a saved event query
**POST** `/accounts/{account_id}/cloudforce-one/events/queries/create`
Create a new saved event query for the account
### Responses
#### 200 Returns the created event query.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"alert_enabled": "*boolean*",
"alert_rollup_enabled": "*boolean*",
"created_at": "*string*",
"id": "*integer*",
"name": "*string*",
"query_json": "*string*",
"rule_enabled": "*boolean*",
"rule_scope": "*string*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Update a saved event query
**POST** `/accounts/{account_id}/cloudforce-one/events/queries/{query_id}`
Update an existing saved event query by its ID
### Responses
#### 200 Returns the updated event query.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"alert_enabled": "*boolean*",
"alert_rollup_enabled": "*boolean*",
"created_at": "*string*",
"id": "*integer*",
"name": "*string*",
"query_json": "*string*",
"rule_enabled": "*boolean*",
"rule_scope": "*string*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Update a saved event query
**PATCH** `/accounts/{account_id}/cloudforce-one/events/queries/{query_id}`
Update an existing saved event query by its ID
### Responses
#### 200 Returns the updated event query.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"alert_enabled": "*boolean*",
"alert_rollup_enabled": "*boolean*",
"created_at": "*string*",
"id": "*integer*",
"name": "*string*",
"query_json": "*string*",
"rule_enabled": "*boolean*",
"rule_scope": "*string*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Read a saved event query
**GET** `/accounts/{account_id}/cloudforce-one/events/queries/{query_id}`
Retrieve a saved event query by its ID
### Responses
#### 200 Returns the event query.
> Data is at `body["result"]`
```json
{
"account_id": "*integer*",
"alert_enabled": "*boolean*",
"alert_rollup_enabled": "*boolean*",
"created_at": "*string*",
"id": "*integer*",
"name": "*string*",
"query_json": "*string*",
"rule_enabled": "*boolean*",
"rule_scope": "*string*",
"updated_at": "*string*",
"user_email": "*string*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Delete a saved event query
**DELETE** `/accounts/{account_id}/cloudforce-one/events/queries/{query_id}`
Delete a saved event query by its ID
### Responses
#### 200 Event query deleted successfully.
> Data is at `body["result"]`
```json
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Reads data for a raw event
**GET** `/accounts/{account_id}/cloudforce-one/events/raw/{dataset_id}/{event_id}`
### Responses
#### 200 Returns the raw event.
> Data is at `body["result"]`
```json
{
"accountId": "*number*",
"created": "*string*",
"data": {},
"id": "*string*",
"source": "*string*",
"tlp": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Removes an event reference
**DELETE** `/accounts/{account_id}/cloudforce-one/events/relate/{event_id}`
### Responses
#### 200 Returns success if operation succeeded.
> Data is at `body["result"]`
```json
{
"success": "*boolean*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Creates event references for a event
**POST** `/accounts/{account_id}/cloudforce-one/events/relate/{event_id}/create`
### Responses
#### 200 Returns success if operation succeeded.
> Data is at `body["result"]`
```json
{
"success": "*boolean*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Create a relationship between two events
**POST** `/accounts/{account_id}/cloudforce-one/events/relationships/create`
Creates a directed relationship between two events. The relationship is from parent to child with a specified type.
### Responses
#### 200 Relationship created successfully
> Data is at `body["result"]`
```json
{
"childIds": [
"*string*"
],
"errors": [
{
"childId": "*string*",
"error": "*string*",
"errorType": "*string*"
}
],
"message": "*string*",
"relationships": [
{
"childDatasetId": "*string*",
"childId": "*string*",
"parentDatasetId": "*string*",
"parentId": "*string*",
"relationshipType": "*string*"
}
],
"relationshipsCreated": "*number*",
"success": "*boolean*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Deletes one or more events
**DELETE** `/accounts/{account_id}/cloudforce-one/events/{dataset_id}/delete`
### Responses
#### 200 Returns the number of deleted events.
> Data is at `body["result"]`
```json
"*number*"
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Revert an Events Durable Object to a point in time
**POST** `/accounts/{account_id}/cloudforce-one/events/{dataset_id}/revert-do`
### Responses
#### 200 Revert scheduled for the specified Durable Object.
> Data is at `body["result"]`
```json
{
"properties": {
"datasetId": {
"type": "*string*"
},
"minutesAgo": {
"type": "*string*"
},
"revertBookmark": {
"type": "*string*"
},
"targetTimestamp": {
"type": "*string*"
},
"undoBookmark": {
"type": "*string*"
}
},
"required": [
"*string*"
],
"type": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Updates an event
**POST** `/accounts/{account_id}/cloudforce-one/events/{event_id}`
### Responses
#### 200 Returns the updated event.
> Data is at `body["result"]`
```json
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Updates an event
**PATCH** `/accounts/{account_id}/cloudforce-one/events/{event_id}`
### Responses
#### 200 Returns the updated event.
> Data is at `body["result"]`
```json
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Reads an event
**GET** `/accounts/{account_id}/cloudforce-one/events/{event_id}`
This Method is deprecated. Please use /events/dataset/:dataset_id/events/:event_id instead.
### Responses
#### 200 Returns an event.
> Data is at `body["result"]`
```json
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
```
#### 404 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Updates a raw event
**POST** `/accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}`
### Responses
#### 200 Returns the uuid of the updated raw event and its data.
> Data is at `body["result"]`
```json
{
"data": {},
"id": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Updates a raw event
**PATCH** `/accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}`
### Responses
#### 200 Returns the uuid of the updated raw event and its data.
> Data is at `body["result"]`
```json
{
"data": {},
"id": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Reads data for a raw event
**GET** `/accounts/{account_id}/cloudforce-one/events/{event_id}/raw/{raw_id}`
### Responses
#### 200 Returns the raw event.
> Data is at `body["result"]`
```json
{
"accountId": "*number*",
"created": "*string*",
"data": {},
"id": "*string*",
"source": "*string*",
"tlp": "*string*"
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## Filter and list events related to specific event
**GET** `/accounts/{account_id}/cloudforce-one/events/{event_id}/relationships`
The `event_id` must be defined (to list existing events (and their IDs), use the [`Filter and List Events`](https://developers.cloudflare.com/api/resources/cloudforce_one/subresources/threat_events/methods/list/) endpoint). Also, must provide query parameters.
### Responses
#### 200 Returns a list of events related to the specified starting event.
> Data is at `body["result"]`
```json
[
{
"attacker": "*string*",
"attackerCountry": "*string*",
"category": "*string*",
"datasetId": "*string*",
"date": "*string*",
"event": "*string*",
"hasChildren": "*boolean*",
"indicator": "*string*",
"indicatorType": "*string*",
"indicatorTypeId": "*number*",
"insight": "*string*",
"killChain": "*number*",
"mitreAttack": [
"*string*"
],
"numReferenced": "*number*",
"numReferences": "*number*",
"rawId": "*string*",
"referenced": [
"*string*"
],
"referencedIds": [
"*number*"
],
"references": [
"*string*"
],
"referencesIds": [
"*number*"
],
"releasabilityId": "*string*",
"tags": [
"*string*"
],
"targetCountry": "*string*",
"targetIndustry": "*string*",
"tlp": "*string*",
"uuid": "*string*"
}
]
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```
## GraphQL endpoint for event aggregation
**POST** `/accounts/{account_id}/cloudforce-one/v2/events/graphql`
Execute GraphQL aggregations over threat events. Supports multi-dimensional group-bys, optional date range filtering, and multi-dataset aggregation.
### Responses
#### 200 GraphQL response payload (data and errors).
> Data is at `body["result"]`
```json
{
"data": {},
"errors": [
{}
]
}
```
#### 400 Bad Request.
```json
{
"errors": [
{
"message": "*string*"
}
],
"result": {},
"success": "*boolean*"
}
```