CloudQuery OpenAPI Spec (1.0.0)

Download OpenAPI specification:Download

CloudQuery Support Team: support@cloudquery.io URL: https://cloudquery.io License: MIT Terms of Service

Welcome to the CloudQuery API documentation! This API can be used to interact with the CloudQuery platform. The API allows you to manage your teams, usage, spend limits, plugins, addons, cloud syncs, and much more.

The API is secured using bearer tokens. To get started, you can generate an API key from the CloudQuery dashboard. For a step-by-step guide, see: https://docs.cloudquery.io/docs/deployment/generate-api-key.

The base URL for the API is https://api.cloudquery.io.

users

GetCurrentUser

Get the current authenticated user from the OAuth token

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "email": "user@example.com",
  • "name": "user",
  • "updated_at": "2017-07-14T16:53:42Z"
}

UpdateCurrentUser

Update attributes for the current authenticated user from the OAuth token

Authorizations:
bearerAuth
Request Body schema: application/json
name
string [ 1 .. 255 ] characters

The user's name

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "email": "user@example.com",
  • "name": "user",
  • "updated_at": "2017-07-14T16:53:42Z"
}

ListCurrentUserInvitations

List of the current user's unaccepted invitations

Authorizations:
bearerAuth
query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

GetCurrentUserMemberships

Get memberships that the user has accepted.

Authorizations:
bearerAuth
query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

teams

ListTeams

List all teams

Authorizations:
bearerAuth
query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateTeam

Create a team owned by the current user.

Authorizations:
bearerAuth
Request Body schema: application/json
name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the team.

display_name
required
string [ 1 .. 255 ] characters

The team's display name

Responses

Request samples

Content type
application/json
{
  • "name": "cloudquery",
  • "display_name": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "name": "cloudquery",
  • "plan": "free",
  • "plan_end_time": "2017-07-14T16:53:42Z",
  • "is_trial_active": false,
  • "trial_end_time": "2017-07-14T16:53:42Z",
  • "display_name": "CloudQuery"
}

GetTeamByName

Get a team by name

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Responses

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "name": "cloudquery",
  • "plan": "free",
  • "plan_end_time": "2017-07-14T16:53:42Z",
  • "is_trial_active": false,
  • "trial_end_time": "2017-07-14T16:53:42Z",
  • "display_name": "CloudQuery"
}

UpdateTeam

Update team attributes

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
display_name
string

The team's display name

Responses

Request samples

Content type
application/json
{
  • "display_name": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "name": "cloudquery",
  • "plan": "free",
  • "plan_end_time": "2017-07-14T16:53:42Z",
  • "is_trial_active": false,
  • "trial_end_time": "2017-07-14T16:53:42Z",
  • "display_name": "CloudQuery"
}

CreateTeamImages

Get URLs to upload images for a given team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
required
Array of objects (Create Team Image Request) non-empty

Responses

Request samples

Content type
application/json
{
  • "images": [
    ]
}

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

GetTeamMemberships

Get memberships to the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

RemoveTeamMembership

Remove a user from the team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
email
required
string

Responses

Request samples

Content type
application/json
{
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

DeleteTeamMembership Deprecated

Remove a user from the team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

email
required
string
Example: user@example.com

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

GetSpendingLimit

Get monthly spending limit for team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Responses

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "usd": 1000
}

CreateSpendingLimit

Create a spending limit for a team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
usd
required
integer [ 0 .. 1000000000 ]

The maximum USD amount the team is allowed to use within a calendar month.

Responses

Request samples

Content type
application/json
{
  • "usd": 1000
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "usd": 1000
}

UpdateSpendingLimit

Update a spending limit for a team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
usd
required
integer [ 0 .. 1000000000 ]

The maximum USD amount the team is allowed to use within a calendar month.

Responses

Request samples

Content type
application/json
{
  • "usd": 1000
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "usd": 1000
}

DeleteSpendingLimit

Delete a spending limit for a team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

ListInvoicesByTeam

List all past invoices for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

ListTeamPluginUsage

List plugin usage for the current calendar month.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

IncreaseTeamPluginUsage

Increase the usage of a plugin. This can incur billing costs and should be used only by plugin SDKs.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
plugin_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the plugin.

Array of objects
rows
required
integer >= 0

The total number of additional rows used by the plugin.

request_id
required
string <uuid>

A unique ID associated with the usage increase.

Responses

Request samples

Content type
application/json
{
  • "plugin_team": "cloudquery",
  • "plugin_kind": "source",
  • "plugin_name": "aws-source",
  • "tables": [
    ],
  • "rows": 1000000,
  • "request_id": "123e4567-e89b-12d3-a456-426614174000"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

GetTeamPluginUsage

Get plugin usage for the current calendar month.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{
  • "plugin_team": "cloudquery",
  • "plugin_kind": "source",
  • "plugin_name": "aws-source",
  • "rows": 1000000,
  • "usd": "43.95",
  • "remaining_usd": "56.05",
  • "remaining_rows": 1
}

GetTeamUsageSummary

Get a summary of usage for the specified time range.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
metrics
Array of strings
Default: "paid_rows"
Items Enum: "paid_rows" "cloud_vcpu_seconds" "cloud_vram_byte_seconds" "network_egress_bytes"

A list of metrics to include in the response. Each metric must be one of the predefined valid values. If not provided, only paid-rows will be included.

start
string <date-time>

A valid ISO-8601-formatted date and time, indicating the inclusive start of the query time range. Defaults to 30 days ago.

end
string <date-time>

A valid ISO-8601-formatted date and time, indicating the exclusive end of the query time range. Defaults to the current time.

aggregation_period
string
Default: "day"
Enum: "day" "month"

An aggregation period to sum data over. In other words, data will be returned at this granularity. Currently only supports day and month.

Responses

Response samples

Content type
application/json
{
  • "groups": [
    ],
  • "values": [
    ],
  • "metadata": {
    }
}

GetGroupedTeamUsageSummary

Get a grouped summary of usage for the specified time range.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

group_by
required
string
Enum: "price_category" "plugin" "sync_id"

Group by usage summary. plugin and price_category groupings are only available for paid-rows.

query Parameters
metrics
Array of strings
Default: "paid_rows"
Items Enum: "paid_rows" "cloud_vcpu_seconds" "cloud_vram_byte_seconds" "network_egress_bytes"

A list of metrics to include in the response. Each metric must be one of the predefined valid values. If not provided, only paid-rows will be included.

start
string <date-time>

A valid ISO-8601-formatted date and time, indicating the inclusive start of the query time range. Defaults to 30 days ago.

end
string <date-time>

A valid ISO-8601-formatted date and time, indicating the exclusive end of the query time range. Defaults to the current time.

aggregation_period
string
Default: "day"
Enum: "day" "month"

An aggregation period to sum data over. In other words, data will be returned at this granularity. Currently only supports day and month.

Responses

Response samples

Content type
application/json
{
  • "groups": [
    ],
  • "values": [
    ],
  • "metadata": {
    }
}

GetTeamSpend

Get team spend for defined period.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
start
string <date-time>

A valid ISO 8601 date string representing the inclusive start of the period.

end
string <date-time>

A valid ISO 8601 date string representing the exclusive end of the period.

Responses

Response samples

Content type
application/json
{
  • "values": [
    ],
  • "metadata": {
    }
}

ListTeamInvitations

List of open invitations to the team

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

EmailTeamInvitation

Invite a user to join a team with their email address

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
email
required
string <email>
role
required
string
Enum: "admin" "member"

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com",
  • "role": "admin"
}

