Upwind api-security API
The api-security API from Upwind — 2 operation(s) for api-security.
The api-security API from Upwind — 2 operation(s) for api-security.
openapi: 3.0.3
info:
title: Upwind Management REST API v1 access-management api-security API
version: '1.0'
description: Upwind Management REST API — administrative and data endpoints for the Upwind cloud security platform (threats, vulnerabilities, configurations, inventory, API security, workflows, access management). Reconstructed faithfully from the embedded OpenAPI operation definitions published in the Upwind docs (docs.upwind.io) by the API Evangelist enrichment pipeline; operation content is verbatim from the provider.
contact:
name: Upwind Support
email: support@upwind.io
url: https://docs.upwind.io/
x-apievangelist:
generated: '2026-07-21'
method: searched
source: https://docs.upwind.io/restapi/v1/introduction (embedded docusaurus-plugin-openapi-docs operation JSON)
servers:
- url: https://api.upwind.io
description: Production endpoint (US)
- url: https://api.eu.upwind.io
description: Production endpoint (EU)
- url: https://api.me.upwind.io
description: Production endpoint (ME)
security:
- OAuth2ClientCredentials: []
tags:
- name: api-security
paths:
/v1/organizations/{organization-id}/apisecurity-endpoints:
get:
operationId: getApiCatalog
summary: List endpoints
description: A `GET` request sent to the endpoint root returns a list of API Endpoint objects that are associated with the specified organization. To learn more about API Security, refer to the [API Security Overview](/api-security/overview) page.
tags:
- api-security
parameters:
- description: The unique identifier for the Upwind organization.
example: org_Xk9mPq7RtYwN2vLs
in: path
name: organization-id
required: true
schema:
type: string
- description: Specifies how many results are returned on a page.
in: query
name: per-page
required: false
schema:
type: integer
format: int32
default: 100
- description: Specifies the token for fetching subsequent pages in a paginated result set. Use the token from a previous response to continue retrieving data when the number of results exceeds the current page size.
in: query
name: page-token
required: false
schema:
type: string
- description: Filters endpoints by HTTP method (GET, POST, PUT, DELETE, etc.).
in: query
name: method
required: false
schema:
type: string
- description: Filters endpoints by authentication state. Multiple values may be provided, separated by commas.
example: AUTHENTICATED,UNAUTHENTICATED
in: query
name: authentication-state
required: false
schema:
type: string
enum:
- AUTHENTICATED
- UNAUTHENTICATED
- UNKNOWN
- description: Filters endpoints that have internet ingress exposure.
in: query
name: has-internet-ingress
required: false
schema:
type: boolean
- description: Filters endpoints that have associated vulnerabilities.
in: query
name: has-vulnerability
required: false
schema:
type: boolean
- description: Filters endpoints that handle sensitive data.
in: query
name: has-sensitive-data
required: false
schema:
type: boolean
- description: Filters by the specified cloud account ID.
in: query
name: cloud-account-id
required: false
schema:
type: string
- description: Filters endpoints by cloud provider (AWS, Azure, GCP, etc.).
in: query
name: cloud-provider
required: false
schema:
type: string
- description: Filters endpoints by resource type.
in: query
name: resource-type
required: false
schema:
type: string
- description: Filters endpoints by cloud organization ID.
in: query
name: cloud-organization-id
required: false
schema:
type: string
- description: Filters endpoints by cloud organization unit ID.
in: query
name: cloud-organization-unit-id
required: false
schema:
type: string
- description: Filters endpoints by domain name.
in: query
name: domain
required: false
schema:
type: string
- description: Filters endpoints by cluster ID.
in: query
name: cluster-id
required: false
schema:
type: string
- description: Filters by the specified Kubernetes namespace.
in: query
name: namespace
required: false
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: array
items:
type: object
properties:
domains:
type: array
description: List of domains associated with this endpoint.
items:
type: string
uniqueItems: true
first_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was first observed.
id:
type: string
description: The unique identifier for this endpoint.
last_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was last observed.
method:
type: string
description: The HTTP method for this endpoint.
enum:
- GET
- POST
- PUT
- DELETE
- PATCH
- HEAD
- OPTIONS
- TRACE
resource_id:
type: string
description: The unique identifier of the associated resource.
risk_overview:
description: Risk assessment overview for this endpoint.
type: object
properties:
authentication:
description: Authentication details for this endpoint.
type: object
properties:
state:
type: string
description: The authentication state of this endpoint.
enum:
- AUTHENTICATED
- UNAUTHENTICATED
- UNKNOWN
title: ApiEndpointAuthentication
internet_exposure:
description: Internet exposure details for this endpoint.
type: object
properties:
ingress:
description: Ingress exposure details for this endpoint.
type: object
properties:
last_seen_time:
type: string
format: date-time
description: The timestamp when this exposure was last observed.
title: ApiEndpointExposureDetails
title: ApiEndpointInternetExposure
sensitive_data_findings:
type: array
description: List of sensitive data findings associated with this endpoint.
items:
type: object
properties:
category:
type: string
description: The category of sensitive data finding.
last_seen_time:
type: string
format: date-time
description: The timestamp when this sensitive data finding was last observed.
type:
type: string
description: The type of sensitive data finding.
title: ApiEndpointSensitiveDataFinding
title: ApiEndpointRiskOverview
status_codes:
type: array
description: List of HTTP status codes observed for this endpoint.
items:
type: string
uniqueItems: true
uri:
type: string
description: The URI path for this endpoint.
title: ApiEndpoint
description: OK
'206':
content:
application/json:
schema:
type: array
items:
type: object
properties:
domains:
type: array
description: List of domains associated with this endpoint.
items:
type: string
uniqueItems: true
first_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was first observed.
id:
type: string
description: The unique identifier for this endpoint.
last_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was last observed.
method:
type: string
description: The HTTP method for this endpoint.
enum:
- GET
- POST
- PUT
- DELETE
- PATCH
- HEAD
- OPTIONS
- TRACE
resource_id:
type: string
description: The unique identifier of the associated resource.
risk_overview:
description: Risk assessment overview for this endpoint.
type: object
properties:
authentication:
description: Authentication details for this endpoint.
type: object
properties:
state:
type: string
description: The authentication state of this endpoint.
enum:
- AUTHENTICATED
- UNAUTHENTICATED
- UNKNOWN
title: ApiEndpointAuthentication
internet_exposure:
description: Internet exposure details for this endpoint.
type: object
properties:
ingress:
description: Ingress exposure details for this endpoint.
type: object
properties:
last_seen_time:
type: string
format: date-time
description: The timestamp when this exposure was last observed.
title: ApiEndpointExposureDetails
title: ApiEndpointInternetExposure
sensitive_data_findings:
type: array
description: List of sensitive data findings associated with this endpoint.
items:
type: object
properties:
category:
type: string
description: The category of sensitive data finding.
last_seen_time:
type: string
format: date-time
description: The timestamp when this sensitive data finding was last observed.
type:
type: string
description: The type of sensitive data finding.
title: ApiEndpointSensitiveDataFinding
title: ApiEndpointRiskOverview
status_codes:
type: array
description: List of HTTP status codes observed for this endpoint.
items:
type: string
uniqueItems: true
uri:
type: string
description: The URI path for this endpoint.
title: ApiEndpoint
description: Partial Content
'400':
content:
application/json:
schema:
type: array
items:
type: object
properties:
domains:
type: array
description: List of domains associated with this endpoint.
items:
type: string
uniqueItems: true
first_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was first observed.
id:
type: string
description: The unique identifier for this endpoint.
last_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was last observed.
method:
type: string
description: The HTTP method for this endpoint.
enum:
- GET
- POST
- PUT
- DELETE
- PATCH
- HEAD
- OPTIONS
- TRACE
resource_id:
type: string
description: The unique identifier of the associated resource.
risk_overview:
description: Risk assessment overview for this endpoint.
type: object
properties:
authentication:
description: Authentication details for this endpoint.
type: object
properties:
state:
type: string
description: The authentication state of this endpoint.
enum:
- AUTHENTICATED
- UNAUTHENTICATED
- UNKNOWN
title: ApiEndpointAuthentication
internet_exposure:
description: Internet exposure details for this endpoint.
type: object
properties:
ingress:
description: Ingress exposure details for this endpoint.
type: object
properties:
last_seen_time:
type: string
format: date-time
description: The timestamp when this exposure was last observed.
title: ApiEndpointExposureDetails
title: ApiEndpointInternetExposure
sensitive_data_findings:
type: array
description: List of sensitive data findings associated with this endpoint.
items:
type: object
properties:
category:
type: string
description: The category of sensitive data finding.
last_seen_time:
type: string
format: date-time
description: The timestamp when this sensitive data finding was last observed.
type:
type: string
description: The type of sensitive data finding.
title: ApiEndpointSensitiveDataFinding
title: ApiEndpointRiskOverview
status_codes:
type: array
description: List of HTTP status codes observed for this endpoint.
items:
type: string
uniqueItems: true
uri:
type: string
description: The URI path for this endpoint.
title: ApiEndpoint
description: Bad Request
'401':
description: Unauthorized
'403':
description: Forbidden
'429':
description: Rate Limit Exceeded
'500':
content:
application/json:
schema:
type: array
items:
type: object
properties:
domains:
type: array
description: List of domains associated with this endpoint.
items:
type: string
uniqueItems: true
first_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was first observed.
id:
type: string
description: The unique identifier for this endpoint.
last_seen_time:
type: string
format: date-time
description: The timestamp when this endpoint was last observed.
method:
type: string
description: The HTTP method for this endpoint.
enum:
- GET
- POST
- PUT
- DELETE
- PATCH
- HEAD
- OPTIONS
- TRACE
resource_id:
type: string
description: The unique identifier of the associated resource.
risk_overview:
description: Risk assessment overview for this endpoint.
type: object
properties:
authentication:
description: Authentication details for this endpoint.
type: object
properties:
state:
type: string
description: The authentication state of this endpoint.
enum:
- AUTHENTICATED
- UNAUTHENTICATED
- UNKNOWN
title: ApiEndpointAuthentication
internet_exposure:
description: Internet exposure details for this endpoint.
type: object
properties:
ingress:
description: Ingress exposure details for this endpoint.
type: object
properties:
last_seen_time:
type: string
format: date-time
description: The timestamp when this exposure was last observed.
title: ApiEndpointExposureDetails
title: ApiEndpointInternetExposure
sensitive_data_findings:
type: array
description: List of sensitive data findings associated with this endpoint.
items:
type: object
properties:
category:
type: string
description: The category of sensitive data finding.
last_seen_time:
type: string
format: date-time
description: The timestamp when this sensitive data finding was last observed.
type:
type: string
description: The type of sensitive data finding.
title: ApiEndpointSensitiveDataFinding
title: ApiEndpointRiskOverview
status_codes:
type: array
description: List of HTTP status codes observed for this endpoint.
items:
type: string
uniqueItems: true
uri:
type: string
description: The URI path for this endpoint.
title: ApiEndpoint
description: Internal Server Error
security:
- OAuth2ClientCredentials: []
/v2/organizations/{organization-id}/api-security/endpoints/search:
post:
operationId: searchEndpoints
summary: Search API endpoints
description: A `POST` request sent to the search endpoint returns a list of API Endpoint objects matching the supplied search conditions.
tags:
- api-security
parameters:
- description: The unique identifier for the Upwind organization.
example: org_Xk9mPq7RtYwN2vLs
in: path
name: organization-id
required: true
schema:
type: string
- description: Specifies the maximum number of items to be returned.
in: query
name: limit
required: false
schema:
type: integer
format: int32
default: 50
maximum: 100
minimum: 1
- description: A cursor for pagination to retrieve the next set of results.
example: eyJvZmZzZXQiOjIwfQ
in: query
name: cursor
required: false
schema:
type: string
- description: 'Sort results by one or more fields. Format: `field` or `field:asc` or `field:desc`. Multiple fields: `field1,field2:desc`. Allowed fields: `first_seen_time`, `last_seen_time`.'
example: first_seen_time:desc
in: query
name: sort
required: false
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
description: Search request body.
properties:
conditions:
type: array
description: List of filter conditions to apply to the search
items:
type: object
description: A filter condition for search queries
properties:
field:
type: string
description: The field name to filter on.
enum:
- method
- authentication_state
- cloud_account_id
- cloud_provider
- resource_type
- cloud_organization_id
- cloud_organization_unit_id
- domain
- cluster_id
- namespace
- has_internet_ingress
- has_vulnerability
- has_sensitive_data
- first_seen_time
- last_seen_time
example: method
operator:
type: string
description: '`eq`/`in` are supported for enum and ID fields (`eq` matches a single value, `in` matches any of several); `eq` is supported for booleans; `gt`/`lt` are supported for timestamp fields (ISO8601 values only, e.g. `2024-01-01T00:00:00Z`).'
enum:
- eq
- in
- gt
- lt
example: eq
value:
type: array
description: The values to compare against.
example:
- GET
items: {}
required:
- operator
- value
required: true
responses:
'200':
content:
application/json:
schema:
type: object
description: Successful paginated API response containing items and pagination metadata
properties:
items:
type: array
description: The list of items in the response
items:
type: object
description: An API endpoint discovered in the customer's environment.
properties:
domains:
type: array
description: List of domains associated with this endpoint.
items:
type: string
uniqueItems: true
first_seen_time:
type: string
format: date-time
description: The endpoint's first-seen timestamp (in ISO8601 format).
id:
type: string
description: The unique identifier of this endpoint.
last_seen_time:
type: string
format: date-time
description: The endpoint's last-seen timestamp (in ISO8601 format).
method:
type: string
description: The HTTP method of this endpoint.
enum:
- GET
- POST
- PUT
- DELETE
- PATCH
- HEAD
- OPTIONS
- TRACE
resource_id:
type: string
description: The unique identifier of the resource that hosts this endpoint.
risk_overview:
description: The risk assessment overview for this endpoint.
type: object
properties:
authentication:
description: The endpoint's authentication details, when known.
type: object
properties:
state:
type: string
description: The endpoint's authentication state.
enum:
- authenticated
- unauthenticated
- unknown
title: ApiAuthenticationDetails
internet_exposure:
description: The endpoint's internet exposure details. Present when the endpoint has been observed receiving internet traffic.
type: object
properties:
ingress:
description: The endpoint's ingress exposure details.
type: object
properties:
last_seen_time:
type: string
format: date-time
description: The exposure's last-seen timestamp (in ISO8601 format).
title: ApiExposureDetails
title: ApiInternetExposure
sensitive_data:
type: array
description: List of sensitive-data findings observed for this endpoint.
items:
type: object
description: A sensitive-data finding observed on an endpoint.
properties:
category:
type: string
description: The category of this sensitive-data finding.
last_seen_time:
type: string
format: date-time
description: The finding's last-seen timestamp (in ISO8601 format).
type:
type: string
description: The type of this sensitive-data finding.
title: ApiSensitiveDataFinding
title: ApiRiskOverview
status_codes:
type: array
description: List of HTTP status codes observed for this endpoint.
items:
type: string
uniqueItems: true
uri:
type: string
description: The URI path of this endpoint.
title: ApiEndpoint
metadata:
description: Pagination metadata containing cursor information for navigating results
type: object
properties:
limit:
type: integer
format: int32
description: The maximum number of items returned per page
example: 20
next_cursor:
# --- truncated at 32 KB (33 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/upwind/refs/heads/main/openapi/upwind-api-security-api-openapi.yml