SureCart ACTION
Update Subscription
Update an existing subscription. See the documentation
- Action
- Writes data
- API key
- SDK
- MCP
IMPLEMENTATION
Call this tool
Connect a user's SureCart account once, then configure and run Update Subscription 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: "surecart-update-subscription",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
surecart: { authProvisionId: "apn_xxxxxxx" },
subscriptionId: "Subscription ID",
refreshPriceVersion: true,
},
})
console.log(result)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "surecart-update-subscription",
"configured_props": {
"surecart": { "authProvisionId": "apn_xxxxxxx" },
"subscriptionId": "Subscription ID",
"refreshPriceVersion": true
}
}'// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "surecart",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// listTools() hands your model this tool's input schema, so it can
// fill the arguments itself:
const result = await mcp.callTool({
name: "surecart-update-subscription",
arguments: {
subscriptionId: "Subscription ID",
refreshPriceVersion: true,
},
})SCHEMA
Inputs
Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.
| Property | Type | Description |
|---|---|---|
subscriptionId Subscription ID | string | The unique identifier of the subscription. Use List Subscriptions to retrieve a list of available subscriptions. Required |
refreshPriceVersion Refresh Price Version | boolean | Update the subscription to use the most recent version of its price. Optional |
skipProductGroupValidation Skip Product Group Validation | boolean | Allow price updates regardless of product group restrictions. Optional |
skipProration Skip Proration | boolean | Prevent proration charges on the next billing period. Optional |
updateBehavior Update Behavior | string | When to apply the update. Defaults to the account subscription protocol setting. Optional |
price Price ID | string | UUID of the new price to switch to. Example: price_abc123 Optional |
customer Customer ID | string | The unique identifier of the customer. Use List Customers to retrieve a list of available customers. Required |
paymentMethod Payment Method ID | string | UUID of the new payment method. Example: pm_abc123 Optional |
cancelAtPeriodEnd Cancel at Period End | boolean | Set to true to cancel the subscription at the end of the current billing period. Optional |
trialEndAt Trial End At (Unix timestamp) | integer | Unix timestamp to end the trial early or extend it. Example: 1710000000 Optional |
quantity Quantity | integer | New subscription quantity. Example: 3 Optional |
adHocAmount Ad Hoc Amount | integer | Custom billing amount in cents for ad hoc prices. Example: 9900 Optional |
discount Discount | object | New coupon or promotion code. Example: { "coupon": "coup_abc123" } Optional |
variant Variant ID | string | UUID of the new product variant. Example: var_abc123 Optional |
shippingMethod Shipping Method ID | string | UUID of the shipping method. Example: sm_abc123 Optional |
taxEnabled Tax Enabled | boolean | Enable or disable tax collection for this subscription. Optional |
restoreAt Restore At (Unix timestamp) | integer | Unix timestamp for automatic subscription restoration after cancellation. Example: 1720000000 Optional |
metadata Metadata | object | Updated key-value metadata. Example: { "plan": "enterprise" } Optional |
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
- surecart-update-subscription
- Version
- 0.0.3
- App
- SureCart
- Authentication
- API key
- Read-only
- No
- Destructive
- No
- Open world
- Yes
- Source
- View on GitHub ↗