---
title: "Start Contract"
method: POST
path: "/v1/subscription/start-contract"
tags: ["Subscription"]
---

# Start Contract

`POST /v1/subscription/start-contract`

Collect the customer's card and start the custom plan staff loaded for their org.

## Headers

- `X-API-Key` string, required

## Request body

- StartContractRequest
  - `payment_method_id` string, nullable — Stripe payment method ID; omit to reuse the org's existing default card

## Response `200`

Successful Response

- SignupResponse
  - `success` boolean, required — Whether the signup was successful
  - `message` string, required — Response message
  - `effective_at` string, nullable — When a scheduled plan change takes effect (ISO 8601); null means immediate

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/getbluejay/apis/bluejay-api.md) · [All operations](https://skmtc.net/getbluejay/apis/bluejay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getbluejay/bluejay-api/versions/f48cef80963f/schema)