Response samples

Content type
application/json
{
  • "team_name": "cloudquery",
  • "email": "user@example.com",
  • "role": "admin",
  • "created_at": "2017-07-14T16:53:42Z"
}

DeleteTeamInvitation

Delete an invitation to the team, preventing the user becoming a team member

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
email
required
string <email>

Responses

Request samples

Content type
application/json
{
  • "email": "user@example.com"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

AcceptTeamInvitation

Accept an invitation to the team, creating a user membership

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
token
required
string <uuid>

Responses

Request samples

Content type
application/json
{
  • "token": "b5507016-7da2-4777-a161-1e8042a6a377"
}

Response samples

Content type
application/json
{
  • "role": "admin",
  • "team": {
    }
}

CancelTeamInvitation Deprecated

Cancel an invitation to the team, preventing the user becoming a team member

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

email
required
string
Example: user@example.com

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

ListSubscriptionOrdersByTeam

List all subscription orders for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateSubscriptionOrderForTeam

Start the checkout process for a subscription order.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
plan
required
string (TeamPlan)
Enum: "free" "paid" "enterprise" "trial"

The plan the team is on (trial is deprecated)

success_url
required
string

URL to redirect to after successful order completion

cancel_url
required
string

URL to redirect to after order cancellation

Responses

Request samples

Content type
application/json

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "team_name": "cloudquery",
  • "plan": "free",
  • "status": "pending",
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "completion_url": "http://example.com"
}

GetSubscriptionOrderByTeam

Get a subscription order for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

subscription_order_id
required
string <uuid> (TeamSubscriptionOrderID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the team subscription order

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "team_name": "cloudquery",
  • "plan": "free",
  • "status": "pending",
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "completion_url": "http://example.com"
}

ListUsersByTeam

List all users in the current team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

ListTeamAPIKeys

List all team API Keys

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateTeamAPIKey

Create new team API Key.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
name
required
string (APIKeyName) [ 1 .. 255 ] characters ^(?:[a-zA-Z0-9][a-zA-Z0-9- ]*)?[a-zA-Z0-9]$

Name of the API key

expires_at
required
string <date-time>

Responses

Request samples

Content type
application/json
{
  • "name": "cli-api-key",
  • "expires_at": "2019-08-24T14:15:22Z"
}

Response samples

Content type
application/json
{
  • "name": "cli-api-key",
  • "created_by": "user@example.com",
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "key": "1234567890abcdef1234567890abcdef",
  • "created_at": "2017-07-14T16:53:42Z",
  • "expires_at": "2017-07-14T16:53:42Z",
  • "expired": false,
  • "scope": "read-and-write"
}

DeleteTeamAPIKey

Delete API Key. This will remove any future access by this API Key.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

