Snowflake REST API
Cloud data warehouse REST API for SQL operations
Snowflake is a cloud-native data warehouse platform that separates storage and compute for scalable analytics. The REST API enables programmatic access to execute SQL queries, manage databases, monitor query performance, and control warehouse resources. Developers use it to integrate Snowflake with data pipelines, orchestration tools, and custom applications.
https://.snowflakecomputing.com/api/v2
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST | /statements | Execute a SQL statement asynchronously and return a statement handle |
| GET | /statements/{statementHandle} | Get the status and results of an executed SQL statement |
| DELETE | /statements/{statementHandle} | Cancel a running SQL statement execution |
| GET | /databases | List all databases in the Snowflake account |
| GET | /databases/{databaseName}/schemas | List all schemas within a specified database |
| GET | /databases/{databaseName}/schemas/{schemaName}/tables | List all tables within a specified schema |
| POST | /warehouses/{warehouseName}/resume | Resume a suspended virtual warehouse to begin compute operations |
| POST | /warehouses/{warehouseName}/suspend | Suspend a running virtual warehouse to stop compute costs |
| GET | /warehouses | List all virtual warehouses and their current status |
| GET | /queries | Retrieve query history with filtering and pagination options |
| GET | /queries/{queryId} | Get detailed execution information for a specific query |
| POST | /sessions | Create a new session for executing multiple related statements |
| DELETE | /sessions/{sessionId} | Close an active session and release associated resources |
| GET | /roles | List all roles defined in the Snowflake account |
| GET | /users | List all users with their properties and role assignments |
Sponsor this page
AvailableReach developers actively building with Snowflake. See live pageview data and self-serve checkout — your slot goes live in minutes.
View inventory & pricing →Code Examples
curl -X POST 'https://myaccount.snowflakecomputing.com/api/v2/statements' \
-H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...' \
-H 'Content-Type: application/json' \
-H 'X-Snowflake-Authorization-Token-Type: KEYPAIR_JWT' \
-d '{
"statement": "SELECT * FROM DEMO_DB.PUBLIC.CUSTOMERS LIMIT 10",
"timeout": 60,
"database": "DEMO_DB",
"schema": "PUBLIC",
"warehouse": "COMPUTE_WH",
"role": "ANALYST"
}'
Use Snowflake from Claude / Cursor / ChatGPT
Get a hosted MCP endpoint for Snowflake. Paste your Snowflake API key, copy back one URL, drop it into Claude Desktop, Cursor, or any AI client that supports remote MCP. Your AI calls Snowflake directly with your credentials — no local install, works on mobile.
execute_snowflake_query
Execute SQL queries against Snowflake data warehouse and return results for AI analysis
get_table_schema
Retrieve table schema information including column names, types, and constraints for data exploration
manage_warehouse
Start, stop, or resize virtual warehouses to optimize compute costs during AI operations
query_history_analyzer
Analyze query performance history to identify optimization opportunities and usage patterns
data_catalog_explorer
Browse databases, schemas, and tables to help AI understand available data sources
Connect in 60 seconds
Paste your Snowflake key → get an MCP URL → paste into Claude/Cursor. Hosted by IOX, encrypted at rest.
Connect Snowflake to your AI →