Supabase RPC API

Invoke PostgreSQL functions via remote procedure calls.

OpenAPI Specification

supabase-rpc-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Supabase Auth Admin RPC API
  description: The Supabase Auth API (based on GoTrue) is a JWT-based API for managing users and issuing access tokens. It provides endpoints for user signup, signin with email/password, magic links, one-time passwords, OAuth social login, token refresh, user management, multi-factor authentication, and SAML-based single sign-on. When deployed on Supabase, the server requires an apikey header containing a valid Supabase-issued API key.
  version: 2.0.0
  contact:
    name: Supabase Support
    url: https://supabase.com/support
  termsOfService: https://supabase.com/terms
servers:
- url: https://{project_ref}.supabase.co/auth/v1
  description: Supabase Project Auth Server
  variables:
    project_ref:
      description: Your Supabase project reference ID
      default: your-project-ref
security:
- apiKeyAuth: []
tags:
- name: RPC
  description: Invoke PostgreSQL functions via remote procedure calls.
paths:
  /rpc/{function_name}:
    post:
      operationId: invokeFunction
      summary: Invoke a PostgreSQL function
      description: Calls a PostgreSQL function (stored procedure) via a remote procedure call. Function arguments are passed in the request body. Functions must be created in the public schema or an exposed schema.
      tags:
      - RPC
      parameters:
      - name: function_name
        in: path
        required: true
        description: Name of the PostgreSQL function to invoke
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              description: Function arguments as key-value pairs
      responses:
        '200':
          description: Function executed successfully
          content:
            application/json:
              schema:
                description: Function return value
        '400':
          description: Bad request - invalid arguments
        '401':
          description: Unauthorized
        '404':
          description: Function not found
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: apikey
      description: Supabase project API key (anon key for public operations, service_role key for admin operations).
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: JWT access token obtained from a successful authentication.
externalDocs:
  description: Supabase Auth Documentation
  url: https://supabase.com/docs/guides/auth