planetscale Teams API
Manage teams within an organization, including creating teams, adding members, and controlling database access.
Manage teams within an organization, including creating teams, adding members, and controlling database access.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/planetscale-teams-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: PlanetScale Platform Backups Teams API
description: The PlanetScale Platform API provides programmatic access to manage PlanetScale serverless MySQL-compatible databases. It allows developers to create and manage databases, branches, deploy requests, passwords, backups, service tokens, organization members, teams, bouncers, and billing data. The API supports authentication via service tokens and OAuth, enabling integration into CI/CD pipelines and infrastructure-as-code workflows.
version: 1.0.0
contact:
name: PlanetScale Support
url: https://support.planetscale.com
termsOfService: https://planetscale.com/legal/tos
license:
name: Proprietary
url: https://planetscale.com/legal/tos
servers:
- url: https://api.planetscale.com/v1
description: PlanetScale Production API
security:
- serviceToken: []
tags:
- name: Teams
description: Manage teams within an organization, including creating teams, adding members, and controlling database access.
paths:
/organizations/{organization}/teams:
get:
operationId: listTeams
summary: List teams
description: Returns a list of all teams in the specified organization.
tags:
- Teams
parameters:
- $ref: '#/components/parameters/OrganizationParam'
- $ref: '#/components/parameters/PageParam'
- $ref: '#/components/parameters/PerPageParam'
responses:
'200':
description: Successful response with list of teams
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Team'
'401':
$ref: '#/components/responses/Unauthorized'
post:
operationId: createTeam
summary: Create a team
description: Creates a new team in the specified organization.
tags:
- Teams
parameters:
- $ref: '#/components/parameters/OrganizationParam'
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
properties:
name:
type: string
description: The name of the team.
description:
type: string
description: A description of the team.
responses:
'201':
description: Team created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Team'
'401':
$ref: '#/components/responses/Unauthorized'
'422':
$ref: '#/components/responses/UnprocessableEntity'
/organizations/{organization}/teams/{team_slug}:
get:
operationId: getTeam
summary: Get a team
description: Returns details about a specific team in the organization.
tags:
- Teams
parameters:
- $ref: '#/components/parameters/OrganizationParam'
- $ref: '#/components/parameters/TeamSlugParam'
responses:
'200':
description: Successful response with team details
content:
application/json:
schema:
$ref: '#/components/schemas/Team'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
patch:
operationId: updateTeam
summary: Update a team
description: Updates the name or description of a specific team.
tags:
- Teams
parameters:
- $ref: '#/components/parameters/OrganizationParam'
- $ref: '#/components/parameters/TeamSlugParam'
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The updated name of the team.
description:
type: string
description: The updated description of the team.
responses:
'200':
description: Team updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/Team'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
delete:
operationId: deleteTeam
summary: Delete a team
description: Deletes a team from the organization.
tags:
- Teams
parameters:
- $ref: '#/components/parameters/OrganizationParam'
- $ref: '#/components/parameters/TeamSlugParam'
responses:
'204':
description: Team deleted successfully
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
components:
parameters:
PerPageParam:
name: per_page
in: query
required: false
description: The number of results per page.
schema:
type: integer
minimum: 1
maximum: 100
default: 25
OrganizationParam:
name: organization
in: path
required: true
description: The name of the organization.
schema:
type: string
PageParam:
name: page
in: query
required: false
description: The page number for pagination.
schema:
type: integer
minimum: 1
default: 1
TeamSlugParam:
name: team_slug
in: path
required: true
description: The slug of the team.
schema:
type: string
schemas:
Team:
type: object
description: A team within an organization for managing database access at the group level.
properties:
id:
type: string
description: The unique identifier of the team.
name:
type: string
description: The name of the team.
slug:
type: string
description: The URL-safe slug of the team.
description:
type: string
description: A description of the team.
members_count:
type: integer
description: The number of members in the team.
created_at:
type: string
format: date-time
description: The timestamp when the team was created.
updated_at:
type: string
format: date-time
description: The timestamp when the team was last updated.
Error:
type: object
description: An error response from the PlanetScale API.
properties:
code:
type: string
description: A machine-readable error code.
message:
type: string
description: A human-readable error message.
responses:
Unauthorized:
description: Authentication failed. The service token or OAuth token is missing, invalid, or lacks the required permissions.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
UnprocessableEntity:
description: The request was well-formed but contains invalid parameters or violates business rules.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
NotFound:
description: The requested resource was not found.
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
serviceToken:
type: apiKey
in: header
name: Authorization
description: Service token authentication. Use the format 'ServiceToken {token_id}:{token_value}' in the Authorization header.
bearerAuth:
type: http
scheme: bearer
description: OAuth 2.0 bearer token authentication. Obtain tokens via the PlanetScale OAuth authorization code flow.
externalDocs:
description: PlanetScale API Documentation
url: https://planetscale.com/docs/api/reference/getting-started-with-planetscale-api