Shipkit
DocsFeaturesPricing
DocsFeaturesPricing

Shipkit DocumentationBuild memory optimizationDevelopment GuideEnvironment VariablesError HandlingFile StructureMiddlewareRebranding Guide

Vercel Deployment Checks

Development GuideCLIDependency UpdatesDevToolsFeature FlagsAI PromptsSetup RequirementsSupply chaintRPCWeb Workers

FeaturesAIAnalytics IntegrationAuthenticationCMSDatabaseEmailHapticsPaymentsComponent RegistryStorageUIVisual BuilderWaitlist Feature

Quick StartDeploymentEnvironment VariablesFile StructureSetup Wizard

Caching & Rate LimitingContent ManagementError HandlingMarkdown and MDXMiddlewareProxy-Safe Server ActionsRebranding GuideWebhook Security Implementation GuideMulti-Zone ArchitectureVercel Deployment

IntegrationsPayload CMSDataFast Analytics IntegrationGoogle Analytics IntegrationGoogle Tag Manager IntegrationPostHogStatSig IntegrationUmami Analytics IntegrationAuth.js IntegrationBetter AuthClerkStack Auth IntegrationSupabase Authentication IntegrationBuilder.io IntegrationPayload CMS IntegrationAWS S3 IntegrationResend Email IntegrationUpstash Redis IntegrationVercel Blob IntegrationLemon SqueezyPolarStripe

API RoutesComponentsAPI Route SnippetsAuthentication SnippetsComponent SnippetsForm Handling SnippetsSnippets Introduction

    API Routes

    Shipkit exposes REST-style API routes via Next.js route handlers. Most require authentication.

    Core API

    RouteMethodAuthPurpose
    /api/payments/check-purchaseGETYesCheck if user has purchased a product
    /api/payments/check-subscriptionGETYesCheck active subscription status
    /api/projectsGETYesList user's projects
    /api/teamsGETYesList user's teams
    /api/deploymentsGETYesList deployments
    /api/downloadGETYesDownload purchased product
    /api/permissions/checkGETYesCheck RBAC permissions
    /api/docs/searchPOSTNoSearch documentation
    /api/previewGETNoPayload CMS preview

    Admin API

    RouteMethodAuthPurpose
    /api/admin/users/[userId]GETAdminGet user details

    Setup / Deploy API

    Used by the setup wizard and deployment flow.

    RouteMethodAuthPurpose
    /api/setup/create-repositoryPOSTYesCreate GitHub repo from template
    /api/setup/deployPOSTYesTrigger Vercel deployment
    /api/setup/deployment-statusGETYesPoll deployment progress
    /api/setup/vercel-auth-urlGETYesGet Vercel OAuth URL

    GitHub Integration

    RouteMethodAuthPurpose
    /api/github/check-invitationGETYesCheck repo invitation status
    /api/github/check-repo-availabilityGETYesVerify repo name is available

    Install API

    Used by the install/scaffolding flow.

    RouteMethodAuthPurpose
    /install/api/fileGETNoServe template files
    /install/api/template-filesGETNoList available template files
    /install/api/v0-proxyPOSTNoProxy to v0.dev
    /install/api/github/create-branchPOSTYesCreate branch in user's repo
    /install/api/github/commit-changesPOSTYesCommit files to branch
    /install/api/github/create-prPOSTYesOpen PR with changes

    Auth Routes

    RouteMethodPurpose
    /api/auth/[...nextauth]GET, POSTAuth.js catch-all handler
    /api/better-auth/[...path]GET, POSTBetter Auth catch-all handler

    Webhooks

    RouteMethodPurpose
    /webhooks/lemonsqueezyPOSTLemon Squeezy payment events
    /webhooks/stripePOSTStripe payment events
    /webhooks/polarPOSTPolar payment events

    Checkout

    RouteMethodPurpose
    /integrations/stripe/checkoutGET, POSTCreate Stripe checkout session
    /integrations/polar/checkoutGETCreate Polar checkout session

    Key Files

    FilePurpose
    src/app/(app)/api/Main API route handlers
    src/app/(app)/webhooks/Webhook handlers
    src/app/(app)/(integrations)/Payment checkout routes