apikey_id
required
string <uuid> (APIKeyID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the API key

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

plugins

ListPluginNotificationRequests

List all plugin notification requests

Authorizations:
bearerAuth
query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreatePluginNotificationRequest

Create a new plugin notification request.

Authorizations:
bearerAuth
Request Body schema: application/json
required
plugin_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the plugin.

Responses

Request samples

Content type
application/json
{
  • "plugin_team": "cloudquery",
  • "plugin_kind": "source",
  • "plugin_name": "aws-source"
}

Response samples

Content type
application/json
{
  • "plugin_team": "cloudquery",
  • "plugin_kind": "source",
  • "plugin_name": "aws-source",
  • "created_at": "2017-07-14T16:53:42Z",
  • "sent_at": "2017-07-14T16:53:42Z",
  • "status": "pending"
}

GetPluginNotificationRequest

Query plugin notification request for a given plugin.

Authorizations:
bearerAuth
path Parameters
plugin_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

DeletePluginNotificationRequest

Remove plugin notification request for a given plugin.

Authorizations:
bearerAuth
path Parameters
plugin_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

ListPlugins

List all plugins

query Parameters
sort_by
string
Enum: "created_at" "updated_at" "name" "downloads"

The field to sort by

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{}

CreatePlugin

Create a plugin owned by the specified team. User must be part of that team.

Authorizations:
bearerAuth
Request Body schema: application/json
required
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the team.

kind
required
string (PluginKind)
Enum: "source" "destination"

The kind of plugin, ie. source or destination.

name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the plugin.

category
required
string (PluginCategory)
Enum: "cloud-infrastructure" "databases" "sales-marketing" "engineering-analytics" "marketing-analytics" "shipment-tracking" "product-analytics" "cloud-finops" "project-management" "fleet-management" "security" "data-warehouses" "human-resources" "other"

Supported categories for plugins

price_category
string (PluginPriceCategory)
Enum: "api" "database" "free"

Supported price categories for billing

tier
string (PluginTier)
Deprecated
Enum: "free" "paid" "open-core"

This field is deprecated, refer to price_category instead. This field is only kept for backward compatibility and may be removed in a future release. Supported tiers for plugins.

  • free: Free tier, with no paid tables.
  • paid: Paid tier. These plugins may have paid tables, but can also have free tables. They require login to access.
  • open-core: This option is deprecated, values will either be free or paid.
display_name
required
string [ 1 .. 50 ] characters

The plugin's display name, as shown in the CloudQuery Hub.

short_description
required
string [ 1 .. 512 ] characters

Short description of the plugin. This will be shown in the CloudQuery Hub.

homepage
string
public
required
boolean

Whether the plugin is listed in the CloudQuery Hub. If false, the plugin will not be shown in the CloudQuery Hub and will only be visible to members of the team.

repository
string
release_stage
string (PluginReleaseStageCreate)
Enum: "coming-soon" "preview" "ga"

Official plugins can go through three release stages: Coming Soon, Preview, and GA. The Coming Soon stage is for plugins that are not yet ready for Preview, but users can subscribe to be notified when they are ready. Both Preview and GA plugins follow semantic versioning. The main differences between the two stages are: Preview plugins are still experimental and may have frequent breaking changes. Preview plugins might get deprecated due to lack of usage. Long Term Support with community Discord and bug fixes is only guaranteed for GA plugins. Premium plugins are often discounted or free during the Preview stage.

logo
string^https:\/\/storage\.googleapis\.com\/cq-cloud...

URL to the plugin's logo. This will be shown in the CloudQuery Hub.

usd_per_row
string^\d+(?:\.\d{1,10})?$
Deprecated

Deprecated. Use price_category instead.

free_rows_per_month
integer <int64>
Deprecated

Deprecated. Use price_category instead.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

GetPlugin

Get details about a given plugin.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{}

UpdatePlugin

Update a plugin

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Request Body schema: application/json
category
string (PluginCategory)
Enum: "cloud-infrastructure" "databases" "sales-marketing" "engineering-analytics" "marketing-analytics" "shipment-tracking" "product-analytics" "cloud-finops" "project-management" "fleet-management" "security" "data-warehouses" "human-resources" "other"

Supported categories for plugins

price_category
string (PluginPriceCategory)
Enum: "api" "database" "free"

Supported price categories for billing

tier
string (PluginTier)
Deprecated
Enum: "free" "paid" "open-core"

This field is deprecated, refer to price_category instead. This field is only kept for backward compatibility and may be removed in a future release. Supported tiers for plugins.

  • free: Free tier, with no paid tables.
  • paid: Paid tier. These plugins may have paid tables, but can also have free tables. They require login to access.
  • open-core: This option is deprecated, values will either be free or paid.
display_name
string [ 1 .. 50 ] characters

The plugin's display name, as shown in the CloudQuery Hub.

short_description
string [ 1 .. 512 ] characters

Short description of the plugin. This will be shown in the CloudQuery Hub.

homepage
string
repository
string
logo
string^(https:\/\/storage\.googleapis\.com\/cq-clou...

URL to the plugin's logo. This will be shown in the CloudQuery Hub.

public
boolean

If plugin is not public, it won't be visible to other teams in the CloudQuery Hub.

release_stage
string (PluginReleaseStageUpdate)
Enum: "coming-soon" "preview" "ga"

Official plugins can go through three release stages: Coming Soon, Preview, and GA. The Coming Soon stage is for plugins that are not yet ready for Preview, but users can subscribe to be notified when they are ready. Both Preview and GA plugins follow semantic versioning. The main differences between the two stages are: Preview plugins are still experimental and may have frequent breaking changes. Preview plugins might get deprecated due to lack of usage. Long Term Support with community Discord and bug fixes is only guaranteed for GA plugins. Premium plugins are often discounted or free during the Preview stage.

usd_per_row
string^\d+(?:\.\d{1,10})?$
Deprecated

Deprecated. Update price_category instead.

free_rows_per_month
integer <int64>
Deprecated

Deprecated. Update price_category instead.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

DeletePluginByTeamAndPluginName

Delete plugin by team and plugin name

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

ListPluginUpcomingPriceChanges Deprecated

DEPRECATED. Plugin prices are now managed by category. This endpoint will be removed in the near future and currently returns only empty data.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreatePluginUpcomingPriceChange Deprecated

DEPRECATED. Plugin prices are now managed by category. This endpoint will be removed in the near future and currently returns only empty data.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Request Body schema: application/json
usd_per_row
required
string^\d+(?:\.\d{1,10})?$

The price per row in USD. This is used to calculate the price of a sync.

free_rows_per_month
required
integer <int64>

The number of rows that can be synced for free each month.

effective_from
required
string <date-time>

The date and time the price came (or will come) into effect.

Responses

Request samples

Content type
application/json
{
  • "usd_per_row": "0.0001",
  • "free_rows_per_month": 1000,
  • "effective_from": "2024-01-02T00:00:00Z"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "usd_per_row": "0.0001",
  • "free_rows_per_month": 1000,
  • "effective_from": "2024-01-02T00:00:00Z"
}

DeletePluginUpcomingPriceChanges Deprecated

DEPRECATED. Plugin prices are now managed by category. This endpoint will be removed in the near future and currently returns only empty data.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

ListPluginVersions

List all versions for a given plugin

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

query Parameters
sort_by
string
Value: "created_at"

The field to sort by

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

include_drafts
boolean

Whether to include draft versions

include_prereleases
boolean

Whether to include prerelease versions

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

GetPluginVersion

Get details about a given plugin version.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Responses

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "published_at": "2017-07-14T16:53:42Z",
  • "name": "string",
  • "message": "- Added support for AWS S3 - Added support for AWS EC2",
  • "draft": true,
  • "retracted": true,
  • "protocols": [
    ],
  • "supported_targets": [
    ],
  • "checksums": [
    ],
  • "package_type": "native",
  • "spec_json_schema": "string",
  • "connector_required": true,
  • "connector_types": [
    ],
  • "example_config": "string",
  • "ui_base_url": "string"
}

CreatePluginVersion

Create a new plugin version, or update a draft version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
message
required
string [ 1 .. 30000 ] characters

A message describing what's new or changed in this version. This message will be displayed to users in the plugin's changelog. Supports limited markdown syntax.

protocols
required
Array of integers (PluginProtocols)
Items Value: 3

The CloudQuery protocols supported by this plugin version (only protocol 3 is supported by new plugins).

supported_targets
required
Array of strings

The targets supported by this plugin version, formatted as _

checksums
required
Array of strings

List of SHA-256 checksums for this plugin version, one for each supported target.

package_type
required
string (PluginPackageType)
Enum: "native" "docker"

The package type of the plugin assets

spec_json_schema
string (PluginSpecJSONSchema)

The specification of the plugin. This is a JSON schema that describes the configuration of the plugin.

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "protocols": [
    ],
  • "supported_targets": [
    ],
  • "checksums": [
    ],
  • "package_type": "native",
  • "spec_json_schema": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "published_at": "2017-07-14T16:53:42Z",
  • "name": "string",
  • "message": "- Added support for AWS S3 - Added support for AWS EC2",
  • "draft": true,
  • "retracted": true,
  • "protocols": [
    ],
  • "supported_targets": [
    ],
  • "checksums": [
    ],
  • "package_type": "native",
  • "spec_json_schema": "string",
  • "connector_required": true,
  • "connector_types": [
    ]
}

