REST API Reference
Superset exposes a comprehensive REST API that follows the OpenAPI specification. You can use this API to programmatically interact with Superset for automation, integrations, and custom applications.
Code Samples & Schema Documentation
Each endpoint includes ready-to-use code samples in cURL, Python, and JavaScript. Browse the Schema definitions for detailed data model documentation.
Authentication
Most API endpoints require authentication via JWT tokens.
Quick Start
# 1. Get a JWT token
curl -X POST http://localhost:8088/api/v1/security/login \
-H "Content-Type: application/json" \
-d '{"username": "admin", "password": "admin", "provider": "db"}'
# 2. Use the access_token from the response
curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
http://localhost:8088/api/v1/dashboard/
Security Endpoints
| Method | Endpoint | Description |
|---|---|---|
GET | Get the CSRF token | /api/v1/security/csrf_token/ |
POST | Get a guest token | /api/v1/security/guest_token/ |
POST | Create security login | /api/v1/security/login |
POST | Create security refresh | /api/v1/security/refresh |
API Endpoints
Core Resources
Dashboards (26 endpoints) — Create, read, update, and delete dashboards.
Charts (20 endpoints) — Create, read, update, and delete charts (slices).
Datasets (18 endpoints) — Manage datasets (tables) used for building charts.
Database (31 endpoints) — Manage database connections and metadata.
Data Exploration
Explore (1 endpoints) — Chart exploration and data querying endpoints.
| Method | Endpoint | Description |
|---|---|---|
GET | Assemble Explore related information in a single endpoint | /api/v1/explore/ |
SQL Lab (6 endpoints) — Execute SQL queries and manage SQL Lab sessions.
| Method | Endpoint | Description |
|---|---|---|
GET | Get the bootstrap data for SqlLab page | /api/v1/sqllab/ |
POST | Estimate the SQL query execution cost | /api/v1/sqllab/estimate/ |
POST | Execute a SQL query | /api/v1/sqllab/execute/ |
GET | Export the SQL query results to a CSV | /api/v1/sqllab/export/{client_id}/ |
POST | Format SQL code | /api/v1/sqllab/format_sql/ |
GET | Get the result of a SQL query execution | /api/v1/sqllab/results/ |
Queries (17 endpoints) — View and manage SQL Lab query history.
Datasources (1 endpoints) — Query datasource metadata and column values.
| Method | Endpoint | Description |
|---|---|---|
GET | Get possible values for a datasource column | /api/v1/datasource/{datasource_type}/{datasource_id}/column/{column_name}/values/ |
Advanced Data Type (2 endpoints) — Endpoints for advanced data type operations and conversions.
| Method | Endpoint | Description |
|---|---|---|
GET | Return an AdvancedDataTypeResponse | /api/v1/advanced_data_type/convert |
GET | Return a list of available advanced data types | /api/v1/advanced_data_type/types |
Organization & Customization
Tags (15 endpoints) — Organize assets with tags.
| Method | Endpoint | Description |
|---|---|---|
DELETE | Bulk delete tags | /api/v1/tag/ |
GET | Get a list of tags | /api/v1/tag/ |
POST | Create a tag | /api/v1/tag/ |
GET | Get metadata information about tag API endpoints | /api/v1/tag/_info |
POST | Add tags to an object | /api/v1/tag/{object_type}/{object_id}/ |
DELETE | Delete a tagged object | /api/v1/tag/{object_type}/{object_id}/{tag}/ |
DELETE | Delete a tag | /api/v1/tag/{pk} |
GET | Get a tag detail information | /api/v1/tag/{pk} |
PUT | Update a tag | /api/v1/tag/{pk} |
DELETE | Delete tag by pk favorites | /api/v1/tag/{pk}/favorites/ |
POST | Create tag by pk favorites | /api/v1/tag/{pk}/favorites/ |
POST | Bulk create tags and tagged objects | /api/v1/tag/bulk_create |
GET | Get tag favorite status | /api/v1/tag/favorite_status/ |
GET | Get all objects associated with a tag | /api/v1/tag/get_objects/ |
GET | Get related fields data (tag-related-column-name) | /api/v1/tag/related/{column_name} |
Annotation Layers (14 endpoints) — Manage annotation layers and annotations for charts.
CSS Templates (8 endpoints) — Manage CSS templates for custom dashboard styling.
| Method | Endpoint | Description |
|---|---|---|
DELETE | Bulk delete CSS templates | /api/v1/css_template/ |
GET | Get a list of CSS templates | /api/v1/css_template/ |
POST | Create a CSS template | /api/v1/css_template/ |
GET | Get metadata information about this API resource (css-template--info) | /api/v1/css_template/_info |
DELETE | Delete a CSS template | /api/v1/css_template/{pk} |
GET | Get a CSS template | /api/v1/css_template/{pk} |
PUT | Update a CSS template | /api/v1/css_template/{pk} |
GET | Get related fields data (css-template-related-column-name) | /api/v1/css_template/related/{column_name} |
Sharing & Embedding
Dashboard Permanent Link (2 endpoints) — Create and retrieve permanent links to dashboard states.
| Method | Endpoint | Description |
|---|---|---|
POST | Create a new dashboard's permanent link | /api/v1/dashboard/{pk}/permalink |
GET | Get dashboard's permanent link state | /api/v1/dashboard/permalink/{key} |
Explore Permanent Link (2 endpoints) — Create and retrieve permanent links to chart explore states.
| Method | Endpoint | Description |
|---|---|---|
POST | Create a new permanent link (explore-permalink) | /api/v1/explore/permalink |
GET | Get chart's permanent link state | /api/v1/explore/permalink/{key} |
SQL Lab Permanent Link (2 endpoints) — Create and retrieve permanent links to SQL Lab states.
| Method | Endpoint | Description |
|---|---|---|
POST | Create a new permanent link (sqllab-permalink) | /api/v1/sqllab/permalink |
GET | Get permanent link state for SQLLab editor. | /api/v1/sqllab/permalink/{key} |
Embedded Dashboard (1 endpoints) — Configure embedded dashboard settings.
| Method | Endpoint | Description |
|---|---|---|
GET | Get a report schedule log (embedded-dashboard-uuid) | /api/v1/embedded_dashboard/{uuid} |
Dashboard Filter State (4 endpoints) — Manage temporary filter state for dashboards.
| Method | Endpoint | Description |
|---|---|---|
POST | Create a dashboard's filter state | /api/v1/dashboard/{pk}/filter_state |
DELETE | Delete a dashboard's filter state value | /api/v1/dashboard/{pk}/filter_state/{key} |
GET | Get a dashboard's filter state value | /api/v1/dashboard/{pk}/filter_state/{key} |
PUT | Update a dashboard's filter state value | /api/v1/dashboard/{pk}/filter_state/{key} |
Explore Form Data (4 endpoints) — Manage temporary form data for chart exploration.
| Method | Endpoint | Description |
|---|---|---|
POST | Create a new form_data | /api/v1/explore/form_data |
DELETE | Delete a form_data | /api/v1/explore/form_data/{key} |
GET | Get a form_data | /api/v1/explore/form_data/{key} |
PUT | Update an existing form_data | /api/v1/explore/form_data/{key} |
Scheduling & Alerts
Report Schedules (11 endpoints) — Configure scheduled reports and alerts.
| Method | Endpoint | Description |
|---|---|---|
DELETE | Bulk delete report schedules | /api/v1/report/ |
GET | Get a list of report schedules | /api/v1/report/ |
POST | Create a report schedule | /api/v1/report/ |
GET | Get metadata information about this API resource (report--info) | /api/v1/report/_info |
DELETE | Delete a report schedule | /api/v1/report/{pk} |
GET | Get a report schedule | /api/v1/report/{pk} |
PUT | Update a report schedule | /api/v1/report/{pk} |
GET | Get a list of report schedule logs | /api/v1/report/{pk}/log/ |
GET | Get a report schedule log (report-pk-log-log-id) | /api/v1/report/{pk}/log/{log_id} |
GET | Get related fields data (report-related-column-name) | /api/v1/report/related/{column_name} |
GET | Get slack channels | /api/v1/report/slack_channels/ |
Security & Access Control
Security Roles (10 endpoints) — Manage security roles and their permissions.
| Method | Endpoint | Description |
|---|---|---|
GET | Get security roles | /api/v1/security/roles/ |
POST | Create security roles | /api/v1/security/roles/ |
GET | Get security roles info | /api/v1/security/roles/_info |
DELETE | Delete security roles by pk | /api/v1/security/roles/{pk} |
GET | Get security roles by pk | /api/v1/security/roles/{pk} |
PUT | Update security roles by pk | /api/v1/security/roles/{pk} |
POST | Create security roles by role_id permissions | /api/v1/security/roles/{role_id}/permissions |
GET | Get security roles by role_id permissions | /api/v1/security/roles/{role_id}/permissions/ |
PUT | Update security roles by role_id users | /api/v1/security/roles/{role_id}/users |
GET | List roles | /api/v1/security/roles/search/ |
Security Users (6 endpoints) — Manage user accounts.
| Method | Endpoint | Description |
|---|---|---|
GET | Get security users | /api/v1/security/users/ |
POST | Create security users | /api/v1/security/users/ |
GET | Get security users info | /api/v1/security/users/_info |
DELETE | Delete security users by pk | /api/v1/security/users/{pk} |
GET | Get security users by pk | /api/v1/security/users/{pk} |
PUT | Update security users by pk | /api/v1/security/users/{pk} |
Security Permissions (3 endpoints) — View available permissions.
| Method | Endpoint | Description |
|---|---|---|
GET | Get security permissions | /api/v1/security/permissions/ |
GET | Get security permissions info | /api/v1/security/permissions/_info |
GET | Get security permissions by pk | /api/v1/security/permissions/{pk} |
Security Resources (View Menus) (6 endpoints) — Manage security resources (view menus).
| Method | Endpoint | Description |
|---|---|---|
GET | Get security resources | /api/v1/security/resources/ |
POST | Create security resources | /api/v1/security/resources/ |
GET | Get security resources info | /api/v1/security/resources/_info |
DELETE | Delete security resources by pk | /api/v1/security/resources/{pk} |
GET | Get security resources by pk | /api/v1/security/resources/{pk} |
PUT | Update security resources by pk | /api/v1/security/resources/{pk} |
Security Permissions on Resources (View Menus) (6 endpoints) — Manage permission-resource mappings.
| Method | Endpoint | Description |
|---|---|---|
GET | Get security permissions resources | /api/v1/security/permissions-resources/ |
POST | Create security permissions resources | /api/v1/security/permissions-resources/ |
GET | Get security permissions resources info | /api/v1/security/permissions-resources/_info |
DELETE | Delete security permissions resources by pk | /api/v1/security/permissions-resources/{pk} |
GET | Get security permissions resources by pk | /api/v1/security/permissions-resources/{pk} |
PUT | Update security permissions resources by pk | /api/v1/security/permissions-resources/{pk} |
Row Level Security (8 endpoints) — Manage row-level security rules for data access control.
| Method | Endpoint | Description |
|---|---|---|
DELETE | Bulk delete RLS rules | /api/v1/rowlevelsecurity/ |
GET | Get a list of RLS | /api/v1/rowlevelsecurity/ |
POST | Create a new RLS rule | /api/v1/rowlevelsecurity/ |
GET | Get metadata information about this API resource (rowlevelsecurity--info) | /api/v1/rowlevelsecurity/_info |
DELETE | Delete an RLS | /api/v1/rowlevelsecurity/{pk} |
GET | Get an RLS | /api/v1/rowlevelsecurity/{pk} |
PUT | Update an RLS rule | /api/v1/rowlevelsecurity/{pk} |
GET | Get related fields data (rowlevelsecurity-related-column-name) | /api/v1/rowlevelsecurity/related/{column_name} |
Import/Export & Administration
Import/export (2 endpoints) — Import and export Superset assets (dashboards, charts, databases).
| Method | Endpoint | Description |
|---|---|---|
GET | Export all assets | /api/v1/assets/export/ |
POST | Import multiple assets | /api/v1/assets/import/ |
CacheRestApi (1 endpoints) — Cache management and invalidation operations.
| Method | Endpoint | Description |
|---|---|---|
POST | Invalidate cache records and remove the database records | /api/v1/cachekey/invalidate |
LogRestApi (4 endpoints) — Access audit logs and activity history.
| Method | Endpoint | Description |
|---|---|---|
GET | Get a list of logs | /api/v1/log/ |
POST | Create log | /api/v1/log/ |
GET | Get a log detail information | /api/v1/log/{pk} |
GET | Get recent activity data for a user | /api/v1/log/recent_activity/ |
User & System
Current User (2 endpoints) — Get information about the currently authenticated user.
| Method | Endpoint | Description |
|---|---|---|
GET | Get the user object | /api/v1/me/ |
GET | Get the user roles | /api/v1/me/roles/ |
User (1 endpoints) — User profile and preferences.
| Method | Endpoint | Description |
|---|---|---|
GET | Get the user avatar | /api/v1/user/{user_id}/avatar.png |
Menu (1 endpoints) — Get the Superset menu structure.
| Method | Endpoint | Description |
|---|---|---|
GET | Get menu | /api/v1/menu/ |
Available Domains (1 endpoints) — Get available domains for the Superset instance.
| Method | Endpoint | Description |
|---|---|---|
GET | Get all available domains | /api/v1/available_domains/ |
AsyncEventsRestApi (1 endpoints) — Real-time event streaming via Server-Sent Events (SSE).
| Method | Endpoint | Description |
|---|---|---|
GET | Read off of the Redis events stream | /api/v1/async_event/ |
OpenApi (1 endpoints) — Access the OpenAPI specification.
| Method | Endpoint | Description |
|---|---|---|
GET | Get api by version openapi | /api/{version}/_openapi |