CloudQuery custom-columns API
The custom-columns API from CloudQuery — 2 operation(s) for custom-columns.
The custom-columns API from CloudQuery — 2 operation(s) for custom-columns.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/cloudquery-custom-columns-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
email: support@cloudquery.io
name: CloudQuery Support Team
url: https://cloudquery.io
description: 'Welcome to the CloudQuery Platform API documentation! This API can be used to interact with the CloudQuery platform. As a user, the API allows you to search the CloudQuery asset inventory, run SQL queries against the data warehouse, save and load searches, and much more. As an administrator, it allows you to manage your teams, syncs, and other objects.
### Authentication
The API is secured using bearer tokens. To get started, you can generate an API key for your Platform deployment from your platform dashboard. For a step-by-step guide, see: https://www.cloudquery.io/docs/cli/managing-cloudquery/deployments/generate-api-key.
The base URL for the API depends on where your CloudQuery Platform is hosted. If running locally, this is usually http://localhost:3000/api. In a production deployment it should be an HTTPS URL. For purposes of illustration, we will assume the platform instance is available at https://cloudquery.mycompany.com. In this case, the base API endpoint will be https://cloudquery.mycompany.com/api.
### Example Request
To test your connection to the API, we can use the `/plugins` endpoint. For example:
`curl -v -H "Authorization: Bearer $CLOUDQUERY_API_KEY" \ https://cloudquery.mycompany.com/api/plugins`
'
license:
name: MIT
url: https://spdx.org/licenses/MIT
termsOfService: https://www.cloudquery.io/terms
title: CloudQuery Platform OpenAPI Spec admin Custom Columns API
version: 1.0.0
servers:
- url: https://api.cloudquery.io
description: Base URL declared by the provider in apis.yml (roadmap#122).
security:
- bearerAuth: []
- cookieAuth: []
tags:
- name: custom-columns
paths:
/custom-columns:
get:
description: List all custom columns
operationId: PlatformListAllCustomColumns
parameters:
- $ref: '#/components/parameters/platform_per_page'
- $ref: '#/components/parameters/platform_page'
- $ref: '#/components/parameters/platform_custom_columns_sort_bys'
- $ref: '#/components/parameters/platform_custom_columns_sort_dirs'
- name: search_term
in: query
schema:
type: string
description: Filter columns by name, label, or description.
responses:
'200':
description: Response
content:
application/json:
schema:
required:
- items
- metadata
properties:
items:
items:
$ref: '#/components/schemas/PlatformCustomColumn'
type: array
metadata:
$ref: '#/components/schemas/PlatformListMetadata'
'400':
$ref: '#/components/responses/PlatformBadRequest'
'401':
$ref: '#/components/responses/PlatformRequiresAuthentication'
'403':
$ref: '#/components/responses/PlatformForbidden'
'404':
$ref: '#/components/responses/PlatformNotFound'
'422':
$ref: '#/components/responses/PlatformUnprocessableEntity'
'500':
$ref: '#/components/responses/PlatformInternalError'
tags:
- custom-columns
post:
description: Save a custom column
operationId: PlatformSaveCustomColumn
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformCustomColumnCreateOrUpdate'
responses:
'201':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformCustomColumn'
'400':
$ref: '#/components/responses/PlatformBadRequest'
'401':
$ref: '#/components/responses/PlatformRequiresAuthentication'
'403':
$ref: '#/components/responses/PlatformForbidden'
'404':
$ref: '#/components/responses/PlatformNotFound'
'422':
$ref: '#/components/responses/PlatformUnprocessableEntity'
'500':
$ref: '#/components/responses/PlatformInternalError'
tags:
- custom-columns
/custom-columns/{custom_column_id}:
get:
description: Get a custom column
operationId: PlatformGetCustomColumn
parameters:
- $ref: '#/components/parameters/platform_custom_column_id'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformCustomColumn'
'401':
$ref: '#/components/responses/PlatformRequiresAuthentication'
'403':
$ref: '#/components/responses/PlatformForbidden'
'404':
$ref: '#/components/responses/PlatformNotFound'
'422':
$ref: '#/components/responses/PlatformUnprocessableEntity'
'500':
$ref: '#/components/responses/PlatformInternalError'
tags:
- custom-columns
patch:
description: Update a custom column
operationId: PlatformUpdateCustomColumn
parameters:
- $ref: '#/components/parameters/platform_custom_column_id'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformCustomColumnCreateOrUpdate'
responses:
'200':
description: Response
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformCustomColumn'
'400':
$ref: '#/components/responses/PlatformBadRequest'
'401':
$ref: '#/components/responses/PlatformRequiresAuthentication'
'403':
$ref: '#/components/responses/PlatformForbidden'
'404':
$ref: '#/components/responses/PlatformNotFound'
'422':
$ref: '#/components/responses/PlatformUnprocessableEntity'
'500':
$ref: '#/components/responses/PlatformInternalError'
tags:
- custom-columns
delete:
description: Delete a custom column
operationId: PlatformDeleteCustomColumn
parameters:
- $ref: '#/components/parameters/platform_custom_column_id'
responses:
'204':
description: Success
'401':
$ref: '#/components/responses/PlatformRequiresAuthentication'
'403':
$ref: '#/components/responses/PlatformForbidden'
'404':
$ref: '#/components/responses/PlatformNotFound'
'422':
$ref: '#/components/responses/PlatformUnprocessableEntity'
'500':
$ref: '#/components/responses/PlatformInternalError'
tags:
- custom-columns
components:
responses:
PlatformInternalError:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformBasicError'
description: Internal Error
PlatformUnprocessableEntity:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformFieldError'
description: UnprocessableEntity
PlatformRequiresAuthentication:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformBasicError'
description: Requires authentication
PlatformNotFound:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformBasicError'
description: Resource not found
PlatformBadRequest:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformFieldError'
description: Bad request
PlatformForbidden:
content:
application/json:
schema:
$ref: '#/components/schemas/PlatformFieldError'
description: Forbidden
schemas:
PlatformCreatedBy:
type: object
required:
- id
- name
- email
properties:
id:
$ref: '#/components/schemas/PlatformUserID'
name:
$ref: '#/components/schemas/PlatformUserName'
email:
type: string
PlatformListMetadata:
required:
- page_size
properties:
total_count:
type: integer
last_page:
type: integer
page_size:
type: integer
time_ms:
type: integer
PlatformCustomColumnID:
description: The unique ID for the custom column.
type: string
format: uuid
x-go-name: CustomColumnID
PlatformUserID:
description: ID of the User
type: string
format: uuid
example: 12345678-1234-1234-1234-1234567890ab
x-go-name: UserID
PlatformCustomColumnSortDirection:
title: CustomColumnSortDirection
type: string
enum:
- asc
- desc
default: asc
PlatformUserName:
description: The unique name for the user.
minLength: 1
maxLength: 255
pattern: ^[a-zA-Z\p{L}][a-zA-Z\p{L} \-']*$
x-pattern-message: can contain only letters, spaces, hyphens, and apostrophes, starting with a letter
type: string
example: Sarah O'Connor
PlatformCustomColumnColumnName:
type: string
description: The name for the custom column.
pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
example: tags_v1_region
x-pattern-message: Letters, numbers, and underscores only. Must start with a letter.
minLength: 1
maxLength: 63
PlatformCustomColumn:
title: Custom Column
type: object
description: A custom column that is configured manually by the user.
additionalProperties: false
required:
- id
- column_name
- label
- value_expr
- created_by
- created_at
properties:
id:
$ref: '#/components/schemas/PlatformCustomColumnID'
description:
type: string
column_name:
$ref: '#/components/schemas/PlatformCustomColumnColumnName'
label:
type: string
example: Environment name
value_expr:
$ref: '#/components/schemas/PlatformCustomColumnValueExpr'
created_by:
$ref: '#/components/schemas/PlatformCreatedBy'
created_at:
example: '2017-07-14T16:53:42Z'
format: date-time
type: string
PlatformFieldError:
allOf:
- $ref: '#/components/schemas/PlatformBasicError'
- properties:
errors:
items:
type: string
type: array
field_errors:
additionalProperties:
type: string
type: object
type: object
PlatformCustomColumnCreateOrUpdate:
title: Custom Column Create or Update
type: object
description: Create or update a custom column
additionalProperties: false
required:
- column_name
- label
- value_expr
properties:
description:
type: string
column_name:
$ref: '#/components/schemas/PlatformCustomColumnColumnName'
label:
type: string
example: Environment name
value_expr:
$ref: '#/components/schemas/PlatformCustomColumnValueExpr'
PlatformCustomColumnSortBy:
title: CustomColumnSortBy
type: string
enum:
- id
- description
- column_name
- label
- value_expr
- created_by
- created_at
- updated_at
PlatformBasicError:
additionalProperties: false
description: Basic Error
required:
- message
- status
properties:
message:
type: string
status:
type: integer
title: Basic Error
type: object
PlatformCustomColumnValueExpr:
type: string
description: The SQL expression for the custom column.
parameters:
platform_custom_columns_sort_dirs:
name: sort_dir
in: query
description: Custom column sort direction options
allowEmptyValue: true
explode: true
schema:
type: array
items:
$ref: '#/components/schemas/PlatformCustomColumnSortDirection'
x-go-type-skip-optional-pointer: true
x-go-name: CustomColumnSortDirections
platform_page:
description: Page number of the results to fetch
in: query
name: page
required: false
schema:
default: 1
minimum: 1
type: integer
format: int64
platform_per_page:
description: The number of results per page (max 1000).
in: query
name: per_page
required: false
schema:
default: 100
maximum: 1000
minimum: 1
type: integer
format: int64
platform_custom_column_id:
in: path
name: custom_column_id
required: true
schema:
$ref: '#/components/schemas/PlatformCustomColumnID'
x-go-name: CustomColumnID
platform_custom_columns_sort_bys:
name: sort_by
in: query
description: Sort by options
allowEmptyValue: true
explode: true
schema:
type: array
items:
$ref: '#/components/schemas/PlatformCustomColumnSortBy'
x-go-type-skip-optional-pointer: true
x-go-name: CustomColumnSortBys
securitySchemes:
bearerAuth:
scheme: bearer
type: http
basicAuth:
scheme: basic
type: http
cookieAuth:
scheme: cookie
type: http