mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-11-08 20:33:41 +00:00
Co-authored-by: prowler-bot <179230569+prowler-bot@users.noreply.github.com>
26965 lines
812 KiB
YAML
26965 lines
812 KiB
YAML
openapi: 3.0.3
|
|
info:
|
|
title: Prowler API
|
|
version: 1.49.0
|
|
description: |-
|
|
Prowler API specification.
|
|
|
|
This file is auto-generated.
|
|
paths:
|
|
/api/v1/api-keys:
|
|
get:
|
|
operationId: api_v1_api_keys_list
|
|
description: Retrieve a list of API keys for the tenant, with filtering support.
|
|
summary: List API keys
|
|
parameters:
|
|
- in: query
|
|
name: fields[api-keys]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- prefix
|
|
- expires_at
|
|
- revoked
|
|
- inserted_at
|
|
- last_used_at
|
|
- entity
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[expires_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[expires_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[expires_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[prefix]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[prefix__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[revoked]
|
|
schema:
|
|
type: boolean
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- entity
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- prefix
|
|
- -prefix
|
|
- revoked
|
|
- -revoked
|
|
- inserted_at
|
|
- -inserted_at
|
|
- expires_at
|
|
- -expires_at
|
|
explode: false
|
|
tags:
|
|
- API Keys
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedTenantApiKeyList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_api_keys_create
|
|
description: Create a new API key for the tenant.
|
|
summary: Create a new API key
|
|
tags:
|
|
- API Keys
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantApiKeyCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantApiKeyCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantApiKeyCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantApiKeyCreateResponse'
|
|
description: ''
|
|
/api/v1/api-keys/{id}:
|
|
get:
|
|
operationId: api_v1_api_keys_retrieve
|
|
description: Fetch detailed information about a specific API key by its ID.
|
|
summary: Retrieve API key details
|
|
parameters:
|
|
- in: query
|
|
name: fields[api-keys]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- prefix
|
|
- expires_at
|
|
- revoked
|
|
- inserted_at
|
|
- last_used_at
|
|
- entity
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this tenant api key.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- entity
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- API Keys
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantApiKeyResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_api_keys_partial_update
|
|
description: Modify certain fields of an existing API key without affecting
|
|
other settings.
|
|
summary: Partially update an API key
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this tenant api key.
|
|
required: true
|
|
tags:
|
|
- API Keys
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedTenantApiKeyUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedTenantApiKeyUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedTenantApiKeyUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantApiKeyUpdateResponse'
|
|
description: ''
|
|
/api/v1/api-keys/{id}/revoke:
|
|
delete:
|
|
operationId: api_v1_api_keys_revoke_destroy
|
|
description: Revoke an API key by its ID. This action is irreversible and will
|
|
prevent the key from being used.
|
|
summary: Revoke an API key
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this tenant api key.
|
|
required: true
|
|
tags:
|
|
- API Keys
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OpenApiResponseResponse'
|
|
description: API key was successfully revoked
|
|
/api/v1/attack-paths-scans:
|
|
get:
|
|
operationId: api_v1_attack_paths_scans_list
|
|
description: Retrieve Attack Paths scans for the tenant with support for filtering,
|
|
ordering, and pagination.
|
|
summary: List Attack Paths scans
|
|
parameters:
|
|
- in: query
|
|
name: fields[attack-paths-scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- state
|
|
- progress
|
|
- graph_data_ready
|
|
- provider
|
|
- provider_alias
|
|
- provider_type
|
|
- provider_uid
|
|
- scan
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- duration
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[completed_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[started_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[state]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: d38ba07264e1ed34
|
|
enum:
|
|
- available
|
|
- cancelled
|
|
- completed
|
|
- executing
|
|
- failed
|
|
- scheduled
|
|
description: |-
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
- in: query
|
|
name: filter[state__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: d38ba07264e1ed34
|
|
enum:
|
|
- available
|
|
- cancelled
|
|
- completed
|
|
- executing
|
|
- failed
|
|
- scheduled
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
- scan
|
|
- task
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- -inserted_at
|
|
- started_at
|
|
- -started_at
|
|
explode: false
|
|
tags:
|
|
- Attack Paths
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedAttackPathsScanList'
|
|
description: ''
|
|
/api/v1/attack-paths-scans/{id}:
|
|
get:
|
|
operationId: api_v1_attack_paths_scans_retrieve
|
|
description: Fetch full details for a specific Attack Paths scan.
|
|
summary: Retrieve Attack Paths scan details
|
|
parameters:
|
|
- in: query
|
|
name: fields[attack-paths-scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- state
|
|
- progress
|
|
- graph_data_ready
|
|
- provider
|
|
- provider_alias
|
|
- provider_type
|
|
- provider_uid
|
|
- scan
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- duration
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this attack paths scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
- scan
|
|
- task
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Attack Paths
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsScanResponse'
|
|
description: ''
|
|
/api/v1/attack-paths-scans/{id}/queries:
|
|
get:
|
|
operationId: api_v1_attack_paths_scans_queries_retrieve
|
|
description: Retrieve the catalog of Attack Paths queries available for this
|
|
Attack Paths scan.
|
|
summary: List Attack Paths queries
|
|
parameters:
|
|
- in: query
|
|
name: fields[attack-paths-scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- state
|
|
- progress
|
|
- graph_data_ready
|
|
- provider
|
|
- provider_alias
|
|
- provider_type
|
|
- provider_uid
|
|
- scan
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- duration
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this attack paths scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
- scan
|
|
- task
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Attack Paths
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedAttackPathsQueryList'
|
|
description: ''
|
|
'404':
|
|
description: No queries found for the selected provider
|
|
/api/v1/attack-paths-scans/{id}/queries/custom:
|
|
post:
|
|
operationId: api_v1_attack_paths_scans_queries_custom_create
|
|
description: Execute a raw openCypher query against the Attack Paths graph.
|
|
Results are filtered to the scan's provider and truncated to a maximum node
|
|
count.
|
|
summary: Execute a custom openCypher query
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this attack paths scan.
|
|
required: true
|
|
tags:
|
|
- Attack Paths
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsCustomQueryRunRequestRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsCustomQueryRunRequestRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsCustomQueryRunRequestRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OpenApiResponseResponse'
|
|
text/plain:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsQueryResult'
|
|
description: ''
|
|
'403':
|
|
description: Read-only queries are enforced
|
|
'404':
|
|
description: No results found for the given query
|
|
'500':
|
|
description: Query execution failed due to a database error
|
|
/api/v1/attack-paths-scans/{id}/queries/run:
|
|
post:
|
|
operationId: api_v1_attack_paths_scans_queries_run_create
|
|
description: Execute the selected Attack Paths query against the Attack Paths
|
|
graph and return the resulting subgraph.
|
|
summary: Execute an Attack Paths query
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this attack paths scan.
|
|
required: true
|
|
tags:
|
|
- Attack Paths
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsQueryRunRequestRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsQueryRunRequestRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsQueryRunRequestRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OpenApiResponseResponse'
|
|
text/plain:
|
|
schema:
|
|
$ref: '#/components/schemas/AttackPathsQueryResult'
|
|
description: ''
|
|
'400':
|
|
description: Bad request (e.g., Unknown Attack Paths query for the selected
|
|
provider)
|
|
'404':
|
|
description: No Attack Paths found for the given query and parameters
|
|
'500':
|
|
description: Attack Paths query execution failed due to a database error
|
|
/api/v1/attack-paths-scans/{id}/schema:
|
|
get:
|
|
operationId: api_v1_attack_paths_scans_schema_retrieve
|
|
description: Return the cartography provider, version, and links to the schema
|
|
documentation for the cloud provider associated with this Attack Paths scan.
|
|
summary: Retrieve cartography schema metadata
|
|
parameters:
|
|
- in: query
|
|
name: fields[attack-paths-cartography-schemas]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- provider
|
|
- cartography_version
|
|
- schema_url
|
|
- raw_schema_url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this attack paths scan.
|
|
required: true
|
|
tags:
|
|
- Attack Paths
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OpenApiResponseResponse'
|
|
description: ''
|
|
'400':
|
|
description: Attack Paths data is not yet available (graph_data_ready is
|
|
false)
|
|
'404':
|
|
description: No cartography schema metadata found for this provider
|
|
'500':
|
|
description: Unable to retrieve cartography schema due to a database error
|
|
/api/v1/compliance-overviews:
|
|
get:
|
|
operationId: api_v1_compliance_overviews_list
|
|
description: Retrieve compliance overview data for a scan. When provider filters
|
|
are provided, the endpoint uses the latest completed scan for each matching
|
|
provider.
|
|
summary: List compliance overviews
|
|
parameters:
|
|
- in: query
|
|
name: fields[compliance-overviews]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- framework
|
|
- version
|
|
- requirements_passed
|
|
- requirements_failed
|
|
- requirements_manual
|
|
- total_requirements
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[compliance_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[compliance_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework__iexact]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Related scan ID. Required unless a provider filter is provided.
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[version]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[version__icontains]
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- compliance_id
|
|
- -compliance_id
|
|
explode: false
|
|
tags:
|
|
- Compliance Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedComplianceOverviewList'
|
|
description: Compliance overviews obtained successfully
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: The task is in progress
|
|
'500':
|
|
description: Compliance overviews generation task failed
|
|
/api/v1/compliance-overviews/attributes:
|
|
get:
|
|
operationId: api_v1_compliance_overviews_attributes_retrieve
|
|
description: Retrieve detailed attribute information for all requirements in
|
|
a specific compliance framework along with the associated check IDs for each
|
|
requirement.
|
|
summary: Get compliance requirement attributes
|
|
parameters:
|
|
- in: query
|
|
name: fields[compliance-requirements-attributes]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- compliance_name
|
|
- framework_description
|
|
- name
|
|
- framework
|
|
- version
|
|
- description
|
|
- attributes
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[compliance_id]
|
|
schema:
|
|
type: string
|
|
description: Compliance framework ID to get attributes for.
|
|
required: true
|
|
- in: query
|
|
name: filter[scan_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Scan ID used to resolve the provider for multi-provider universal
|
|
frameworks (e.g. CSA CCM), so the returned check IDs match the scan's provider.
|
|
When omitted, the first provider that declares the framework is used.
|
|
tags:
|
|
- Compliance Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedComplianceOverviewAttributesList'
|
|
description: Compliance attributes obtained successfully
|
|
/api/v1/compliance-overviews/metadata:
|
|
get:
|
|
operationId: api_v1_compliance_overviews_metadata_retrieve
|
|
description: Fetch unique metadata values from compliance overviews. This is
|
|
useful for dynamic filtering. When provider filters are provided, metadata
|
|
is computed from the latest completed scan for each matching provider.
|
|
summary: Retrieve metadata values from compliance overviews
|
|
parameters:
|
|
- in: query
|
|
name: fields[compliance-overviews-metadata]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- regions
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[compliance_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[compliance_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework__iexact]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Related scan ID. Required unless a provider filter is provided.
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[version]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[version__icontains]
|
|
schema:
|
|
type: string
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- compliance_id
|
|
- -compliance_id
|
|
explode: false
|
|
tags:
|
|
- Compliance Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OpenApiResponseResponse'
|
|
description: Compliance overviews metadata obtained successfully
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: The task is in progress
|
|
'500':
|
|
description: Compliance overviews generation task failed
|
|
/api/v1/compliance-overviews/requirements:
|
|
get:
|
|
operationId: api_v1_compliance_overviews_requirements_retrieve
|
|
description: Retrieve a detailed overview of compliance requirements, grouped
|
|
by compliance framework. This endpoint provides requirement-level details
|
|
and aggregates status across regions. When provider filters are provided,
|
|
the endpoint uses the latest completed scan for each matching provider.
|
|
summary: List compliance requirements overview
|
|
parameters:
|
|
- in: query
|
|
name: fields[compliance-requirements-details]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- framework
|
|
- version
|
|
- description
|
|
- status
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[compliance_id]
|
|
schema:
|
|
type: string
|
|
description: Compliance ID.
|
|
required: true
|
|
- in: query
|
|
name: filter[compliance_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[framework__iexact]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Related scan ID. Required unless a provider filter is provided.
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[version]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[version__icontains]
|
|
schema:
|
|
type: string
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- compliance_id
|
|
- -compliance_id
|
|
explode: false
|
|
tags:
|
|
- Compliance Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedComplianceOverviewDetailList'
|
|
description: Compliance requirement details obtained successfully
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: The task is in progress
|
|
'500':
|
|
description: Compliance overviews generation task failed
|
|
/api/v1/finding-groups:
|
|
get:
|
|
operationId: api_v1_finding_groups_list
|
|
description: "\n Retrieve aggregated findings grouped by check_id.\n\n\
|
|
\ Each group shows:\n - Aggregated status (FAIL if any non-muted\
|
|
\ failure)\n - Maximum severity across all findings\n - Resource\
|
|
\ counts (failing vs total)\n - Finding counts by status and delta\n\
|
|
\ - Affected provider types\n\n At least one date filter is\
|
|
\ required for performance reasons.\n "
|
|
summary: List finding groups
|
|
parameters:
|
|
- in: query
|
|
name: fields[finding-groups]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- check_id
|
|
- check_title
|
|
- check_description
|
|
- severity
|
|
- status
|
|
- muted
|
|
- impacted_providers
|
|
- resources_fail
|
|
- resources_total
|
|
- pass_count
|
|
- fail_count
|
|
- manual_count
|
|
- pass_muted_count
|
|
- fail_muted_count
|
|
- manual_muted_count
|
|
- muted_count
|
|
- new_count
|
|
- changed_count
|
|
- new_fail_count
|
|
- new_fail_muted_count
|
|
- new_pass_count
|
|
- new_pass_muted_count
|
|
- new_manual_count
|
|
- new_manual_muted_count
|
|
- changed_fail_count
|
|
- changed_fail_muted_count
|
|
- changed_pass_count
|
|
- changed_pass_muted_count
|
|
- changed_manual_count
|
|
- changed_manual_muted_count
|
|
- first_seen_at
|
|
- last_seen_at
|
|
- failing_since
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_title__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- check_id
|
|
- -check_id
|
|
- check_title
|
|
- -check_title
|
|
- check_description
|
|
- -check_description
|
|
- severity
|
|
- -severity
|
|
- status
|
|
- -status
|
|
- muted
|
|
- -muted
|
|
- impacted_providers
|
|
- -impacted_providers
|
|
- resources_fail
|
|
- -resources_fail
|
|
- resources_total
|
|
- -resources_total
|
|
- pass_count
|
|
- -pass_count
|
|
- fail_count
|
|
- -fail_count
|
|
- manual_count
|
|
- -manual_count
|
|
- pass_muted_count
|
|
- -pass_muted_count
|
|
- fail_muted_count
|
|
- -fail_muted_count
|
|
- manual_muted_count
|
|
- -manual_muted_count
|
|
- muted_count
|
|
- -muted_count
|
|
- new_count
|
|
- -new_count
|
|
- changed_count
|
|
- -changed_count
|
|
- new_fail_count
|
|
- -new_fail_count
|
|
- new_fail_muted_count
|
|
- -new_fail_muted_count
|
|
- new_pass_count
|
|
- -new_pass_count
|
|
- new_pass_muted_count
|
|
- -new_pass_muted_count
|
|
- new_manual_count
|
|
- -new_manual_count
|
|
- new_manual_muted_count
|
|
- -new_manual_muted_count
|
|
- changed_fail_count
|
|
- -changed_fail_count
|
|
- changed_fail_muted_count
|
|
- -changed_fail_muted_count
|
|
- changed_pass_count
|
|
- -changed_pass_count
|
|
- changed_pass_muted_count
|
|
- -changed_pass_muted_count
|
|
- changed_manual_count
|
|
- -changed_manual_count
|
|
- changed_manual_muted_count
|
|
- -changed_manual_muted_count
|
|
- first_seen_at
|
|
- -first_seen_at
|
|
- last_seen_at
|
|
- -last_seen_at
|
|
- failing_since
|
|
- -failing_since
|
|
explode: false
|
|
tags:
|
|
- Finding Groups
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedFindingGroupList'
|
|
description: ''
|
|
/api/v1/finding-groups/{id}/resources:
|
|
get:
|
|
operationId: api_v1_finding_groups_resources_retrieve
|
|
description: "\n Retrieve resources affected by a specific check (finding\
|
|
\ group).\n\n Returns individual resources with their current status,\
|
|
\ severity,\n and timing information including how long they have been\
|
|
\ failing.\n "
|
|
summary: List resources for a finding group
|
|
parameters:
|
|
- in: query
|
|
name: fields[finding-groups]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- check_id
|
|
- check_title
|
|
- check_description
|
|
- severity
|
|
- status
|
|
- muted
|
|
- impacted_providers
|
|
- resources_fail
|
|
- resources_total
|
|
- pass_count
|
|
- fail_count
|
|
- manual_count
|
|
- pass_muted_count
|
|
- fail_muted_count
|
|
- manual_muted_count
|
|
- muted_count
|
|
- new_count
|
|
- changed_count
|
|
- new_fail_count
|
|
- new_fail_muted_count
|
|
- new_pass_count
|
|
- new_pass_muted_count
|
|
- new_manual_count
|
|
- new_manual_muted_count
|
|
- changed_fail_count
|
|
- changed_fail_muted_count
|
|
- changed_pass_count
|
|
- changed_pass_muted_count
|
|
- changed_manual_count
|
|
- changed_manual_muted_count
|
|
- first_seen_at
|
|
- last_seen_at
|
|
- failing_since
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_title__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this finding group daily summary.
|
|
required: true
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- check_id
|
|
- -check_id
|
|
- check_title
|
|
- -check_title
|
|
- check_description
|
|
- -check_description
|
|
- severity
|
|
- -severity
|
|
- status
|
|
- -status
|
|
- muted
|
|
- -muted
|
|
- impacted_providers
|
|
- -impacted_providers
|
|
- resources_fail
|
|
- -resources_fail
|
|
- resources_total
|
|
- -resources_total
|
|
- pass_count
|
|
- -pass_count
|
|
- fail_count
|
|
- -fail_count
|
|
- manual_count
|
|
- -manual_count
|
|
- pass_muted_count
|
|
- -pass_muted_count
|
|
- fail_muted_count
|
|
- -fail_muted_count
|
|
- manual_muted_count
|
|
- -manual_muted_count
|
|
- muted_count
|
|
- -muted_count
|
|
- new_count
|
|
- -new_count
|
|
- changed_count
|
|
- -changed_count
|
|
- new_fail_count
|
|
- -new_fail_count
|
|
- new_fail_muted_count
|
|
- -new_fail_muted_count
|
|
- new_pass_count
|
|
- -new_pass_count
|
|
- new_pass_muted_count
|
|
- -new_pass_muted_count
|
|
- new_manual_count
|
|
- -new_manual_count
|
|
- new_manual_muted_count
|
|
- -new_manual_muted_count
|
|
- changed_fail_count
|
|
- -changed_fail_count
|
|
- changed_fail_muted_count
|
|
- -changed_fail_muted_count
|
|
- changed_pass_count
|
|
- -changed_pass_count
|
|
- changed_pass_muted_count
|
|
- -changed_pass_muted_count
|
|
- changed_manual_count
|
|
- -changed_manual_count
|
|
- changed_manual_muted_count
|
|
- -changed_manual_muted_count
|
|
- first_seen_at
|
|
- -first_seen_at
|
|
- last_seen_at
|
|
- -last_seen_at
|
|
- failing_since
|
|
- -failing_since
|
|
explode: false
|
|
tags:
|
|
- Finding Groups
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingGroupResponse'
|
|
description: ''
|
|
/api/v1/finding-groups/latest:
|
|
get:
|
|
operationId: api_v1_finding_groups_latest_retrieve
|
|
description: "\n Retrieve the latest available state for each finding\
|
|
\ group (check_id).\n\n This endpoint returns finding groups without\
|
|
\ requiring date filters,\n automatically using the latest available\
|
|
\ data per check_id.\n Provider, provider group, check, and computed\
|
|
\ filters are still supported.\n "
|
|
summary: List latest finding groups
|
|
parameters:
|
|
- in: query
|
|
name: fields[finding-groups]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- check_id
|
|
- check_title
|
|
- check_description
|
|
- severity
|
|
- status
|
|
- muted
|
|
- impacted_providers
|
|
- resources_fail
|
|
- resources_total
|
|
- pass_count
|
|
- fail_count
|
|
- manual_count
|
|
- pass_muted_count
|
|
- fail_muted_count
|
|
- manual_muted_count
|
|
- muted_count
|
|
- new_count
|
|
- changed_count
|
|
- new_fail_count
|
|
- new_fail_muted_count
|
|
- new_pass_count
|
|
- new_pass_muted_count
|
|
- new_manual_count
|
|
- new_manual_muted_count
|
|
- changed_fail_count
|
|
- changed_fail_muted_count
|
|
- changed_pass_count
|
|
- changed_pass_muted_count
|
|
- changed_manual_count
|
|
- changed_manual_muted_count
|
|
- first_seen_at
|
|
- last_seen_at
|
|
- failing_since
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_title__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- check_id
|
|
- -check_id
|
|
- check_title
|
|
- -check_title
|
|
- check_description
|
|
- -check_description
|
|
- severity
|
|
- -severity
|
|
- status
|
|
- -status
|
|
- muted
|
|
- -muted
|
|
- impacted_providers
|
|
- -impacted_providers
|
|
- resources_fail
|
|
- -resources_fail
|
|
- resources_total
|
|
- -resources_total
|
|
- pass_count
|
|
- -pass_count
|
|
- fail_count
|
|
- -fail_count
|
|
- manual_count
|
|
- -manual_count
|
|
- pass_muted_count
|
|
- -pass_muted_count
|
|
- fail_muted_count
|
|
- -fail_muted_count
|
|
- manual_muted_count
|
|
- -manual_muted_count
|
|
- muted_count
|
|
- -muted_count
|
|
- new_count
|
|
- -new_count
|
|
- changed_count
|
|
- -changed_count
|
|
- new_fail_count
|
|
- -new_fail_count
|
|
- new_fail_muted_count
|
|
- -new_fail_muted_count
|
|
- new_pass_count
|
|
- -new_pass_count
|
|
- new_pass_muted_count
|
|
- -new_pass_muted_count
|
|
- new_manual_count
|
|
- -new_manual_count
|
|
- new_manual_muted_count
|
|
- -new_manual_muted_count
|
|
- changed_fail_count
|
|
- -changed_fail_count
|
|
- changed_fail_muted_count
|
|
- -changed_fail_muted_count
|
|
- changed_pass_count
|
|
- -changed_pass_count
|
|
- changed_pass_muted_count
|
|
- -changed_pass_muted_count
|
|
- changed_manual_count
|
|
- -changed_manual_count
|
|
- changed_manual_muted_count
|
|
- -changed_manual_muted_count
|
|
- first_seen_at
|
|
- -first_seen_at
|
|
- last_seen_at
|
|
- -last_seen_at
|
|
- failing_since
|
|
- -failing_since
|
|
explode: false
|
|
tags:
|
|
- Finding Groups
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingGroupResponse'
|
|
description: ''
|
|
/api/v1/finding-groups/latest/{check_id}/resources:
|
|
get:
|
|
operationId: api_v1_finding_groups_latest_resources_retrieve
|
|
description: "\n Retrieve resources affected by a specific check (finding\
|
|
\ group) from the\n latest completed scan for each provider.\n\n \
|
|
\ Returns individual resources with their current status, severity,\n\
|
|
\ and timing information. No date filters required.\n "
|
|
summary: List resources for a finding group from latest scans
|
|
parameters:
|
|
- in: path
|
|
name: check_id
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- in: query
|
|
name: fields[finding-groups]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- check_id
|
|
- check_title
|
|
- check_description
|
|
- severity
|
|
- status
|
|
- muted
|
|
- impacted_providers
|
|
- resources_fail
|
|
- resources_total
|
|
- pass_count
|
|
- fail_count
|
|
- manual_count
|
|
- pass_muted_count
|
|
- fail_muted_count
|
|
- manual_muted_count
|
|
- muted_count
|
|
- new_count
|
|
- changed_count
|
|
- new_fail_count
|
|
- new_fail_muted_count
|
|
- new_pass_count
|
|
- new_pass_muted_count
|
|
- new_manual_count
|
|
- new_manual_muted_count
|
|
- changed_fail_count
|
|
- changed_fail_muted_count
|
|
- changed_pass_count
|
|
- changed_pass_muted_count
|
|
- changed_manual_count
|
|
- changed_manual_muted_count
|
|
- first_seen_at
|
|
- last_seen_at
|
|
- failing_since
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_title__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- check_id
|
|
- -check_id
|
|
- check_title
|
|
- -check_title
|
|
- check_description
|
|
- -check_description
|
|
- severity
|
|
- -severity
|
|
- status
|
|
- -status
|
|
- muted
|
|
- -muted
|
|
- impacted_providers
|
|
- -impacted_providers
|
|
- resources_fail
|
|
- -resources_fail
|
|
- resources_total
|
|
- -resources_total
|
|
- pass_count
|
|
- -pass_count
|
|
- fail_count
|
|
- -fail_count
|
|
- manual_count
|
|
- -manual_count
|
|
- pass_muted_count
|
|
- -pass_muted_count
|
|
- fail_muted_count
|
|
- -fail_muted_count
|
|
- manual_muted_count
|
|
- -manual_muted_count
|
|
- muted_count
|
|
- -muted_count
|
|
- new_count
|
|
- -new_count
|
|
- changed_count
|
|
- -changed_count
|
|
- new_fail_count
|
|
- -new_fail_count
|
|
- new_fail_muted_count
|
|
- -new_fail_muted_count
|
|
- new_pass_count
|
|
- -new_pass_count
|
|
- new_pass_muted_count
|
|
- -new_pass_muted_count
|
|
- new_manual_count
|
|
- -new_manual_count
|
|
- new_manual_muted_count
|
|
- -new_manual_muted_count
|
|
- changed_fail_count
|
|
- -changed_fail_count
|
|
- changed_fail_muted_count
|
|
- -changed_fail_muted_count
|
|
- changed_pass_count
|
|
- -changed_pass_count
|
|
- changed_pass_muted_count
|
|
- -changed_pass_muted_count
|
|
- changed_manual_count
|
|
- -changed_manual_count
|
|
- changed_manual_muted_count
|
|
- -changed_manual_muted_count
|
|
- first_seen_at
|
|
- -first_seen_at
|
|
- last_seen_at
|
|
- -last_seen_at
|
|
- failing_since
|
|
- -failing_since
|
|
explode: false
|
|
tags:
|
|
- Finding Groups
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingGroupResponse'
|
|
description: ''
|
|
/api/v1/findings:
|
|
get:
|
|
operationId: api_v1_findings_list
|
|
description: Retrieve a list of all findings with options for filtering by various
|
|
criteria.
|
|
summary: List all findings
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- uid
|
|
- delta
|
|
- status
|
|
- status_extended
|
|
- severity
|
|
- check_id
|
|
- check_metadata
|
|
- categories
|
|
- resource_groups
|
|
- raw_result
|
|
- inserted_at
|
|
- updated_at
|
|
- first_seen_at
|
|
- muted
|
|
- muted_reason
|
|
- url
|
|
- scan
|
|
- resources
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: fef6b0e2506af8bc
|
|
nullable: true
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[delta__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[impact__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: At least one of the variations of the `filter[inserted_at]` filter
|
|
must be provided.
|
|
required: true
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[severity__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[status__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- scan
|
|
- resources
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- status
|
|
- -status
|
|
- severity
|
|
- -severity
|
|
- check_id
|
|
- -check_id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Finding
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedFindingList'
|
|
description: ''
|
|
/api/v1/findings/{id}:
|
|
get:
|
|
operationId: api_v1_findings_retrieve
|
|
description: Fetch detailed information about a specific finding by its ID.
|
|
summary: Retrieve data from a specific finding
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- uid
|
|
- delta
|
|
- status
|
|
- status_extended
|
|
- severity
|
|
- check_id
|
|
- check_metadata
|
|
- categories
|
|
- resource_groups
|
|
- raw_result
|
|
- inserted_at
|
|
- updated_at
|
|
- first_seen_at
|
|
- muted
|
|
- muted_reason
|
|
- url
|
|
- scan
|
|
- resources
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this finding.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- scan
|
|
- resources
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Finding
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingResponse'
|
|
description: ''
|
|
/api/v1/findings/findings_services_regions:
|
|
get:
|
|
operationId: api_v1_findings_findings_services_regions_retrieve
|
|
description: Fetch services and regions affected in findings.
|
|
summary: Retrieve the services and regions that are impacted by findings
|
|
parameters:
|
|
- in: query
|
|
name: fields[finding-dynamic-filters]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- services
|
|
- regions
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: fef6b0e2506af8bc
|
|
nullable: true
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[delta__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[impact__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[severity__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[status__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
description: Maximum date range is 7 days.
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- status
|
|
- -status
|
|
- severity
|
|
- -severity
|
|
- check_id
|
|
- -check_id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Finding
|
|
security:
|
|
- JWT or API Key: []
|
|
deprecated: true
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingDynamicFilterResponse'
|
|
description: ''
|
|
/api/v1/findings/latest:
|
|
get:
|
|
operationId: api_v1_findings_latest_retrieve
|
|
description: Retrieve a list of the latest findings from the latest scans for
|
|
each provider with options for filtering by various criteria.
|
|
summary: List the latest findings
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- uid
|
|
- delta
|
|
- status
|
|
- status_extended
|
|
- severity
|
|
- check_id
|
|
- check_metadata
|
|
- categories
|
|
- resource_groups
|
|
- raw_result
|
|
- inserted_at
|
|
- updated_at
|
|
- first_seen_at
|
|
- muted
|
|
- muted_reason
|
|
- url
|
|
- scan
|
|
- resources
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: fef6b0e2506af8bc
|
|
nullable: true
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[delta__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[impact__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[severity__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[status__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- scan
|
|
- resources
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- status
|
|
- -status
|
|
- severity
|
|
- -severity
|
|
- check_id
|
|
- -check_id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Finding
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingResponse'
|
|
description: ''
|
|
/api/v1/findings/metadata:
|
|
get:
|
|
operationId: api_v1_findings_metadata_retrieve
|
|
description: Fetch unique metadata values from a set of findings. This is useful
|
|
for dynamic filtering.
|
|
summary: Retrieve metadata values from findings
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings-metadata]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- services
|
|
- regions
|
|
- resource_types
|
|
- categories
|
|
- groups
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: fef6b0e2506af8bc
|
|
nullable: true
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[delta__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[impact__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: At least one of the variations of the `filter[inserted_at]` filter
|
|
must be provided.
|
|
required: true
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: Maximum date range is 7 days.
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[severity__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[status__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- status
|
|
- -status
|
|
- severity
|
|
- -severity
|
|
- check_id
|
|
- -check_id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Finding
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingMetadataResponse'
|
|
description: ''
|
|
/api/v1/findings/metadata/latest:
|
|
get:
|
|
operationId: api_v1_findings_metadata_latest_retrieve
|
|
description: Fetch unique metadata values from a set of findings from the latest
|
|
scans for each provider. This is useful for dynamic filtering.
|
|
summary: Retrieve metadata values from the latest findings
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings-metadata]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- services
|
|
- regions
|
|
- resource_types
|
|
- categories
|
|
- groups
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[check_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[check_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[delta]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: fef6b0e2506af8bc
|
|
nullable: true
|
|
enum:
|
|
- changed
|
|
- new
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
- in: query
|
|
name: filter[delta__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[impact]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[impact__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[muted]
|
|
schema:
|
|
type: boolean
|
|
description: If this filter is not provided, muted and non-muted findings
|
|
will be returned.
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[severity]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
enum:
|
|
- critical
|
|
- high
|
|
- informational
|
|
- low
|
|
- medium
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
- in: query
|
|
name: filter[severity__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
enum:
|
|
- FAIL
|
|
- MANUAL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
- in: query
|
|
name: filter[status__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- status
|
|
- -status
|
|
- severity
|
|
- -severity
|
|
- check_id
|
|
- -check_id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Finding
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingMetadataResponse'
|
|
description: ''
|
|
/api/v1/integrations:
|
|
get:
|
|
operationId: api_v1_integrations_list
|
|
description: |-
|
|
Retrieve a list of all configured integrations with options for filtering by various criteria.
|
|
|
|
Integrations attached to one or more providers are only returned when the role can access at least one of those providers, and each integration lists only the providers visible to the role. Integrations not attached to any provider, such as Jira, are tenant-wide and are returned for every role.
|
|
summary: List all integrations
|
|
parameters:
|
|
- in: query
|
|
name: fields[integrations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- enabled
|
|
- connected
|
|
- connection_last_checked_at
|
|
- integration_type
|
|
- configuration
|
|
- providers
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[integration_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
description: |-
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
- in: query
|
|
name: filter[integration_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- enabled
|
|
- -enabled
|
|
- connected
|
|
- -connected
|
|
- connection_last_checked_at
|
|
- -connection_last_checked_at
|
|
- integration_type
|
|
- -integration_type
|
|
- configuration
|
|
- -configuration
|
|
- providers
|
|
- -providers
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Integration
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedIntegrationList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_integrations_create
|
|
description: Register a new integration with the system, providing necessary
|
|
configuration details. Only providers visible to the role can be attached
|
|
to the integration.
|
|
summary: Create a new integration
|
|
tags:
|
|
- Integration
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationCreateResponse'
|
|
description: ''
|
|
/api/v1/integrations/{integration_pk}/jira/dispatches:
|
|
post:
|
|
operationId: api_v1_integrations_jira_dispatches_create
|
|
description: |-
|
|
Send a set of filtered findings to the given integration. At least one finding filter must be provided. Jira integrations are tenant-wide and do not require unlimited visibility, while the findings sent are limited to the providers the role can access.
|
|
|
|
## Known Limitations
|
|
|
|
### Issue Types with Required Custom Fields
|
|
|
|
Certain Jira issue types (such as Epic) may require mandatory custom fields that Prowler does not currently populate when creating work items. If a selected issue type enforces required fields beyond the standard set (e.g., "Team", "Epic Name"), the work item creation will fail.
|
|
|
|
To avoid this, select an issue type that does not require additional custom fields - **Task**, **Bug**, or **Story** typically work without restrictions. If unsure which issue types are available for a project, Prowler automatically fetches and displays them in the "Issue Type" selector when sending a finding.
|
|
summary: Send findings to a Jira integration
|
|
parameters:
|
|
- in: query
|
|
name: filter[finding_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[finding_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: path
|
|
name: integration_pk
|
|
schema:
|
|
type: string
|
|
required: true
|
|
tags:
|
|
- Integration
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationJiraDispatchRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationJiraDispatchRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationJiraDispatchRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/integrations/{integration_pk}/jira/issue_types:
|
|
get:
|
|
operationId: api_v1_integrations_jira_issue_types_retrieve
|
|
description: Fetch the available issue types from Jira for a given project key
|
|
and update the integration configuration. Jira integrations are tenant-wide
|
|
and do not require unlimited visibility.
|
|
summary: Get available issue types for a Jira project
|
|
parameters:
|
|
- in: query
|
|
name: fields[jira-issue-types]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- project_key
|
|
- issue_types
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: integration_pk
|
|
schema:
|
|
type: string
|
|
required: true
|
|
- in: query
|
|
name: project_key
|
|
schema:
|
|
type: string
|
|
description: The Jira project key to fetch issue types for.
|
|
required: true
|
|
tags:
|
|
- Integration
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationJiraIssueTypesResponse'
|
|
description: ''
|
|
/api/v1/integrations/{id}:
|
|
get:
|
|
operationId: api_v1_integrations_retrieve
|
|
description: Fetch detailed information about a specific integration by its
|
|
ID. Integrations outside the provider visibility of the role are reported
|
|
the same way as one that does not exist.
|
|
summary: Retrieve integration details
|
|
parameters:
|
|
- in: query
|
|
name: fields[integrations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- enabled
|
|
- connected
|
|
- connection_last_checked_at
|
|
- integration_type
|
|
- configuration
|
|
- providers
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this integration.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Integration
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_integrations_partial_update
|
|
description: Modify certain fields of an existing integration without affecting
|
|
other settings. Integrations attached to providers outside the visibility
|
|
of the role cannot be modified by it.
|
|
summary: Partially update an integration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this integration.
|
|
required: true
|
|
tags:
|
|
- Integration
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedIntegrationUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedIntegrationUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedIntegrationUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/IntegrationUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_integrations_destroy
|
|
description: Remove an integration from the system by its ID. Integrations attached
|
|
to providers outside the visibility of the role cannot be deleted by it.
|
|
summary: Delete an integration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this integration.
|
|
required: true
|
|
tags:
|
|
- Integration
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/integrations/{id}/connection:
|
|
post:
|
|
operationId: api_v1_integrations_connection_create
|
|
description: Try to verify integration connection. Integrations outside the
|
|
provider visibility of the role are reported the same way as one that does
|
|
not exist.
|
|
summary: Check integration connection
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this integration.
|
|
required: true
|
|
tags:
|
|
- Integration
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/invitations/accept:
|
|
post:
|
|
operationId: api_v1_invitations_accept_create
|
|
description: Accept an invitation to an existing tenant. This invitation cannot
|
|
be expired and the emails must match.
|
|
summary: Accept an invitation
|
|
tags:
|
|
- Invitation
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationAcceptRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationAcceptRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationAcceptRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OpenApiResponseResponse'
|
|
description: ''
|
|
/api/v1/lighthouse-configurations:
|
|
get:
|
|
operationId: api_v1_lighthouse_configurations_list
|
|
description: Retrieve a list of all Lighthouse AI configurations.
|
|
summary: List all Lighthouse AI configurations
|
|
parameters:
|
|
- in: query
|
|
name: fields[lighthouse-configurations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- api_key
|
|
- model
|
|
- temperature
|
|
- max_tokens
|
|
- business_context
|
|
- is_active
|
|
- inserted_at
|
|
- updated_at
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- is_active
|
|
- -is_active
|
|
explode: false
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
deprecated: true
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedLighthouseConfigList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_lighthouse_configurations_create
|
|
description: Create a new Lighthouse AI configuration with the specified details.
|
|
summary: Create a new Lighthouse AI configuration
|
|
tags:
|
|
- Lighthouse AI
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseConfigCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseConfigCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseConfigCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
deprecated: true
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseConfigCreateResponse'
|
|
description: ''
|
|
/api/v1/lighthouse-configurations/{id}:
|
|
patch:
|
|
operationId: api_v1_lighthouse_configurations_partial_update
|
|
description: Update certain fields of an existing Lighthouse AI configuration.
|
|
summary: Partially update a Lighthouse AI configuration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseConfigUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseConfigUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseConfigUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
deprecated: true
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseConfigUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_lighthouse_configurations_destroy
|
|
description: Remove a Lighthouse AI configuration by its ID.
|
|
summary: Delete a Lighthouse AI configuration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
deprecated: true
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/lighthouse-configurations/{id}/connection:
|
|
post:
|
|
operationId: api_v1_lighthouse_configurations_connection_create
|
|
description: Verify the connection to the OpenAI API for a specific Lighthouse
|
|
AI configuration.
|
|
summary: Check the connection to the OpenAI API
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
deprecated: true
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/lighthouse/configuration:
|
|
get:
|
|
operationId: api_v1_lighthouse_configuration_list
|
|
description: Retrieve current tenant-level Lighthouse AI settings. Returns a
|
|
single configuration object.
|
|
summary: Get Lighthouse AI Tenant config
|
|
parameters:
|
|
- in: query
|
|
name: fields[lighthouse-configurations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- business_context
|
|
- default_provider
|
|
- default_models
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- business_context
|
|
- -business_context
|
|
- default_provider
|
|
- -default_provider
|
|
- default_models
|
|
- -default_models
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedLighthouseTenantConfigList'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_lighthouse_configuration_partial_update
|
|
description: Update tenant-level settings. Validates that the default provider
|
|
is configured and active and that default model IDs exist for the chosen providers.
|
|
Auto-creates configuration if it doesn't exist.
|
|
summary: Update Lighthouse AI Tenant config
|
|
tags:
|
|
- Lighthouse AI
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseTenantConfigUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseTenantConfigUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseTenantConfigUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseTenantConfigUpdateResponse'
|
|
description: ''
|
|
/api/v1/lighthouse/models:
|
|
get:
|
|
operationId: api_v1_lighthouse_models_list
|
|
description: List available LLM models per configured provider for the current
|
|
tenant.
|
|
summary: List all LLM models
|
|
parameters:
|
|
- in: query
|
|
name: fields[lighthouse-models]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- provider_configuration
|
|
- model_id
|
|
- model_name
|
|
- default_parameters
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[model_id]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[model_id__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[model_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
enum:
|
|
- bedrock
|
|
- openai
|
|
- openai_compatible
|
|
description: |-
|
|
LLM provider name
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
enum:
|
|
- bedrock
|
|
- openai
|
|
- openai_compatible
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- provider_configuration
|
|
- -provider_configuration
|
|
- model_id
|
|
- -model_id
|
|
- model_name
|
|
- -model_name
|
|
- default_parameters
|
|
- -default_parameters
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedLighthouseProviderModelsList'
|
|
description: ''
|
|
/api/v1/lighthouse/models/{id}:
|
|
get:
|
|
operationId: api_v1_lighthouse_models_retrieve
|
|
description: Get details for a specific LLM model.
|
|
summary: Retrieve LLM model details
|
|
parameters:
|
|
- in: query
|
|
name: fields[lighthouse-models]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- provider_configuration
|
|
- model_id
|
|
- model_name
|
|
- default_parameters
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this lighthouse provider models.
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderModelsResponse'
|
|
description: ''
|
|
/api/v1/lighthouse/providers:
|
|
get:
|
|
operationId: api_v1_lighthouse_providers_list
|
|
description: Retrieve all LLM provider configurations for the current tenant
|
|
summary: List all LLM provider configurations
|
|
parameters:
|
|
- in: query
|
|
name: fields[lighthouse-providers]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- provider_type
|
|
- base_url
|
|
- is_active
|
|
- credentials
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[is_active]
|
|
schema:
|
|
type: boolean
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
enum:
|
|
- bedrock
|
|
- openai
|
|
- openai_compatible
|
|
description: |-
|
|
LLM provider name
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
enum:
|
|
- bedrock
|
|
- openai
|
|
- openai_compatible
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- provider_type
|
|
- -provider_type
|
|
- base_url
|
|
- -base_url
|
|
- is_active
|
|
- -is_active
|
|
- credentials
|
|
- -credentials
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedLighthouseProviderConfigList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_lighthouse_providers_create
|
|
description: Create a per-tenant configuration for an LLM provider. Only one
|
|
configuration per provider type is allowed per tenant.
|
|
summary: Create LLM provider configuration
|
|
tags:
|
|
- Lighthouse AI
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigCreateResponse'
|
|
description: ''
|
|
/api/v1/lighthouse/providers/{id}:
|
|
get:
|
|
operationId: api_v1_lighthouse_providers_retrieve
|
|
description: Get details for a specific provider configuration in the current
|
|
tenant.
|
|
summary: Retrieve LLM provider configuration
|
|
parameters:
|
|
- in: query
|
|
name: fields[lighthouse-providers]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- provider_type
|
|
- base_url
|
|
- is_active
|
|
- credentials
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this lighthouse provider configuration.
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_lighthouse_providers_partial_update
|
|
description: Partially update a provider configuration (e.g., base_url, is_active).
|
|
summary: Update LLM provider configuration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this lighthouse provider configuration.
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseProviderConfigUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseProviderConfigUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedLighthouseProviderConfigUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_lighthouse_providers_destroy
|
|
description: Delete a provider configuration. Any tenant defaults that reference
|
|
this provider are cleared during deletion.
|
|
summary: Delete LLM provider configuration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this lighthouse provider configuration.
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/lighthouse/providers/{id}/connection:
|
|
post:
|
|
operationId: api_v1_lighthouse_providers_connection_create
|
|
description: Validate provider credentials asynchronously and toggle is_active.
|
|
summary: Check LLM provider connection
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this lighthouse provider configuration.
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/lighthouse/providers/{id}/refresh-models:
|
|
post:
|
|
operationId: api_v1_lighthouse_providers_refresh_models_create
|
|
description: Fetch available models for this provider configuration and upsert
|
|
into catalog. Supports OpenAI, OpenAI-compatible, and AWS Bedrock providers.
|
|
summary: Refresh LLM models catalog
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this lighthouse provider configuration.
|
|
required: true
|
|
tags:
|
|
- Lighthouse AI
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/mute-rules:
|
|
get:
|
|
operationId: api_v1_mute_rules_list
|
|
description: Retrieve a list of all mute rules with filtering options.
|
|
summary: List all mute rules
|
|
parameters:
|
|
- in: query
|
|
name: fields[mute-rules]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- name
|
|
- reason
|
|
- enabled
|
|
- created_by
|
|
- finding_uids
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[created_by]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[enabled]
|
|
schema:
|
|
type: boolean
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[reason__icontains]
|
|
schema:
|
|
type: string
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- created_by
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- enabled
|
|
- -enabled
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Mute Rules
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedMuteRuleList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_mute_rules_create
|
|
description: Create a new mute rule by providing finding IDs, name, and reason.
|
|
The rule will immediately mute the selected findings and launch a background
|
|
task to mute all historical findings with matching UIDs.
|
|
summary: Create a new mute rule
|
|
tags:
|
|
- Mute Rules
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/MuteRuleCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/MuteRuleCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/MuteRuleCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/MuteRuleCreateResponse'
|
|
description: ''
|
|
/api/v1/mute-rules/{id}:
|
|
get:
|
|
operationId: api_v1_mute_rules_retrieve
|
|
description: Fetch detailed information about a specific mute rule by ID.
|
|
summary: Retrieve a mute rule
|
|
parameters:
|
|
- in: query
|
|
name: fields[mute-rules]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- name
|
|
- reason
|
|
- enabled
|
|
- created_by
|
|
- finding_uids
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this mute rule.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- created_by
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Mute Rules
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/MuteRuleResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_mute_rules_partial_update
|
|
description: Update certain fields of an existing mute rule (e.g., name, reason,
|
|
enabled).
|
|
summary: Partially update a mute rule
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this mute rule.
|
|
required: true
|
|
tags:
|
|
- Mute Rules
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedMuteRuleUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedMuteRuleUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedMuteRuleUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SerializerMetaclassResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_mute_rules_destroy
|
|
description: 'Remove a mute rule from the system. Note: Previously muted findings
|
|
remain muted.'
|
|
summary: Delete a mute rule
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this mute rule.
|
|
required: true
|
|
tags:
|
|
- Mute Rules
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/overviews/attack-surfaces:
|
|
get:
|
|
operationId: api_v1_overviews_attack_surfaces_list
|
|
description: Retrieve aggregated attack surface metrics from latest completed
|
|
scans per provider.
|
|
summary: Get attack surface overview
|
|
parameters:
|
|
- in: query
|
|
name: fields[attack-surface-overviews]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- total_findings
|
|
- failed_findings
|
|
- muted_failed_findings
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- total_findings
|
|
- -total_findings
|
|
- failed_findings
|
|
- -failed_findings
|
|
- muted_failed_findings
|
|
- -muted_failed_findings
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedAttackSurfaceOverviewList'
|
|
description: ''
|
|
/api/v1/overviews/categories:
|
|
get:
|
|
operationId: api_v1_overviews_categories_list
|
|
description: 'Retrieve aggregated category metrics from latest completed scans
|
|
per provider. Returns one row per category with total, failed, and new failed
|
|
findings counts, plus a severity breakdown showing failed findings per severity
|
|
level. '
|
|
summary: Get category overview
|
|
parameters:
|
|
- in: query
|
|
name: fields[category-overviews]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- total_findings
|
|
- failed_findings
|
|
- new_failed_findings
|
|
- severity
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[category]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[category__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- total_findings
|
|
- -total_findings
|
|
- failed_findings
|
|
- -failed_findings
|
|
- new_failed_findings
|
|
- -new_failed_findings
|
|
- severity
|
|
- -severity
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedCategoryOverviewList'
|
|
description: ''
|
|
/api/v1/overviews/compliance-watchlist:
|
|
get:
|
|
operationId: api_v1_overviews_compliance_watchlist_list
|
|
description: 'Retrieve compliance metrics with FAIL-dominant aggregation. Without
|
|
filters: uses pre-aggregated TenantComplianceSummary. With provider filters:
|
|
queries ProviderComplianceScore with FAIL-dominant logic where any FAIL in
|
|
a requirement marks it as failed.'
|
|
summary: Get compliance watchlist overview
|
|
parameters:
|
|
- in: query
|
|
name: fields[compliance-watchlist-overviews]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- compliance_id
|
|
- requirements_passed
|
|
- requirements_failed
|
|
- requirements_manual
|
|
- total_requirements
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- compliance_id
|
|
- -compliance_id
|
|
- requirements_passed
|
|
- -requirements_passed
|
|
- requirements_failed
|
|
- -requirements_failed
|
|
- requirements_manual
|
|
- -requirements_manual
|
|
- total_requirements
|
|
- -total_requirements
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedComplianceWatchlistOverviewList'
|
|
description: ''
|
|
/api/v1/overviews/findings:
|
|
get:
|
|
operationId: api_v1_overviews_findings_retrieve
|
|
description: Fetch aggregated findings data across all providers, grouped by
|
|
various metrics such as passed, failed, muted, and total findings. This endpoint
|
|
calculates summary statistics based on the latest scans for each provider
|
|
and applies any provided filters, such as region, provider type, and scan
|
|
date.
|
|
summary: Get aggregated findings data
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings-overview]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- new
|
|
- changed
|
|
- unchanged
|
|
- fail_new
|
|
- fail_changed
|
|
- pass_new
|
|
- pass_changed
|
|
- muted_new
|
|
- muted_changed
|
|
- total
|
|
- fail
|
|
- muted
|
|
- pass
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- new
|
|
- -new
|
|
- changed
|
|
- -changed
|
|
- unchanged
|
|
- -unchanged
|
|
- fail_new
|
|
- -fail_new
|
|
- fail_changed
|
|
- -fail_changed
|
|
- pass_new
|
|
- -pass_new
|
|
- pass_changed
|
|
- -pass_changed
|
|
- muted_new
|
|
- -muted_new
|
|
- muted_changed
|
|
- -muted_changed
|
|
- total
|
|
- -total
|
|
- fail
|
|
- -fail
|
|
- muted
|
|
- -muted
|
|
- pass
|
|
- -pass
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OverviewFindingResponse'
|
|
description: ''
|
|
/api/v1/overviews/findings_severity:
|
|
get:
|
|
operationId: api_v1_overviews_findings_severity_retrieve
|
|
description: Retrieve an aggregated summary of findings grouped by severity
|
|
levels, such as low, medium, high, and critical. The response includes the
|
|
total count of findings for each severity, considering only the latest scans
|
|
for each provider. Additional filters can be applied to narrow down results
|
|
by region, provider type, or other attributes.
|
|
summary: Get findings data by severity
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings-severity-overview]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- critical
|
|
- high
|
|
- medium
|
|
- low
|
|
- informational
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[status]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- FAIL
|
|
- PASS
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
- in: query
|
|
name: filter[status__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- critical
|
|
- -critical
|
|
- high
|
|
- -high
|
|
- medium
|
|
- -medium
|
|
- low
|
|
- -low
|
|
- informational
|
|
- -informational
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OverviewSeverityResponse'
|
|
description: ''
|
|
/api/v1/overviews/findings_severity/timeseries:
|
|
get:
|
|
operationId: api_v1_overviews_findings_severity_timeseries_retrieve
|
|
description: Retrieve daily aggregated findings data grouped by severity levels
|
|
over a date range. Returns one data point per day with counts of failed findings
|
|
by severity (critical, high, medium, low, informational) and muted findings.
|
|
Days without scans are filled forward with the most recent known values. Use
|
|
date_from (required) and date_to filters to specify the range.
|
|
summary: Get findings severity data over time
|
|
parameters:
|
|
- in: query
|
|
name: fields[findings-severity-over-time]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- critical
|
|
- high
|
|
- medium
|
|
- low
|
|
- informational
|
|
- muted
|
|
- scan_ids
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[date_from]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_to]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- critical
|
|
- -critical
|
|
- high
|
|
- -high
|
|
- medium
|
|
- -medium
|
|
- low
|
|
- -low
|
|
- informational
|
|
- -informational
|
|
- muted
|
|
- -muted
|
|
- scan_ids
|
|
- -scan_ids
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/FindingsSeverityOverTimeResponse'
|
|
description: ''
|
|
/api/v1/overviews/providers:
|
|
get:
|
|
operationId: api_v1_overviews_providers_retrieve
|
|
description: Retrieve an aggregated overview of findings and resources grouped
|
|
by providers. The response includes the count of passed, failed, and manual
|
|
findings, along with the total number of resources managed by each provider.
|
|
Only the latest findings for each provider are considered in the aggregation
|
|
to ensure accurate and up-to-date insights.
|
|
summary: Get aggregated provider data
|
|
parameters:
|
|
- in: query
|
|
name: fields[providers-overview]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- findings
|
|
- resources
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OverviewProviderResponse'
|
|
description: ''
|
|
/api/v1/overviews/providers/count:
|
|
get:
|
|
operationId: api_v1_overviews_providers_count_retrieve
|
|
description: Retrieve the number of providers grouped by provider type. This
|
|
endpoint counts every provider in the tenant, including those without completed
|
|
scans.
|
|
summary: Get provider counts grouped by type
|
|
parameters:
|
|
- in: query
|
|
name: fields[providers-count-overview]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- count
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OverviewProviderCountResponse'
|
|
description: ''
|
|
/api/v1/overviews/regions:
|
|
get:
|
|
operationId: api_v1_overviews_regions_retrieve
|
|
description: Retrieve an aggregated summary of findings grouped by region. The
|
|
response includes the total, passed, failed, and muted findings for each region
|
|
based on the latest completed scans per provider. Standard overview filters
|
|
(inserted_at, provider filters, region filters, etc.) are supported.
|
|
summary: Get findings data by region
|
|
parameters:
|
|
- in: query
|
|
name: fields[regions-overview]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- provider_type
|
|
- region
|
|
- total
|
|
- fail
|
|
- muted
|
|
- pass
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- provider_type
|
|
- -provider_type
|
|
- region
|
|
- -region
|
|
- total
|
|
- -total
|
|
- fail
|
|
- -fail
|
|
- muted
|
|
- -muted
|
|
- pass
|
|
- -pass
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OverviewRegionResponse'
|
|
description: ''
|
|
/api/v1/overviews/resource-groups:
|
|
get:
|
|
operationId: api_v1_overviews_resource_groups_list
|
|
description: Retrieve aggregated resource group metrics from latest completed
|
|
scans per provider. Returns one row per resource group with total, failed,
|
|
and new failed findings counts, plus a severity breakdown showing failed findings
|
|
per severity level, and a count of distinct resources evaluated per group.
|
|
summary: Get resource group overview
|
|
parameters:
|
|
- in: query
|
|
name: fields[resource-group-overviews]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- total_findings
|
|
- failed_findings
|
|
- new_failed_findings
|
|
- resources_count
|
|
- severity
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[resource_group]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[resource_group__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- total_findings
|
|
- -total_findings
|
|
- failed_findings
|
|
- -failed_findings
|
|
- new_failed_findings
|
|
- -new_failed_findings
|
|
- resources_count
|
|
- -resources_count
|
|
- severity
|
|
- -severity
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedResourceGroupOverviewList'
|
|
description: ''
|
|
/api/v1/overviews/services:
|
|
get:
|
|
operationId: api_v1_overviews_services_retrieve
|
|
description: Retrieve an aggregated summary of findings grouped by service.
|
|
The response includes the total count of findings for each service, as long
|
|
as there are at least one finding for that service.
|
|
summary: Get findings data by service
|
|
parameters:
|
|
- in: query
|
|
name: fields[services-overview]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- total
|
|
- fail
|
|
- muted
|
|
- pass
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- total
|
|
- -total
|
|
- fail
|
|
- -fail
|
|
- muted
|
|
- -muted
|
|
- pass
|
|
- -pass
|
|
explode: false
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/OverviewServiceResponse'
|
|
description: ''
|
|
/api/v1/overviews/threatscore:
|
|
get:
|
|
operationId: api_v1_overviews_threatscore_retrieve
|
|
description: Retrieve ThreatScore metrics. By default, returns the latest snapshot
|
|
for each provider. Use snapshot_id to retrieve a specific historical snapshot.
|
|
summary: Get ThreatScore snapshots
|
|
parameters:
|
|
- in: query
|
|
name: fields[threatscore-snapshots]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- inserted_at
|
|
- scan
|
|
- provider
|
|
- compliance_id
|
|
- overall_score
|
|
- score_delta
|
|
- section_scores
|
|
- critical_requirements
|
|
- total_requirements
|
|
- passed_requirements
|
|
- failed_requirements
|
|
- manual_requirements
|
|
- total_findings
|
|
- passed_findings
|
|
- failed_findings
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Filter by provider group ID
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: string
|
|
description: Filter by multiple provider group IDs (comma-separated UUIDs)
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Filter by specific provider ID
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: string
|
|
description: Filter by multiple provider IDs (comma-separated UUIDs)
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
description: Filter by provider type (aws, azure, gcp, etc.)
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: string
|
|
description: Filter by multiple provider types (comma-separated)
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- scan
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- in: query
|
|
name: snapshot_id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Retrieve a specific snapshot by ID. If not provided, returns
|
|
latest snapshots.
|
|
tags:
|
|
- Overview
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ThreatScoreSnapshotResponse'
|
|
description: ''
|
|
/api/v1/processors:
|
|
get:
|
|
operationId: api_v1_processors_list
|
|
description: Retrieve a list of all configured processors with options for filtering
|
|
by various criteria.
|
|
summary: List all processors
|
|
parameters:
|
|
- in: query
|
|
name: fields[processors]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- processor_type
|
|
- configuration
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[processor_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 53cda4a99fe3d655
|
|
enum:
|
|
- mutelist
|
|
description: '* `mutelist` - Mutelist'
|
|
- in: query
|
|
name: filter[processor_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 53cda4a99fe3d655
|
|
enum:
|
|
- mutelist
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `mutelist` - Mutelist
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- processor_type
|
|
- -processor_type
|
|
- configuration
|
|
- -configuration
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Processor
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedProcessorList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_processors_create
|
|
description: Register a new processor with the system, providing necessary configuration
|
|
details. There can only be one processor of each type per tenant.
|
|
summary: Create a new processor
|
|
tags:
|
|
- Processor
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProcessorCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ProcessorCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ProcessorCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProcessorCreateResponse'
|
|
description: ''
|
|
/api/v1/processors/{id}:
|
|
get:
|
|
operationId: api_v1_processors_retrieve
|
|
description: Fetch detailed information about a specific processor by its ID.
|
|
summary: Retrieve processor details
|
|
parameters:
|
|
- in: query
|
|
name: fields[processors]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- processor_type
|
|
- configuration
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this processor.
|
|
required: true
|
|
tags:
|
|
- Processor
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProcessorResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_processors_partial_update
|
|
description: Modify certain fields of an existing processor without affecting
|
|
other settings.
|
|
summary: Partially update a processor
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this processor.
|
|
required: true
|
|
tags:
|
|
- Processor
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProcessorUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProcessorUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProcessorUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProcessorUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_processors_destroy
|
|
description: Remove a processor from the system by its ID.
|
|
summary: Delete a processor
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this processor.
|
|
required: true
|
|
tags:
|
|
- Processor
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/provider-groups:
|
|
get:
|
|
operationId: api_v1_provider_groups_list
|
|
description: Retrieve a list of all provider groups with options for filtering
|
|
by various criteria.
|
|
summary: List all provider groups
|
|
parameters:
|
|
- in: query
|
|
name: fields[provider-groups]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- inserted_at
|
|
- updated_at
|
|
- providers
|
|
- roles
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- name
|
|
- -name
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- providers
|
|
- -providers
|
|
- roles
|
|
- -roles
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Provider Group
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedProviderGroupList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_provider_groups_create
|
|
description: Add a new provider group to the system by providing the required
|
|
provider group details.
|
|
summary: Create a new provider group
|
|
tags:
|
|
- Provider Group
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupCreateResponse'
|
|
description: ''
|
|
/api/v1/provider-groups/{id}:
|
|
get:
|
|
operationId: api_v1_provider_groups_retrieve
|
|
description: Fetch detailed information about a specific provider group by their
|
|
ID.
|
|
summary: Retrieve data from a provider group
|
|
parameters:
|
|
- in: query
|
|
name: fields[provider-groups]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- inserted_at
|
|
- updated_at
|
|
- providers
|
|
- roles
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider group.
|
|
required: true
|
|
tags:
|
|
- Provider Group
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_provider_groups_partial_update
|
|
description: Update certain fields of an existing provider group's information
|
|
without affecting other fields.
|
|
summary: Partially update a provider group
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider group.
|
|
required: true
|
|
tags:
|
|
- Provider Group
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderGroupUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderGroupUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderGroupUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SerializerMetaclassResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_provider_groups_destroy
|
|
description: Remove a provider group from the system by their ID.
|
|
summary: Delete a provider group
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider group.
|
|
required: true
|
|
tags:
|
|
- Provider Group
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/provider-groups/{id}/relationships/providers:
|
|
post:
|
|
operationId: api_v1_provider_groups_relationships_providers_create
|
|
description: Add a new provider_group-providers relationship to the system by
|
|
providing the required provider_group-providers details.
|
|
summary: Create a new provider_group-providers relationship
|
|
tags:
|
|
- Provider Group
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupMembershipRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupMembershipRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderGroupMembershipRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship created successfully
|
|
'400':
|
|
description: Bad request (e.g., relationship already exists)
|
|
patch:
|
|
operationId: api_v1_provider_groups_relationships_providers_partial_update
|
|
description: Update the provider_group-providers relationship information without
|
|
affecting other fields.
|
|
summary: Partially update a provider_group-providers relationship
|
|
tags:
|
|
- Provider Group
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderGroupMembershipRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderGroupMembershipRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderGroupMembershipRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship updated successfully
|
|
delete:
|
|
operationId: api_v1_provider_groups_relationships_providers_destroy
|
|
description: Remove the provider_group-providers relationship from the system
|
|
by their ID.
|
|
summary: Delete a provider_group-providers relationship
|
|
tags:
|
|
- Provider Group
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship deleted successfully
|
|
/api/v1/providers:
|
|
get:
|
|
operationId: api_v1_providers_list
|
|
description: Retrieve a list of all providers with options for filtering by
|
|
various criteria.
|
|
summary: List all providers
|
|
parameters:
|
|
- in: query
|
|
name: fields[providers]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- provider
|
|
- uid
|
|
- alias
|
|
- connection
|
|
- secret
|
|
- provider_groups
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[connected]
|
|
schema:
|
|
type: boolean
|
|
description: |-
|
|
Filter by connection status. Set to True to return only
|
|
connected providers, or False to return only providers with failed
|
|
connections. If not specified, both connected and failed providers are
|
|
included. Providers with no connection attempt (status is null) are
|
|
excluded from this filter.
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: |-
|
|
Filter by date when the provider was added
|
|
(format: YYYY-MM-DD)
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: |-
|
|
Filter by date when the provider was updated
|
|
(format: YYYY-MM-DD)
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider_groups
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
- -provider
|
|
- uid
|
|
- -uid
|
|
- alias
|
|
- -alias
|
|
- connected
|
|
- -connected
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedProviderList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_providers_create
|
|
description: Add a new provider to the system by providing the required provider
|
|
details.
|
|
summary: Create a new provider
|
|
tags:
|
|
- Provider
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderCreateResponse'
|
|
description: ''
|
|
/api/v1/providers/{id}:
|
|
get:
|
|
operationId: api_v1_providers_retrieve
|
|
description: Fetch detailed information about a specific provider by their ID.
|
|
summary: Retrieve data from a provider
|
|
parameters:
|
|
- in: query
|
|
name: fields[providers]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- provider
|
|
- uid
|
|
- alias
|
|
- connection
|
|
- secret
|
|
- provider_groups
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider_groups
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_providers_partial_update
|
|
description: Update certain fields of an existing provider's information without
|
|
affecting other fields.
|
|
summary: Partially update a provider
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider.
|
|
required: true
|
|
tags:
|
|
- Provider
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SerializerMetaclassResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_providers_destroy
|
|
description: Remove a provider from the system by their ID.
|
|
summary: Delete a provider
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider.
|
|
required: true
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/providers/{id}/connection:
|
|
post:
|
|
operationId: api_v1_providers_connection_create
|
|
description: Try to verify connection. For instance, Role & Credentials are
|
|
set correctly
|
|
summary: Check connection
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this provider.
|
|
required: true
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/providers/secrets:
|
|
get:
|
|
operationId: api_v1_providers_secrets_list
|
|
description: Retrieve a list of all secrets with options for filtering by various
|
|
criteria.
|
|
summary: List all secrets
|
|
parameters:
|
|
- in: query
|
|
name: fields[provider-secrets]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- name
|
|
- secret_type
|
|
- provider
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: 'Filter by date when the secret was added (format: YYYY-MM-DD)'
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: 'Filter by date when the secret was updated (format: YYYY-MM-DD)'
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedProviderSecretList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_providers_secrets_create
|
|
description: Add a new secret to the system by providing the required secret
|
|
details.
|
|
summary: Create a new secret
|
|
tags:
|
|
- Provider
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderSecretCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderSecretCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderSecretCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderSecretCreateResponse'
|
|
description: ''
|
|
/api/v1/providers/secrets/{id}:
|
|
get:
|
|
operationId: api_v1_providers_secrets_retrieve
|
|
description: Fetch detailed information about a specific secret by their ID.
|
|
summary: Retrieve data from a secret
|
|
parameters:
|
|
- in: query
|
|
name: fields[provider-secrets]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- name
|
|
- secret_type
|
|
- provider
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderSecretResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_providers_secrets_partial_update
|
|
description: Update certain fields of an existing secret's information without
|
|
affecting other fields.
|
|
summary: Partially update a secret
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Provider
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderSecretUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderSecretUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedProviderSecretUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ProviderSecretUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_providers_secrets_destroy
|
|
description: Remove a secret from the system by their ID.
|
|
summary: Delete a secret
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Provider
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/resources:
|
|
get:
|
|
operationId: api_v1_resources_list
|
|
description: Retrieve a list of all resources with options for filtering by
|
|
various criteria. Resources are objects that are discovered by Prowler. They
|
|
can be anything from a single host to a whole VPC.
|
|
summary: List all resources
|
|
parameters:
|
|
- in: query
|
|
name: fields[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- uid
|
|
- name
|
|
- region
|
|
- service
|
|
- tags
|
|
- provider
|
|
- findings
|
|
- failed_findings_count
|
|
- url
|
|
- metadata
|
|
- details
|
|
- partition
|
|
- groups
|
|
- type
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[tag]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_key]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_value]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tags]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: At least one of the variations of the `filter[updated_at]` filter
|
|
must be provided.
|
|
required: true
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- findings
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider_uid
|
|
- -provider_uid
|
|
- uid
|
|
- -uid
|
|
- name
|
|
- -name
|
|
- region
|
|
- -region
|
|
- service
|
|
- -service
|
|
- type
|
|
- -type
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Resource
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedResourceList'
|
|
description: ''
|
|
/api/v1/resources/{id}:
|
|
get:
|
|
operationId: api_v1_resources_retrieve
|
|
description: Fetch detailed information about a specific resource by their ID.
|
|
A Resource is an object that is discovered by Prowler. It can be anything
|
|
from a single host to a whole VPC.
|
|
summary: Retrieve data for a resource
|
|
parameters:
|
|
- in: query
|
|
name: fields[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- uid
|
|
- name
|
|
- region
|
|
- service
|
|
- tags
|
|
- provider
|
|
- findings
|
|
- failed_findings_count
|
|
- url
|
|
- metadata
|
|
- details
|
|
- partition
|
|
- groups
|
|
- type
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this resource.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- findings
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Resource
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ResourceResponse'
|
|
description: ''
|
|
/api/v1/resources/{id}/events:
|
|
get:
|
|
operationId: api_v1_resources_events_list
|
|
description: |-
|
|
Retrieve events showing modification history for a resource. Returns who modified the resource and when. Currently only available for AWS resources.
|
|
|
|
**Note:** Some events may not appear due to CloudTrail indexing limitations. Not all AWS API calls record the resource identifier in a searchable format.
|
|
summary: Get events for a resource
|
|
parameters:
|
|
- in: query
|
|
name: fields[resource-events]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- event_time
|
|
- event_name
|
|
- event_source
|
|
- actor
|
|
- actor_uid
|
|
- actor_type
|
|
- source_ip_address
|
|
- user_agent
|
|
- request_data
|
|
- response_data
|
|
- error_code
|
|
- error_message
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this resource.
|
|
required: true
|
|
- in: query
|
|
name: include_read_events
|
|
schema:
|
|
type: boolean
|
|
description: 'Include read-only events (Describe*, Get*, List*, etc.). Default:
|
|
false. Set to true to include all events.'
|
|
- in: query
|
|
name: lookback_days
|
|
schema:
|
|
type: integer
|
|
description: 'Number of days to look back (default: 90, min: 1, max: 90).'
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- in: query
|
|
name: page[size]
|
|
schema:
|
|
type: integer
|
|
description: 'Maximum number of events to return (default: 50, min: 1, max:
|
|
50).'
|
|
tags:
|
|
- Resource
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedResourceEventList'
|
|
description: ''
|
|
'400':
|
|
description: Invalid provider or parameters
|
|
'500':
|
|
description: Unexpected error retrieving events
|
|
'502':
|
|
description: Provider credentials invalid, expired, or lack required permissions
|
|
'503':
|
|
description: Provider service unavailable
|
|
/api/v1/resources/latest:
|
|
get:
|
|
operationId: api_v1_resources_latest_retrieve
|
|
description: Retrieve a list of the latest resources from the latest scans for
|
|
each provider with options for filtering by various criteria.
|
|
summary: List the latest resources
|
|
parameters:
|
|
- in: query
|
|
name: fields[resources]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- uid
|
|
- name
|
|
- region
|
|
- service
|
|
- tags
|
|
- provider
|
|
- findings
|
|
- failed_findings_count
|
|
- url
|
|
- metadata
|
|
- details
|
|
- partition
|
|
- groups
|
|
- type
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[tag]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_key]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_value]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tags]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- findings
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider_uid
|
|
- -provider_uid
|
|
- uid
|
|
- -uid
|
|
- name
|
|
- -name
|
|
- region
|
|
- -region
|
|
- service
|
|
- -service
|
|
- type
|
|
- -type
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Resource
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ResourceResponse'
|
|
description: ''
|
|
/api/v1/resources/metadata:
|
|
get:
|
|
operationId: api_v1_resources_metadata_retrieve
|
|
description: Fetch unique metadata values from a set of resources. This is useful
|
|
for dynamic filtering.
|
|
summary: Retrieve metadata values from resources
|
|
parameters:
|
|
- in: query
|
|
name: fields[resources-metadata]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- services
|
|
- regions
|
|
- types
|
|
- groups
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[scan]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[scan__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[tag]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_key]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_value]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tags]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
description: At least one of the variations of the `filter[updated_at]` filter
|
|
must be provided.
|
|
required: true
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider_uid
|
|
- -provider_uid
|
|
- uid
|
|
- -uid
|
|
- name
|
|
- -name
|
|
- region
|
|
- -region
|
|
- service
|
|
- -service
|
|
- type
|
|
- -type
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Resource
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ResourceMetadataResponse'
|
|
description: ''
|
|
/api/v1/resources/metadata/latest:
|
|
get:
|
|
operationId: api_v1_resources_metadata_latest_retrieve
|
|
description: Fetch unique metadata values from a set of resources from the latest
|
|
scans for each provider. This is useful for dynamic filtering.
|
|
summary: Retrieve metadata values from the latest resources
|
|
parameters:
|
|
- in: query
|
|
name: fields[resources-metadata]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- services
|
|
- regions
|
|
- types
|
|
- groups
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[groups]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[region]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[region__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[service__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[tag]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_key]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tag_value]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tags]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider_uid
|
|
- -provider_uid
|
|
- uid
|
|
- -uid
|
|
- name
|
|
- -name
|
|
- region
|
|
- -region
|
|
- service
|
|
- -service
|
|
- type
|
|
- -type
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Resource
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ResourceMetadataResponse'
|
|
description: ''
|
|
/api/v1/roles:
|
|
get:
|
|
operationId: api_v1_roles_list
|
|
description: Retrieve a list of all roles with options for filtering by various
|
|
criteria.
|
|
summary: List all roles
|
|
parameters:
|
|
- in: query
|
|
name: fields[roles]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- manage_users
|
|
- manage_account
|
|
- manage_integrations
|
|
- manage_providers
|
|
- manage_scans
|
|
- permission_state
|
|
- unlimited_visibility
|
|
- inserted_at
|
|
- updated_at
|
|
- provider_groups
|
|
- users
|
|
- invitations
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[permission_state]
|
|
schema:
|
|
type: string
|
|
enum:
|
|
- limited
|
|
- none
|
|
- unlimited
|
|
description: |-
|
|
* `unlimited` - Unlimited permissions
|
|
* `limited` - Limited permissions
|
|
* `none` - No permissions
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- name
|
|
- -name
|
|
- manage_users
|
|
- -manage_users
|
|
- manage_account
|
|
- -manage_account
|
|
- manage_integrations
|
|
- -manage_integrations
|
|
- manage_providers
|
|
- -manage_providers
|
|
- manage_scans
|
|
- -manage_scans
|
|
- permission_state
|
|
- -permission_state
|
|
- unlimited_visibility
|
|
- -unlimited_visibility
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- provider_groups
|
|
- -provider_groups
|
|
- users
|
|
- -users
|
|
- invitations
|
|
- -invitations
|
|
- url
|
|
- -url
|
|
explode: false
|
|
tags:
|
|
- Role
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedRoleList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_roles_create
|
|
description: Add a new role to the system by providing the required role details.
|
|
summary: Create a new role
|
|
tags:
|
|
- Role
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleCreateResponse'
|
|
description: ''
|
|
/api/v1/roles/{id}:
|
|
get:
|
|
operationId: api_v1_roles_retrieve
|
|
description: Fetch detailed information about a specific role by their ID.
|
|
summary: Retrieve data from a role
|
|
parameters:
|
|
- in: query
|
|
name: fields[roles]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- manage_users
|
|
- manage_account
|
|
- manage_integrations
|
|
- manage_providers
|
|
- manage_scans
|
|
- permission_state
|
|
- unlimited_visibility
|
|
- inserted_at
|
|
- updated_at
|
|
- provider_groups
|
|
- users
|
|
- invitations
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this role.
|
|
required: true
|
|
tags:
|
|
- Role
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_roles_partial_update
|
|
description: Update selected fields on an existing role. When changing the `users`
|
|
relationship of a role that grants MANAGE_ACCOUNT, the API blocks attempts
|
|
that would leave the tenant without any MANAGE_ACCOUNT assignees and prevents
|
|
callers from removing their own assignment to that role.
|
|
summary: Partially update a role
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this role.
|
|
required: true
|
|
tags:
|
|
- Role
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedRoleUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedRoleUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedRoleUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SerializerMetaclassResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_roles_destroy
|
|
description: Delete the specified role. The API rejects deletion of the last
|
|
role in the tenant that grants MANAGE_ACCOUNT.
|
|
summary: Delete a role
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this role.
|
|
required: true
|
|
tags:
|
|
- Role
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/roles/{id}/relationships/provider_groups:
|
|
post:
|
|
operationId: api_v1_roles_relationships_provider_groups_create
|
|
description: Add a new role-provider_groups relationship to the system by providing
|
|
the required role-provider_groups details.
|
|
summary: Create a new role-provider_groups relationship
|
|
tags:
|
|
- Role
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleProviderGroupRelationshipRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleProviderGroupRelationshipRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/RoleProviderGroupRelationshipRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship created successfully
|
|
'400':
|
|
description: Bad request (e.g., relationship already exists)
|
|
patch:
|
|
operationId: api_v1_roles_relationships_provider_groups_partial_update
|
|
description: Update the role-provider_groups relationship information without
|
|
affecting other fields.
|
|
summary: Partially update a role-provider_groups relationship
|
|
tags:
|
|
- Role
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedRoleProviderGroupRelationshipRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedRoleProviderGroupRelationshipRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedRoleProviderGroupRelationshipRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship updated successfully
|
|
delete:
|
|
operationId: api_v1_roles_relationships_provider_groups_destroy
|
|
description: Remove the role-provider_groups relationship from the system by
|
|
their ID.
|
|
summary: Delete a role-provider_groups relationship
|
|
tags:
|
|
- Role
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship deleted successfully
|
|
/api/v1/saml-config:
|
|
get:
|
|
operationId: api_v1_saml_config_list
|
|
description: Returns all the SAML-based SSO configurations associated with the
|
|
current tenant.
|
|
summary: List all SSO configurations
|
|
parameters:
|
|
- in: query
|
|
name: fields[saml-configurations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- email_domain
|
|
- metadata_xml
|
|
- created_at
|
|
- updated_at
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- email_domain
|
|
- -email_domain
|
|
- metadata_xml
|
|
- -metadata_xml
|
|
- created_at
|
|
- -created_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- SAML
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedSAMLConfigurationList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_saml_config_create
|
|
description: Creates a new SAML SSO configuration for the current tenant, including
|
|
email domain and metadata XML.
|
|
summary: Create the SSO configuration
|
|
tags:
|
|
- SAML
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SAMLConfigurationRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/SAMLConfigurationRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/SAMLConfigurationRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SAMLConfigurationResponse'
|
|
description: ''
|
|
/api/v1/saml-config/{id}:
|
|
get:
|
|
operationId: api_v1_saml_config_retrieve
|
|
description: Returns the details of a specific SAML configuration belonging
|
|
to the current tenant.
|
|
summary: Retrieve SSO configuration details
|
|
parameters:
|
|
- in: query
|
|
name: fields[saml-configurations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- email_domain
|
|
- metadata_xml
|
|
- created_at
|
|
- updated_at
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this saml configuration.
|
|
required: true
|
|
tags:
|
|
- SAML
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SAMLConfigurationResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_saml_config_partial_update
|
|
description: Partially updates an existing SAML SSO configuration. Supports
|
|
changes to email domain and metadata XML.
|
|
summary: Update the SSO configuration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this saml configuration.
|
|
required: true
|
|
tags:
|
|
- SAML
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedSAMLConfigurationRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedSAMLConfigurationRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedSAMLConfigurationRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/SAMLConfigurationResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_saml_config_destroy
|
|
description: Deletes an existing SAML SSO configuration associated with the
|
|
current tenant.
|
|
summary: Delete the SSO configuration
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this saml configuration.
|
|
required: true
|
|
tags:
|
|
- SAML
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/scans:
|
|
get:
|
|
operationId: api_v1_scans_list
|
|
description: Retrieve a list of all scans with options for filtering by various
|
|
criteria.
|
|
summary: List all scans
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[completed_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[id]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[id__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[next_scan_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[next_scan_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[next_scan_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[provider]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_alias]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_alias__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_groups]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[provider_groups__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_type]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
- in: query
|
|
name: filter[provider_type__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
enum:
|
|
- alibabacloud
|
|
- aws
|
|
- azure
|
|
- cloudflare
|
|
- gcp
|
|
- github
|
|
- googleworkspace
|
|
- iac
|
|
- image
|
|
- kubernetes
|
|
- m365
|
|
- mongodbatlas
|
|
- okta
|
|
- openstack
|
|
- oraclecloud
|
|
- vercel
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[provider_uid]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[provider_uid__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: Multiple values may be separated by commas.
|
|
explode: false
|
|
style: form
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[started_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[started_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[started_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[state]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: d38ba07264e1ed34
|
|
enum:
|
|
- available
|
|
- cancelled
|
|
- completed
|
|
- executing
|
|
- failed
|
|
- scheduled
|
|
description: |-
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
- in: query
|
|
name: filter[state__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
x-spec-enum-id: d38ba07264e1ed34
|
|
enum:
|
|
- available
|
|
- cancelled
|
|
- completed
|
|
- executing
|
|
- failed
|
|
- scheduled
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[trigger]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 2e52c981d1c89bdf
|
|
enum:
|
|
- manual
|
|
- scheduled
|
|
description: |-
|
|
* `scheduled` - Scheduled
|
|
* `manual` - Manual
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- trigger
|
|
- -trigger
|
|
- attempted_at
|
|
- -attempted_at
|
|
- scheduled_at
|
|
- -scheduled_at
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedScanList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_scans_create
|
|
description: Trigger a manual scan by providing the required scan details. If
|
|
`scanner_args` are not provided, the system will automatically use the default
|
|
settings from the associated provider. If you do provide `scanner_args`, these
|
|
settings will be merged with the provider's defaults. This means that your
|
|
provided settings will override the defaults only where they conflict, while
|
|
the rest of the default settings will remain intact.
|
|
summary: Trigger a manual scan
|
|
tags:
|
|
- Scan
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ScanCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ScanCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ScanCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/scans/{id}:
|
|
get:
|
|
operationId: api_v1_scans_retrieve
|
|
description: Fetch detailed information about a specific scan by its ID.
|
|
summary: Retrieve data from a specific scan
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ScanResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_scans_partial_update
|
|
description: Update certain fields of an existing scan without affecting other
|
|
fields.
|
|
summary: Partially update a scan
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
tags:
|
|
- Scan
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedScanUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedScanUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedScanUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ScanUpdateResponse'
|
|
description: ''
|
|
/api/v1/scans/{id}/cis:
|
|
get:
|
|
operationId: api_v1_scans_cis_retrieve
|
|
description: Download the CIS Benchmark compliance report as a PDF file. When
|
|
a provider ships multiple CIS versions, the report is generated for the highest
|
|
available version.
|
|
summary: Retrieve CIS Benchmark compliance report
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: PDF file containing the CIS compliance report
|
|
'202':
|
|
description: The task is in progress
|
|
'401':
|
|
description: API key missing or user not Authenticated
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: The scan has no CIS reports, or the CIS report generation task
|
|
has not started yet
|
|
/api/v1/scans/{id}/compliance/{name}:
|
|
get:
|
|
operationId: api_v1_scans_compliance_retrieve
|
|
description: Download a specific compliance report (e.g., 'cis_1.4_aws') as
|
|
a CSV file.
|
|
summary: Retrieve compliance report as CSV
|
|
parameters:
|
|
- in: query
|
|
name: fields[scan-reports]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- name
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: path
|
|
name: name
|
|
schema:
|
|
type: string
|
|
description: The compliance report name, like 'cis_1.4_aws'
|
|
required: true
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: CSV file containing the compliance report
|
|
'202':
|
|
description: The task is in progress
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: Compliance report not found, or the scan has no reports yet
|
|
/api/v1/scans/{id}/compliance/{name}/ocsf:
|
|
get:
|
|
operationId: api_v1_scans_compliance_ocsf_retrieve
|
|
description: Download a specific compliance report as an OCSF JSON file. Only
|
|
universal frameworks that declare an output configuration produce this artifact
|
|
(currently 'dora_2022_2554', 'csa_ccm_4.0' and 'cis_controls_8.1'); any other
|
|
framework returns 404.
|
|
summary: Retrieve compliance report as OCSF JSON
|
|
parameters:
|
|
- in: query
|
|
name: fields[scan-reports]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- name
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: path
|
|
name: name
|
|
schema:
|
|
type: string
|
|
description: The compliance report name, like 'dora_2022_2554'
|
|
required: true
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: OCSF JSON file containing the compliance report
|
|
'202':
|
|
description: The task is in progress
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: Compliance report not found, the framework does not provide
|
|
an OCSF export, or the scan has no reports yet
|
|
/api/v1/scans/{id}/csa:
|
|
get:
|
|
operationId: api_v1_scans_csa_retrieve
|
|
description: Download CSA Cloud Controls Matrix (CCM) v4.0 compliance report
|
|
as a PDF file.
|
|
summary: Retrieve CSA CCM compliance report
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: PDF file containing the CSA CCM compliance report
|
|
'202':
|
|
description: The task is in progress
|
|
'401':
|
|
description: API key missing or user not Authenticated
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: The scan has no CSA CCM reports, or the CSA CCM report generation
|
|
task has not started yet
|
|
/api/v1/scans/{id}/ens:
|
|
get:
|
|
operationId: api_v1_scans_ens_retrieve
|
|
description: Download ENS RD2022 compliance report (e.g., 'ens_rd2022_aws')
|
|
as a PDF file.
|
|
summary: Retrieve ENS RD2022 compliance report
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: PDF file containing the ENS compliance report
|
|
'202':
|
|
description: The task is in progress
|
|
'401':
|
|
description: API key missing or user not Authenticated
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: The scan has no ENS reports, or the ENS report generation task
|
|
has not started yet
|
|
/api/v1/scans/{id}/nis2:
|
|
get:
|
|
operationId: api_v1_scans_nis2_retrieve
|
|
description: Download NIS2 compliance report (Directive (EU) 2022/2555) as a
|
|
PDF file.
|
|
summary: Retrieve NIS2 compliance report
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: PDF file containing the NIS2 compliance report
|
|
'202':
|
|
description: The task is in progress
|
|
'401':
|
|
description: API key missing or user not Authenticated
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: The scan has no NIS2 reports, or the NIS2 report generation
|
|
task has not started yet
|
|
/api/v1/scans/{id}/report:
|
|
get:
|
|
operationId: api_v1_scans_report_retrieve
|
|
description: Returns a ZIP file containing the requested report
|
|
summary: Download ZIP report
|
|
parameters:
|
|
- in: query
|
|
name: fields[scan-reports]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: Report obtained successfully
|
|
'202':
|
|
description: The task is in progress
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: The scan has no reports, or the report generation task has
|
|
not started yet
|
|
/api/v1/scans/{id}/threatscore:
|
|
get:
|
|
operationId: api_v1_scans_threatscore_retrieve
|
|
description: Download a specific threatscore report (e.g., 'prowler_threatscore_aws')
|
|
as a PDF file.
|
|
summary: Retrieve threatscore report
|
|
parameters:
|
|
- in: query
|
|
name: fields[scans]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- trigger
|
|
- state
|
|
- unique_resource_count
|
|
- progress
|
|
- duration
|
|
- provider
|
|
- task
|
|
- inserted_at
|
|
- started_at
|
|
- completed_at
|
|
- scheduled_at
|
|
- next_scan_at
|
|
- processor
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this scan.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- provider
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- Scan
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
description: PDF file containing the threatscore report
|
|
'202':
|
|
description: The task is in progress
|
|
'401':
|
|
description: API key missing or user not Authenticated
|
|
'403':
|
|
description: There is a problem with credentials
|
|
'404':
|
|
description: The scan has no threatscore reports, or the threatscore report
|
|
generation task has not started yet
|
|
/api/v1/schedules/daily:
|
|
post:
|
|
operationId: api_v1_schedules_daily_create
|
|
description: Schedules a daily scan for the specified provider. This endpoint
|
|
creates a periodic task that will execute a scan every 24 hours.
|
|
summary: Create a daily schedule scan for a given provider
|
|
tags:
|
|
- Schedule
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/ScheduleDailyCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/ScheduleDailyCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/ScheduleDailyCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/tasks:
|
|
get:
|
|
operationId: api_v1_tasks_list
|
|
description: Retrieve a list of all tasks with options for filtering by name,
|
|
state, and other criteria. Tasks that reference a provider are only returned
|
|
when the role can access it; tasks without a provider reference are returned
|
|
for every role.
|
|
summary: List all tasks
|
|
parameters:
|
|
- in: query
|
|
name: fields[tasks]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- completed_at
|
|
- name
|
|
- state
|
|
- result
|
|
- task_args
|
|
- metadata
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[state]
|
|
schema:
|
|
type: string
|
|
title: Task State
|
|
enum:
|
|
- available
|
|
- cancelled
|
|
- completed
|
|
- executing
|
|
- failed
|
|
- scheduled
|
|
description: |-
|
|
Current state of the task being run
|
|
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- -inserted_at
|
|
- completed_at
|
|
- -completed_at
|
|
- name
|
|
- -name
|
|
- state
|
|
- -state
|
|
explode: false
|
|
tags:
|
|
- Task
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedTaskList'
|
|
description: ''
|
|
/api/v1/tasks/{id}:
|
|
get:
|
|
operationId: api_v1_tasks_retrieve
|
|
description: Fetch detailed information about a specific task by its ID. Tasks
|
|
tied to a provider outside the visibility of the role are not found.
|
|
summary: Retrieve data from a specific task
|
|
parameters:
|
|
- in: query
|
|
name: fields[tasks]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- completed_at
|
|
- name
|
|
- state
|
|
- result
|
|
- task_args
|
|
- metadata
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this task.
|
|
required: true
|
|
tags:
|
|
- Task
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_tasks_destroy
|
|
description: Try to revoke a task using its ID. Only tasks that are not yet
|
|
in progress can be revoked, and the caller needs the same permission as the
|
|
operation that queued the task (for example MANAGE_SCANS for a scan). Provider
|
|
deletions cannot be revoked.
|
|
summary: Revoke a task
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this task.
|
|
required: true
|
|
tags:
|
|
- Task
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'202':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TaskResponse'
|
|
examples:
|
|
Task queued:
|
|
summary: Task queued
|
|
value:
|
|
data:
|
|
type: tasks
|
|
id: 497f6eca-6276-4993-bfeb-53cbbbba6f08
|
|
attributes:
|
|
inserted_at: '2019-08-24T14:15:22Z'
|
|
completed_at: '2019-08-24T14:15:22Z'
|
|
name: string
|
|
state: available
|
|
result: null
|
|
task_args: null
|
|
metadata: null
|
|
description: ''
|
|
/api/v1/tenants:
|
|
get:
|
|
operationId: api_v1_tenants_list
|
|
description: Retrieve a list of all tenants with options for filtering by various
|
|
criteria.
|
|
summary: List all tenants
|
|
parameters:
|
|
- in: query
|
|
name: fields[tenants]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- memberships
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
explode: false
|
|
tags:
|
|
- Tenant
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedTenantList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_tenants_create
|
|
description: Add a new tenant to the system by providing the required tenant
|
|
details.
|
|
summary: Create a new tenant
|
|
tags:
|
|
- Tenant
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantResponse'
|
|
description: ''
|
|
/api/v1/tenants/{id}:
|
|
get:
|
|
operationId: api_v1_tenants_retrieve
|
|
description: Fetch detailed information about a specific tenant by their ID.
|
|
summary: Retrieve data from a tenant
|
|
parameters:
|
|
- in: query
|
|
name: fields[tenants]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- memberships
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this tenant.
|
|
required: true
|
|
tags:
|
|
- Tenant
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_tenants_partial_update
|
|
description: Update certain fields of an existing tenant's information without
|
|
affecting other fields.
|
|
summary: Partially update a tenant
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this tenant.
|
|
required: true
|
|
tags:
|
|
- Tenant
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedTenantRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedTenantRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedTenantRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TenantResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_tenants_destroy
|
|
description: Remove a tenant from the system by their ID.
|
|
summary: Delete a tenant
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this tenant.
|
|
required: true
|
|
tags:
|
|
- Tenant
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/tenants/{tenant_pk}/memberships:
|
|
get:
|
|
operationId: api_v1_tenants_memberships_list
|
|
description: List the membership details of users in a tenant you are a part
|
|
of.
|
|
summary: List tenant memberships
|
|
parameters:
|
|
- in: query
|
|
name: fields[memberships]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- user
|
|
- tenant
|
|
- role
|
|
- date_joined
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[date_joined]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_joined__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_joined__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[date_joined__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[role]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 12c359ee5dc51001
|
|
enum:
|
|
- member
|
|
- owner
|
|
description: |-
|
|
* `owner` - Owner
|
|
* `member` - Member
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tenant]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[user]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- id
|
|
- -id
|
|
- user
|
|
- -user
|
|
- tenant
|
|
- -tenant
|
|
- role
|
|
- -role
|
|
- date_joined
|
|
- -date_joined
|
|
explode: false
|
|
- in: path
|
|
name: tenant_pk
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: Tenant ID
|
|
required: true
|
|
tags:
|
|
- Tenant
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedMembershipList'
|
|
description: ''
|
|
/api/v1/tenants/{tenant_pk}/memberships/{id}:
|
|
delete:
|
|
operationId: api_v1_tenants_memberships_destroy
|
|
description: 'Delete a user''s membership from a tenant. This action: (1) removes
|
|
the membership, (2) revokes all refresh tokens for the expelled user, (3)
|
|
removes their role grants for this tenant, (4) cleans up orphaned roles, and
|
|
(5) deletes the user account if this was their last membership. You must be
|
|
a tenant owner to delete another user''s membership. The last owner of a tenant
|
|
cannot delete their own membership.'
|
|
summary: Delete tenant memberships
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this membership.
|
|
required: true
|
|
- in: path
|
|
name: tenant_pk
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Tenant
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/tenants/invitations:
|
|
get:
|
|
operationId: api_v1_tenants_invitations_list
|
|
description: Retrieve a list of all tenant invitations with options for filtering
|
|
by various criteria.
|
|
summary: List all invitations
|
|
parameters:
|
|
- in: query
|
|
name: fields[invitations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- email
|
|
- state
|
|
- token
|
|
- roles
|
|
- expires_at
|
|
- inviter
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[email]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[email__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[expires_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[expires_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[expires_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[expires_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[inserted_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inserted_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[inviter]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[state]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 92a1c1fd12e13e25
|
|
enum:
|
|
- accepted
|
|
- expired
|
|
- pending
|
|
- revoked
|
|
description: |-
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
- in: query
|
|
name: filter[state__in]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- accepted
|
|
- expired
|
|
- pending
|
|
- revoked
|
|
description: |-
|
|
Multiple values may be separated by commas.
|
|
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
explode: false
|
|
style: form
|
|
- in: query
|
|
name: filter[updated_at]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[updated_at__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[updated_at__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- -inserted_at
|
|
- updated_at
|
|
- -updated_at
|
|
- expires_at
|
|
- -expires_at
|
|
- state
|
|
- -state
|
|
- inviter
|
|
- -inviter
|
|
explode: false
|
|
tags:
|
|
- Invitation
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedInvitationList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_tenants_invitations_create
|
|
description: Add a new tenant invitation to the system by providing the required
|
|
invitation details. The invited user will have to accept the invitations or
|
|
create an account using the given code.
|
|
summary: Invite a user to a tenant
|
|
tags:
|
|
- Invitation
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationCreateResponse'
|
|
description: ''
|
|
/api/v1/tenants/invitations/{id}:
|
|
get:
|
|
operationId: api_v1_tenants_invitations_retrieve
|
|
description: Fetch detailed information about a specific invitation by its ID.
|
|
summary: Retrieve data from a tenant invitation
|
|
parameters:
|
|
- in: query
|
|
name: fields[invitations]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- inserted_at
|
|
- updated_at
|
|
- email
|
|
- state
|
|
- token
|
|
- roles
|
|
- expires_at
|
|
- inviter
|
|
- url
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Invitation
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_tenants_invitations_partial_update
|
|
description: Update certain fields of an existing tenant invitation's information
|
|
without affecting other fields.
|
|
summary: Partially update a tenant invitation
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Invitation
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedInvitationUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedInvitationUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedInvitationUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/InvitationUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_tenants_invitations_destroy
|
|
description: Revoke a tenant invitation from the system by their ID.
|
|
summary: Revoke a tenant invitation
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- Invitation
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/tokens:
|
|
post:
|
|
operationId: api_v1_tokens_create
|
|
description: Obtain a token by providing valid credentials and an optional tenant
|
|
ID.
|
|
summary: Obtain a token
|
|
tags:
|
|
- Token
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
- {}
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenResponse'
|
|
description: ''
|
|
/api/v1/tokens/refresh:
|
|
post:
|
|
operationId: api_v1_tokens_refresh_create
|
|
description: Refresh an access token by providing a valid refresh token. Former
|
|
refresh tokens are invalidated when a new one is issued.
|
|
summary: Refresh a token
|
|
tags:
|
|
- Token
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRefreshRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRefreshRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRefreshRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
- {}
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenRefreshResponse'
|
|
description: ''
|
|
/api/v1/tokens/switch:
|
|
post:
|
|
operationId: api_v1_tokens_switch_create
|
|
description: Switch tenant by providing a valid tenant ID. The authenticated
|
|
user must belong to the tenant.
|
|
summary: Switch tenant using a valid tenant ID
|
|
tags:
|
|
- Token
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenSwitchTenantRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenSwitchTenantRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenSwitchTenantRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/TokenSwitchTenantResponse'
|
|
description: ''
|
|
/api/v1/users:
|
|
get:
|
|
operationId: api_v1_users_list
|
|
description: Retrieve a list of all users with options for filtering by various
|
|
criteria.
|
|
summary: List all users
|
|
parameters:
|
|
- in: query
|
|
name: fields[users]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- email
|
|
- company_name
|
|
- date_joined
|
|
- memberships
|
|
- roles
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[company_name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[company_name__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[date_joined]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_joined__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_joined__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[date_joined__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[email]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[email__icontains]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[is_active]
|
|
schema:
|
|
type: boolean
|
|
- in: query
|
|
name: filter[name]
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[name__icontains]
|
|
schema:
|
|
type: string
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
- memberships
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- -name
|
|
- email
|
|
- -email
|
|
- company_name
|
|
- -company_name
|
|
- date_joined
|
|
- -date_joined
|
|
- is_active
|
|
- -is_active
|
|
explode: false
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedUserList'
|
|
description: ''
|
|
post:
|
|
operationId: api_v1_users_create
|
|
description: Create a new user account by providing the necessary registration
|
|
details.
|
|
summary: Register a new user
|
|
parameters:
|
|
- in: query
|
|
name: invitation_token
|
|
schema:
|
|
type: string
|
|
example: F3NMFPNDZHR4Z9
|
|
description: Optional invitation code for joining an existing tenant.
|
|
tags:
|
|
- User
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserCreateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/UserCreateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/UserCreateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
- {}
|
|
responses:
|
|
'201':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserCreateResponse'
|
|
description: ''
|
|
/api/v1/users/{id}:
|
|
get:
|
|
operationId: api_v1_users_retrieve
|
|
description: Fetch detailed information about an authenticated user.
|
|
summary: Retrieve a user's information
|
|
parameters:
|
|
- in: query
|
|
name: fields[users]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- email
|
|
- company_name
|
|
- date_joined
|
|
- memberships
|
|
- roles
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this user.
|
|
required: true
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
- memberships
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserResponse'
|
|
description: ''
|
|
patch:
|
|
operationId: api_v1_users_partial_update
|
|
description: Partially update information about a user.
|
|
summary: Update user information
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this user.
|
|
required: true
|
|
tags:
|
|
- User
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedUserUpdateRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedUserUpdateRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedUserUpdateRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserUpdateResponse'
|
|
description: ''
|
|
delete:
|
|
operationId: api_v1_users_destroy
|
|
description: Remove the current user account from the system.
|
|
summary: Delete the user account
|
|
parameters:
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this user.
|
|
required: true
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: No response body
|
|
/api/v1/users/{id}/relationships/roles:
|
|
post:
|
|
operationId: api_v1_users_relationships_roles_create
|
|
description: Add a new user-roles relationship to the system by providing the
|
|
required user-roles details.
|
|
summary: Create a new user-roles relationship
|
|
tags:
|
|
- User
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserRoleRelationshipRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/UserRoleRelationshipRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/UserRoleRelationshipRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship created successfully
|
|
'400':
|
|
description: Bad request (e.g., relationship already exists)
|
|
patch:
|
|
operationId: api_v1_users_relationships_roles_partial_update
|
|
description: Update the user-roles relationship information without affecting
|
|
other fields. If the update would remove MANAGE_ACCOUNT from the last remaining
|
|
user in the tenant, the API rejects the request with a 400 response.
|
|
summary: Partially update a user-roles relationship
|
|
tags:
|
|
- User
|
|
requestBody:
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedUserRoleRelationshipRequest'
|
|
application/x-www-form-urlencoded:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedUserRoleRelationshipRequest'
|
|
multipart/form-data:
|
|
schema:
|
|
$ref: '#/components/schemas/PatchedUserRoleRelationshipRequest'
|
|
required: true
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship updated successfully
|
|
delete:
|
|
operationId: api_v1_users_relationships_roles_destroy
|
|
description: Remove the user-roles relationship from the system by their ID.
|
|
If removing MANAGE_ACCOUNT would take it away from the last remaining user
|
|
in the tenant, the API rejects the request with a 400 response. Users also
|
|
cannot delete their own role assignments; attempting to do so returns a 400
|
|
response.
|
|
summary: Delete a user-roles relationship
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'204':
|
|
description: Relationship deleted successfully
|
|
/api/v1/users/{user_pk}/memberships:
|
|
get:
|
|
operationId: api_v1_users_memberships_list
|
|
description: Retrieve a list of all user memberships with options for filtering
|
|
by various criteria.
|
|
summary: List user memberships
|
|
parameters:
|
|
- in: query
|
|
name: fields[memberships]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- user
|
|
- tenant
|
|
- role
|
|
- date_joined
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: filter[date_joined]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_joined__date]
|
|
schema:
|
|
type: string
|
|
format: date
|
|
- in: query
|
|
name: filter[date_joined__gte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[date_joined__lte]
|
|
schema:
|
|
type: string
|
|
format: date-time
|
|
- in: query
|
|
name: filter[role]
|
|
schema:
|
|
type: string
|
|
x-spec-enum-id: 12c359ee5dc51001
|
|
enum:
|
|
- member
|
|
- owner
|
|
description: |-
|
|
* `owner` - Owner
|
|
* `member` - Member
|
|
- name: filter[search]
|
|
required: false
|
|
in: query
|
|
description: A search term.
|
|
schema:
|
|
type: string
|
|
- in: query
|
|
name: filter[tenant]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- in: query
|
|
name: filter[user]
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
- name: page[number]
|
|
required: false
|
|
in: query
|
|
description: A page number within the paginated result set.
|
|
schema:
|
|
type: integer
|
|
- name: page[size]
|
|
required: false
|
|
in: query
|
|
description: Number of results to return per page.
|
|
schema:
|
|
type: integer
|
|
- name: sort
|
|
required: false
|
|
in: query
|
|
description: '[list of fields to sort by](https://jsonapi.org/format/#fetching-sorting)'
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- tenant
|
|
- -tenant
|
|
- role
|
|
- -role
|
|
- date_joined
|
|
- -date_joined
|
|
explode: false
|
|
- in: path
|
|
name: user_pk
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/PaginatedMembershipList'
|
|
description: ''
|
|
/api/v1/users/{user_pk}/memberships/{id}:
|
|
get:
|
|
operationId: api_v1_users_memberships_retrieve
|
|
description: Fetch detailed information about a specific user membership by
|
|
their ID.
|
|
summary: Retrieve membership data from the user
|
|
parameters:
|
|
- in: query
|
|
name: fields[memberships]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- user
|
|
- tenant
|
|
- role
|
|
- date_joined
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: path
|
|
name: id
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
description: A UUID string identifying this membership.
|
|
required: true
|
|
- in: path
|
|
name: user_pk
|
|
schema:
|
|
type: string
|
|
format: uuid
|
|
required: true
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/MembershipResponse'
|
|
description: ''
|
|
/api/v1/users/me:
|
|
get:
|
|
operationId: api_v1_users_me_retrieve
|
|
description: Fetch detailed information about the authenticated user.
|
|
summary: Retrieve the current user's information
|
|
parameters:
|
|
- in: query
|
|
name: fields[users]
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- name
|
|
- email
|
|
- company_name
|
|
- date_joined
|
|
- memberships
|
|
- roles
|
|
description: endpoint return only specific fields in the response on a per-type
|
|
basis by including a fields[TYPE] query parameter.
|
|
explode: false
|
|
- in: query
|
|
name: include
|
|
schema:
|
|
type: array
|
|
items:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
- memberships
|
|
description: include query parameter to allow the client to customize which
|
|
related resources should be returned.
|
|
explode: false
|
|
tags:
|
|
- User
|
|
security:
|
|
- JWT or API Key: []
|
|
responses:
|
|
'200':
|
|
content:
|
|
application/vnd.api+json:
|
|
schema:
|
|
$ref: '#/components/schemas/UserResponse'
|
|
description: ''
|
|
components:
|
|
schemas:
|
|
AttackPathsCartographySchema:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-cartography-schemas
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
provider:
|
|
type: string
|
|
cartography_version:
|
|
type: string
|
|
schema_url:
|
|
type: string
|
|
format: uri
|
|
raw_schema_url:
|
|
type: string
|
|
format: uri
|
|
required:
|
|
- id
|
|
- provider
|
|
- cartography_version
|
|
- schema_url
|
|
- raw_schema_url
|
|
AttackPathsCustomQueryRunRequestRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-custom-query-run-requests
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
query:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 10000
|
|
required:
|
|
- query
|
|
required:
|
|
- data
|
|
AttackPathsNode:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-query-result-nodes
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
labels:
|
|
type: array
|
|
items:
|
|
type: string
|
|
properties:
|
|
type: object
|
|
additionalProperties: {}
|
|
required:
|
|
- id
|
|
- labels
|
|
- properties
|
|
AttackPathsQuery:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-queries
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
name:
|
|
type: string
|
|
short_description:
|
|
type: string
|
|
description:
|
|
type: string
|
|
attribution:
|
|
allOf:
|
|
- $ref: '#/components/schemas/AttackPathsQueryAttribution'
|
|
nullable: true
|
|
provider:
|
|
type: string
|
|
parameters:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AttackPathsQueryParameter'
|
|
required:
|
|
- id
|
|
- name
|
|
- short_description
|
|
- description
|
|
- provider
|
|
- parameters
|
|
AttackPathsQueryAttribution:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-query-attributions
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
text:
|
|
type: string
|
|
link:
|
|
type: string
|
|
required:
|
|
- text
|
|
- link
|
|
AttackPathsQueryParameter:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-query-parameters
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
label:
|
|
type: string
|
|
data_type:
|
|
type: string
|
|
default: string
|
|
description:
|
|
type: string
|
|
nullable: true
|
|
placeholder:
|
|
type: string
|
|
nullable: true
|
|
required:
|
|
- name
|
|
- label
|
|
AttackPathsQueryResult:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-query-results
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
nodes:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AttackPathsNode'
|
|
relationships:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AttackPathsRelationship'
|
|
total_nodes:
|
|
type: integer
|
|
truncated:
|
|
type: boolean
|
|
required:
|
|
- nodes
|
|
- relationships
|
|
- total_nodes
|
|
- truncated
|
|
AttackPathsQueryRunRequestRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-query-run-requests
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
minLength: 1
|
|
parameters:
|
|
type: object
|
|
additionalProperties: {}
|
|
required:
|
|
- id
|
|
required:
|
|
- data
|
|
AttackPathsRelationship:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-query-result-relationships
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
label:
|
|
type: string
|
|
source:
|
|
type: string
|
|
target:
|
|
type: string
|
|
properties:
|
|
type: object
|
|
additionalProperties: {}
|
|
required:
|
|
- id
|
|
- label
|
|
- source
|
|
- target
|
|
- properties
|
|
AttackPathsScan:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-paths-scans
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
state:
|
|
enum:
|
|
- available
|
|
- scheduled
|
|
- executing
|
|
- completed
|
|
- failed
|
|
- cancelled
|
|
type: string
|
|
description: |-
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
x-spec-enum-id: d38ba07264e1ed34
|
|
readOnly: true
|
|
progress:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
graph_data_ready:
|
|
type: boolean
|
|
provider_alias:
|
|
type: string
|
|
readOnly: true
|
|
provider_type:
|
|
type: string
|
|
readOnly: true
|
|
provider_uid:
|
|
type: string
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
started_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
completed_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
duration:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
nullable: true
|
|
description: Duration in seconds
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
scan:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- scans
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
task:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- tasks
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
required:
|
|
- provider
|
|
AttackPathsScanResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/AttackPathsScan'
|
|
required:
|
|
- data
|
|
AttackSurfaceOverview:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- attack-surface-overviews
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
total_findings:
|
|
type: integer
|
|
failed_findings:
|
|
type: integer
|
|
muted_failed_findings:
|
|
type: integer
|
|
required:
|
|
- id
|
|
- total_findings
|
|
- failed_findings
|
|
- muted_failed_findings
|
|
CategoryOverview:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- category-overviews
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
total_findings:
|
|
type: integer
|
|
failed_findings:
|
|
type: integer
|
|
new_failed_findings:
|
|
type: integer
|
|
severity:
|
|
description: 'Severity breakdown: {informational, low, medium, high,
|
|
critical}'
|
|
required:
|
|
- id
|
|
- total_findings
|
|
- failed_findings
|
|
- new_failed_findings
|
|
- severity
|
|
ComplianceOverview:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- compliance-overviews
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
framework:
|
|
type: string
|
|
version:
|
|
type: string
|
|
requirements_passed:
|
|
type: integer
|
|
requirements_failed:
|
|
type: integer
|
|
requirements_manual:
|
|
type: integer
|
|
total_requirements:
|
|
type: integer
|
|
required:
|
|
- id
|
|
- framework
|
|
- version
|
|
- requirements_passed
|
|
- requirements_failed
|
|
- requirements_manual
|
|
- total_requirements
|
|
ComplianceOverviewAttributes:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- compliance-requirements-attributes
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
compliance_name:
|
|
type: string
|
|
framework_description:
|
|
type: string
|
|
name:
|
|
type: string
|
|
framework:
|
|
type: string
|
|
version:
|
|
type: string
|
|
description:
|
|
type: string
|
|
attributes: {}
|
|
required:
|
|
- id
|
|
- compliance_name
|
|
- framework_description
|
|
- name
|
|
- framework
|
|
- version
|
|
- description
|
|
- attributes
|
|
ComplianceOverviewDetail:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- compliance-requirements-details
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
framework:
|
|
type: string
|
|
version:
|
|
type: string
|
|
description:
|
|
type: string
|
|
status:
|
|
enum:
|
|
- FAIL
|
|
- PASS
|
|
- MANUAL
|
|
type: string
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
required:
|
|
- id
|
|
- framework
|
|
- version
|
|
- description
|
|
- status
|
|
ComplianceOverviewMetadata:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- compliance-overviews-metadata
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
- regions
|
|
ComplianceWatchlistOverview:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- compliance-watchlist-overviews
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
compliance_id:
|
|
type: string
|
|
requirements_passed:
|
|
type: integer
|
|
requirements_failed:
|
|
type: integer
|
|
requirements_manual:
|
|
type: integer
|
|
total_requirements:
|
|
type: integer
|
|
required:
|
|
- id
|
|
- compliance_id
|
|
- requirements_passed
|
|
- requirements_failed
|
|
- requirements_manual
|
|
- total_requirements
|
|
Finding:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- findings
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
maxLength: 300
|
|
delta:
|
|
enum:
|
|
- new
|
|
- changed
|
|
- null
|
|
type: string
|
|
description: |-
|
|
* `new` - New
|
|
* `changed` - Changed
|
|
x-spec-enum-id: fef6b0e2506af8bc
|
|
nullable: true
|
|
status:
|
|
enum:
|
|
- FAIL
|
|
- PASS
|
|
- MANUAL
|
|
type: string
|
|
description: |-
|
|
* `FAIL` - Fail
|
|
* `PASS` - Pass
|
|
* `MANUAL` - Manual
|
|
x-spec-enum-id: ce612ddbfa464789
|
|
status_extended:
|
|
type: string
|
|
nullable: true
|
|
severity:
|
|
enum:
|
|
- critical
|
|
- high
|
|
- medium
|
|
- low
|
|
- informational
|
|
type: string
|
|
description: |-
|
|
* `critical` - Critical
|
|
* `high` - High
|
|
* `medium` - Medium
|
|
* `low` - Low
|
|
* `informational` - Informational
|
|
x-spec-enum-id: c93e070ed135d9bf
|
|
check_id:
|
|
type: string
|
|
maxLength: 100
|
|
check_metadata: {}
|
|
categories:
|
|
type: array
|
|
items:
|
|
type: string
|
|
maxLength: 100
|
|
nullable: true
|
|
description: Categories from check metadata for efficient filtering
|
|
resource_groups:
|
|
type: string
|
|
nullable: true
|
|
description: Resource group from check metadata for efficient filtering
|
|
raw_result: {}
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
first_seen_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
muted:
|
|
type: boolean
|
|
muted_reason:
|
|
type: string
|
|
nullable: true
|
|
minLength: 3
|
|
maxLength: 500
|
|
required:
|
|
- uid
|
|
- status
|
|
- severity
|
|
- check_id
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
scan:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- scans
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
resources:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- resources
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type resources
|
|
title: resources
|
|
readOnly: true
|
|
required:
|
|
- scan
|
|
FindingDynamicFilter:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- finding-dynamic-filters
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
services:
|
|
type: array
|
|
items:
|
|
type: string
|
|
regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
- services
|
|
- regions
|
|
FindingDynamicFilterResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/FindingDynamicFilter'
|
|
required:
|
|
- data
|
|
FindingGroup:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- finding-groups
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
check_id:
|
|
type: string
|
|
check_title:
|
|
type: string
|
|
nullable: true
|
|
check_description:
|
|
type: string
|
|
nullable: true
|
|
severity:
|
|
type: string
|
|
status:
|
|
type: string
|
|
muted:
|
|
type: boolean
|
|
impacted_providers:
|
|
type: array
|
|
items:
|
|
type: string
|
|
resources_fail:
|
|
type: integer
|
|
resources_total:
|
|
type: integer
|
|
pass_count:
|
|
type: integer
|
|
fail_count:
|
|
type: integer
|
|
manual_count:
|
|
type: integer
|
|
pass_muted_count:
|
|
type: integer
|
|
fail_muted_count:
|
|
type: integer
|
|
manual_muted_count:
|
|
type: integer
|
|
muted_count:
|
|
type: integer
|
|
new_count:
|
|
type: integer
|
|
changed_count:
|
|
type: integer
|
|
new_fail_count:
|
|
type: integer
|
|
new_fail_muted_count:
|
|
type: integer
|
|
new_pass_count:
|
|
type: integer
|
|
new_pass_muted_count:
|
|
type: integer
|
|
new_manual_count:
|
|
type: integer
|
|
new_manual_muted_count:
|
|
type: integer
|
|
changed_fail_count:
|
|
type: integer
|
|
changed_fail_muted_count:
|
|
type: integer
|
|
changed_pass_count:
|
|
type: integer
|
|
changed_pass_muted_count:
|
|
type: integer
|
|
changed_manual_count:
|
|
type: integer
|
|
changed_manual_muted_count:
|
|
type: integer
|
|
first_seen_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
last_seen_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
failing_since:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
required:
|
|
- id
|
|
- check_id
|
|
- severity
|
|
- status
|
|
- muted
|
|
- resources_fail
|
|
- resources_total
|
|
- pass_count
|
|
- fail_count
|
|
- manual_count
|
|
- pass_muted_count
|
|
- fail_muted_count
|
|
- manual_muted_count
|
|
- muted_count
|
|
- new_count
|
|
- changed_count
|
|
- new_fail_count
|
|
- new_fail_muted_count
|
|
- new_pass_count
|
|
- new_pass_muted_count
|
|
- new_manual_count
|
|
- new_manual_muted_count
|
|
- changed_fail_count
|
|
- changed_fail_muted_count
|
|
- changed_pass_count
|
|
- changed_pass_muted_count
|
|
- changed_manual_count
|
|
- changed_manual_muted_count
|
|
FindingGroupResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/FindingGroup'
|
|
required:
|
|
- data
|
|
FindingMetadata:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- findings-metadata
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
services:
|
|
type: array
|
|
items:
|
|
type: string
|
|
regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
resource_types:
|
|
type: array
|
|
items:
|
|
type: string
|
|
categories:
|
|
type: array
|
|
items:
|
|
type: string
|
|
groups:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
- services
|
|
- regions
|
|
- resource_types
|
|
- categories
|
|
FindingMetadataResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/FindingMetadata'
|
|
required:
|
|
- data
|
|
FindingResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Finding'
|
|
required:
|
|
- data
|
|
FindingsSeverityOverTime:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- findings-severity-over-time
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: date
|
|
critical:
|
|
type: integer
|
|
high:
|
|
type: integer
|
|
medium:
|
|
type: integer
|
|
low:
|
|
type: integer
|
|
informational:
|
|
type: integer
|
|
muted:
|
|
type: integer
|
|
scan_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
required:
|
|
- id
|
|
- critical
|
|
- high
|
|
- medium
|
|
- low
|
|
- informational
|
|
- muted
|
|
- scan_ids
|
|
FindingsSeverityOverTimeResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/FindingsSeverityOverTime'
|
|
required:
|
|
- data
|
|
Integration:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- integrations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
enabled:
|
|
type: boolean
|
|
connected:
|
|
type: boolean
|
|
nullable: true
|
|
connection_last_checked_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
integration_type:
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
type: string
|
|
description: |-
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
configuration: {}
|
|
required:
|
|
- integration_type
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
required:
|
|
- providers
|
|
IntegrationCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- integrations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
enabled:
|
|
type: boolean
|
|
connected:
|
|
type: boolean
|
|
readOnly: true
|
|
nullable: true
|
|
connection_last_checked_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
integration_type:
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
type: string
|
|
description: |-
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Amazon S3
|
|
properties:
|
|
bucket_name:
|
|
type: string
|
|
description: The name of the S3 bucket where files will be stored.
|
|
output_directory:
|
|
type: string
|
|
description: 'The directory path within the bucket where files
|
|
will be saved. Optional - defaults to "output" if not provided.
|
|
Path will be normalized to remove excessive slashes and invalid
|
|
characters are not allowed (< > : " | ? *). Maximum length is
|
|
900 characters.'
|
|
maxLength: 900
|
|
pattern: ^[^<>:"|?*]+$
|
|
default: output
|
|
required:
|
|
- bucket_name
|
|
- type: object
|
|
title: AWS Security Hub
|
|
properties:
|
|
send_only_fails:
|
|
type: boolean
|
|
default: false
|
|
description: If true, only findings with status 'FAIL' will be
|
|
sent to Security Hub.
|
|
archive_previous_findings:
|
|
type: boolean
|
|
default: false
|
|
description: If true, archives findings that are not present in
|
|
the current execution.
|
|
- type: object
|
|
title: JIRA
|
|
description: JIRA integration does not accept any configuration in
|
|
the payload. Leave it as an empty JSON object (`{}`).
|
|
properties: {}
|
|
additionalProperties: false
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Credentials
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to assume.
|
|
Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials, if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
- type: object
|
|
title: JIRA Credentials
|
|
properties:
|
|
user_mail:
|
|
type: string
|
|
format: email
|
|
description: The email address of the JIRA user account.
|
|
api_token:
|
|
type: string
|
|
description: The API token for authentication with JIRA. This
|
|
can be generated from your Atlassian account settings.
|
|
domain:
|
|
type: string
|
|
description: The JIRA domain/instance URL (e.g., 'your-domain.atlassian.net').
|
|
required:
|
|
- user_mail
|
|
- api_token
|
|
- domain
|
|
writeOnly: true
|
|
required:
|
|
- integration_type
|
|
- configuration
|
|
- credentials
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
IntegrationCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- integrations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
enabled:
|
|
type: boolean
|
|
connected:
|
|
type: boolean
|
|
readOnly: true
|
|
nullable: true
|
|
connection_last_checked_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
integration_type:
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
type: string
|
|
description: |-
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Amazon S3
|
|
properties:
|
|
bucket_name:
|
|
type: string
|
|
description: The name of the S3 bucket where files will be
|
|
stored.
|
|
output_directory:
|
|
type: string
|
|
description: 'The directory path within the bucket where files
|
|
will be saved. Optional - defaults to "output" if not provided.
|
|
Path will be normalized to remove excessive slashes and
|
|
invalid characters are not allowed (< > : " | ? *). Maximum
|
|
length is 900 characters.'
|
|
maxLength: 900
|
|
pattern: ^[^<>:"|?*]+$
|
|
default: output
|
|
required:
|
|
- bucket_name
|
|
- type: object
|
|
title: AWS Security Hub
|
|
properties:
|
|
send_only_fails:
|
|
type: boolean
|
|
default: false
|
|
description: If true, only findings with status 'FAIL' will
|
|
be sent to Security Hub.
|
|
archive_previous_findings:
|
|
type: boolean
|
|
default: false
|
|
description: If true, archives findings that are not present
|
|
in the current execution.
|
|
- type: object
|
|
title: JIRA
|
|
description: JIRA integration does not accept any configuration
|
|
in the payload. Leave it as an empty JSON object (`{}`).
|
|
properties: {}
|
|
additionalProperties: false
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Credentials
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to
|
|
assume. Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials,
|
|
if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
- type: object
|
|
title: JIRA Credentials
|
|
properties:
|
|
user_mail:
|
|
type: string
|
|
format: email
|
|
description: The email address of the JIRA user account.
|
|
api_token:
|
|
type: string
|
|
description: The API token for authentication with JIRA. This
|
|
can be generated from your Atlassian account settings.
|
|
domain:
|
|
type: string
|
|
description: The JIRA domain/instance URL (e.g., 'your-domain.atlassian.net').
|
|
required:
|
|
- user_mail
|
|
- api_token
|
|
- domain
|
|
writeOnly: true
|
|
required:
|
|
- integration_type
|
|
- configuration
|
|
- credentials
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
required:
|
|
- data
|
|
IntegrationCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/IntegrationCreate'
|
|
required:
|
|
- data
|
|
IntegrationJiraDispatchRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- integrations-jira-dispatches
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
project_key:
|
|
type: string
|
|
minLength: 1
|
|
issue_type:
|
|
type: string
|
|
minLength: 1
|
|
required:
|
|
- project_key
|
|
- issue_type
|
|
required:
|
|
- data
|
|
IntegrationJiraIssueTypes:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- jira-issue-types
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
project_key:
|
|
type: string
|
|
readOnly: true
|
|
issue_types:
|
|
type: array
|
|
items:
|
|
type: string
|
|
readOnly: true
|
|
IntegrationJiraIssueTypesResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/IntegrationJiraIssueTypes'
|
|
required:
|
|
- data
|
|
IntegrationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Integration'
|
|
required:
|
|
- data
|
|
IntegrationUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- integrations
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
enabled:
|
|
type: boolean
|
|
connected:
|
|
type: boolean
|
|
readOnly: true
|
|
nullable: true
|
|
connection_last_checked_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
integration_type:
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
type: string
|
|
description: |-
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
readOnly: true
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Amazon S3
|
|
properties:
|
|
bucket_name:
|
|
type: string
|
|
description: The name of the S3 bucket where files will be stored.
|
|
output_directory:
|
|
type: string
|
|
description: 'The directory path within the bucket where files
|
|
will be saved. Optional - defaults to "output" if not provided.
|
|
Path will be normalized to remove excessive slashes and invalid
|
|
characters are not allowed (< > : " | ? *). Maximum length is
|
|
900 characters.'
|
|
maxLength: 900
|
|
pattern: ^[^<>:"|?*]+$
|
|
default: output
|
|
required:
|
|
- bucket_name
|
|
- type: object
|
|
title: AWS Security Hub
|
|
properties:
|
|
send_only_fails:
|
|
type: boolean
|
|
default: false
|
|
description: If true, only findings with status 'FAIL' will be
|
|
sent to Security Hub.
|
|
archive_previous_findings:
|
|
type: boolean
|
|
default: false
|
|
description: If true, archives findings that are not present in
|
|
the current execution.
|
|
- type: object
|
|
title: JIRA
|
|
description: JIRA integration does not accept any configuration in
|
|
the payload. Leave it as an empty JSON object (`{}`).
|
|
properties: {}
|
|
additionalProperties: false
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Credentials
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to assume.
|
|
Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials, if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
- type: object
|
|
title: JIRA Credentials
|
|
properties:
|
|
user_mail:
|
|
type: string
|
|
format: email
|
|
description: The email address of the JIRA user account.
|
|
api_token:
|
|
type: string
|
|
description: The API token for authentication with JIRA. This
|
|
can be generated from your Atlassian account settings.
|
|
domain:
|
|
type: string
|
|
description: The JIRA domain/instance URL (e.g., 'your-domain.atlassian.net').
|
|
required:
|
|
- user_mail
|
|
- api_token
|
|
- domain
|
|
writeOnly: true
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
IntegrationUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/IntegrationUpdate'
|
|
required:
|
|
- data
|
|
Invitation:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- invitations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
email:
|
|
type: string
|
|
format: email
|
|
maxLength: 254
|
|
state:
|
|
enum:
|
|
- pending
|
|
- accepted
|
|
- expired
|
|
- revoked
|
|
type: string
|
|
description: |-
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
x-spec-enum-id: 92a1c1fd12e13e25
|
|
token:
|
|
type: string
|
|
readOnly: true
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
required:
|
|
- email
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
inviter:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
required:
|
|
- roles
|
|
InvitationAcceptRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- invitations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
invitation_token:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
required:
|
|
- invitation_token
|
|
required:
|
|
- data
|
|
InvitationCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- invitations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
format: email
|
|
maxLength: 254
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
description: UTC. Default 7 days. If this attribute is provided, it
|
|
must be at least 24 hours in the future.
|
|
state:
|
|
enum:
|
|
- pending
|
|
- accepted
|
|
- expired
|
|
- revoked
|
|
type: string
|
|
description: |-
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
x-spec-enum-id: 92a1c1fd12e13e25
|
|
readOnly: true
|
|
token:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- email
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
inviter:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
required:
|
|
- roles
|
|
InvitationCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- invitations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
format: email
|
|
minLength: 1
|
|
maxLength: 254
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
description: UTC. Default 7 days. If this attribute is provided,
|
|
it must be at least 24 hours in the future.
|
|
state:
|
|
enum:
|
|
- pending
|
|
- accepted
|
|
- expired
|
|
- revoked
|
|
type: string
|
|
description: |-
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
x-spec-enum-id: 92a1c1fd12e13e25
|
|
readOnly: true
|
|
token:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
required:
|
|
- email
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
inviter:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
required:
|
|
- roles
|
|
required:
|
|
- data
|
|
InvitationCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/InvitationCreate'
|
|
required:
|
|
- data
|
|
InvitationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Invitation'
|
|
required:
|
|
- data
|
|
InvitationUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- invitations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
format: email
|
|
maxLength: 254
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
state:
|
|
enum:
|
|
- pending
|
|
- accepted
|
|
- expired
|
|
- revoked
|
|
type: string
|
|
description: |-
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
x-spec-enum-id: 92a1c1fd12e13e25
|
|
readOnly: true
|
|
token:
|
|
type: string
|
|
readOnly: true
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
InvitationUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/InvitationUpdate'
|
|
required:
|
|
- data
|
|
LighthouseConfig:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Name of the configuration
|
|
maxLength: 100
|
|
minLength: 3
|
|
api_key:
|
|
type: string
|
|
model:
|
|
enum:
|
|
- gpt-4o-2024-11-20
|
|
- gpt-4o-2024-08-06
|
|
- gpt-4o-2024-05-13
|
|
- gpt-4o
|
|
- gpt-4o-mini-2024-07-18
|
|
- gpt-4o-mini
|
|
- gpt-5-2025-08-07
|
|
- gpt-5
|
|
- gpt-5-mini-2025-08-07
|
|
- gpt-5-mini
|
|
type: string
|
|
x-spec-enum-id: bd2108eb25b2d472
|
|
description: |-
|
|
Must be one of the supported model names
|
|
|
|
* `gpt-4o-2024-11-20` - GPT-4o v2024-11-20
|
|
* `gpt-4o-2024-08-06` - GPT-4o v2024-08-06
|
|
* `gpt-4o-2024-05-13` - GPT-4o v2024-05-13
|
|
* `gpt-4o` - GPT-4o Default
|
|
* `gpt-4o-mini-2024-07-18` - GPT-4o Mini v2024-07-18
|
|
* `gpt-4o-mini` - GPT-4o Mini Default
|
|
* `gpt-5-2025-08-07` - GPT-5 v2025-08-07
|
|
* `gpt-5` - GPT-5 Default
|
|
* `gpt-5-mini-2025-08-07` - GPT-5 Mini v2025-08-07
|
|
* `gpt-5-mini` - GPT-5 Mini Default
|
|
temperature:
|
|
type: number
|
|
format: double
|
|
description: Must be between 0 and 1
|
|
max_tokens:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
description: Must be between 500 and 5000
|
|
business_context:
|
|
type: string
|
|
description: Additional business context for this AI model configuration
|
|
is_active:
|
|
type: boolean
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
LighthouseConfigCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Name of the configuration
|
|
maxLength: 100
|
|
minLength: 3
|
|
api_key:
|
|
type: string
|
|
writeOnly: true
|
|
model:
|
|
enum:
|
|
- gpt-4o-2024-11-20
|
|
- gpt-4o-2024-08-06
|
|
- gpt-4o-2024-05-13
|
|
- gpt-4o
|
|
- gpt-4o-mini-2024-07-18
|
|
- gpt-4o-mini
|
|
- gpt-5-2025-08-07
|
|
- gpt-5
|
|
- gpt-5-mini-2025-08-07
|
|
- gpt-5-mini
|
|
type: string
|
|
x-spec-enum-id: bd2108eb25b2d472
|
|
description: |-
|
|
Must be one of the supported model names
|
|
|
|
* `gpt-4o-2024-11-20` - GPT-4o v2024-11-20
|
|
* `gpt-4o-2024-08-06` - GPT-4o v2024-08-06
|
|
* `gpt-4o-2024-05-13` - GPT-4o v2024-05-13
|
|
* `gpt-4o` - GPT-4o Default
|
|
* `gpt-4o-mini-2024-07-18` - GPT-4o Mini v2024-07-18
|
|
* `gpt-4o-mini` - GPT-4o Mini Default
|
|
* `gpt-5-2025-08-07` - GPT-5 v2025-08-07
|
|
* `gpt-5` - GPT-5 Default
|
|
* `gpt-5-mini-2025-08-07` - GPT-5 Mini v2025-08-07
|
|
* `gpt-5-mini` - GPT-5 Mini Default
|
|
temperature:
|
|
type: number
|
|
format: double
|
|
description: Must be between 0 and 1
|
|
max_tokens:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
description: Must be between 500 and 5000
|
|
business_context:
|
|
type: string
|
|
description: Additional business context for this AI model configuration
|
|
is_active:
|
|
type: boolean
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
- api_key
|
|
LighthouseConfigCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
description: Name of the configuration
|
|
maxLength: 100
|
|
api_key:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
model:
|
|
enum:
|
|
- gpt-4o-2024-11-20
|
|
- gpt-4o-2024-08-06
|
|
- gpt-4o-2024-05-13
|
|
- gpt-4o
|
|
- gpt-4o-mini-2024-07-18
|
|
- gpt-4o-mini
|
|
- gpt-5-2025-08-07
|
|
- gpt-5
|
|
- gpt-5-mini-2025-08-07
|
|
- gpt-5-mini
|
|
type: string
|
|
x-spec-enum-id: bd2108eb25b2d472
|
|
description: |-
|
|
Must be one of the supported model names
|
|
|
|
* `gpt-4o-2024-11-20` - GPT-4o v2024-11-20
|
|
* `gpt-4o-2024-08-06` - GPT-4o v2024-08-06
|
|
* `gpt-4o-2024-05-13` - GPT-4o v2024-05-13
|
|
* `gpt-4o` - GPT-4o Default
|
|
* `gpt-4o-mini-2024-07-18` - GPT-4o Mini v2024-07-18
|
|
* `gpt-4o-mini` - GPT-4o Mini Default
|
|
* `gpt-5-2025-08-07` - GPT-5 v2025-08-07
|
|
* `gpt-5` - GPT-5 Default
|
|
* `gpt-5-mini-2025-08-07` - GPT-5 Mini v2025-08-07
|
|
* `gpt-5-mini` - GPT-5 Mini Default
|
|
temperature:
|
|
type: number
|
|
format: double
|
|
description: Must be between 0 and 1
|
|
max_tokens:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
description: Must be between 500 and 5000
|
|
business_context:
|
|
type: string
|
|
description: Additional business context for this AI model configuration
|
|
is_active:
|
|
type: boolean
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
- api_key
|
|
required:
|
|
- data
|
|
LighthouseConfigCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseConfigCreate'
|
|
required:
|
|
- data
|
|
LighthouseConfigUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
description: Name of the configuration
|
|
maxLength: 100
|
|
minLength: 3
|
|
api_key:
|
|
type: string
|
|
writeOnly: true
|
|
model:
|
|
enum:
|
|
- gpt-4o-2024-11-20
|
|
- gpt-4o-2024-08-06
|
|
- gpt-4o-2024-05-13
|
|
- gpt-4o
|
|
- gpt-4o-mini-2024-07-18
|
|
- gpt-4o-mini
|
|
- gpt-5-2025-08-07
|
|
- gpt-5
|
|
- gpt-5-mini-2025-08-07
|
|
- gpt-5-mini
|
|
type: string
|
|
x-spec-enum-id: bd2108eb25b2d472
|
|
description: |-
|
|
Must be one of the supported model names
|
|
|
|
* `gpt-4o-2024-11-20` - GPT-4o v2024-11-20
|
|
* `gpt-4o-2024-08-06` - GPT-4o v2024-08-06
|
|
* `gpt-4o-2024-05-13` - GPT-4o v2024-05-13
|
|
* `gpt-4o` - GPT-4o Default
|
|
* `gpt-4o-mini-2024-07-18` - GPT-4o Mini v2024-07-18
|
|
* `gpt-4o-mini` - GPT-4o Mini Default
|
|
* `gpt-5-2025-08-07` - GPT-5 v2025-08-07
|
|
* `gpt-5` - GPT-5 Default
|
|
* `gpt-5-mini-2025-08-07` - GPT-5 Mini v2025-08-07
|
|
* `gpt-5-mini` - GPT-5 Mini Default
|
|
temperature:
|
|
type: number
|
|
format: double
|
|
description: Must be between 0 and 1
|
|
max_tokens:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
description: Must be between 500 and 5000
|
|
business_context:
|
|
type: string
|
|
description: Additional business context for this AI model configuration
|
|
is_active:
|
|
type: boolean
|
|
readOnly: true
|
|
LighthouseConfigUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseConfigUpdate'
|
|
required:
|
|
- data
|
|
LighthouseProviderConfig:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-providers
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
provider_type:
|
|
enum:
|
|
- openai
|
|
- bedrock
|
|
- openai_compatible
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
description: |-
|
|
LLM provider name
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
base_url:
|
|
type: string
|
|
format: uri
|
|
nullable: true
|
|
maxLength: 200
|
|
is_active:
|
|
type: boolean
|
|
readOnly: true
|
|
credentials:
|
|
readOnly: true
|
|
required:
|
|
- provider_type
|
|
LighthouseProviderConfigCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-providers
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_type:
|
|
enum:
|
|
- openai
|
|
- bedrock
|
|
- openai_compatible
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
description: |-
|
|
LLM provider type. Determines which credential format to use. See 'credentials' field documentation for provider-specific requirements.
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
base_url:
|
|
type: string
|
|
format: uri
|
|
nullable: true
|
|
description: Base URL for the LLM provider API. Required for 'openai_compatible'
|
|
provider type.
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: OpenAI Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: OpenAI API key. Must start with 'sk-' followed by
|
|
alphanumeric characters, hyphens, or underscores.
|
|
pattern: ^sk-[\w-]+$
|
|
required:
|
|
- api_key
|
|
- title: AWS Bedrock Credentials
|
|
oneOf:
|
|
- title: IAM Access Key Pair
|
|
type: object
|
|
description: Authenticate with AWS access key and secret key. Recommended
|
|
when you manage IAM users or roles.
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: AWS access key ID.
|
|
pattern: ^AKIA[0-9A-Z]{16}$
|
|
secret_access_key:
|
|
type: string
|
|
description: AWS secret access key.
|
|
pattern: ^[A-Za-z0-9/+=]{40}$
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- access_key_id
|
|
- secret_access_key
|
|
- region
|
|
- title: Amazon Bedrock API Key
|
|
type: object
|
|
description: Authenticate with an Amazon Bedrock API key (bearer
|
|
token). Region is still required.
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Amazon Bedrock API key (bearer token).
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- api_key
|
|
- region
|
|
- type: object
|
|
title: OpenAI Compatible Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: 'API key for OpenAI-compatible provider. The format
|
|
varies by provider. Note: The ''base_url'' field (separate from
|
|
credentials) is required when using this provider type.'
|
|
required:
|
|
- api_key
|
|
writeOnly: true
|
|
is_active:
|
|
type: boolean
|
|
required:
|
|
- provider_type
|
|
- credentials
|
|
LighthouseProviderConfigCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-providers
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_type:
|
|
enum:
|
|
- openai
|
|
- bedrock
|
|
- openai_compatible
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
description: |-
|
|
LLM provider type. Determines which credential format to use. See 'credentials' field documentation for provider-specific requirements.
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
base_url:
|
|
type: string
|
|
format: uri
|
|
nullable: true
|
|
minLength: 1
|
|
description: Base URL for the LLM provider API. Required for 'openai_compatible'
|
|
provider type.
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: OpenAI Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: OpenAI API key. Must start with 'sk-' followed
|
|
by alphanumeric characters, hyphens, or underscores.
|
|
pattern: ^sk-[\w-]+$
|
|
required:
|
|
- api_key
|
|
- title: AWS Bedrock Credentials
|
|
oneOf:
|
|
- title: IAM Access Key Pair
|
|
type: object
|
|
description: Authenticate with AWS access key and secret key.
|
|
Recommended when you manage IAM users or roles.
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: AWS access key ID.
|
|
pattern: ^AKIA[0-9A-Z]{16}$
|
|
secret_access_key:
|
|
type: string
|
|
description: AWS secret access key.
|
|
pattern: ^[A-Za-z0-9/+=]{40}$
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- access_key_id
|
|
- secret_access_key
|
|
- region
|
|
- title: Amazon Bedrock API Key
|
|
type: object
|
|
description: Authenticate with an Amazon Bedrock API key (bearer
|
|
token). Region is still required.
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Amazon Bedrock API key (bearer token).
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- api_key
|
|
- region
|
|
- type: object
|
|
title: OpenAI Compatible Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: 'API key for OpenAI-compatible provider. The
|
|
format varies by provider. Note: The ''base_url'' field
|
|
(separate from credentials) is required when using this
|
|
provider type.'
|
|
required:
|
|
- api_key
|
|
writeOnly: true
|
|
is_active:
|
|
type: boolean
|
|
required:
|
|
- provider_type
|
|
- credentials
|
|
required:
|
|
- data
|
|
LighthouseProviderConfigCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigCreate'
|
|
required:
|
|
- data
|
|
LighthouseProviderConfigResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseProviderConfig'
|
|
required:
|
|
- data
|
|
LighthouseProviderConfigUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-providers
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_type:
|
|
enum:
|
|
- openai
|
|
- bedrock
|
|
- openai_compatible
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
readOnly: true
|
|
description: |-
|
|
LLM provider name
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
base_url:
|
|
type: string
|
|
format: uri
|
|
nullable: true
|
|
description: Base URL for the LLM provider API. Required for 'openai_compatible'
|
|
provider type.
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: OpenAI Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: OpenAI API key. Must start with 'sk-' followed by
|
|
alphanumeric characters, hyphens, or underscores.
|
|
pattern: ^sk-[\w-]+$
|
|
required:
|
|
- api_key
|
|
- title: AWS Bedrock Credentials
|
|
oneOf:
|
|
- title: IAM Access Key Pair
|
|
type: object
|
|
description: Authenticate with AWS access key and secret key. Recommended
|
|
when you manage IAM users or roles.
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: AWS access key ID.
|
|
pattern: ^AKIA[0-9A-Z]{16}$
|
|
secret_access_key:
|
|
type: string
|
|
description: AWS secret access key.
|
|
pattern: ^[A-Za-z0-9/+=]{40}$
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- access_key_id
|
|
- secret_access_key
|
|
- region
|
|
- title: Amazon Bedrock API Key
|
|
type: object
|
|
description: Authenticate with an Amazon Bedrock API key (bearer
|
|
token). Region is still required.
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Amazon Bedrock API key (bearer token).
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- api_key
|
|
- region
|
|
- type: object
|
|
title: OpenAI Compatible Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: 'API key for OpenAI-compatible provider. The format
|
|
varies by provider. Note: The ''base_url'' field (separate from
|
|
credentials) is required when using this provider type.'
|
|
required:
|
|
- api_key
|
|
writeOnly: true
|
|
is_active:
|
|
type: boolean
|
|
LighthouseProviderConfigUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseProviderConfigUpdate'
|
|
required:
|
|
- data
|
|
LighthouseProviderModels:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-models
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
model_id:
|
|
type: string
|
|
maxLength: 100
|
|
model_name:
|
|
type: string
|
|
maxLength: 100
|
|
default_parameters: {}
|
|
required:
|
|
- model_id
|
|
- model_name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider_configuration:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- lighthouse-providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
LighthouseProviderModelsResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseProviderModels'
|
|
required:
|
|
- data
|
|
LighthouseTenantConfig:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
business_context:
|
|
type: string
|
|
default_provider:
|
|
type: string
|
|
maxLength: 50
|
|
default_models: {}
|
|
url:
|
|
type: string
|
|
readOnly: true
|
|
LighthouseTenantConfigUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
business_context:
|
|
type: string
|
|
default_provider:
|
|
type: string
|
|
maxLength: 50
|
|
default_models: {}
|
|
LighthouseTenantConfigUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/LighthouseTenantConfigUpdate'
|
|
required:
|
|
- data
|
|
Membership:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- memberships
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
role:
|
|
enum:
|
|
- owner
|
|
- member
|
|
type: string
|
|
description: |-
|
|
* `owner` - Owner
|
|
* `member` - Member
|
|
x-spec-enum-id: 12c359ee5dc51001
|
|
date_joined:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- role
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
user:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uri
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
tenant:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uri
|
|
type:
|
|
type: string
|
|
enum:
|
|
- tenants
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
MembershipResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Membership'
|
|
required:
|
|
- data
|
|
MuteRule:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- mute-rules
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
description: Human-readable name for this rule
|
|
maxLength: 100
|
|
minLength: 3
|
|
reason:
|
|
type: string
|
|
description: Reason for muting
|
|
minLength: 3
|
|
maxLength: 500
|
|
enabled:
|
|
type: boolean
|
|
description: Whether this rule is currently enabled
|
|
finding_uids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
readOnly: true
|
|
description: List of finding UIDs that are muted by this rule
|
|
required:
|
|
- name
|
|
- reason
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
created_by:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
MuteRuleCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- mute-rules
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
description: Human-readable name for this rule
|
|
maxLength: 100
|
|
minLength: 3
|
|
reason:
|
|
type: string
|
|
description: Reason for muting
|
|
minLength: 3
|
|
maxLength: 500
|
|
enabled:
|
|
type: boolean
|
|
readOnly: true
|
|
description: Whether this rule is currently enabled
|
|
finding_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
writeOnly: true
|
|
description: List of Finding IDs to mute (will be converted to UIDs)
|
|
finding_uids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
readOnly: true
|
|
description: List of finding UIDs that are muted by this rule
|
|
required:
|
|
- name
|
|
- reason
|
|
- finding_ids
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
created_by:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
MuteRuleCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- mute-rules
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
description: Human-readable name for this rule
|
|
maxLength: 100
|
|
reason:
|
|
type: string
|
|
minLength: 3
|
|
description: Reason for muting
|
|
maxLength: 500
|
|
enabled:
|
|
type: boolean
|
|
readOnly: true
|
|
description: Whether this rule is currently enabled
|
|
finding_ids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
format: uuid
|
|
writeOnly: true
|
|
description: List of Finding IDs to mute (will be converted to UIDs)
|
|
finding_uids:
|
|
type: array
|
|
items:
|
|
type: string
|
|
minLength: 1
|
|
readOnly: true
|
|
description: List of finding UIDs that are muted by this rule
|
|
required:
|
|
- name
|
|
- reason
|
|
- finding_ids
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
created_by:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
required:
|
|
- data
|
|
MuteRuleCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/MuteRuleCreate'
|
|
required:
|
|
- data
|
|
MuteRuleResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/MuteRule'
|
|
required:
|
|
- data
|
|
OpenApiResponseResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/TenantApiKey'
|
|
required:
|
|
- data
|
|
OverviewFinding:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- findings-overview
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
default: n/a
|
|
new:
|
|
type: integer
|
|
changed:
|
|
type: integer
|
|
unchanged:
|
|
type: integer
|
|
fail_new:
|
|
type: integer
|
|
fail_changed:
|
|
type: integer
|
|
pass_new:
|
|
type: integer
|
|
pass_changed:
|
|
type: integer
|
|
muted_new:
|
|
type: integer
|
|
muted_changed:
|
|
type: integer
|
|
total:
|
|
type: integer
|
|
fail:
|
|
type: integer
|
|
muted:
|
|
type: integer
|
|
pass:
|
|
type: integer
|
|
required:
|
|
- new
|
|
- changed
|
|
- unchanged
|
|
- fail_new
|
|
- fail_changed
|
|
- pass_new
|
|
- pass_changed
|
|
- muted_new
|
|
- muted_changed
|
|
- total
|
|
- fail
|
|
- muted
|
|
- pass
|
|
OverviewFindingResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/OverviewFinding'
|
|
required:
|
|
- data
|
|
OverviewProvider:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- providers-overview
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
findings:
|
|
type: object
|
|
properties:
|
|
pass:
|
|
type: integer
|
|
fail:
|
|
type: integer
|
|
muted:
|
|
type: integer
|
|
total:
|
|
type: integer
|
|
readOnly: true
|
|
resources:
|
|
type: object
|
|
properties:
|
|
total:
|
|
type: integer
|
|
readOnly: true
|
|
required:
|
|
- id
|
|
OverviewProviderCount:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- providers-count-overview
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
count:
|
|
type: integer
|
|
required:
|
|
- id
|
|
- count
|
|
OverviewProviderCountResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/OverviewProviderCount'
|
|
required:
|
|
- data
|
|
OverviewProviderResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/OverviewProvider'
|
|
required:
|
|
- data
|
|
OverviewRegion:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- regions-overview
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
readOnly: true
|
|
provider_type:
|
|
type: string
|
|
region:
|
|
type: string
|
|
total:
|
|
type: integer
|
|
fail:
|
|
type: integer
|
|
muted:
|
|
type: integer
|
|
pass:
|
|
type: integer
|
|
required:
|
|
- provider_type
|
|
- region
|
|
- total
|
|
- fail
|
|
- muted
|
|
- pass
|
|
OverviewRegionResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/OverviewRegion'
|
|
required:
|
|
- data
|
|
OverviewService:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- services-overview
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
total:
|
|
type: integer
|
|
fail:
|
|
type: integer
|
|
muted:
|
|
type: integer
|
|
pass:
|
|
type: integer
|
|
required:
|
|
- id
|
|
- total
|
|
- fail
|
|
- muted
|
|
- pass
|
|
OverviewServiceResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/OverviewService'
|
|
required:
|
|
- data
|
|
OverviewSeverity:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- findings-severity-overview
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
default: n/a
|
|
critical:
|
|
type: integer
|
|
high:
|
|
type: integer
|
|
medium:
|
|
type: integer
|
|
low:
|
|
type: integer
|
|
informational:
|
|
type: integer
|
|
required:
|
|
- critical
|
|
- high
|
|
- medium
|
|
- low
|
|
- informational
|
|
OverviewSeverityResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/OverviewSeverity'
|
|
required:
|
|
- data
|
|
PaginatedAttackPathsQueryList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AttackPathsQuery'
|
|
required:
|
|
- data
|
|
PaginatedAttackPathsScanList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AttackPathsScan'
|
|
required:
|
|
- data
|
|
PaginatedAttackSurfaceOverviewList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/AttackSurfaceOverview'
|
|
required:
|
|
- data
|
|
PaginatedCategoryOverviewList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/CategoryOverview'
|
|
required:
|
|
- data
|
|
PaginatedComplianceOverviewAttributesList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ComplianceOverviewAttributes'
|
|
required:
|
|
- data
|
|
PaginatedComplianceOverviewDetailList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ComplianceOverviewDetail'
|
|
required:
|
|
- data
|
|
PaginatedComplianceOverviewList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ComplianceOverview'
|
|
required:
|
|
- data
|
|
PaginatedComplianceWatchlistOverviewList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ComplianceWatchlistOverview'
|
|
required:
|
|
- data
|
|
PaginatedFindingGroupList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/FindingGroup'
|
|
required:
|
|
- data
|
|
PaginatedFindingList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Finding'
|
|
required:
|
|
- data
|
|
PaginatedIntegrationList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Integration'
|
|
required:
|
|
- data
|
|
PaginatedInvitationList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Invitation'
|
|
required:
|
|
- data
|
|
PaginatedLighthouseConfigList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LighthouseConfig'
|
|
required:
|
|
- data
|
|
PaginatedLighthouseProviderConfigList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LighthouseProviderConfig'
|
|
required:
|
|
- data
|
|
PaginatedLighthouseProviderModelsList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LighthouseProviderModels'
|
|
required:
|
|
- data
|
|
PaginatedLighthouseTenantConfigList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/LighthouseTenantConfig'
|
|
required:
|
|
- data
|
|
PaginatedMembershipList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Membership'
|
|
required:
|
|
- data
|
|
PaginatedMuteRuleList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/MuteRule'
|
|
required:
|
|
- data
|
|
PaginatedProcessorList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Processor'
|
|
required:
|
|
- data
|
|
PaginatedProviderGroupList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ProviderGroup'
|
|
required:
|
|
- data
|
|
PaginatedProviderList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Provider'
|
|
required:
|
|
- data
|
|
PaginatedProviderSecretList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ProviderSecret'
|
|
required:
|
|
- data
|
|
PaginatedResourceEventList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ResourceEvent'
|
|
required:
|
|
- data
|
|
PaginatedResourceGroupOverviewList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ResourceGroupOverview'
|
|
required:
|
|
- data
|
|
PaginatedResourceList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Resource'
|
|
required:
|
|
- data
|
|
PaginatedRoleList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Role'
|
|
required:
|
|
- data
|
|
PaginatedSAMLConfigurationList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/SAMLConfiguration'
|
|
required:
|
|
- data
|
|
PaginatedScanList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Scan'
|
|
required:
|
|
- data
|
|
PaginatedTaskList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Task'
|
|
required:
|
|
- data
|
|
PaginatedTenantApiKeyList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/TenantApiKey'
|
|
required:
|
|
- data
|
|
PaginatedTenantList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/Tenant'
|
|
required:
|
|
- data
|
|
PaginatedUserList:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/User'
|
|
required:
|
|
- data
|
|
PatchedIntegrationUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- integrations
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
enabled:
|
|
type: boolean
|
|
connected:
|
|
type: boolean
|
|
readOnly: true
|
|
nullable: true
|
|
connection_last_checked_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
integration_type:
|
|
enum:
|
|
- amazon_s3
|
|
- aws_security_hub
|
|
- jira
|
|
- slack
|
|
type: string
|
|
description: |-
|
|
* `amazon_s3` - Amazon S3
|
|
* `aws_security_hub` - AWS Security Hub
|
|
* `jira` - JIRA
|
|
* `slack` - Slack
|
|
x-spec-enum-id: 6cfd0ff9cf4d6dcc
|
|
readOnly: true
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Amazon S3
|
|
properties:
|
|
bucket_name:
|
|
type: string
|
|
description: The name of the S3 bucket where files will be
|
|
stored.
|
|
output_directory:
|
|
type: string
|
|
description: 'The directory path within the bucket where files
|
|
will be saved. Optional - defaults to "output" if not provided.
|
|
Path will be normalized to remove excessive slashes and
|
|
invalid characters are not allowed (< > : " | ? *). Maximum
|
|
length is 900 characters.'
|
|
maxLength: 900
|
|
pattern: ^[^<>:"|?*]+$
|
|
default: output
|
|
required:
|
|
- bucket_name
|
|
- type: object
|
|
title: AWS Security Hub
|
|
properties:
|
|
send_only_fails:
|
|
type: boolean
|
|
default: false
|
|
description: If true, only findings with status 'FAIL' will
|
|
be sent to Security Hub.
|
|
archive_previous_findings:
|
|
type: boolean
|
|
default: false
|
|
description: If true, archives findings that are not present
|
|
in the current execution.
|
|
- type: object
|
|
title: JIRA
|
|
description: JIRA integration does not accept any configuration
|
|
in the payload. Leave it as an empty JSON object (`{}`).
|
|
properties: {}
|
|
additionalProperties: false
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Credentials
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to
|
|
assume. Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials,
|
|
if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
- type: object
|
|
title: JIRA Credentials
|
|
properties:
|
|
user_mail:
|
|
type: string
|
|
format: email
|
|
description: The email address of the JIRA user account.
|
|
api_token:
|
|
type: string
|
|
description: The API token for authentication with JIRA. This
|
|
can be generated from your Atlassian account settings.
|
|
domain:
|
|
type: string
|
|
description: The JIRA domain/instance URL (e.g., 'your-domain.atlassian.net').
|
|
required:
|
|
- user_mail
|
|
- api_token
|
|
- domain
|
|
writeOnly: true
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
required:
|
|
- data
|
|
PatchedInvitationUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- invitations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
format: email
|
|
minLength: 1
|
|
maxLength: 254
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
state:
|
|
enum:
|
|
- pending
|
|
- accepted
|
|
- expired
|
|
- revoked
|
|
type: string
|
|
description: |-
|
|
* `pending` - Invitation is pending
|
|
* `accepted` - Invitation was accepted by a user
|
|
* `expired` - Invitation expired after the configured time
|
|
* `revoked` - Invitation was revoked by a user
|
|
x-spec-enum-id: 92a1c1fd12e13e25
|
|
readOnly: true
|
|
token:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
required:
|
|
- data
|
|
PatchedLighthouseConfigUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
description: Name of the configuration
|
|
maxLength: 100
|
|
api_key:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
model:
|
|
enum:
|
|
- gpt-4o-2024-11-20
|
|
- gpt-4o-2024-08-06
|
|
- gpt-4o-2024-05-13
|
|
- gpt-4o
|
|
- gpt-4o-mini-2024-07-18
|
|
- gpt-4o-mini
|
|
- gpt-5-2025-08-07
|
|
- gpt-5
|
|
- gpt-5-mini-2025-08-07
|
|
- gpt-5-mini
|
|
type: string
|
|
x-spec-enum-id: bd2108eb25b2d472
|
|
description: |-
|
|
Must be one of the supported model names
|
|
|
|
* `gpt-4o-2024-11-20` - GPT-4o v2024-11-20
|
|
* `gpt-4o-2024-08-06` - GPT-4o v2024-08-06
|
|
* `gpt-4o-2024-05-13` - GPT-4o v2024-05-13
|
|
* `gpt-4o` - GPT-4o Default
|
|
* `gpt-4o-mini-2024-07-18` - GPT-4o Mini v2024-07-18
|
|
* `gpt-4o-mini` - GPT-4o Mini Default
|
|
* `gpt-5-2025-08-07` - GPT-5 v2025-08-07
|
|
* `gpt-5` - GPT-5 Default
|
|
* `gpt-5-mini-2025-08-07` - GPT-5 Mini v2025-08-07
|
|
* `gpt-5-mini` - GPT-5 Mini Default
|
|
temperature:
|
|
type: number
|
|
format: double
|
|
description: Must be between 0 and 1
|
|
max_tokens:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
description: Must be between 500 and 5000
|
|
business_context:
|
|
type: string
|
|
description: Additional business context for this AI model configuration
|
|
is_active:
|
|
type: boolean
|
|
readOnly: true
|
|
required:
|
|
- data
|
|
PatchedLighthouseProviderConfigUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-providers
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_type:
|
|
enum:
|
|
- openai
|
|
- bedrock
|
|
- openai_compatible
|
|
type: string
|
|
x-spec-enum-id: 30bc523cb9ec0e8b
|
|
readOnly: true
|
|
description: |-
|
|
LLM provider name
|
|
|
|
* `openai` - OpenAI
|
|
* `bedrock` - AWS Bedrock
|
|
* `openai_compatible` - OpenAI Compatible
|
|
base_url:
|
|
type: string
|
|
format: uri
|
|
nullable: true
|
|
minLength: 1
|
|
description: Base URL for the LLM provider API. Required for 'openai_compatible'
|
|
provider type.
|
|
credentials:
|
|
oneOf:
|
|
- type: object
|
|
title: OpenAI Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: OpenAI API key. Must start with 'sk-' followed
|
|
by alphanumeric characters, hyphens, or underscores.
|
|
pattern: ^sk-[\w-]+$
|
|
required:
|
|
- api_key
|
|
- title: AWS Bedrock Credentials
|
|
oneOf:
|
|
- title: IAM Access Key Pair
|
|
type: object
|
|
description: Authenticate with AWS access key and secret key.
|
|
Recommended when you manage IAM users or roles.
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: AWS access key ID.
|
|
pattern: ^AKIA[0-9A-Z]{16}$
|
|
secret_access_key:
|
|
type: string
|
|
description: AWS secret access key.
|
|
pattern: ^[A-Za-z0-9/+=]{40}$
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- access_key_id
|
|
- secret_access_key
|
|
- region
|
|
- title: Amazon Bedrock API Key
|
|
type: object
|
|
description: Authenticate with an Amazon Bedrock API key (bearer
|
|
token). Region is still required.
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Amazon Bedrock API key (bearer token).
|
|
region:
|
|
type: string
|
|
description: 'AWS region identifier where Bedrock is available.
|
|
Examples: us-east-1, us-west-2, eu-west-1, ap-northeast-1.'
|
|
pattern: ^[a-z]{2}-[a-z]+-\d+$
|
|
required:
|
|
- api_key
|
|
- region
|
|
- type: object
|
|
title: OpenAI Compatible Credentials
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: 'API key for OpenAI-compatible provider. The
|
|
format varies by provider. Note: The ''base_url'' field
|
|
(separate from credentials) is required when using this
|
|
provider type.'
|
|
required:
|
|
- api_key
|
|
writeOnly: true
|
|
is_active:
|
|
type: boolean
|
|
required:
|
|
- data
|
|
PatchedLighthouseTenantConfigUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- lighthouse-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
business_context:
|
|
type: string
|
|
default_provider:
|
|
type: string
|
|
maxLength: 50
|
|
default_models: {}
|
|
required:
|
|
- data
|
|
PatchedMuteRuleUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- mute-rules
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
description: Human-readable name for this rule
|
|
maxLength: 100
|
|
reason:
|
|
type: string
|
|
minLength: 3
|
|
description: Reason for muting
|
|
maxLength: 500
|
|
enabled:
|
|
type: boolean
|
|
description: Whether this rule is currently enabled
|
|
required:
|
|
- data
|
|
PatchedProcessorUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- processors
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Mutelist
|
|
properties:
|
|
Mutelist:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Checks:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Exceptions:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
additionalProperties: false
|
|
Description:
|
|
type: string
|
|
required:
|
|
- Regions
|
|
- Resources
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Checks
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Accounts
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- configuration
|
|
required:
|
|
- data
|
|
PatchedProviderGroupMembershipRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider_groups-provider
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ProviderResourceIdentifierRequest'
|
|
description: List of resource identifier objects representing providers.
|
|
required:
|
|
- providers
|
|
required:
|
|
- data
|
|
PatchedProviderGroupUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-groups
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 255
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
required:
|
|
- data
|
|
PatchedProviderSecretUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-secrets
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
secret_type:
|
|
enum:
|
|
- static
|
|
- role
|
|
- service_account
|
|
type: string
|
|
description: |-
|
|
* `static` - Key-value pairs
|
|
* `role` - Role assumption
|
|
* `service_account` - GCP Service Account Key
|
|
x-spec-enum-id: 20c74ebcd6671497
|
|
secret:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Static Credentials
|
|
properties:
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Required for environments
|
|
where no IAM role is being assumed and direct AWS access
|
|
is needed.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Must accompany 'aws_access_key_id'
|
|
to authorize access to AWS resources.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token associated with temporary credentials.
|
|
Only needed for session-based or temporary AWS access.
|
|
required:
|
|
- aws_access_key_id
|
|
- aws_secret_access_key
|
|
- type: object
|
|
title: AWS Assume Role
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to
|
|
assume. Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials,
|
|
if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
required:
|
|
- role_arn
|
|
- external_id
|
|
- type: object
|
|
title: Azure Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory
|
|
where the application is registered.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- type: object
|
|
title: M365 Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory
|
|
where the application is registered.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
user:
|
|
type: email
|
|
description: User microsoft email address.
|
|
deprecated: true
|
|
password:
|
|
type: string
|
|
description: User password.
|
|
deprecated: true
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- user
|
|
- password
|
|
- type: object
|
|
title: M365 Certificate Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory
|
|
where the application is registered.
|
|
certificate_content:
|
|
type: string
|
|
description: The certificate content in base64 format for
|
|
certificate-based authentication.
|
|
required:
|
|
- client_id
|
|
- tenant_id
|
|
- certificate_content
|
|
- type: object
|
|
title: GCP Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The client ID from Google Cloud, used to identify
|
|
the application for GCP access.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the GCP client
|
|
ID, required for secure access.
|
|
refresh_token:
|
|
type: string
|
|
description: A refresh token that allows the application to
|
|
obtain new access tokens for extended use.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- refresh_token
|
|
- type: object
|
|
title: GCP Service Account Key
|
|
properties:
|
|
service_account_key:
|
|
type: object
|
|
description: The service account key for GCP.
|
|
required:
|
|
- service_account_key
|
|
- type: object
|
|
title: Google Workspace Service Account
|
|
properties:
|
|
credentials_content:
|
|
type: string
|
|
description: The service account JSON credentials content
|
|
for Google Workspace API access with domain-wide delegation
|
|
enabled.
|
|
delegated_user:
|
|
type: string
|
|
format: email
|
|
description: The email address of the Google Workspace super
|
|
admin user to impersonate for domain-wide delegation.
|
|
required:
|
|
- credentials_content
|
|
- delegated_user
|
|
- type: object
|
|
title: Kubernetes Static Credentials
|
|
properties:
|
|
kubeconfig_content:
|
|
type: string
|
|
description: The content of the Kubernetes kubeconfig file,
|
|
encoded as a string.
|
|
required:
|
|
- kubeconfig_content
|
|
- type: object
|
|
title: GitHub Personal Access Token
|
|
properties:
|
|
personal_access_token:
|
|
type: string
|
|
description: GitHub personal access token for authentication.
|
|
required:
|
|
- personal_access_token
|
|
- type: object
|
|
title: GitHub OAuth App Token
|
|
properties:
|
|
oauth_app_token:
|
|
type: string
|
|
description: GitHub OAuth App token for authentication.
|
|
required:
|
|
- oauth_app_token
|
|
- type: object
|
|
title: GitHub App Credentials
|
|
properties:
|
|
github_app_id:
|
|
type: integer
|
|
description: GitHub App ID for authentication.
|
|
github_app_key:
|
|
type: string
|
|
description: Path to the GitHub App private key file.
|
|
required:
|
|
- github_app_id
|
|
- github_app_key
|
|
- type: object
|
|
title: IaC Repository Credentials
|
|
properties:
|
|
repository_url:
|
|
type: string
|
|
description: Repository URL to scan for IaC files.
|
|
access_token:
|
|
type: string
|
|
description: Optional access token for private repositories.
|
|
required:
|
|
- repository_url
|
|
- type: object
|
|
title: Oracle Cloud Infrastructure (OCI) API Key Credentials
|
|
properties:
|
|
user:
|
|
type: string
|
|
description: The OCID of the user to authenticate with.
|
|
fingerprint:
|
|
type: string
|
|
description: The fingerprint of the API signing key.
|
|
key_file:
|
|
type: string
|
|
description: The path to the private key file for API signing.
|
|
Either key_file or key_content must be provided.
|
|
key_content:
|
|
type: string
|
|
description: The content of the private key for API signing
|
|
(base64 encoded). Either key_file or key_content must be
|
|
provided.
|
|
tenancy:
|
|
type: string
|
|
description: The OCID of the tenancy.
|
|
region:
|
|
type: string
|
|
description: The OCI region identifier (e.g., us-ashburn-1,
|
|
us-phoenix-1).
|
|
pass_phrase:
|
|
type: string
|
|
description: The passphrase for the private key, if encrypted.
|
|
required:
|
|
- user
|
|
- fingerprint
|
|
- tenancy
|
|
- region
|
|
- type: object
|
|
title: MongoDB Atlas API Key
|
|
properties:
|
|
atlas_public_key:
|
|
type: string
|
|
description: MongoDB Atlas API public key.
|
|
atlas_private_key:
|
|
type: string
|
|
description: MongoDB Atlas API private key.
|
|
required:
|
|
- atlas_public_key
|
|
- atlas_private_key
|
|
- type: object
|
|
title: Alibaba Cloud Static Credentials
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID for authentication.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret for authentication.
|
|
security_token:
|
|
type: string
|
|
description: The STS security token for temporary credentials
|
|
(optional).
|
|
required:
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Alibaba Cloud RAM Role Assumption
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The ARN of the RAM role to assume (e.g., acs:ram::1234567890123456:role/ProwlerRole).
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID of the RAM user
|
|
that will assume the role.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret of the RAM
|
|
user that will assume the role.
|
|
role_session_name:
|
|
type: string
|
|
description: An identifier for the role session (optional,
|
|
defaults to 'ProwlerSession').
|
|
required:
|
|
- role_arn
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Cloudflare API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Cloudflare API Token for authentication (recommended).
|
|
required:
|
|
- api_token
|
|
- type: object
|
|
title: Cloudflare API Key + Email
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Cloudflare Global API Key for authentication
|
|
(legacy).
|
|
api_email:
|
|
type: string
|
|
format: email
|
|
description: Email address associated with the Cloudflare
|
|
account.
|
|
required:
|
|
- api_key
|
|
- api_email
|
|
- type: object
|
|
title: OpenStack clouds.yaml Credentials
|
|
properties:
|
|
clouds_yaml_content:
|
|
type: string
|
|
description: The full content of a clouds.yaml configuration
|
|
file.
|
|
clouds_yaml_cloud:
|
|
type: string
|
|
description: The name of the cloud to use from the clouds.yaml
|
|
file.
|
|
required:
|
|
- clouds_yaml_content
|
|
- clouds_yaml_cloud
|
|
- type: object
|
|
title: Okta OAuth Credentials
|
|
properties:
|
|
okta_client_id:
|
|
type: string
|
|
description: Client ID of the Okta API Services app used for
|
|
OAuth 2.0 private-key JWT authentication.
|
|
okta_private_key:
|
|
type: string
|
|
description: PEM-encoded private key whose matching public
|
|
key (JWK) is registered on the Okta service app.
|
|
okta_scopes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: OAuth scopes to request. Optional; defaults to
|
|
the minimum set required to run the currently enabled Okta
|
|
checks.
|
|
required:
|
|
- okta_client_id
|
|
- okta_private_key
|
|
- type: object
|
|
title: Vercel API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Vercel API token for authentication. Can be scoped
|
|
to a specific team.
|
|
required:
|
|
- api_token
|
|
writeOnly: true
|
|
required:
|
|
- secret
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
required:
|
|
- data
|
|
PatchedProviderUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- providers
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
alias:
|
|
type: string
|
|
nullable: true
|
|
description: Human readable name to identify the provider, e.g.
|
|
'Production AWS Account', 'Dev Environment'
|
|
maxLength: 100
|
|
minLength: 3
|
|
required:
|
|
- data
|
|
PatchedRoleProviderGroupRelationshipRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- role-provider_groups
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_groups:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ProviderGroupResourceIdentifierRequest'
|
|
description: List of resource identifier objects representing provider
|
|
groups.
|
|
required:
|
|
- provider_groups
|
|
required:
|
|
- data
|
|
PatchedRoleUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- roles
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 255
|
|
manage_users:
|
|
type: boolean
|
|
manage_account:
|
|
type: boolean
|
|
manage_integrations:
|
|
type: boolean
|
|
manage_providers:
|
|
type: boolean
|
|
manage_scans:
|
|
type: boolean
|
|
permission_state:
|
|
type: string
|
|
readOnly: true
|
|
unlimited_visibility:
|
|
type: boolean
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider_groups:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- provider-groups
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type provider-groups
|
|
title: provider-groups
|
|
users:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type users
|
|
title: users
|
|
invitations:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- invitations
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type invitations
|
|
title: invitations
|
|
readOnly: true
|
|
required:
|
|
- data
|
|
PatchedSAMLConfigurationRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- saml-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email_domain:
|
|
type: string
|
|
minLength: 1
|
|
description: Email domain used to identify the tenant, e.g. prowlerdemo.com
|
|
maxLength: 254
|
|
metadata_xml:
|
|
type: string
|
|
minLength: 1
|
|
description: Raw IdP metadata XML to configure SingleSignOnService,
|
|
certificates, etc.
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- email_domain
|
|
- metadata_xml
|
|
required:
|
|
- data
|
|
PatchedScanUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- scans
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
required:
|
|
- data
|
|
PatchedTenantApiKeyUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- api-keys
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
maxLength: 100
|
|
prefix:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
description: Unique prefix to identify the API key
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
last_used_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
description: Last time this API key was used for authentication
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
entity:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
required:
|
|
- data
|
|
PatchedTenantRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tenants
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 100
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
memberships:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- memberships
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type memberships
|
|
title: memberships
|
|
readOnly: true
|
|
required:
|
|
- data
|
|
PatchedUserRoleRelationshipRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- user-roles
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
roles:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/RoleResourceIdentifierRequest'
|
|
description: List of resource identifier objects representing roles.
|
|
required:
|
|
- roles
|
|
required:
|
|
- data
|
|
PatchedUserUpdateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- users
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
maxLength: 150
|
|
password:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
email:
|
|
type: string
|
|
format: email
|
|
minLength: 1
|
|
description: Case insensitive
|
|
maxLength: 254
|
|
company_name:
|
|
type: string
|
|
maxLength: 150
|
|
required:
|
|
- name
|
|
- email
|
|
required:
|
|
- data
|
|
Processor:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- processors
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
processor_type:
|
|
enum:
|
|
- mutelist
|
|
type: string
|
|
description: '* `mutelist` - Mutelist'
|
|
x-spec-enum-id: 53cda4a99fe3d655
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Mutelist
|
|
properties:
|
|
Mutelist:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Checks:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Exceptions:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
additionalProperties: false
|
|
Description:
|
|
type: string
|
|
required:
|
|
- Regions
|
|
- Resources
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Checks
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Accounts
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- processor_type
|
|
- configuration
|
|
ProcessorCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- processors
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
processor_type:
|
|
enum:
|
|
- mutelist
|
|
type: string
|
|
description: '* `mutelist` - Mutelist'
|
|
x-spec-enum-id: 53cda4a99fe3d655
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Mutelist
|
|
properties:
|
|
Mutelist:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Checks:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Exceptions:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
additionalProperties: false
|
|
Description:
|
|
type: string
|
|
required:
|
|
- Regions
|
|
- Resources
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Checks
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Accounts
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- processor_type
|
|
- configuration
|
|
ProcessorCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- processors
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
processor_type:
|
|
enum:
|
|
- mutelist
|
|
type: string
|
|
description: '* `mutelist` - Mutelist'
|
|
x-spec-enum-id: 53cda4a99fe3d655
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Mutelist
|
|
properties:
|
|
Mutelist:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Checks:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Exceptions:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
additionalProperties: false
|
|
Description:
|
|
type: string
|
|
required:
|
|
- Regions
|
|
- Resources
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Checks
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Accounts
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- processor_type
|
|
- configuration
|
|
required:
|
|
- data
|
|
ProcessorCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProcessorCreate'
|
|
required:
|
|
- data
|
|
ProcessorResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Processor'
|
|
required:
|
|
- data
|
|
ProcessorUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- processors
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
configuration:
|
|
oneOf:
|
|
- type: object
|
|
title: Mutelist
|
|
properties:
|
|
Mutelist:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Checks:
|
|
type: object
|
|
patternProperties:
|
|
.*:
|
|
type: object
|
|
properties:
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Exceptions:
|
|
type: object
|
|
properties:
|
|
Accounts:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Resources:
|
|
type: array
|
|
items:
|
|
type: string
|
|
Tags:
|
|
type: array
|
|
items:
|
|
type: string
|
|
additionalProperties: false
|
|
Description:
|
|
type: string
|
|
required:
|
|
- Regions
|
|
- Resources
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Checks
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- Accounts
|
|
additionalProperties: false
|
|
additionalProperties: false
|
|
required:
|
|
- configuration
|
|
ProcessorUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProcessorUpdate'
|
|
required:
|
|
- data
|
|
Provider:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- providers
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
provider:
|
|
enum:
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
- kubernetes
|
|
- m365
|
|
- github
|
|
- mongodbatlas
|
|
- iac
|
|
- oraclecloud
|
|
- alibabacloud
|
|
- cloudflare
|
|
- openstack
|
|
- image
|
|
- googleworkspace
|
|
- vercel
|
|
- okta
|
|
type: string
|
|
description: |-
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
uid:
|
|
type: string
|
|
title: Unique identifier for the provider, set by the provider
|
|
maxLength: 250
|
|
minLength: 3
|
|
alias:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
connection:
|
|
type: object
|
|
properties:
|
|
connected:
|
|
type: boolean
|
|
last_checked_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- provider
|
|
- uid
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
secret:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- provider-secrets
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
provider_groups:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- provider-groups
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type provider-groups
|
|
title: provider-groups
|
|
readOnly: true
|
|
required:
|
|
- secret
|
|
ProviderCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- providers
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
alias:
|
|
type: string
|
|
nullable: true
|
|
description: Human readable name to identify the provider, e.g. 'Production
|
|
AWS Account', 'Dev Environment'
|
|
maxLength: 100
|
|
minLength: 3
|
|
provider:
|
|
enum:
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
- kubernetes
|
|
- m365
|
|
- github
|
|
- mongodbatlas
|
|
- iac
|
|
- oraclecloud
|
|
- alibabacloud
|
|
- cloudflare
|
|
- openstack
|
|
- image
|
|
- googleworkspace
|
|
- vercel
|
|
- okta
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
description: |-
|
|
Type of provider to create.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
uid:
|
|
type: string
|
|
title: Unique identifier for the provider, set by the provider
|
|
description: Unique identifier for the provider, set by the provider,
|
|
e.g. AWS account ID, Azure subscription ID, GCP project ID, etc.
|
|
maxLength: 250
|
|
minLength: 3
|
|
required:
|
|
- uid
|
|
ProviderCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- providers
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
alias:
|
|
type: string
|
|
nullable: true
|
|
description: Human readable name to identify the provider, e.g.
|
|
'Production AWS Account', 'Dev Environment'
|
|
maxLength: 100
|
|
minLength: 3
|
|
provider:
|
|
enum:
|
|
- aws
|
|
- azure
|
|
- gcp
|
|
- kubernetes
|
|
- m365
|
|
- github
|
|
- mongodbatlas
|
|
- iac
|
|
- oraclecloud
|
|
- alibabacloud
|
|
- cloudflare
|
|
- openstack
|
|
- image
|
|
- googleworkspace
|
|
- vercel
|
|
- okta
|
|
type: string
|
|
x-spec-enum-id: 203afc16daac9b64
|
|
description: |-
|
|
Type of provider to create.
|
|
|
|
* `aws` - AWS
|
|
* `azure` - Azure
|
|
* `gcp` - GCP
|
|
* `kubernetes` - Kubernetes
|
|
* `m365` - M365
|
|
* `github` - GitHub
|
|
* `mongodbatlas` - MongoDB Atlas
|
|
* `iac` - IaC
|
|
* `oraclecloud` - Oracle Cloud Infrastructure
|
|
* `alibabacloud` - Alibaba Cloud
|
|
* `cloudflare` - Cloudflare
|
|
* `openstack` - OpenStack
|
|
* `image` - Image
|
|
* `googleworkspace` - Google Workspace
|
|
* `vercel` - Vercel
|
|
* `okta` - Okta
|
|
uid:
|
|
type: string
|
|
minLength: 3
|
|
title: Unique identifier for the provider, set by the provider
|
|
description: Unique identifier for the provider, set by the provider,
|
|
e.g. AWS account ID, Azure subscription ID, GCP project ID, etc.
|
|
maxLength: 250
|
|
required:
|
|
- uid
|
|
required:
|
|
- data
|
|
ProviderCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProviderCreate'
|
|
required:
|
|
- data
|
|
ProviderGroup:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-groups
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 255
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
ProviderGroupCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-groups
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 255
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
ProviderGroupCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-groups
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 255
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type providers
|
|
title: providers
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type roles
|
|
title: roles
|
|
required:
|
|
- data
|
|
ProviderGroupCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProviderGroupCreate'
|
|
required:
|
|
- data
|
|
ProviderGroupMembershipRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider_groups-provider
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
providers:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ProviderResourceIdentifierRequest'
|
|
description: List of resource identifier objects representing providers.
|
|
required:
|
|
- providers
|
|
required:
|
|
- data
|
|
ProviderGroupResourceIdentifierRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-group-identifier
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
resource_type:
|
|
type: string
|
|
minLength: 1
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
required:
|
|
- resource_type
|
|
- id
|
|
required:
|
|
- data
|
|
ProviderGroupResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProviderGroup'
|
|
required:
|
|
- data
|
|
ProviderResourceIdentifierRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-identifier
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
resource_type:
|
|
type: string
|
|
minLength: 1
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
required:
|
|
- resource_type
|
|
- id
|
|
required:
|
|
- data
|
|
ProviderResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Provider'
|
|
required:
|
|
- data
|
|
ProviderSecret:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-secrets
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
secret_type:
|
|
enum:
|
|
- static
|
|
- role
|
|
- service_account
|
|
type: string
|
|
description: |-
|
|
* `static` - Key-value pairs
|
|
* `role` - Role assumption
|
|
* `service_account` - GCP Service Account Key
|
|
x-spec-enum-id: 20c74ebcd6671497
|
|
required:
|
|
- secret_type
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
required:
|
|
- provider
|
|
ProviderSecretCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-secrets
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
secret_type:
|
|
enum:
|
|
- static
|
|
- role
|
|
- service_account
|
|
type: string
|
|
description: |-
|
|
* `static` - Key-value pairs
|
|
* `role` - Role assumption
|
|
* `service_account` - GCP Service Account Key
|
|
x-spec-enum-id: 20c74ebcd6671497
|
|
secret:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Static Credentials
|
|
properties:
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Required for environments
|
|
where no IAM role is being assumed and direct AWS access is
|
|
needed.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Must accompany 'aws_access_key_id'
|
|
to authorize access to AWS resources.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token associated with temporary credentials.
|
|
Only needed for session-based or temporary AWS access.
|
|
required:
|
|
- aws_access_key_id
|
|
- aws_secret_access_key
|
|
- type: object
|
|
title: AWS Assume Role
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to assume.
|
|
Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials, if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
required:
|
|
- role_arn
|
|
- external_id
|
|
- type: object
|
|
title: Azure Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory where
|
|
the application is registered.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- type: object
|
|
title: M365 Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory where
|
|
the application is registered.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
user:
|
|
type: email
|
|
description: User microsoft email address.
|
|
deprecated: true
|
|
password:
|
|
type: string
|
|
description: User password.
|
|
deprecated: true
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- user
|
|
- password
|
|
- type: object
|
|
title: M365 Certificate Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory where
|
|
the application is registered.
|
|
certificate_content:
|
|
type: string
|
|
description: The certificate content in base64 format for certificate-based
|
|
authentication.
|
|
required:
|
|
- client_id
|
|
- tenant_id
|
|
- certificate_content
|
|
- type: object
|
|
title: GCP Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The client ID from Google Cloud, used to identify
|
|
the application for GCP access.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the GCP client
|
|
ID, required for secure access.
|
|
refresh_token:
|
|
type: string
|
|
description: A refresh token that allows the application to obtain
|
|
new access tokens for extended use.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- refresh_token
|
|
- type: object
|
|
title: GCP Service Account Key
|
|
properties:
|
|
service_account_key:
|
|
type: object
|
|
description: The service account key for GCP.
|
|
required:
|
|
- service_account_key
|
|
- type: object
|
|
title: Google Workspace Service Account
|
|
properties:
|
|
credentials_content:
|
|
type: string
|
|
description: The service account JSON credentials content for
|
|
Google Workspace API access with domain-wide delegation enabled.
|
|
delegated_user:
|
|
type: string
|
|
format: email
|
|
description: The email address of the Google Workspace super admin
|
|
user to impersonate for domain-wide delegation.
|
|
required:
|
|
- credentials_content
|
|
- delegated_user
|
|
- type: object
|
|
title: Kubernetes Static Credentials
|
|
properties:
|
|
kubeconfig_content:
|
|
type: string
|
|
description: The content of the Kubernetes kubeconfig file, encoded
|
|
as a string.
|
|
required:
|
|
- kubeconfig_content
|
|
- type: object
|
|
title: GitHub Personal Access Token
|
|
properties:
|
|
personal_access_token:
|
|
type: string
|
|
description: GitHub personal access token for authentication.
|
|
required:
|
|
- personal_access_token
|
|
- type: object
|
|
title: GitHub OAuth App Token
|
|
properties:
|
|
oauth_app_token:
|
|
type: string
|
|
description: GitHub OAuth App token for authentication.
|
|
required:
|
|
- oauth_app_token
|
|
- type: object
|
|
title: GitHub App Credentials
|
|
properties:
|
|
github_app_id:
|
|
type: integer
|
|
description: GitHub App ID for authentication.
|
|
github_app_key:
|
|
type: string
|
|
description: Path to the GitHub App private key file.
|
|
required:
|
|
- github_app_id
|
|
- github_app_key
|
|
- type: object
|
|
title: IaC Repository Credentials
|
|
properties:
|
|
repository_url:
|
|
type: string
|
|
description: Repository URL to scan for IaC files.
|
|
access_token:
|
|
type: string
|
|
description: Optional access token for private repositories.
|
|
required:
|
|
- repository_url
|
|
- type: object
|
|
title: Oracle Cloud Infrastructure (OCI) API Key Credentials
|
|
properties:
|
|
user:
|
|
type: string
|
|
description: The OCID of the user to authenticate with.
|
|
fingerprint:
|
|
type: string
|
|
description: The fingerprint of the API signing key.
|
|
key_file:
|
|
type: string
|
|
description: The path to the private key file for API signing.
|
|
Either key_file or key_content must be provided.
|
|
key_content:
|
|
type: string
|
|
description: The content of the private key for API signing (base64
|
|
encoded). Either key_file or key_content must be provided.
|
|
tenancy:
|
|
type: string
|
|
description: The OCID of the tenancy.
|
|
region:
|
|
type: string
|
|
description: The OCI region identifier (e.g., us-ashburn-1, us-phoenix-1).
|
|
pass_phrase:
|
|
type: string
|
|
description: The passphrase for the private key, if encrypted.
|
|
required:
|
|
- user
|
|
- fingerprint
|
|
- tenancy
|
|
- region
|
|
- type: object
|
|
title: MongoDB Atlas API Key
|
|
properties:
|
|
atlas_public_key:
|
|
type: string
|
|
description: MongoDB Atlas API public key.
|
|
atlas_private_key:
|
|
type: string
|
|
description: MongoDB Atlas API private key.
|
|
required:
|
|
- atlas_public_key
|
|
- atlas_private_key
|
|
- type: object
|
|
title: Alibaba Cloud Static Credentials
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID for authentication.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret for authentication.
|
|
security_token:
|
|
type: string
|
|
description: The STS security token for temporary credentials
|
|
(optional).
|
|
required:
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Alibaba Cloud RAM Role Assumption
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The ARN of the RAM role to assume (e.g., acs:ram::1234567890123456:role/ProwlerRole).
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID of the RAM user that
|
|
will assume the role.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret of the RAM user
|
|
that will assume the role.
|
|
role_session_name:
|
|
type: string
|
|
description: An identifier for the role session (optional, defaults
|
|
to 'ProwlerSession').
|
|
required:
|
|
- role_arn
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Cloudflare API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Cloudflare API Token for authentication (recommended).
|
|
required:
|
|
- api_token
|
|
- type: object
|
|
title: Cloudflare API Key + Email
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Cloudflare Global API Key for authentication (legacy).
|
|
api_email:
|
|
type: string
|
|
format: email
|
|
description: Email address associated with the Cloudflare account.
|
|
required:
|
|
- api_key
|
|
- api_email
|
|
- type: object
|
|
title: OpenStack clouds.yaml Credentials
|
|
properties:
|
|
clouds_yaml_content:
|
|
type: string
|
|
description: The full content of a clouds.yaml configuration file.
|
|
clouds_yaml_cloud:
|
|
type: string
|
|
description: The name of the cloud to use from the clouds.yaml
|
|
file.
|
|
required:
|
|
- clouds_yaml_content
|
|
- clouds_yaml_cloud
|
|
- type: object
|
|
title: Okta OAuth Credentials
|
|
properties:
|
|
okta_client_id:
|
|
type: string
|
|
description: Client ID of the Okta API Services app used for OAuth
|
|
2.0 private-key JWT authentication.
|
|
okta_private_key:
|
|
type: string
|
|
description: PEM-encoded private key whose matching public key
|
|
(JWK) is registered on the Okta service app.
|
|
okta_scopes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: OAuth scopes to request. Optional; defaults to the
|
|
minimum set required to run the currently enabled Okta checks.
|
|
required:
|
|
- okta_client_id
|
|
- okta_private_key
|
|
- type: object
|
|
title: Vercel API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Vercel API token for authentication. Can be scoped
|
|
to a specific team.
|
|
required:
|
|
- api_token
|
|
writeOnly: true
|
|
required:
|
|
- secret_type
|
|
- secret
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
required:
|
|
- provider
|
|
ProviderSecretCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-secrets
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
secret_type:
|
|
enum:
|
|
- static
|
|
- role
|
|
- service_account
|
|
type: string
|
|
description: |-
|
|
* `static` - Key-value pairs
|
|
* `role` - Role assumption
|
|
* `service_account` - GCP Service Account Key
|
|
x-spec-enum-id: 20c74ebcd6671497
|
|
secret:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Static Credentials
|
|
properties:
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Required for environments
|
|
where no IAM role is being assumed and direct AWS access
|
|
is needed.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Must accompany 'aws_access_key_id'
|
|
to authorize access to AWS resources.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token associated with temporary credentials.
|
|
Only needed for session-based or temporary AWS access.
|
|
required:
|
|
- aws_access_key_id
|
|
- aws_secret_access_key
|
|
- type: object
|
|
title: AWS Assume Role
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to
|
|
assume. Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials,
|
|
if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
required:
|
|
- role_arn
|
|
- external_id
|
|
- type: object
|
|
title: Azure Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory
|
|
where the application is registered.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- type: object
|
|
title: M365 Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory
|
|
where the application is registered.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
user:
|
|
type: email
|
|
description: User microsoft email address.
|
|
deprecated: true
|
|
password:
|
|
type: string
|
|
description: User password.
|
|
deprecated: true
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- user
|
|
- password
|
|
- type: object
|
|
title: M365 Certificate Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory
|
|
where the application is registered.
|
|
certificate_content:
|
|
type: string
|
|
description: The certificate content in base64 format for
|
|
certificate-based authentication.
|
|
required:
|
|
- client_id
|
|
- tenant_id
|
|
- certificate_content
|
|
- type: object
|
|
title: GCP Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The client ID from Google Cloud, used to identify
|
|
the application for GCP access.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the GCP client
|
|
ID, required for secure access.
|
|
refresh_token:
|
|
type: string
|
|
description: A refresh token that allows the application to
|
|
obtain new access tokens for extended use.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- refresh_token
|
|
- type: object
|
|
title: GCP Service Account Key
|
|
properties:
|
|
service_account_key:
|
|
type: object
|
|
description: The service account key for GCP.
|
|
required:
|
|
- service_account_key
|
|
- type: object
|
|
title: Google Workspace Service Account
|
|
properties:
|
|
credentials_content:
|
|
type: string
|
|
description: The service account JSON credentials content
|
|
for Google Workspace API access with domain-wide delegation
|
|
enabled.
|
|
delegated_user:
|
|
type: string
|
|
format: email
|
|
description: The email address of the Google Workspace super
|
|
admin user to impersonate for domain-wide delegation.
|
|
required:
|
|
- credentials_content
|
|
- delegated_user
|
|
- type: object
|
|
title: Kubernetes Static Credentials
|
|
properties:
|
|
kubeconfig_content:
|
|
type: string
|
|
description: The content of the Kubernetes kubeconfig file,
|
|
encoded as a string.
|
|
required:
|
|
- kubeconfig_content
|
|
- type: object
|
|
title: GitHub Personal Access Token
|
|
properties:
|
|
personal_access_token:
|
|
type: string
|
|
description: GitHub personal access token for authentication.
|
|
required:
|
|
- personal_access_token
|
|
- type: object
|
|
title: GitHub OAuth App Token
|
|
properties:
|
|
oauth_app_token:
|
|
type: string
|
|
description: GitHub OAuth App token for authentication.
|
|
required:
|
|
- oauth_app_token
|
|
- type: object
|
|
title: GitHub App Credentials
|
|
properties:
|
|
github_app_id:
|
|
type: integer
|
|
description: GitHub App ID for authentication.
|
|
github_app_key:
|
|
type: string
|
|
description: Path to the GitHub App private key file.
|
|
required:
|
|
- github_app_id
|
|
- github_app_key
|
|
- type: object
|
|
title: IaC Repository Credentials
|
|
properties:
|
|
repository_url:
|
|
type: string
|
|
description: Repository URL to scan for IaC files.
|
|
access_token:
|
|
type: string
|
|
description: Optional access token for private repositories.
|
|
required:
|
|
- repository_url
|
|
- type: object
|
|
title: Oracle Cloud Infrastructure (OCI) API Key Credentials
|
|
properties:
|
|
user:
|
|
type: string
|
|
description: The OCID of the user to authenticate with.
|
|
fingerprint:
|
|
type: string
|
|
description: The fingerprint of the API signing key.
|
|
key_file:
|
|
type: string
|
|
description: The path to the private key file for API signing.
|
|
Either key_file or key_content must be provided.
|
|
key_content:
|
|
type: string
|
|
description: The content of the private key for API signing
|
|
(base64 encoded). Either key_file or key_content must be
|
|
provided.
|
|
tenancy:
|
|
type: string
|
|
description: The OCID of the tenancy.
|
|
region:
|
|
type: string
|
|
description: The OCI region identifier (e.g., us-ashburn-1,
|
|
us-phoenix-1).
|
|
pass_phrase:
|
|
type: string
|
|
description: The passphrase for the private key, if encrypted.
|
|
required:
|
|
- user
|
|
- fingerprint
|
|
- tenancy
|
|
- region
|
|
- type: object
|
|
title: MongoDB Atlas API Key
|
|
properties:
|
|
atlas_public_key:
|
|
type: string
|
|
description: MongoDB Atlas API public key.
|
|
atlas_private_key:
|
|
type: string
|
|
description: MongoDB Atlas API private key.
|
|
required:
|
|
- atlas_public_key
|
|
- atlas_private_key
|
|
- type: object
|
|
title: Alibaba Cloud Static Credentials
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID for authentication.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret for authentication.
|
|
security_token:
|
|
type: string
|
|
description: The STS security token for temporary credentials
|
|
(optional).
|
|
required:
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Alibaba Cloud RAM Role Assumption
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The ARN of the RAM role to assume (e.g., acs:ram::1234567890123456:role/ProwlerRole).
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID of the RAM user
|
|
that will assume the role.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret of the RAM
|
|
user that will assume the role.
|
|
role_session_name:
|
|
type: string
|
|
description: An identifier for the role session (optional,
|
|
defaults to 'ProwlerSession').
|
|
required:
|
|
- role_arn
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Cloudflare API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Cloudflare API Token for authentication (recommended).
|
|
required:
|
|
- api_token
|
|
- type: object
|
|
title: Cloudflare API Key + Email
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Cloudflare Global API Key for authentication
|
|
(legacy).
|
|
api_email:
|
|
type: string
|
|
format: email
|
|
description: Email address associated with the Cloudflare
|
|
account.
|
|
required:
|
|
- api_key
|
|
- api_email
|
|
- type: object
|
|
title: OpenStack clouds.yaml Credentials
|
|
properties:
|
|
clouds_yaml_content:
|
|
type: string
|
|
description: The full content of a clouds.yaml configuration
|
|
file.
|
|
clouds_yaml_cloud:
|
|
type: string
|
|
description: The name of the cloud to use from the clouds.yaml
|
|
file.
|
|
required:
|
|
- clouds_yaml_content
|
|
- clouds_yaml_cloud
|
|
- type: object
|
|
title: Okta OAuth Credentials
|
|
properties:
|
|
okta_client_id:
|
|
type: string
|
|
description: Client ID of the Okta API Services app used for
|
|
OAuth 2.0 private-key JWT authentication.
|
|
okta_private_key:
|
|
type: string
|
|
description: PEM-encoded private key whose matching public
|
|
key (JWK) is registered on the Okta service app.
|
|
okta_scopes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: OAuth scopes to request. Optional; defaults to
|
|
the minimum set required to run the currently enabled Okta
|
|
checks.
|
|
required:
|
|
- okta_client_id
|
|
- okta_private_key
|
|
- type: object
|
|
title: Vercel API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Vercel API token for authentication. Can be scoped
|
|
to a specific team.
|
|
required:
|
|
- api_token
|
|
writeOnly: true
|
|
required:
|
|
- secret_type
|
|
- secret
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
required:
|
|
- provider
|
|
required:
|
|
- data
|
|
ProviderSecretCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProviderSecretCreate'
|
|
required:
|
|
- data
|
|
ProviderSecretResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProviderSecret'
|
|
required:
|
|
- data
|
|
ProviderSecretUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- provider-secrets
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
secret_type:
|
|
enum:
|
|
- static
|
|
- role
|
|
- service_account
|
|
type: string
|
|
description: |-
|
|
* `static` - Key-value pairs
|
|
* `role` - Role assumption
|
|
* `service_account` - GCP Service Account Key
|
|
x-spec-enum-id: 20c74ebcd6671497
|
|
secret:
|
|
oneOf:
|
|
- type: object
|
|
title: AWS Static Credentials
|
|
properties:
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Required for environments
|
|
where no IAM role is being assumed and direct AWS access is
|
|
needed.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Must accompany 'aws_access_key_id'
|
|
to authorize access to AWS resources.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token associated with temporary credentials.
|
|
Only needed for session-based or temporary AWS access.
|
|
required:
|
|
- aws_access_key_id
|
|
- aws_secret_access_key
|
|
- type: object
|
|
title: AWS Assume Role
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The Amazon Resource Name (ARN) of the role to assume.
|
|
Required for AWS role assumption.
|
|
external_id:
|
|
type: string
|
|
description: An identifier to enhance security for role assumption.
|
|
aws_access_key_id:
|
|
type: string
|
|
description: The AWS access key ID. Only required if the environment
|
|
lacks pre-configured AWS credentials.
|
|
aws_secret_access_key:
|
|
type: string
|
|
description: The AWS secret access key. Required if 'aws_access_key_id'
|
|
is provided or if no AWS credentials are pre-configured.
|
|
aws_session_token:
|
|
type: string
|
|
description: The session token for temporary credentials, if applicable.
|
|
session_duration:
|
|
type: integer
|
|
minimum: 900
|
|
maximum: 43200
|
|
default: 3600
|
|
description: The duration (in seconds) for the role session.
|
|
role_session_name:
|
|
type: string
|
|
description: |-
|
|
An identifier for the role session, useful for tracking sessions in AWS logs. The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@-
|
|
|
|
Examples:
|
|
- MySession123
|
|
- User_Session-1
|
|
- Test.Session@2
|
|
pattern: ^[a-zA-Z0-9=,.@_-]+$
|
|
required:
|
|
- role_arn
|
|
- external_id
|
|
- type: object
|
|
title: Azure Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory where
|
|
the application is registered.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- type: object
|
|
title: M365 Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory where
|
|
the application is registered.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the application
|
|
(client) ID, providing secure access.
|
|
user:
|
|
type: email
|
|
description: User microsoft email address.
|
|
deprecated: true
|
|
password:
|
|
type: string
|
|
description: User password.
|
|
deprecated: true
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- tenant_id
|
|
- user
|
|
- password
|
|
- type: object
|
|
title: M365 Certificate Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The Azure application (client) ID for authentication
|
|
in Azure AD.
|
|
tenant_id:
|
|
type: string
|
|
description: The Azure tenant ID, representing the directory where
|
|
the application is registered.
|
|
certificate_content:
|
|
type: string
|
|
description: The certificate content in base64 format for certificate-based
|
|
authentication.
|
|
required:
|
|
- client_id
|
|
- tenant_id
|
|
- certificate_content
|
|
- type: object
|
|
title: GCP Static Credentials
|
|
properties:
|
|
client_id:
|
|
type: string
|
|
description: The client ID from Google Cloud, used to identify
|
|
the application for GCP access.
|
|
client_secret:
|
|
type: string
|
|
description: The client secret associated with the GCP client
|
|
ID, required for secure access.
|
|
refresh_token:
|
|
type: string
|
|
description: A refresh token that allows the application to obtain
|
|
new access tokens for extended use.
|
|
required:
|
|
- client_id
|
|
- client_secret
|
|
- refresh_token
|
|
- type: object
|
|
title: GCP Service Account Key
|
|
properties:
|
|
service_account_key:
|
|
type: object
|
|
description: The service account key for GCP.
|
|
required:
|
|
- service_account_key
|
|
- type: object
|
|
title: Google Workspace Service Account
|
|
properties:
|
|
credentials_content:
|
|
type: string
|
|
description: The service account JSON credentials content for
|
|
Google Workspace API access with domain-wide delegation enabled.
|
|
delegated_user:
|
|
type: string
|
|
format: email
|
|
description: The email address of the Google Workspace super admin
|
|
user to impersonate for domain-wide delegation.
|
|
required:
|
|
- credentials_content
|
|
- delegated_user
|
|
- type: object
|
|
title: Kubernetes Static Credentials
|
|
properties:
|
|
kubeconfig_content:
|
|
type: string
|
|
description: The content of the Kubernetes kubeconfig file, encoded
|
|
as a string.
|
|
required:
|
|
- kubeconfig_content
|
|
- type: object
|
|
title: GitHub Personal Access Token
|
|
properties:
|
|
personal_access_token:
|
|
type: string
|
|
description: GitHub personal access token for authentication.
|
|
required:
|
|
- personal_access_token
|
|
- type: object
|
|
title: GitHub OAuth App Token
|
|
properties:
|
|
oauth_app_token:
|
|
type: string
|
|
description: GitHub OAuth App token for authentication.
|
|
required:
|
|
- oauth_app_token
|
|
- type: object
|
|
title: GitHub App Credentials
|
|
properties:
|
|
github_app_id:
|
|
type: integer
|
|
description: GitHub App ID for authentication.
|
|
github_app_key:
|
|
type: string
|
|
description: Path to the GitHub App private key file.
|
|
required:
|
|
- github_app_id
|
|
- github_app_key
|
|
- type: object
|
|
title: IaC Repository Credentials
|
|
properties:
|
|
repository_url:
|
|
type: string
|
|
description: Repository URL to scan for IaC files.
|
|
access_token:
|
|
type: string
|
|
description: Optional access token for private repositories.
|
|
required:
|
|
- repository_url
|
|
- type: object
|
|
title: Oracle Cloud Infrastructure (OCI) API Key Credentials
|
|
properties:
|
|
user:
|
|
type: string
|
|
description: The OCID of the user to authenticate with.
|
|
fingerprint:
|
|
type: string
|
|
description: The fingerprint of the API signing key.
|
|
key_file:
|
|
type: string
|
|
description: The path to the private key file for API signing.
|
|
Either key_file or key_content must be provided.
|
|
key_content:
|
|
type: string
|
|
description: The content of the private key for API signing (base64
|
|
encoded). Either key_file or key_content must be provided.
|
|
tenancy:
|
|
type: string
|
|
description: The OCID of the tenancy.
|
|
region:
|
|
type: string
|
|
description: The OCI region identifier (e.g., us-ashburn-1, us-phoenix-1).
|
|
pass_phrase:
|
|
type: string
|
|
description: The passphrase for the private key, if encrypted.
|
|
required:
|
|
- user
|
|
- fingerprint
|
|
- tenancy
|
|
- region
|
|
- type: object
|
|
title: MongoDB Atlas API Key
|
|
properties:
|
|
atlas_public_key:
|
|
type: string
|
|
description: MongoDB Atlas API public key.
|
|
atlas_private_key:
|
|
type: string
|
|
description: MongoDB Atlas API private key.
|
|
required:
|
|
- atlas_public_key
|
|
- atlas_private_key
|
|
- type: object
|
|
title: Alibaba Cloud Static Credentials
|
|
properties:
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID for authentication.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret for authentication.
|
|
security_token:
|
|
type: string
|
|
description: The STS security token for temporary credentials
|
|
(optional).
|
|
required:
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Alibaba Cloud RAM Role Assumption
|
|
properties:
|
|
role_arn:
|
|
type: string
|
|
description: The ARN of the RAM role to assume (e.g., acs:ram::1234567890123456:role/ProwlerRole).
|
|
access_key_id:
|
|
type: string
|
|
description: The Alibaba Cloud access key ID of the RAM user that
|
|
will assume the role.
|
|
access_key_secret:
|
|
type: string
|
|
description: The Alibaba Cloud access key secret of the RAM user
|
|
that will assume the role.
|
|
role_session_name:
|
|
type: string
|
|
description: An identifier for the role session (optional, defaults
|
|
to 'ProwlerSession').
|
|
required:
|
|
- role_arn
|
|
- access_key_id
|
|
- access_key_secret
|
|
- type: object
|
|
title: Cloudflare API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Cloudflare API Token for authentication (recommended).
|
|
required:
|
|
- api_token
|
|
- type: object
|
|
title: Cloudflare API Key + Email
|
|
properties:
|
|
api_key:
|
|
type: string
|
|
description: Cloudflare Global API Key for authentication (legacy).
|
|
api_email:
|
|
type: string
|
|
format: email
|
|
description: Email address associated with the Cloudflare account.
|
|
required:
|
|
- api_key
|
|
- api_email
|
|
- type: object
|
|
title: OpenStack clouds.yaml Credentials
|
|
properties:
|
|
clouds_yaml_content:
|
|
type: string
|
|
description: The full content of a clouds.yaml configuration file.
|
|
clouds_yaml_cloud:
|
|
type: string
|
|
description: The name of the cloud to use from the clouds.yaml
|
|
file.
|
|
required:
|
|
- clouds_yaml_content
|
|
- clouds_yaml_cloud
|
|
- type: object
|
|
title: Okta OAuth Credentials
|
|
properties:
|
|
okta_client_id:
|
|
type: string
|
|
description: Client ID of the Okta API Services app used for OAuth
|
|
2.0 private-key JWT authentication.
|
|
okta_private_key:
|
|
type: string
|
|
description: PEM-encoded private key whose matching public key
|
|
(JWK) is registered on the Okta service app.
|
|
okta_scopes:
|
|
type: array
|
|
items:
|
|
type: string
|
|
description: OAuth scopes to request. Optional; defaults to the
|
|
minimum set required to run the currently enabled Okta checks.
|
|
required:
|
|
- okta_client_id
|
|
- okta_private_key
|
|
- type: object
|
|
title: Vercel API Token
|
|
properties:
|
|
api_token:
|
|
type: string
|
|
description: Vercel API token for authentication. Can be scoped
|
|
to a specific team.
|
|
required:
|
|
- api_token
|
|
writeOnly: true
|
|
required:
|
|
- secret
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
ProviderSecretUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ProviderSecretUpdate'
|
|
required:
|
|
- data
|
|
Resource:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- resources
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
uid:
|
|
type: string
|
|
title: Unique identifier for the resource, set by the provider
|
|
name:
|
|
type: string
|
|
title: Name of the resource, as set in the provider
|
|
region:
|
|
type: string
|
|
title: Location of the resource, as set by the provider
|
|
service:
|
|
type: string
|
|
title: Service of the resource, as set by the provider
|
|
tags:
|
|
type: object
|
|
description: Tags associated with the resource
|
|
example:
|
|
env: prod
|
|
owner: johndoe
|
|
readOnly: true
|
|
failed_findings_count:
|
|
type: integer
|
|
readOnly: true
|
|
metadata:
|
|
type: string
|
|
readOnly: true
|
|
nullable: true
|
|
details:
|
|
type: string
|
|
readOnly: true
|
|
nullable: true
|
|
partition:
|
|
type: string
|
|
readOnly: true
|
|
nullable: true
|
|
groups:
|
|
type: array
|
|
items:
|
|
type: string
|
|
maxLength: 100
|
|
readOnly: true
|
|
nullable: true
|
|
description: Groups for categorization (e.g., compute, storage, IAM)
|
|
type:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- uid
|
|
- name
|
|
- region
|
|
- service
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
findings:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum:
|
|
- findings
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
required:
|
|
- provider
|
|
ResourceEvent:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- resource-events
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
event_time:
|
|
type: string
|
|
format: date-time
|
|
event_name:
|
|
type: string
|
|
event_source:
|
|
type: string
|
|
actor:
|
|
type: string
|
|
actor_uid:
|
|
type: string
|
|
nullable: true
|
|
actor_type:
|
|
type: string
|
|
nullable: true
|
|
source_ip_address:
|
|
type: string
|
|
nullable: true
|
|
user_agent:
|
|
type: string
|
|
nullable: true
|
|
request_data:
|
|
nullable: true
|
|
response_data:
|
|
nullable: true
|
|
error_code:
|
|
type: string
|
|
nullable: true
|
|
error_message:
|
|
type: string
|
|
nullable: true
|
|
required:
|
|
- id
|
|
- event_time
|
|
- event_name
|
|
- event_source
|
|
- actor
|
|
ResourceGroupOverview:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- resource-group-overviews
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
total_findings:
|
|
type: integer
|
|
failed_findings:
|
|
type: integer
|
|
new_failed_findings:
|
|
type: integer
|
|
resources_count:
|
|
type: integer
|
|
severity:
|
|
description: 'Severity breakdown: {informational, low, medium, high,
|
|
critical}'
|
|
required:
|
|
- id
|
|
- total_findings
|
|
- failed_findings
|
|
- new_failed_findings
|
|
- resources_count
|
|
- severity
|
|
ResourceMetadata:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- resources-metadata
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
services:
|
|
type: array
|
|
items:
|
|
type: string
|
|
regions:
|
|
type: array
|
|
items:
|
|
type: string
|
|
types:
|
|
type: array
|
|
items:
|
|
type: string
|
|
groups:
|
|
type: array
|
|
items:
|
|
type: string
|
|
required:
|
|
- services
|
|
- regions
|
|
- types
|
|
- groups
|
|
ResourceMetadataResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ResourceMetadata'
|
|
required:
|
|
- data
|
|
ResourceResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Resource'
|
|
required:
|
|
- data
|
|
Role:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- roles
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 255
|
|
manage_users:
|
|
type: boolean
|
|
manage_account:
|
|
type: boolean
|
|
manage_integrations:
|
|
type: boolean
|
|
manage_providers:
|
|
type: boolean
|
|
manage_scans:
|
|
type: boolean
|
|
permission_state:
|
|
type: string
|
|
readOnly: true
|
|
unlimited_visibility:
|
|
type: boolean
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider_groups:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- provider-groups
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type provider-groups
|
|
title: provider-groups
|
|
users:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type users
|
|
title: users
|
|
invitations:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- invitations
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type invitations
|
|
title: invitations
|
|
readOnly: true
|
|
RoleCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- roles
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 255
|
|
manage_users:
|
|
type: boolean
|
|
manage_account:
|
|
type: boolean
|
|
manage_integrations:
|
|
type: boolean
|
|
manage_providers:
|
|
type: boolean
|
|
manage_scans:
|
|
type: boolean
|
|
permission_state:
|
|
type: string
|
|
readOnly: true
|
|
unlimited_visibility:
|
|
type: boolean
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider_groups:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- provider-groups
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type provider-groups
|
|
title: provider-groups
|
|
users:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type users
|
|
title: users
|
|
invitations:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- invitations
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type invitations
|
|
title: invitations
|
|
readOnly: true
|
|
RoleCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- roles
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 255
|
|
manage_users:
|
|
type: boolean
|
|
manage_account:
|
|
type: boolean
|
|
manage_integrations:
|
|
type: boolean
|
|
manage_providers:
|
|
type: boolean
|
|
manage_scans:
|
|
type: boolean
|
|
permission_state:
|
|
type: string
|
|
readOnly: true
|
|
unlimited_visibility:
|
|
type: boolean
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider_groups:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- provider-groups
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type provider-groups
|
|
title: provider-groups
|
|
users:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type users
|
|
title: users
|
|
invitations:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- invitations
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type invitations
|
|
title: invitations
|
|
readOnly: true
|
|
required:
|
|
- data
|
|
RoleCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/RoleCreate'
|
|
required:
|
|
- data
|
|
RoleProviderGroupRelationshipRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- role-provider_groups
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_groups:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/ProviderGroupResourceIdentifierRequest'
|
|
description: List of resource identifier objects representing provider
|
|
groups.
|
|
required:
|
|
- provider_groups
|
|
required:
|
|
- data
|
|
RoleResourceIdentifierRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- role-identifier
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
resource_type:
|
|
type: string
|
|
minLength: 1
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
required:
|
|
- resource_type
|
|
- id
|
|
required:
|
|
- data
|
|
RoleResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Role'
|
|
required:
|
|
- data
|
|
SAMLConfiguration:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- saml-configurations
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email_domain:
|
|
type: string
|
|
description: Email domain used to identify the tenant, e.g. prowlerdemo.com
|
|
maxLength: 254
|
|
metadata_xml:
|
|
type: string
|
|
description: Raw IdP metadata XML to configure SingleSignOnService,
|
|
certificates, etc.
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- email_domain
|
|
- metadata_xml
|
|
SAMLConfigurationRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- saml-configurations
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email_domain:
|
|
type: string
|
|
minLength: 1
|
|
description: Email domain used to identify the tenant, e.g. prowlerdemo.com
|
|
maxLength: 254
|
|
metadata_xml:
|
|
type: string
|
|
minLength: 1
|
|
description: Raw IdP metadata XML to configure SingleSignOnService,
|
|
certificates, etc.
|
|
created_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
updated_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- email_domain
|
|
- metadata_xml
|
|
required:
|
|
- data
|
|
SAMLConfigurationResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/SAMLConfiguration'
|
|
required:
|
|
- data
|
|
Scan:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- scans
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
trigger:
|
|
enum:
|
|
- scheduled
|
|
- manual
|
|
type: string
|
|
description: |-
|
|
* `scheduled` - Scheduled
|
|
* `manual` - Manual
|
|
x-spec-enum-id: 2e52c981d1c89bdf
|
|
readOnly: true
|
|
state:
|
|
enum:
|
|
- available
|
|
- scheduled
|
|
- executing
|
|
- completed
|
|
- failed
|
|
- cancelled
|
|
type: string
|
|
description: |-
|
|
* `available` - Available
|
|
* `scheduled` - Scheduled
|
|
* `executing` - Executing
|
|
* `completed` - Completed
|
|
* `failed` - Failed
|
|
* `cancelled` - Cancelled
|
|
x-spec-enum-id: d38ba07264e1ed34
|
|
readOnly: true
|
|
unique_resource_count:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
progress:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
duration:
|
|
type: integer
|
|
maximum: 2147483647
|
|
minimum: -2147483648
|
|
nullable: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
started_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
completed_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
scheduled_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
next_scan_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
task:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- tasks
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
processor:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- processors
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
required:
|
|
- provider
|
|
ScanCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- scans
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
required:
|
|
- provider
|
|
required:
|
|
- data
|
|
ScanResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Scan'
|
|
required:
|
|
- data
|
|
ScanUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- scans
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
nullable: true
|
|
maxLength: 100
|
|
minLength: 3
|
|
ScanUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ScanUpdate'
|
|
required:
|
|
- data
|
|
ScheduleDailyCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- daily-schedules
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
provider_id:
|
|
type: string
|
|
format: uuid
|
|
required:
|
|
- provider_id
|
|
required:
|
|
- data
|
|
SerializerMetaclassResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/MuteRule'
|
|
required:
|
|
- data
|
|
Task:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tasks
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
completed_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
name:
|
|
type: string
|
|
readOnly: true
|
|
state:
|
|
type: string
|
|
enum:
|
|
- available
|
|
- scheduled
|
|
- executing
|
|
- completed
|
|
- failed
|
|
- cancelled
|
|
readOnly: true
|
|
result:
|
|
readOnly: true
|
|
task_args:
|
|
readOnly: true
|
|
metadata:
|
|
readOnly: true
|
|
TaskResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Task'
|
|
required:
|
|
- data
|
|
Tenant:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tenants
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 100
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
memberships:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- memberships
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type memberships
|
|
title: memberships
|
|
readOnly: true
|
|
TenantApiKey:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- api-keys
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 100
|
|
minLength: 3
|
|
prefix:
|
|
type: string
|
|
readOnly: true
|
|
description: Unique prefix to identify the API key
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
revoked:
|
|
type: boolean
|
|
description: If the API key is revoked, entities cannot use it anymore.
|
|
(This cannot be undone.)
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
last_used_at:
|
|
type: string
|
|
format: date-time
|
|
nullable: true
|
|
description: Last time this API key was used for authentication
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
entity:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
nullable: true
|
|
TenantApiKeyCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- api-keys
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 100
|
|
minLength: 3
|
|
prefix:
|
|
type: string
|
|
readOnly: true
|
|
description: Unique prefix to identify the API key
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
revoked:
|
|
type: boolean
|
|
readOnly: true
|
|
description: If the API key is revoked, entities cannot use it anymore.
|
|
(This cannot be undone.)
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
last_used_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
description: Last time this API key was used for authentication
|
|
api_key:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
entity:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
TenantApiKeyCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- api-keys
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
maxLength: 100
|
|
prefix:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
description: Unique prefix to identify the API key
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
revoked:
|
|
type: boolean
|
|
readOnly: true
|
|
description: If the API key is revoked, entities cannot use it anymore.
|
|
(This cannot be undone.)
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
last_used_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
description: Last time this API key was used for authentication
|
|
api_key:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
entity:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
required:
|
|
- data
|
|
TenantApiKeyCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/TenantApiKeyCreate'
|
|
required:
|
|
- data
|
|
TenantApiKeyResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/TenantApiKey'
|
|
required:
|
|
- data
|
|
TenantApiKeyUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- api-keys
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 100
|
|
minLength: 3
|
|
prefix:
|
|
type: string
|
|
readOnly: true
|
|
description: Unique prefix to identify the API key
|
|
expires_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
last_used_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
nullable: true
|
|
description: Last time this API key was used for authentication
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
entity:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- users
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
nullable: true
|
|
TenantApiKeyUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/TenantApiKeyUpdate'
|
|
required:
|
|
- data
|
|
TenantRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tenants
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 1
|
|
maxLength: 100
|
|
required:
|
|
- name
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
memberships:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: array
|
|
items:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
title: Resource Identifier
|
|
description: The identifier of the related object.
|
|
type:
|
|
type: string
|
|
enum:
|
|
- memberships
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share
|
|
common attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: A related resource object from type memberships
|
|
title: memberships
|
|
readOnly: true
|
|
required:
|
|
- data
|
|
TenantResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Tenant'
|
|
required:
|
|
- data
|
|
ThreatScoreSnapshot:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- threatscore-snapshots
|
|
id: {}
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
readOnly: true
|
|
inserted_at:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
compliance_id:
|
|
type: string
|
|
readOnly: true
|
|
description: Compliance framework ID (e.g., 'prowler_threatscore_aws')
|
|
overall_score:
|
|
type: string
|
|
format: decimal
|
|
pattern: ^-?\d{0,3}(?:\.\d{0,2})?$
|
|
readOnly: true
|
|
description: Overall ThreatScore percentage (0-100)
|
|
score_delta:
|
|
type: string
|
|
format: decimal
|
|
pattern: ^-?\d{0,3}(?:\.\d{0,2})?$
|
|
readOnly: true
|
|
nullable: true
|
|
description: Score change compared to previous snapshot (positive =
|
|
improvement)
|
|
section_scores:
|
|
readOnly: true
|
|
description: ThreatScore breakdown by section
|
|
critical_requirements:
|
|
readOnly: true
|
|
description: List of critical failed requirements (risk >= 4)
|
|
total_requirements:
|
|
type: integer
|
|
readOnly: true
|
|
description: Total number of requirements evaluated
|
|
passed_requirements:
|
|
type: integer
|
|
readOnly: true
|
|
description: Number of requirements with PASS status
|
|
failed_requirements:
|
|
type: integer
|
|
readOnly: true
|
|
description: Number of requirements with FAIL status
|
|
manual_requirements:
|
|
type: integer
|
|
readOnly: true
|
|
description: Number of requirements with MANUAL status
|
|
total_findings:
|
|
type: integer
|
|
readOnly: true
|
|
description: Total number of findings across all requirements
|
|
passed_findings:
|
|
type: integer
|
|
readOnly: true
|
|
description: Number of findings with PASS status
|
|
failed_findings:
|
|
type: integer
|
|
readOnly: true
|
|
description: Number of findings with FAIL status
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
scan:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- scans
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
provider:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
type:
|
|
type: string
|
|
enum:
|
|
- providers
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
ThreatScoreSnapshotResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/ThreatScoreSnapshot'
|
|
required:
|
|
- data
|
|
Token:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tokens
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
writeOnly: true
|
|
password:
|
|
type: string
|
|
writeOnly: true
|
|
tenant_id:
|
|
type: string
|
|
format: uuid
|
|
writeOnly: true
|
|
description: If not provided, the tenant ID of the first membership
|
|
that was added to the user will be used.
|
|
refresh:
|
|
type: string
|
|
readOnly: true
|
|
access:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- email
|
|
- password
|
|
TokenRefresh:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tokens-refresh
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
refresh:
|
|
type: string
|
|
access:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- refresh
|
|
TokenRefreshRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tokens-refresh
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
refresh:
|
|
type: string
|
|
minLength: 1
|
|
access:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
required:
|
|
- refresh
|
|
required:
|
|
- data
|
|
TokenRefreshResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/TokenRefresh'
|
|
required:
|
|
- data
|
|
TokenRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tokens
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
email:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
password:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
tenant_id:
|
|
type: string
|
|
format: uuid
|
|
writeOnly: true
|
|
description: If not provided, the tenant ID of the first membership
|
|
that was added to the user will be used.
|
|
refresh:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
access:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
required:
|
|
- email
|
|
- password
|
|
required:
|
|
- data
|
|
TokenResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/Token'
|
|
required:
|
|
- data
|
|
TokenSwitchTenant:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tokens-switch-tenant
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
tenant_id:
|
|
type: string
|
|
format: uuid
|
|
writeOnly: true
|
|
description: The tenant ID for which to request a new token.
|
|
access:
|
|
type: string
|
|
readOnly: true
|
|
refresh:
|
|
type: string
|
|
readOnly: true
|
|
required:
|
|
- tenant_id
|
|
TokenSwitchTenantRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- tokens-switch-tenant
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
tenant_id:
|
|
type: string
|
|
format: uuid
|
|
writeOnly: true
|
|
description: The tenant ID for which to request a new token.
|
|
access:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
refresh:
|
|
type: string
|
|
readOnly: true
|
|
minLength: 1
|
|
required:
|
|
- tenant_id
|
|
required:
|
|
- data
|
|
TokenSwitchTenantResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/TokenSwitchTenant'
|
|
required:
|
|
- data
|
|
User:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- users
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 150
|
|
minLength: 3
|
|
email:
|
|
type: string
|
|
format: email
|
|
description: Case insensitive
|
|
maxLength: 254
|
|
company_name:
|
|
type: string
|
|
maxLength: 150
|
|
date_joined:
|
|
type: string
|
|
format: date-time
|
|
readOnly: true
|
|
required:
|
|
- name
|
|
- email
|
|
relationships:
|
|
type: object
|
|
properties:
|
|
memberships:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum:
|
|
- memberships
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
roles:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
type:
|
|
type: string
|
|
enum:
|
|
- roles
|
|
title: Resource Type Name
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common
|
|
attributes and relationships.
|
|
required:
|
|
- id
|
|
- type
|
|
required:
|
|
- data
|
|
description: The identifier of the related object.
|
|
title: Resource Identifier
|
|
readOnly: true
|
|
UserCreate:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- users
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 150
|
|
minLength: 3
|
|
password:
|
|
type: string
|
|
writeOnly: true
|
|
email:
|
|
type: string
|
|
format: email
|
|
description: Case insensitive
|
|
maxLength: 254
|
|
company_name:
|
|
type: string
|
|
required:
|
|
- name
|
|
- password
|
|
- email
|
|
UserCreateRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- users
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
minLength: 3
|
|
maxLength: 150
|
|
password:
|
|
type: string
|
|
writeOnly: true
|
|
minLength: 1
|
|
email:
|
|
type: string
|
|
format: email
|
|
minLength: 1
|
|
description: Case insensitive
|
|
maxLength: 254
|
|
company_name:
|
|
type: string
|
|
minLength: 1
|
|
required:
|
|
- name
|
|
- password
|
|
- email
|
|
required:
|
|
- data
|
|
UserCreateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/UserCreate'
|
|
required:
|
|
- data
|
|
UserResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/User'
|
|
required:
|
|
- data
|
|
UserRoleRelationshipRequest:
|
|
type: object
|
|
properties:
|
|
data:
|
|
type: object
|
|
required:
|
|
- type
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- user-roles
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
roles:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/RoleResourceIdentifierRequest'
|
|
description: List of resource identifier objects representing roles.
|
|
required:
|
|
- roles
|
|
required:
|
|
- data
|
|
UserUpdate:
|
|
type: object
|
|
required:
|
|
- type
|
|
- id
|
|
additionalProperties: false
|
|
properties:
|
|
type:
|
|
type: string
|
|
description: The [type](https://jsonapi.org/format/#document-resource-object-identification)
|
|
member is used to describe resource objects that share common attributes
|
|
and relationships.
|
|
enum:
|
|
- users
|
|
id:
|
|
type: string
|
|
format: uuid
|
|
attributes:
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
maxLength: 150
|
|
minLength: 3
|
|
password:
|
|
type: string
|
|
writeOnly: true
|
|
email:
|
|
type: string
|
|
format: email
|
|
description: Case insensitive
|
|
maxLength: 254
|
|
company_name:
|
|
type: string
|
|
maxLength: 150
|
|
required:
|
|
- name
|
|
- email
|
|
UserUpdateResponse:
|
|
type: object
|
|
properties:
|
|
data:
|
|
$ref: '#/components/schemas/UserUpdate'
|
|
required:
|
|
- data
|
|
securitySchemes:
|
|
JWT or API Key:
|
|
type: http
|
|
scheme: bearer
|
|
bearerFormat: JWT
|
|
description: Supports both JWT Bearer tokens and API Key authentication. Use
|
|
`Bearer <token>` for JWT or `Api-Key <key>` for API keys.
|
|
tags:
|
|
- name: User
|
|
description: Endpoints for managing user accounts.
|
|
- name: Token
|
|
description: Endpoints for token management, including obtaining a new token and
|
|
refreshing an existing token for authentication purposes.
|
|
- name: Tenant
|
|
description: Endpoints for managing tenants, along with their memberships.
|
|
- name: Invitation
|
|
description: Endpoints for tenant invitations management, allowing retrieval and
|
|
filtering of invitations, creating new invitations, accepting and revoking them.
|
|
- name: Role
|
|
description: Endpoints for managing RBAC roles within tenants, allowing creation,
|
|
retrieval, updating, and deletion of role configurations and permissions.
|
|
- name: Provider
|
|
description: Endpoints for managing providers (AWS, GCP, Azure, etc...).
|
|
- name: Provider Group
|
|
description: Endpoints for managing provider groups.
|
|
- name: Task
|
|
description: Endpoints for task management, allowing retrieval of task status and
|
|
revoking tasks that have not started.
|
|
- name: Scan
|
|
description: Endpoints for triggering manual scans and viewing scan results.
|
|
- name: Attack Paths
|
|
description: Endpoints for Attack Paths scan status and executing Attack Paths queries.
|
|
- name: Schedule
|
|
description: Endpoints for managing scan schedules, allowing configuration of automated
|
|
scans with different scheduling options.
|
|
- name: Resource
|
|
description: Endpoints for managing resources discovered by scans, allowing retrieval
|
|
and filtering of resource information.
|
|
- name: Finding
|
|
description: Endpoints for managing findings, allowing retrieval and filtering of
|
|
findings that result from scans.
|
|
- name: Processor
|
|
description: Endpoints for managing post-processors used to process Prowler findings,
|
|
including registration, configuration, and deletion of post-processing actions.
|
|
- name: Compliance Overview
|
|
description: Endpoints for checking the compliance overview, allowing filtering
|
|
by scan, provider or compliance framework ID.
|
|
- name: Overview
|
|
description: Endpoints for retrieving aggregated summaries of resources from the
|
|
system.
|
|
- name: Integration
|
|
description: Endpoints for managing third-party integrations, including registration,
|
|
configuration, retrieval, and deletion of integrations such as S3, JIRA, or other
|
|
services.
|
|
- name: Lighthouse AI
|
|
description: Endpoints for managing Lighthouse AI configurations, including creation,
|
|
retrieval, updating, and deletion of configurations such as OpenAI keys, models,
|
|
and business context.
|
|
- name: SAML
|
|
description: Endpoints for Single Sign-On authentication management via SAML for
|
|
seamless user authentication.
|
|
- name: API Keys
|
|
description: Endpoints for API keys management. These can be used as an alternative
|
|
to JWT authorization.
|
|
- name: Mute Rules
|
|
description: Endpoints for simple mute rules management. These can be used as an
|
|
alternative to the Mutelist Processor if you need to mute specific findings across
|
|
your tenant with a specific reason.
|