openapi: 3.0.0 servers: - description: Snowflake Account API url: https://org-account.snowflakecomputing.com info: version: 0.0.1 title: Snowflake Account API description: The Snowflake Account API is a REST API that you can use to access, update, and perform certain actions on Account resource in Snowflake. contact: name: Snowflake, Inc. url: https://snowflake.com email: support@snowflake.com paths: /api/v2/accounts: get: summary: List Accounts. tags: - account description: Lists the accessible accounts. operationId: listAccounts parameters: - $ref: common.yaml#/components/parameters/like - $ref: common.yaml#/components/parameters/showLimit - name: history in: query description: Optionally includes dropped accounts that have not yet been purged. schema: type: boolean example: true 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/Account' examples: Listaccounts200Example: summary: Default listAccounts 200 response x-microcks-default: true value: - organization_name: example_value name: {} region_group: example_value region: example_value edition: STANDARD created_on: '2026-01-15T10:30:00Z' account_url: https://www.example.com account_locator: example_value account_locator_url: https://www.example.com managed_accounts: 10 consumption_billing_entity_name: example_value marketplace_consumer_billing_entity_name: example_value marketplace_provider_billing_entity_name: example_value old_account_url: https://www.example.com comment: example_value is_org_admin: true retention_time: 10 dropped_on: '2026-01-15T10:30:00Z' scheduled_deletion_time: '2026-01-15T10:30:00Z' restored_on: '2026-01-15T10:30:00Z' account_old_url_saved_on: '2026-01-15T10:30:00Z' account_old_url_last_used: '2026-01-15T10:30:00Z' organization_old_url: https://www.example.com organization_old_url_saved_on: '2026-01-15T10:30:00Z' organization_old_url_last_used: '2026-01-15T10:30:00Z' organization_URL_expiration_on: '2026-01-15T10:30:00Z' moved_on: '2026-01-15T10:30:00Z' is_events_account: true moved_to_organization: example_value admin_name: example_value admin_password: example_value admin_rsa_public_key: example_value admin_user_type: example_value first_name: example_value last_name: example_value email: user@example.com must_change_password: true polaris: true '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 an Account. tags: - account description: Creates a account. You must provide the full account definition when creating a account. operationId: createAccount requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Account' examples: CreateaccountRequestExample: summary: Default createAccount request x-microcks-default: true value: organization_name: example_value name: {} region_group: example_value region: example_value edition: STANDARD created_on: '2026-01-15T10:30:00Z' account_url: https://www.example.com account_locator: example_value account_locator_url: https://www.example.com managed_accounts: 10 consumption_billing_entity_name: example_value marketplace_consumer_billing_entity_name: example_value marketplace_provider_billing_entity_name: example_value old_account_url: https://www.example.com comment: example_value is_org_admin: true retention_time: 10 dropped_on: '2026-01-15T10:30:00Z' scheduled_deletion_time: '2026-01-15T10:30:00Z' restored_on: '2026-01-15T10:30:00Z' account_old_url_saved_on: '2026-01-15T10:30:00Z' account_old_url_last_used: '2026-01-15T10:30:00Z' organization_old_url: https://www.example.com organization_old_url_saved_on: '2026-01-15T10:30:00Z' organization_old_url_last_used: '2026-01-15T10:30:00Z' organization_URL_expiration_on: '2026-01-15T10:30:00Z' moved_on: '2026-01-15T10:30:00Z' is_events_account: true moved_to_organization: example_value admin_name: example_value admin_password: example_value admin_rsa_public_key: example_value admin_user_type: example_value first_name: example_value last_name: example_value email: user@example.com must_change_password: true polaris: true 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/accounts/{name}: delete: summary: Delete an Account. tags: - account description: Deletes the specified account. If you enable the `ifExists` parameter, the operation succeeds even if the account does not exist. Otherwise, a 404 failure is returned if the account does not exist. if the drop is unsuccessful. operationId: deleteAccount parameters: - $ref: common.yaml#/components/parameters/name - $ref: common.yaml#/components/parameters/ifExists - name: gracePeriodInDays in: query description: "Specifies the number of days during which the account can be restored (“undropped”). The minimum is 3 days and the maximum is 90 days." schema: type: integer required: true example: 10 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/accounts/{name}:undrop: post: summary: Restore an Account. tags: - account description: Restores a dropped account that has not yet been permanently deleted (a dropped account that is within its grace period). operationId: UndropAccount 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: Account: type: object description: Snowflake account object. properties: organization_name: type: string readOnly: true description: Name of the organization. example: example_value name: $ref: ./common.yaml#/components/schemas/Identifier description: User-defined name that identifies an account within the organization. region_group: type: string description: Region group where the account is located. Note - This column is only displayed for organizations that span multiple region groups. example: example_value region: type: string description: Snowflake Region where the account is located. A Snowflake Region is a distinct location within a cloud platform region that is isolated from other Snowflake Regions. A Snowflake Region can be either multi-tenant or single-tenant (for a Virtual Private Snowflake account). example: example_value edition: type: string description: Snowflake Edition of the account. enum: - STANDARD - ENTERPRISE - BUSINESS_CRITICAL example: STANDARD created_on: type: string format: date-time readOnly: true description: Date and time the account was created. example: '2026-01-15T10:30:00Z' account_url: type: string readOnly: true description: Preferred Snowflake account URL that includes the values of organization_name and account_name. example: https://www.example.com account_locator: type: string readOnly: true description: System-assigned identifier of the acccount. example: example_value account_locator_url: type: string readOnly: true description: Legacy Snowflake account URL syntax that includes the region_name and account_locator. example: https://www.example.com managed_accounts: type: integer readOnly: true format: int64 description: Indicates how many managed accounts have been created by the account. example: 10 consumption_billing_entity_name: type: string readOnly: true description: Name of the consumption billing entity. example: example_value marketplace_consumer_billing_entity_name: type: string readOnly: true description: Name of the marketplace consumer billing entity. example: example_value marketplace_provider_billing_entity_name: type: string readOnly: true description: Name of the marketplace provider billing entity. example: example_value old_account_url: type: string readOnly: true description: If the original account URL was saved when the account was renamed, provides the original URL. If the original account URL was dropped, the value is NULL even if the account was renamed example: https://www.example.com comment: type: string description: Optional comment in which to store information related to the account. example: example_value is_org_admin: type: boolean readOnly: true description: Indicates whether the ORGADMIN role is enabled in an account. If TRUE, the role is enabled. example: true retention_time: type: integer readOnly: true description: Number of days that historical data is retained for Time Travel. example: 10 dropped_on: type: string format: date-time readOnly: true nullable: true description: Date and time the account was dropped. example: '2026-01-15T10:30:00Z' scheduled_deletion_time: type: string format: date-time readOnly: true nullable: true description: Date and time when the account is scheduled to be permanently deleted. Accounts are deleted within one hour after the scheduled time. example: '2026-01-15T10:30:00Z' restored_on: type: string format: date-time readOnly: true nullable: true description: Date and time when the account was last restored. example: '2026-01-15T10:30:00Z' account_old_url_saved_on: type: string format: date-time readOnly: true description: If the original account URL was saved when the account was renamed, provides the date and time when the original account URL was saved. example: '2026-01-15T10:30:00Z' account_old_url_last_used: type: string format: date-time readOnly: true description: If the original account URL was saved when the account was renamed, indicates the last time the account was accessed using the original URL. example: '2026-01-15T10:30:00Z' organization_old_url: type: string readOnly: true description: "If the account’s organization was changed in a way that created a new account URL and the original account URL was saved, provides the original account URL. If the original account URL was dropped, the value is NULL even if the organization changed." example: https://www.example.com organization_old_url_saved_on: type: string readOnly: true format: date-time description: "If the account’s organization was changed in a way that created a new account URL and the original account URL was saved, provides the date and time when the original account URL was saved." example: '2026-01-15T10:30:00Z' organization_old_url_last_used: type: string readOnly: true format: date-time description: "If the account’s organization was changed in a way that created a new account URL and the original account URL was saved, indicates the last time the account was accessed using the original account URL." example: '2026-01-15T10:30:00Z' organization_URL_expiration_on: type: string format: date-time readOnly: true nullable: true description: "If the account’s organization was changed in a way that created a new account URL and the original account URL was saved, provides the date and time when the original account URL will be dropped. Dropped URLs cannot be used to access the account." example: '2026-01-15T10:30:00Z' moved_on: type: string format: date-time readOnly: true nullable: true description: Date and time when the account was moved to a different organization. example: '2026-01-15T10:30:00Z' is_events_account: type: boolean readOnly: true description: Indicates whether an account is an events account. For more information, see Set up logging and event sharing for an application. example: true moved_to_organization: type: string readOnly: true description: If the account was moved to a different organization, provides the name of that organization. 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 format: password example: example_value admin_rsa_public_key: type: string description: RSA public key for the account administrator. writeOnly: true format: password example: example_value admin_user_type: type: string description: User type of the account administrator. writeOnly: true example: example_value first_name: type: string description: First name of the account administrator. writeOnly: true example: example_value last_name: type: string description: Last name of the account administrator. writeOnly: true example: example_value email: type: string description: Email address of the account administrator. writeOnly: true nullable: true example: user@example.com must_change_password: type: boolean description: Indicates whether the account administrator must change the password at the next login. default: false writeOnly: true example: true polaris: type: boolean description: Indicates whether the account is a Polaris account. default: false writeOnly: true example: true required: - name - admin_name - email - edition 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: account