Create integration store (free and paid plans)
POST
https://api.vercel.com/v1/storage/stores/integration/directCreates an integration store with automatic billing plan handling. For free resources, omit
billingPlanId to auto-discover free plans. For paid resources, provide a billingPlanId from the billing plans endpoint.Request
import { Vercel } from "@vercel/sdk";
const vercel = new Vercel({ bearerToken: "<YOUR_BEARER_TOKEN_HERE>",});
async function run() { const result = await vercel.integrations.createIntegrationStoreDirect({ teamId: "team_1a2b3c4d5e6f7g8h9i0j1k2l", slug: "my-team-url-slug", requestBody: { name: "my-dev-database", integrationConfigurationId: "icfg_cuwj0AdCdH3BwWT4LPijCC7t", integrationProductIdOrSlug: "iap_postgres_db", metadata: { "environment": "development", "project": "my-app", "tags": [ "database", "postgres", ], }, externalId: "dev-db-001", protocolSettings: { "experimentation": { "edgeConfigSyncingEnabled": true, }, }, billingPlanId: "bp_abc123def456", paymentMethodId: "pm_1AbcDefGhiJklMno", prepaymentAmountCents: 5000, }, });
console.log(result);}
run();Response
{ "store": { "projectFilter": { "git": { "owners": [], "providers": [], "repos": [] } }, "projectsMetadata": [ { "deployments": { "actions": [ { "environments": [], "slug": "string" } ], "required": "false" }, "environments": [], "environmentVariables": [], "envVarPrefix": "string", "framework": "actix-web", "id": "icfg_1234567890", "latestDeployment": "string", "makeEnvVarsSensitive": "false", "name": "Example Name", "projectId": "example_id" } ], "status": "available", "totalConnectedProjects": "123", "usageQuotaExceeded": "false", "billingPlan": { "cost": "string", "description": "string", "details": [ { "label": "string", "value": "string" } ], "disabled": "false", "effectiveDate": "string", "highlightedDetails": [ { "label": "string", "value": "string" } ], "id": "icfg_1234567890", "initialCharge": "string", "maximumAmount": "100.00", "maximumAmountAutoPurchasePerPeriod": "100.00", "minimumAmount": "100.00", "name": "Example Name", "paymentMethodRequired": "false", "preauthorizationAmount": "123", "quote": [ { "amount": "100.00", "line": "string" } ], "scope": "installation", "type": "prepayment" }, "capabilities": { "agentTools": "false", "autoSensitive": "false", "billable": "false", "mcp": "false", "mcpReadonly": "false", "projects": "false", "secretRotation": { "customRotationWarning": "string", "maxDelayHours": "123" }, "secretsSync": "false", "sso": "false", "transferable": "false", "v0": "false" }, "directPartnerConsoleUrl": "https://example.com", "externalResourceId": "example_id", "externalResourceStatus": "error", "metadata": "value", "notification": { "href": "string", "level": "error", "message": "string", "title": "string" }, "ownership": "linked", "parentId": "example_id", "product": { "agentSkills": [], "capabilities": { "agentTools": "false", "autoSensitive": "false", "billable": "false", "connectedImportResource": "false", "databaseUI": "false", "importResource": "false", "linking": "false", "mcp": "false", "mcpReadonly": "false", "nativeImportResource": "false", "projects": "false", "sandbox": "false", "secretRotation": { "customRotationWarning": "string", "maxDelayHours": "123" }, "secretsSync": "false", "sso": "false", "transferable": "false", "v0": "false", "v0Flavors": "false" }, "disableResourceRenaming": "false", "iconUrl": "https://example.com", "id": "icfg_1234567890", "metadataSchema": { "properties": "value", "required": [], "type": "object", "ui:order": [] }, "name": "Example Name", "projectConnectionScopes": [], "resourceLinks": [ { "href": "string", "title": "string" } ], "resourceTitle": "Instance", "shortDescription": "string", "showSSOLinkOnProjectConnection": "false", "slug": "string", "tags": [], "repl": { "enabled": "false", "supportsReadOnlyMode": "false", "welcomeMessage": "string" }, "guides": [ { "framework": "string", "steps": [ { "actions": [ { "type": "add_drain" } ], "content": "string", "title": "string" } ], "title": "string" } ], "integration": { "capabilities": { "billable": "false", "checks": "false", "connectedImportResource": "false", "connectedProvisioning": "false", "flexCommitEligible": "false", "importResource": "false", "maxAllowedTeams": "123", "mcp": "false", "mcpConfiguration": "false", "mcpReadonly": "false", "nativeImportResource": "false", "provisioning": "false", "requiresBrowserInstall": "false", "secretRotation": { "customRotationWarning": "string", "maxDelayHours": "123" }, "sso": "false", "templateCloneOnly": "false", "transferable": "false", "updateConfiguration": "false", "v0Flavors": "false" }, "flags": [], "icon": "string", "id": "icfg_1234567890", "name": "Example Name", "slug": "string", "supportsInstallationBillingPlans": "false" }, "integrationConfigurationId": "example_id", "logDrainStatus": "disabled", "primaryProtocol": "ai", "supportedProtocols": [] }, "protocolSettings": { "authentication": { "appUrls": [ { "target": "development", "url": "https://example.com" } ] }, "experimentation": { "edgeConfigId": "example_id", "edgeConfigSyncingEnabled": "false", "edgeConfigTokenId": "example_id", "globalConfigId": "example_id", "globalConfigSyncingEnabled": "false" } }, "secretRotationCompletedAt": "123", "secretRotationRequestedAt": "123", "secretRotationRequestedBy": "string", "secretRotationRequestedReason": "Customer requested refund", "secrets": [ { "frameworkPublishable": "false", "length": "123", "name": "Example Name" } ], "targets": [] }}AuthorizationbearerToken
Default authentication mechanism
application/json
ID of your integration configuration. Get this from GET /v1/integrations/configurations
ID of the billing plan for paid resources. Get available plans from GET /integrations/integration/{id}/products/{productId}/plans. If not provided, automatically discovers free billing plans.
Payment method ID for paid resources. Optional - uses default payment method if not provided.