UpdatePluginVersion

Update a given plugin version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
message
string

Description of what's new or changed in this version (supports markdown)

draft
boolean

If a plugin version is in draft, it will not show to members outside the team or be counted as the latest version. Once draft is set to false, only certain fields can be updated.

retracted
boolean

If a plugin version is retracted, assets will still be available for download, but the version will be marked as retracted to discourage use.

protocols
Array of integers (PluginProtocols)
Items Value: 3

The CloudQuery protocols supported by this plugin version (only protocol 3 is supported by new plugins).

supported_targets
Array of strings
checksums
Array of strings

The SHA-256 checksums of the plugin binaries, one per supported target.

package_type
string

The package type of the plugin binaries

spec_json_schema
string (PluginSpecJSONSchema)

The specification of the plugin. This is a JSON schema that describes the configuration of the plugin.

Responses

Request samples

Content type
application/json
{
  • "message": "- Added support for *AWS S3* - Added support for *AWS EC2*",
  • "draft": true,
  • "retracted": true,
  • "protocols": [
    ],
  • "supported_targets": [
    ],
  • "checksums": [
    ],
  • "package_type": "string",
  • "spec_json_schema": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "published_at": "2017-07-14T16:53:42Z",
  • "name": "string",
  • "message": "- Added support for AWS S3 - Added support for AWS EC2",
  • "draft": true,
  • "retracted": true,
  • "protocols": [
    ],
  • "supported_targets": [
    ],
  • "checksums": [
    ],
  • "package_type": "native",
  • "spec_json_schema": "string",
  • "connector_required": true,
  • "connector_types": [
    ]
}

ListPluginVersionDocs

List all documentation pages for a given plugin version

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreatePluginVersionDocs

Create or update one or more plugin version docs pages

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
required
Array of objects (CloudQuery Plugin Documentation Page)

Responses

Request samples

Content type
application/json
{
  • "pages": [
    ]
}

Response samples

Content type
application/json
{
  • "names": [
    ]
}

ReplacePluginVersionDocs

Replace (override) multiple plugin version docs pages

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
required
Array of objects (CloudQuery Plugin Documentation Page)

Responses

Request samples

Content type
application/json
{
  • "pages": [
    ]
}

Response samples

Content type
application/json
{
  • "names": [
    ]
}

DeletePluginVersionDocs

Delete one or more plugin version docs pages.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
names
required
Array of strings (PluginDocsPageName) [^[\w,\s-]+$]

Responses

Request samples

