Base Operations Threats API
The Threats API from Base Operations — 6 operation(s) for threats.
The Threats API from Base Operations — 6 operation(s) for threats.
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/base-operations-threats-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:
title: Customer API - Base Operations Threats API
description: Welcome to the Base Operations Customer API!
version: '1.0'
contact: {}
servers:
- url: https://api.baseoperationsenterprise.com/
tags:
- name: Threats
paths:
/v1/public/threats:
get:
description: This endpoint gets all threats by location and optionally neighborhood. If `type` is provided (crime, unrest), only threats of that type will be returned. Additionally query parameters will further filter the results
operationId: PublicThreatsController_getThreats_v1
parameters:
- name: locationId
required: true
in: query
schema:
type: number
- name: types
required: false
in: query
schema:
type: array
items:
type: string
enum:
- crime
- unrest
- customer
- uas_sighting
- name: fromDate
required: false
in: query
schema:
type: string
- name: toDate
required: false
in: query
schema:
type: string
- name: sources
required: false
in: query
schema:
type: array
items:
type: number
- name: categories
required: false
in: query
schema:
type: array
items:
type: number
- name: months
required: false
in: query
schema:
type: array
items:
type: number
- name: sortBy
required: false
in: query
schema:
example:
- date.asc
- categoryId.desc
type: array
items:
type: string
- name: isGTM
required: false
in: query
schema:
default: true
type: boolean
- name: hasAuxInfoOnly
required: false
in: query
schema:
type: boolean
- name: organizationId
required: false
in: query
schema:
default: null
type:
- string
- 'null'
- name: daytimes
required: false
in: query
schema:
type: array
items:
type: string
enum:
- morning
- midmorning
- afternoon
- evening
- night
- name: page
required: false
in: query
schema:
minimum: 1
default: 1
type: number
- name: take
required: false
in: query
schema:
minimum: 1
maximum: 50
default: 10
type: number
responses:
'200':
description: Successfully received model list
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/PageDto'
- properties:
data:
type: array
items:
$ref: '#/components/schemas/ThreatEntity'
security:
- ApiKey: []
summary: Get Threats
tags:
- Threats
/v1/public/threats/summary:
get:
description: This endpoint gets the number of threats per category by location and optionally neighborhood. If `type` is provided (crime, unrest), only threats of that type will be returned. Additionally query parameters will further filter the results
operationId: PublicThreatsController_getThreatSummary_v1
parameters:
- name: locationId
required: true
in: query
schema:
type: number
- name: types
required: false
in: query
schema:
type: array
items:
type: string
enum:
- crime
- unrest
- customer
- uas_sighting
- name: fromDate
required: false
in: query
schema:
type: string
- name: toDate
required: false
in: query
schema:
type: string
- name: sources
required: false
in: query
schema:
type: array
items:
type: number
- name: categories
required: false
in: query
schema:
type: array
items:
type: number
- name: months
required: false
in: query
schema:
type: array
items:
type: number
- name: sortBy
required: false
in: query
schema:
example:
- date.asc
- categoryId.desc
type: array
items:
type: string
- name: isGTM
required: false
in: query
schema:
default: true
type: boolean
- name: hasAuxInfoOnly
required: false
in: query
schema:
type: boolean
- name: organizationId
required: false
in: query
schema:
default: null
type:
- string
- 'null'
- name: daytimes
required: false
in: query
schema:
type: array
items:
type: string
enum:
- morning
- midmorning
- afternoon
- evening
- night
responses:
'200':
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ChartDto'
- properties:
chartData:
type: array
items:
$ref: '#/components/schemas/ThreatSummaryData'
text/csv:
schema:
type: string
example: 'category,count
Theft,20'
description: ''
'401':
description: Unauthorized. Your API Key may be invalid or expired.
'404':
description: Location not found | Boundary not found | Saved Location not found
'432':
description: Not enough data available
'500':
description: Internal Server Error
security:
- ApiKey: []
summary: Get Threat Summary
tags:
- Threats
/v1/public/threats/radius:
get:
description: This endpoint gets all threats within a radius of a latitude / longitude. If `type` is provided (crime, unrest), only threats of that type will be returned. Additionally query parameters will further filter the results
operationId: PublicThreatsController_getRadiusThreats_v1
parameters:
- name: fromDate
required: false
in: query
schema:
format: date-time
type: string
- name: toDate
required: false
in: query
schema:
format: date-time
type: string
- name: types
required: false
in: query
schema:
type: array
items:
type: string
enum:
- crime
- unrest
- customer
- uas_sighting
- name: sourceIds
required: false
in: query
schema:
type: array
items:
type: number
- name: categoryIds
required: false
in: query
schema:
type: array
items:
type: number
- name: months
required: false
in: query
schema:
type: array
items:
type: number
- name: daytimes
required: false
in: query
schema:
type: array
items:
type: string
enum:
- morning
- midmorning
- afternoon
- evening
- night
- name: latitude
required: true
in: query
schema:
type: number
- name: longitude
required: true
in: query
schema:
type: number
- name: radius
required: true
in: query
schema:
type: number
- name: units
required: true
in: query
description: 'NB: miles, kilometers and meters will be deprecated soon.'
schema:
type: string
enum:
- mi
- km
- m
- miles
- kilometers
- meters
- name: page
required: false
in: query
schema:
minimum: 1
default: 1
type: number
- name: take
required: false
in: query
schema:
minimum: 1
maximum: 50
default: 10
type: number
- name: isGTM
required: false
in: query
schema:
default: true
type: boolean
responses:
'200':
description: Successfully received model list
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/PageDto'
- properties:
data:
type: array
items:
$ref: '#/components/schemas/ThreatEntity'
security:
- ApiKey: []
summary: Get Threats in Radius
tags:
- Threats
/v1/public/threats/radius/summary:
get:
description: 'This endpoint calculates the number of threats per category within the `latitude`, `longitude`, and `radius` provided.
- The `fromDate` & `toDate` are optional ISO8601 query parameters that will restrict or alter the results of this analysis.
- The query parameters `type`, `categoryIds`, `months` and `daytimes` are optional but will help you further refine your analysis.'
operationId: PublicThreatsController_getRadiusThreatSummary_v1
parameters:
- name: fromDate
required: false
in: query
schema:
format: date-time
type: string
- name: toDate
required: false
in: query
schema:
format: date-time
type: string
- name: types
required: false
in: query
schema:
type: array
items:
type: string
enum:
- crime
- unrest
- customer
- uas_sighting
- name: sourceIds
required: false
in: query
schema:
type: array
items:
type: number
- name: categoryIds
required: false
in: query
schema:
type: array
items:
type: number
- name: months
required: false
in: query
schema:
type: array
items:
type: number
- name: daytimes
required: false
in: query
schema:
type: array
items:
type: string
enum:
- morning
- midmorning
- afternoon
- evening
- night
- name: latitude
required: true
in: query
schema:
type: number
- name: longitude
required: true
in: query
schema:
type: number
- name: radius
required: true
in: query
schema:
type: number
- name: units
required: true
in: query
description: 'NB: miles, kilometers and meters will be deprecated soon.'
schema:
type: string
enum:
- mi
- km
- m
- miles
- kilometers
- meters
- name: isGTM
required: false
in: query
schema:
default: true
type: boolean
responses:
'200':
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ChartDto'
- properties:
chartData:
type: array
items:
$ref: '#/components/schemas/ThreatSummaryData'
text/csv:
schema:
type: string
example: 'categoryId,count
1,20'
description: ''
'401':
description: Unauthorized. Your API Key may be invalid or expired.
'404':
description: Location not found | Boundary not found | Saved Location not found
'432':
description: Not enough data available
'500':
description: Internal Server Error
security:
- ApiKey: []
summary: Threat Summary within Radius
tags:
- Threats
/v1/public/threats/{savedLocationId}/summary:
get:
description: 'This endpoint calculates the number of threats per category within the granularity provided.
- The `fromDate` & `toDate` are required ISO8601 query parameters that will restrict or alter the results of this analysis.
- The query parameters `type`, `categoryIds`, `months` and `daytimes` are optional but will help you further refine your analysis.'
operationId: PublicThreatsController_getSavedLocationThreatSummary_v1
parameters:
- name: savedLocationId
required: true
in: path
schema:
type: number
- name: granularity
required: true
in: query
schema:
default: city
type: string
enum:
- city
- name: fromDate
required: false
in: query
schema:
format: date-time
type: string
- name: toDate
required: false
in: query
schema:
format: date-time
type: string
- name: types
required: false
in: query
schema:
type: array
items:
type: string
enum:
- crime
- unrest
- customer
- uas_sighting
- name: sourceIds
required: false
in: query
schema:
type: array
items:
type: number
- name: categoryIds
required: false
in: query
schema:
type: array
items:
type: number
- name: months
required: false
in: query
schema:
type: array
items:
type: number
- name: daytimes
required: false
in: query
schema:
type: array
items:
type: string
enum:
- morning
- midmorning
- afternoon
- evening
- night
responses:
'200':
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ChartDto'
- properties:
chartData:
type: array
items:
$ref: '#/components/schemas/ThreatSummaryData'
text/csv:
schema:
type: string
example: 'categoryId,count
1,20'
description: ''
'401':
description: Unauthorized. Your API Key may be invalid or expired.
'404':
description: 'Saved location not found
Location not found | Boundary not found | Saved Location not found'
'422':
description: Location based information is not available for this saved location | District level data is not available for this location
'432':
description: Not enough data available
'500':
description: Internal Server Error
security:
- ApiKey: []
summary: Saved Location Threat Summary at City or District Level
tags:
- Threats
/v1/public/threats/{savedLocationId}/radius/summary:
get:
description: 'This endpoint calculates the number of threats per category within a radius.
- The `fromDate` & `toDate` are required ISO8601 query parameters that will restrict or alter the results of this analysis.
- The query parameters `type`, `categoryIds`, `months` and `daytimes` are optional but will help you further refine your analysis.'
operationId: PublicThreatsController_getSaveLocationRadiusThreatSummary_v1
parameters:
- name: savedLocationId
required: true
in: path
schema:
type: number
- name: fromDate
required: false
in: query
schema:
format: date-time
type: string
- name: toDate
required: false
in: query
schema:
format: date-time
type: string
- name: types
required: false
in: query
schema:
type: array
items:
type: string
enum:
- crime
- unrest
- customer
- uas_sighting
- name: sourceIds
required: false
in: query
schema:
type: array
items:
type: number
- name: categoryIds
required: false
in: query
schema:
type: array
items:
type: number
- name: months
required: false
in: query
schema:
type: array
items:
type: number
- name: daytimes
required: false
in: query
schema:
type: array
items:
type: string
enum:
- morning
- midmorning
- afternoon
- evening
- night
- name: radius
required: true
in: query
schema:
type: number
- name: units
required: true
in: query
description: 'NB: miles, kilometers and meters will be deprecated soon.'
schema:
default: mi
type: string
enum:
- mi
- km
- m
- miles
- kilometers
- meters
responses:
'200':
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/ChartDto'
- properties:
chartData:
type: array
items:
$ref: '#/components/schemas/ThreatSummaryData'
text/csv:
schema:
type: string
example: 'categoryId,count
1,20'
description: ''
'401':
description: Unauthorized. Your API Key may be invalid or expired.
'404':
description: Location not found | Boundary not found | Saved Location not found
'432':
description: Not enough data available
'500':
description: Internal Server Error
security:
- ApiKey: []
summary: Saved Location Threat Summary within Radius
tags:
- Threats
components:
schemas:
ThreatsAuxInfoMerged:
type: object
properties: {}
PageDto:
type: object
properties:
data:
type: array
items:
type: array
meta:
$ref: '#/components/schemas/PageMetaDto'
required:
- data
- meta
ThreatEntity:
type: object
properties:
id:
type: string
hoodId:
type: number
categoryId:
type: number
sourceCategoryId:
type: number
date:
format: date-time
type: string
count:
type: number
locationId:
type: number
h3IdLvl8:
type: string
h3IdLvl7:
type: string
isGTMV2:
type: boolean
organizationId:
type:
- string
- 'null'
savedLocationId:
type:
- number
- 'null'
threatType:
type: string
point:
type: string
sourceHostname:
type: string
granularity:
enum:
- country
- city
- street
type: string
score:
type: number
auxInfo:
$ref: '#/components/schemas/ThreatsAuxInfoMerged'
required:
- id
- categoryId
- sourceCategoryId
- date
- count
PageMetaDto:
type: object
properties:
page:
type: number
take:
type: number
itemCount:
type: number
pageCount:
type: number
hasPreviousPage:
type: boolean
hasNextPage:
type: boolean
required:
- page
- take
- itemCount
- pageCount
- hasPreviousPage
- hasNextPage
ChartDto:
type: object
properties:
chartData:
type: object
metadata:
type: object
required:
- chartData
ThreatSummaryData:
type: object
properties:
categoryId:
type: number
category:
type: string
count:
type: number
required:
- categoryId
- count
securitySchemes:
ApiKey:
type: apiKey
in: header
name: X-API-KEY