View as Markdown
Supabase icon

Supabase ACTION

Upsert Row

Updates a row in a database or inserts new row if not found. See the docs here
  • Action
  • Writes data
  • Destructive
  • API key
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Supabase account once, then configure and run Upsert Row from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "supabase-upsert-row",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    supabase: { authProvisionId: "apn_xxxxxxx" },
    table: "Table",
    data: "Row Data",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Upsert Row inputs
Property Type Description
table Table string
Name of the table to upsert row
Required
data Row Data object
Enter the column names and values as key/value pairs
Required

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
supabase-upsert-row
Version
0.1.6
App
Supabase
Authentication
API key
Read-only
No
Destructive
Yes
Open world
Yes