---
id: motherduck-rest-api
title: "MotherDuck REST API"
description: REST API reference for managing MotherDuck resources including databases, users, and access tokens.
sidebar_label: Introduction
sidebar_position: 0
hide_title: true
custom_edit_url: null
---


import ApiLogo from "@theme/ApiLogo";
import Admonition from '@theme/Admonition';
import Heading from "@theme/Heading";
import SchemaTabs from "@theme/SchemaTabs";
import TabItem from "@theme/TabItem";
import Export from "@theme/ApiExplorer/Export";
import DocCardList from '@theme/DocCardList';

<span
  className={"theme-doc-version-badge badge badge--secondary"}
  children={"Version: 1.0.0"}
>
</span>

<Heading
  as={"h1"}
  className={"openapi__heading"}
  children={"MotherDuck REST API"}
>
</Heading>

::::warning[Preview Feature]
The REST API methods are in 'Preview' and may change in the future
::::

To better support scenarios that require some flexibility or dynamic configuration around
managing a MotherDuck organization we are exposing an OpenAPI endpoint with some new functionality.
At the moment it enables limited management of users and tokens via HTTP without requiring a
DuckDB + MotherDuck client to be running.

All of the methods are authenticated using a Read/Write token of a user with the `Admin` role within your MotherDuck Organization
and passing it via the `Authorization` header with a value of `Bearer {TOKEN}`.

::::info[Service Account Management]
  You can use this REST API to programmatically manage service accounts, including their creation, token generation, and Duckling configuration.
  For a detailed walkthrough, please see our [Service Accounts Guide](../../../key-tasks/service-accounts-guide).
::::

If you would like to generate your own OpenAPI client the spec file is located at https://api.motherduck.com/docs/specs


<DocCardList />
