Snowflake Managed Account API
The Snowflake Managed Account API is a REST API that you can use to access, update, and perform certain actions on Managed Account resource in Snowflake.
The Snowflake Managed Account API is a REST API that you can use to access, update, and perform certain actions on Managed Account resource in Snowflake.
openapi: 3.0.0
servers:
- description: Snowflake Managed Account API
url: https://org-account.snowflakecomputing.com
info:
version: 0.0.1
title: Snowflake Managed Account API
description: The Snowflake Managed Account API is a REST API that you can use to access, update, and perform certain actions on Managed Account resource in Snowflake.
contact:
name: Snowflake, Inc.
url: https://snowflake.com
email: support@snowflake.com
paths:
/api/v2/managed-accounts:
get:
summary: List Managed Accounts.
tags:
- managed-account
description: Lists the accessible managed accounts.
operationId: listManagedAccounts
parameters:
- $ref: common.yaml#/components/parameters/like
responses:
'200':
description: Successful request.
headers:
X-Snowflake-Request-ID:
$ref: common.yaml#/components/headers/X-Snowflake-Request-ID
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ManagedAccount'
examples:
Listmanagedaccounts200Example:
summary: Default listManagedAccounts 200 response
x-microcks-default: true
value:
- name: {}
cloud: example_value
region: example_value
locator: example_value
created_on: '2026-01-15T10:30:00Z'
url: https://www.example.com
account_locator_url: https://www.example.com
comment: example_value
admin_name: example_value
admin_password: example_value
account_type: READER
'202':
$ref: common.yaml#/components/responses/202SuccessAcceptedResponse
'400':
$ref: common.yaml#/components/responses/400BadRequest
'401':
$ref: common.yaml#/components/responses/401Unauthorized
'403':
$ref: common.yaml#/components/responses/403Forbidden
'404':
$ref: common.yaml#/components/responses/404NotFound
'405':
$ref: common.yaml#/components/responses/405MethodNotAllowed
'408':
$ref: common.yaml#/components/responses/408RequestTimeout
'409':
$ref: common.yaml#/components/responses/409Conflict
'410':
$ref: common.yaml#/components/responses/410Gone
'429':
$ref: common.yaml#/components/responses/429LimitExceeded
'500':
$ref: common.yaml#/components/responses/500InternalServerError
'503':
$ref: common.yaml#/components/responses/503ServiceUnavailable
'504':
$ref: common.yaml#/components/responses/504GatewayTimeout
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
post:
summary: Create a Managed Accounts.
tags:
- managed-account
description: Creates a managed account. You must provide the full managed account definition when creating a managed account.
operationId: createManagedAccount
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ManagedAccount'
examples:
CreatemanagedaccountRequestExample:
summary: Default createManagedAccount request
x-microcks-default: true
value:
name: {}
cloud: example_value
region: example_value
locator: example_value
created_on: '2026-01-15T10:30:00Z'
url: https://www.example.com
account_locator_url: https://www.example.com
comment: example_value
admin_name: example_value
admin_password: example_value
account_type: READER
responses:
'200':
$ref: common.yaml#/components/responses/200SuccessResponse
'202':
$ref: common.yaml#/components/responses/202SuccessAcceptedResponse
'400':
$ref: common.yaml#/components/responses/400BadRequest
'401':
$ref: common.yaml#/components/responses/401Unauthorized
'403':
$ref: common.yaml#/components/responses/403Forbidden
'404':
$ref: common.yaml#/components/responses/404NotFound
'405':
$ref: common.yaml#/components/responses/405MethodNotAllowed
'408':
$ref: common.yaml#/components/responses/408RequestTimeout
'409':
$ref: common.yaml#/components/responses/409Conflict
'410':
$ref: common.yaml#/components/responses/410Gone
'429':
$ref: common.yaml#/components/responses/429LimitExceeded
'500':
$ref: common.yaml#/components/responses/500InternalServerError
'503':
$ref: common.yaml#/components/responses/503ServiceUnavailable
'504':
$ref: common.yaml#/components/responses/504GatewayTimeout
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
/api/v2/managed-accounts/{name}:
delete:
summary: Delete a Managed Account.
tags:
- managed-account
description: Removes a managed account, including all objects created in the account, and immediately restricts access to the account. Currently used by data providers to create reader accounts
for their consumers. For more details, see Manage reader accounts.
operationId: deleteManagedAccount
parameters:
- $ref: common.yaml#/components/parameters/name
responses:
'200':
$ref: common.yaml#/components/responses/200SuccessResponse
'202':
$ref: common.yaml#/components/responses/202SuccessAcceptedResponse
'400':
$ref: common.yaml#/components/responses/400BadRequest
'401':
$ref: common.yaml#/components/responses/401Unauthorized
'403':
$ref: common.yaml#/components/responses/403Forbidden
'404':
$ref: common.yaml#/components/responses/404NotFound
'405':
$ref: common.yaml#/components/responses/405MethodNotAllowed
'408':
$ref: common.yaml#/components/responses/408RequestTimeout
'409':
$ref: common.yaml#/components/responses/409Conflict
'410':
$ref: common.yaml#/components/responses/410Gone
'429':
$ref: common.yaml#/components/responses/429LimitExceeded
'500':
$ref: common.yaml#/components/responses/500InternalServerError
'503':
$ref: common.yaml#/components/responses/503ServiceUnavailable
'504':
$ref: common.yaml#/components/responses/504GatewayTimeout
x-microcks-operation:
delay: 0
dispatcher: FALLBACK
components:
schemas:
ManagedAccount:
type: object
description: Snowflake account object.
properties:
name:
$ref: ./common.yaml#/components/schemas/Identifier
description: Name of the account.
cloud:
type: string
readOnly: true
description: Cloud in which the managed account is located. For reader accounts, this is always the same as the cloud for the provider account.
example: example_value
region:
type: string
readOnly: true
description: Region in which the managed account is located. For reader accounts, this is always the same as the region for the provider account.
example: example_value
locator:
type: string
readOnly: true
description: Legacy identifier for the account.
example: example_value
created_on:
type: string
format: date-time
readOnly: true
description: Date and time the account was created.
example: '2026-01-15T10:30:00Z'
url:
type: string
readOnly: true
description: Account URL that is used to connect to the account, in the account name format. The account identifier in this format follows the pattern <orgname>-<account_name>.
example: https://www.example.com
account_locator_url:
type: string
readOnly: true
description: Account URL that is used to connect to the account, in the legacy account locator format.
example: https://www.example.com
comment:
type: string
description: Optional comment in which to store information related to the account.
example: example_value
admin_name:
type: string
description: Name of the account administrator.
writeOnly: true
nullable: true
example: example_value
admin_password:
type: string
description: Password for the account administrator.
writeOnly: true
nullable: true
format: password
example: example_value
account_type:
type: string
description: Type of the account.
enum:
- READER
default: READER
example: READER
required:
- name
- admin_name
- admin_password
- account_type
securitySchemes:
KeyPair:
$ref: common.yaml#/components/securitySchemes/KeyPair
ExternalOAuth:
$ref: common.yaml#/components/securitySchemes/ExternalOAuth
SnowflakeOAuth:
$ref: common.yaml#/components/securitySchemes/SnowflakeOAuth
security:
- KeyPair: []
- ExternalOAuth: []
- SnowflakeOAuth: []
tags:
- name: managed-account