Content type
application/json
{
  • "names": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

ListPluginVersionTables

List tables for a given plugin version. This only applies to source plugins.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreatePluginVersionTables

Create or update one or more plugin version tables. This only applies to source plugins, and can only be done if the plugin version is in draft.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
required
Array of objects (CloudQuery Plugin Table)

Responses

Request samples

Content type
application/json
{
  • "tables": [
    ]
}

Response samples

Content type
application/json
{
  • "names": [
    ]
}

DeletePluginVersionTables

Delete one or more plugin version tables.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
names
required
Array of strings (PluginTableName) [^[a-z](_?[a-z0-9]+)+$]

Responses

Request samples

Content type
application/json
{
  • "names": [
    ]
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

GetPluginVersionTable

Get schema for a given table and plugin version. This only applies to source plugins.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

table_name
required
string

Responses

Response samples

Content type
application/json
{
  • "columns": [
    ],
  • "description": "string",
  • "is_incremental": true,
  • "name": "string",
  • "parent": "string",
  • "relations": [
    ],
  • "title": "string",
  • "is_paid": true
}

DownloadPluginAsset

Download an asset for a given plugin version and target

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

target_name
required
string
header Parameters
Accept
string

Responses

Response samples

Content type
application/json
{}

UploadPluginAsset

Get a URL to upload an asset for a given plugin version and target

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

target_name
required
string

Responses

Response samples

Content type
application/json
{
  • "url": "string"
}

UploadPluginUIAssets

Get URLs to upload UI assets for a given plugin version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
required
Array of objects (CloudQuery Plugin UI Asset Upload Request)

Responses

Request samples

Content type
application/json
{
  • "assets": [
    ]
}

Response samples

Content type
application/json
{
  • "ui_id": "string",
  • "assets": [
    ]
}

FinalizePluginUIAssetUpload

Finalize UI asset upload

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
ui_id
required
string

ID representing the finished upload

Responses

Request samples

Content type
application/json
{
  • "ui_id": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

RemovePluginUIAssets

Remove UI assets for a given plugin version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

ListPluginsByTeam

List all plugins for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

include_private
boolean

Whether to include private plugins

Responses

Response samples

Content type
application/json
{}

DownloadPluginAssetByTeam

Download an asset for a given plugin version as the current team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

plugin_kind
required
string (PluginKind)
Enum: "source" "destination"
Example: source

The kind of plugin, ie. source or destination.

plugin_name
required
string (PluginName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-source

The unique name for the plugin.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

target_name
required
string
header Parameters
Accept
string

Responses

Response samples

Content type
application/json
{}

images

UploadImage

Get a URL to upload image that will be publicly accessible

Authorizations:
bearerAuth

Responses

Response samples

healthcheck

HealthCheck

Health check endpoint, returns 200

Responses

addons

ListAddons

List all addons

query Parameters
sort_by
string
Enum: "created_at" "updated_at" "name" "downloads"

The field to sort by

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{}

CreateAddon

Create an addon owned by the specified team. User must be part of that team.

Authorizations:
bearerAuth
Request Body schema: application/json
required
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the team.

name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the addon.

category
required
string (AddonCategory)
Enum: "cloud-infrastructure" "databases" "sales-marketing" "engineering-analytics" "other"

Supported categories for addons

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_format
required
string (AddonFormat)
Value: "zip"

Supported formats for addons

tier
required
string (AddonTier)
Enum: "free" "paid"

Supported tiers for addons

price_usd
string^\d+(?:\.\d{1,10})?$

The price for 6 months

short_description
required
string [ 1 .. 512 ] characters
display_name
required
string [ 1 .. 50 ] characters

The addon's display name

homepage
string
repository
string
logo
string^https:\/\/storage\.googleapis\.com\/cq-cloud...
public
required
boolean

Whether the plugin is listed in the CloudQuery Hub. If false, the plugin will not be shown in the CloudQuery Hub and will only be visible to members of the plugin's team.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

GetAddon

Get details about a given addon.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

Responses

Response samples

Content type
application/json
{}

UpdateAddon

Update an Addon

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

Request Body schema: application/json
category
string (AddonCategory)
Enum: "cloud-infrastructure" "databases" "sales-marketing" "engineering-analytics" "other"

Supported categories for addons

addon_format
string (AddonFormat)
Value: "zip"

Supported formats for addons

tier
string (AddonTier)
Enum: "free" "paid"

Supported tiers for addons

price_usd
string^\d+(?:\.\d{1,10})?$

The price for 6 months in USD

short_description
string [ 1 .. 512 ] characters
display_name
string [ 1 .. 50 ] characters

The addon's display name

homepage
string
repository
string
logo
string^(https:\/\/storage\.googleapis\.com\/cq-clou...
public
boolean

Whether the plugin is listed in the CloudQuery Hub. If false, the plugin will not be shown in the CloudQuery Hub and will only be visible to members of the plugin's team.

created_at
string <date-time>

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{}

ListAddonVersions

List all versions for a given addon

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

query Parameters
sort_by
string
Value: "created_at"

The field to sort by

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

include_drafts
boolean

Whether to include draft versions

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

GetAddonVersion

Get details about a given addon version.

path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Responses

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "published_at": "2017-07-14T16:53:42Z",
  • "name": "string",
  • "message": "- Added support for *AWS S3* - Added support for *AWS EC2*",
  • "doc": "string",
  • "draft": true,
  • "plugin_deps": [
    ],
  • "addon_deps": [
    ],
  • "retracted": true,
  • "checksum": "string"
}

CreateAddonVersion

Create a new addon version, or update a draft version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
message
required
string [ 1 .. 30000 ] characters

A message describing what's new or changed in this version. This message will be displayed to users in the addon's changelog. Supports limited markdown syntax.

doc
required
string

Main README in MD format

plugin_deps
Array of strings

plugin dependencies in the format of ['team_name/kind/plugin_name@version']

addon_deps
Array of strings

addon dependencies in the format of ['team_name/type/addon_name@version']

checksum
required
string

SHA-256 checksum for the addon asset

Responses

Request samples

Content type
application/json
{
  • "message": "string",
  • "doc": "string",
  • "plugin_deps": [
    ],
  • "addon_deps": [
    ],
  • "checksum": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "published_at": "2017-07-14T16:53:42Z",
  • "name": "string",
  • "message": "- Added support for *AWS S3* - Added support for *AWS EC2*",
  • "doc": "string",
  • "draft": true,
  • "plugin_deps": [
    ],
  • "addon_deps": [
    ],
  • "retracted": true,
  • "checksum": "string"
}

UpdateAddonVersion

Update a given addon version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Request Body schema: application/json
message
string

Description of what's new or changed in this version (supports markdown)

doc
string

Main README in MD format

draft
boolean

If a plugin version is in draft, it will not show to members outside the team or be counted as the latest version.

plugin_deps
Array of strings

list of plugins the addon depends on in the format of team_name/kind/name@version

addon_deps
Array of strings

list of other addons this addon depends on in the format of team_name/type/name@version

retracted
boolean

If a plugin version is retracted, assets will still be available for download, but the version will be marked as retracted to discourage use.

checksum
string

The checksum of the addon asset

Responses

Request samples

Content type
application/json
{
  • "message": "- Added support for *AWS S3* - Added support for *AWS EC2*",
  • "doc": "string",
  • "draft": true,
  • "plugin_deps": [
    ],
  • "addon_deps": [
    ],
  • "retracted": true,
  • "checksum": "string"
}

Response samples

Content type
application/json
{
  • "created_at": "2017-07-14T16:53:42Z",
  • "published_at": "2017-07-14T16:53:42Z",
  • "name": "string",
  • "message": "- Added support for *AWS S3* - Added support for *AWS EC2*",
  • "doc": "string",
  • "draft": true,
  • "plugin_deps": [
    ],
  • "addon_deps": [
    ],
  • "retracted": true,
  • "checksum": "string"
}

DownloadAddonAsset

Download an asset for a given version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

header Parameters
Accept
string

Responses

Response samples

Content type
application/json
{}

UploadAddonAsset

Get a URL to upload an asset for a given addon version

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

Responses

Response samples

Content type
application/json
{
  • "url": "string"
}

ListAddonsByTeam

List all addons for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

include_private
boolean

Whether to include private plugins

Responses

Response samples

Content type
application/json
{}

ListAddonOrdersByTeam

List all addon orders for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateAddonOrderForTeam

Start the checkout process for an addon order.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
addon_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$

The unique name for the addon.

success_url
required
string

URL to redirect to after successful order completion

cancel_url
required
string

URL to redirect to after order cancellation

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "team_name": "cloudquery",
  • "addon_team": "cloudquery",
  • "addon_type": "transformation",
  • "addon_name": "aws-policy",
  • "status": "pending",
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "completion_url": "http://example.com"
}

GetAddonOrderByTeam

Get an addon order for the team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_order_id
required
string <uuid> (AddonOrderID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the addon order

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "team_name": "cloudquery",
  • "addon_team": "cloudquery",
  • "addon_type": "transformation",
  • "addon_name": "aws-policy",
  • "status": "pending",
  • "created_at": "2017-07-14T16:53:42Z",
  • "updated_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "completion_url": "http://example.com"
}

DownloadAddonAssetByTeam

Download an asset for a given addon version as the current team.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_team
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

addon_type
required
string (AddonType)
Enum: "transformation" "visualization"

Supported types for addons

addon_name
required
string (AddonName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: aws-policy

The unique name for the addon.

version_name
required
string (VersionName) ^v[0-9]+\.[0-9]+\.[0-9]+(-[0-9A-Za-z-]+(\.[0-...

The version in semantic version format.

header Parameters
Accept
string

Responses

Response samples

Content type
application/json
{}

registry

AuthRegistryRequest

Performs authentication and authorization for our image registry.

Authorizations:
basicAuth
query Parameters
account
string

Username used for docker login

service
string

Service requesting the JTW token

scope
string

Multi-value string containing the repository being access and the operation type (push/pull)

header Parameters
X-Meta-Plugin-Version
string
Example: v1.0.0

Plugin version name

X-Meta-User-Team-Name
string

User's team name

Responses

Response samples

Content type
application/json
{
  • "access_token": "string",
  • "token": "string"
}

syncs

CreateSyncSourceTestConnection

Create a test source connection.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

source_name
string

Name of an existing source

version
required
string

Version of the plugin

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the destination.

Responses

Request samples

Content type
application/json
{
  • "path": "string",
  • "source_name": "string",
  • "version": "v1.2.3",
  • "spec": { },
  • "env": [
    ],
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string"
}

GetSyncSourceTestConnection

Get a sync source test connection.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_test_connection_id
required
string <uuid> (SyncSourceTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Sync Source Test Connection

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string"
}

PromoteSyncSourceTestConnection

Promote a sync source test connection to a sync source.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_test_connection_id
required
string <uuid> (SyncSourceTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Sync Source Test Connection

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the source. The name can only contain ASCII letters, digits, - and _.

tables
required
Array of strings

Tables to sync. Wildcards are supported. Note that child tables are excluded by default, and need to be explicitly specified.

skip_tables
Array of strings

Tables matched by tables that should be skipped. Wildcards are supported.

Responses

Request samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "tables": [
    ],
  • "skip_tables": [
    ]
}

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

CreateSyncDestinationTestConnection

Create a test destination connection.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

destination_name
string

Name of an existing destination

version
required
string

Version of the plugin

write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the destination.

Responses

Request samples

Content type
application/json
{
  • "path": "string",
  • "destination_name": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string"
}

GetSyncDestinationTestConnection

Get a sync destination test connection.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_test_connection_id
required
string <uuid> (SyncDestinationTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Sync Destination Test Connection

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string"
}

PromoteSyncDestinationTestConnection

Promote a sync destination test connection to a sync destination.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_test_connection_id
required
string <uuid> (SyncDestinationTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Sync Destination Test Connection

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the destination. The name can only contain ASCII letters, digits, - and _.

write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

Responses

Request samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "write_mode": "append",
  • "migrate_mode": "safe"
}

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

ListSyncSources

List all sync source definitions.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateSyncSource

Create new draft Sync Source definition.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the source. The name can only contain ASCII letters, digits, - and _.

path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

version
required
string

Version of the plugin

tables
required
Array of strings

Tables to sync. Wildcards are supported. Note that child tables are excluded by default, and need to be explicitly specified.

skip_tables
Array of strings

Tables matched by tables that should be skipped. Wildcards are supported.

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the source.

Responses

Request samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

TestSyncSource Deprecated

DEPRECATED. Test a Sync Source definition. Use CreateTestConnectionForSyncSource instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the source. The name can only contain ASCII letters, digits, - and _.

path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

version
required
string

Version of the plugin

tables
required
Array of strings

Tables to sync. Wildcards are supported. Note that child tables are excluded by default, and need to be explicitly specified.

skip_tables
Array of strings

Tables matched by tables that should be skipped. Wildcards are supported.

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the source.

Responses

Request samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

GetSyncSource

Get a single sync source definition.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

Responses

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

UpdateSyncSource

Update a Sync Source definition.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

Request Body schema: application/json
required
tables
Array of strings

Tables to sync. Wildcards are supported. Note that child tables are excluded by default, and need to be explicitly specified.

skip_tables
Array of strings

Tables matched by tables that should be skipped. Wildcards are supported.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

Responses

Request samples

Content type
application/json
{
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "last_update_source": "yaml"
}

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

DeleteSyncSource

Delete a Sync Source definition. Any syncs relying on this source must be deleted first.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

CreateTestConnectionForSyncSource

Create a test connection for sync source.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

Request Body schema: application/json
required
path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

version
required
string

Version of the plugin

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the destination.

Responses

Request samples

Content type
application/json
{
  • "path": "string",
  • "version": "v1.2.3",
  • "spec": { },
  • "env": [
    ],
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

GetTestConnectionForSyncSource

Get test connection details for sync source.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

PromoteTestConnectionForSyncSource

Promote a test connection for sync source.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Responses

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

ListSyncDestinations

List all sync destination definitions.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateSyncDestination

Create new draft Sync Destination definition.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the destination. The name can only contain ASCII letters, digits, - and _.

path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

version
required
string

Version of the plugin

write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the destination.

Responses

Request samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

TestSyncDestination Deprecated

DEPRECATED. Test a Sync Destination definition. Use CreateTestConnectionForSyncDestination instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the destination. The name can only contain ASCII letters, digits, - and _.

path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

version
required
string

Version of the plugin

write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the destination.

Responses

Request samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

GetSyncDestination

Get a single sync destination definition.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

Responses

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

UpdateSyncDestination

Update a Sync Destination definition.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

Request Body schema: application/json
required
write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

Responses

Request samples

Content type
application/json
{
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "last_update_source": "yaml"
}

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

DeleteSyncDestination

Delete a Sync Destination definition. Any syncs relying on this destination must be deleted first.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

CreateTestConnectionForSyncDestination

Create a test connection for sync destination.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

Request Body schema: application/json
required
path
required
string (SyncPluginPath) ^cloudquery/[^/]+

Plugin path in CloudQuery registry

version
required
string

Version of the plugin

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables for the plugin. All environment variables will be stored as secrets.

connector_id
string <uuid> (ConnectorID)

ID of the connector that will be used to authenticate the destination.

Responses

Request samples

Content type
application/json
{
  • "path": "string",
  • "version": "v1.2.3",
  • "spec": { },
  • "env": [
    ],
  • "connector_id": "12345678-1234-1234-1234-1234567890ab"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

GetTestConnectionForSyncDestination

Get test connection details for sync destination.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

PromoteTestConnectionForSyncDestination

Promote a test connection for sync destination.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Responses

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

ListSyncs

List all Syncs.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateSync

Create new Sync definition. Sync runs can be scheduled automatically, or triggered manually after sync is created.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the sync. The name can only contain ASCII letters, digits, - and _.

source
required
string^[a-zA-Z0-9_-]+$

Unique name of the source

destinations
required
Array of strings non-empty [^[a-zA-Z0-9_-]+$]
schedule
string

Cron schedule for the sync

disabled
boolean
Default: false

Whether the sync is disabled

cpu
string
Default: "1"

CPU quota for the sync

memory
string
Default: "2Gi"

Memory quota for the sync

object (SyncIncremental)

Managed Sync Incremental Options definition

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "source": "string",
  • "destinations": [
    ],
  • "schedule": "string",
  • "disabled": false,
  • "cpu": "1",
  • "memory": "2Gi",
  • "incremental": {
    }
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "source": "string",
  • "destinations": [
    ],
  • "disabled": true,
  • "schedule": "string",
  • "cpu": "1",
  • "memory": "2Gi",
  • "incremental": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "created_by": "string"
}

GetSync

Get a Sync

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

Responses

Response samples

Content type
application/json
{
  • "name": "string",
  • "source": "string",
  • "destinations": [
    ],
  • "disabled": true,
  • "schedule": "string",
  • "cpu": "1",
  • "memory": "2Gi",
  • "incremental": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "created_by": "string"
}

UpdateSync

Update a Sync

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

Request Body schema: application/json
source
string^[a-zA-Z0-9_-]+$

Unique name of the source

destinations
Array of strings non-empty [^[a-zA-Z0-9_-]+$]
schedule
string

Cron schedule for the sync

disabled
boolean
Default: false

Whether the sync is disabled

Array of objects (SyncEnv)

Environment variables for the sync

cpu
string
Default: "1"

CPU quota for the sync

memory
string
Default: "2Gi"

Memory quota for the sync

object (SyncIncrementalUpdate)

Managed Sync Incremental Options Update definition

Responses

Request samples

Content type
application/json
{
  • "source": "string",
  • "destinations": [
    ],
  • "schedule": "string",
  • "disabled": false,
  • "env": [
    ],
  • "cpu": "1",
  • "memory": "2Gi",
  • "incremental": {
    }
}

Response samples

Content type
application/json
{
  • "name": "string",
  • "source": "string",
  • "destinations": [
    ],
  • "disabled": true,
  • "schedule": "string",
  • "cpu": "1",
  • "memory": "2Gi",
  • "incremental": {
    },
  • "created_at": "2019-08-24T14:15:22Z",
  • "updated_at": "2019-08-24T14:15:22Z",
  • "created_by": "string"
}

DeleteSync

Delete Sync. This will delete Sync configuration and all associated sync runs, but will not delete the associated source and destination(s). These will need to be deleted separately.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

ListSyncRuns

List all Sync Runs.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateSyncRun

Create new SyncRun. This will trigger a manual job run.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

Responses

Response samples

Content type
application/json
{
  • "sync_name": "string",
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "status_reason": "error",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "total_rows": 0,
  • "warnings": 0,
  • "errors": 0
}

GetSyncRun

Get a Sync Run.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

sync_run_id
required
string <uuid> (SyncRunID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the SyncRun

Responses

Response samples

Content type
application/json
{
  • "sync_name": "string",
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "status_reason": "error",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "total_rows": 0,
  • "warnings": 0,
  • "errors": 0,
  • "cpu_seconds": 0.1,
  • "memory_byte_seconds": 0.1,
  • "network_egress_bytes": 0.1
}

UpdateSyncRun

Update a SyncRun

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

sync_run_id
required
string <uuid> (SyncRunID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the SyncRun

Request Body schema: application/json
status
string (SyncRunStatus)
Enum: "completed" "failed" "started" "cancelled" "created"

The status of the sync run

status_reason
string (SyncRunStatusReason)
Enum: "error" "oom_killed"

The reason for the status

Responses

Request samples

Content type
application/json
{
  • "status": "completed",
  • "status_reason": "error"
}

Response samples

Content type
application/json
{
  • "sync_name": "string",
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "status_reason": "error",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "total_rows": 0,
  • "warnings": 0,
  • "errors": 0
}

GetSyncRunLogs

Get logs for a sync run.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync

sync_run_id
required
string <uuid> (SyncRunID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the SyncRun

header Parameters
Accept
string

Responses

Response samples

Content type
{}

GetSyncTestConnection Deprecated

DEPRECATED. Get a Sync Test Connection. Use GetTestConnectionForSyncSource or GetTestConnectionForSyncDestination instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

UpdateSyncTestConnection

Update a Sync Test Connection

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Request Body schema: application/json
status
required
string (SyncTestConnectionStatus)
Enum: "completed" "failed" "started" "created"

The status of the sync run

failure_reason
string

Reason for failure

failure_code
string

Code for failure

Responses

Request samples

Content type
application/json
{
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "status": "completed",
  • "failure_reason": "password authentication failed for user \"exampleuser\"",
  • "failure_code": "INVALID_CREDENTIALS",
  • "created_at": "2017-07-14T16:53:42Z",
  • "completed_at": "2017-07-14T16:53:42Z",
  • "plugin_path": "string",
  • "plugin_version": "string",
  • "plugin_kind": "source"
}

CreateSyncSourceFromTestConnection Deprecated

DEPRECATED. Create new Sync Source definition from a test connection. Use PromoteTestConnectionForSyncSource instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the source. The name can only contain ASCII letters, digits, - and _.

tables
required
Array of strings

Tables to sync. Wildcards are supported. Note that child tables are excluded by default, and need to be explicitly specified.

skip_tables
Array of strings

Tables matched by tables that should be skipped. Wildcards are supported.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

Responses

Request samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "last_update_source": "yaml"
}

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

CreateSyncDestinationFromTestConnection Deprecated

DEPRECATED. Create new Sync Destination definition from a test connection. Use PromoteTestConnectionForSyncDestination instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

Request Body schema: application/json
required
name
required
string^[a-zA-Z0-9_-]+$

Descriptive, unique name for the destination. The name can only contain ASCII letters, digits, - and _.

write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

Responses

Request samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "last_update_source": "yaml"
}

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

UpdateSyncSourceFromTestConnection Deprecated

DEPRECATED. Update Sync Source definition from a test connection. Use PromoteTestConnectionForSyncSource and/or UpdateSyncSource instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

sync_source_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync source

Request Body schema: application/json
required
tables
Array of strings

Tables to sync. Wildcards are supported. Note that child tables are excluded by default, and need to be explicitly specified.

skip_tables
Array of strings

Tables matched by tables that should be skipped. Wildcards are supported.

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

Responses

Request samples

Content type
application/json
{
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "last_update_source": "yaml"
}

Response samples

Content type
application/json
{
  • "name": "my-source-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "tables": [
    ],
  • "skip_tables": [
    ],
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

UpdateSyncDestinationFromTestConnection Deprecated

DEPRECATED. Update Sync Destination definition from a test connection. Use PromoteTestConnectionForSyncDestination and/or UpdateSyncDestination instead.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

sync_test_connection_id
required
string <uuid> (SyncTestConnectionID)
Example: 12345678-1234-1234-1234-1234567890ab

unique ID of the test connection

sync_destination_name
required
string^[a-zA-Z0-9_-]+$

Unique name of the sync destination

Request Body schema: application/json
required
write_mode
string (SyncDestinationWriteMode)
Enum: "append" "overwrite" "overwrite-delete-stale"

Write mode for the destination

migrate_mode
string (SyncDestinationMigrateMode)
Enum: "safe" "forced"

Migrate mode for the destination

last_update_source
string (SyncLastUpdateSource)
Enum: "yaml" "ui"

How was the source or destination been created or updated last

Responses

Request samples

Content type
application/json
{
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "last_update_source": "yaml"
}

Response samples

Content type
application/json
{
  • "name": "my-destination-definition",
  • "path": "string",
  • "version": "v1.2.3",
  • "write_mode": "append",
  • "migrate_mode": "safe",
  • "spec": { },
  • "env": [
    ],
  • "last_update_source": "yaml",
  • "connector_id": "12345678-1234-1234-1234-1234567890ab",
  • "created_at": "2023-07-14T16:53:42Z",
  • "updated_at": "2023-07-14T16:53:42Z",
  • "draft": true
}

ListConnectors

List all configured connectors

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

query Parameters
per_page
integer <int64> [ 1 .. 1000 ]
Default: 100

The number of results per page (max 1000).

page
integer <int64> >= 1
Default: 1

Page number of the results to fetch

filter_type
string

Filter connectors by a given type.

filter_plugin
string
Example: filter_plugin=cloudquery/source/googleanalytics

Filter connectors by a given plugin reference. Mutually exclusive with type.

Responses

Response samples

Content type
application/json
{
  • "items": [
    ],
  • "metadata": {
    }
}

CreateConnector

Create new connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

Request Body schema: application/json
required
type
required
string

Type of the connector

name
required
string

Name of the connector

Responses

Request samples

Content type
application/json
{
  • "type": "string",
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "type": "string",
  • "name": "string",
  • "status": "created",
  • "created_at": "2017-07-14T16:53:42Z"
}

GetConnector

Get a configured connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Responses

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "type": "string",
  • "name": "string",
  • "status": "created",
  • "created_at": "2017-07-14T16:53:42Z"
}

UpdateConnector

Update a connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Request Body schema: application/json
name
string

Name of the connector

Responses

Request samples

Content type
application/json
{
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "id": "12345678-1234-1234-1234-1234567890ab",
  • "type": "string",
  • "name": "string",
  • "status": "created",
  • "created_at": "2017-07-14T16:53:42Z"
}

RevokeConnector

Revoke authentication for a given connector. Any syncs relying on this connector will stop running until the connector is reauthenticated or sync references are updated.

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Responses

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0
}

GetConnectorAuthStatusAWS

Get authentication status for the given AWS connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Responses

Response samples

Content type
application/json
{
  • "role_arn": "string"
}

AuthenticateConnectorAWS

Authenticate or reauthenticate the given AWS connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Request Body schema: application/json
required
plugin_team
required
string

Team that owns the plugin we are authenticating the connector for

plugin_kind
required
string

Kind of the plugin

plugin_name
required
string

Name of the plugin

account_ids
Array of strings

List of AWS account IDs to authenticate

Responses

Request samples

Content type
application/json
{
  • "plugin_team": "cloudquery",
  • "plugin_kind": "source",
  • "plugin_name": "aws",
  • "account_ids": [
    ]
}

Response samples

Content type
application/json
{
  • "redirect_url": "string",
  • "role_template_url": "string",
  • "suggested_external_id": "string",
  • "suggested_policy_arns": [
    ]
}

AuthenticateConnectorFinishAWS

Complete authentication for the given AWS connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Request Body schema: application/json
required
role_arn
required
string

ARN of role created by the user

external_id
string

External ID in the role definition. Optional. If not provided the previously suggested external ID will be used. Empty string will remove the external ID.

Responses

Request samples

Content type
application/json
{
  • "role_arn": "string",
  • "external_id": "string"
}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

AuthenticateConnectorOAuth

Authenticate or reauthenticate the given OAuth connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Request Body schema: application/json
required
plugin_team
required
string

Team that owns the plugin we are authenticating the connector for

plugin_kind
required
string

Kind of the plugin

plugin_name
required
string

Name of the plugin

base_url
required
string

Base of the URL the callback url will be constructed from

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables used in the spec.

Responses

Request samples

Content type
application/json
{
  • "plugin_team": "cloudquery",
  • "plugin_kind": "source",
  • "plugin_name": "googleanalytics",
  • "spec": { },
  • "env": [
    ]
}

Response samples

Content type
application/json
{
  • "redirect_url": "string"
}

AuthenticateConnectorFinishOAuth

Complete authentication for the given OAuth connector

Authorizations:
bearerAuth
path Parameters
team_name
required
string (TeamName) <= 255 characters ^[a-z](-?[a-z0-9]+)+$
Example: cloudquery

The unique name for the team.

connector_id
required
string <uuid> (ConnectorID)
Example: 12345678-1234-1234-1234-1234567890ab

ID of the Connector

Request Body schema: application/json
required
return_url
required
string

URL the user was redirected to (including new parameter values) after the OAuth flow is complete

base_url
required
string

Base of the URL the callback url was constructed from

object <Plugin parameters, specific to each plugin>
Array of objects (SyncEnvCreate)

Environment variables used in the spec.

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "message": "string",
  • "status": 0,
  • "errors": [
    ],
  • "field_errors": {
    }
}

managed-databases