# Start a Cloudflare checkup > Starts a Cloudflare Checkup: creates the run under a short customer fence, then starts its durable Workflow (`CHECKUP_WORKFLOW`), which scans and stores the... Source: https://docs.vigilbase.com/one/api/reference/services/post-services-cloudflare-checkups-start `POST https://one.vigilbase.com/api/services/cloudflare/checkups/start` Starts a Cloudflare Checkup: creates the run under a short customer fence, then starts its durable Workflow (`CHECKUP_WORKFLOW`), which scans and stores the result however long the account takes. Nothing runs after the response: a run is either handed to its Workflow or marked failed. > Needs a recent sign-in: renewing a token doesn't count, and MCP sessions and API keys are always refused. See [changes that need a recent sign-in](https://docs.vigilbase.com/one/api#changes-that-need-a-recent-sign-in). ## Authorizations - `Authorization` (string, header, required): Bearer access token from Vigilbase Identity (`auth.vigilbase.com`), sent as `Authorization: Bearer `. The CLI gets one with `vigilbase login`. Organisation API keys can't call this endpoint: it needs a recent sign-in by a person. - Permissions checked: `write:services` ## Body (application/json) - `customerId` (string) - `accountId` (string): Min length 1. ## Responses ### 200 Success ### 401 Authentication required ### 403 Not permitted ## Example request ```bash # Token from `vigilbase login`. API keys can't call this. curl --request POST \ --url 'https://one.vigilbase.com/api/services/cloudflare/checkups/start' \ --header "Authorization: Bearer $VIGILBASE_TOKEN" \ --header 'Content-Type: application/json' \ --data '{"customerId":"","accountId":""}' ``` With the Vigilbase CLI: ```bash vigilbase cf checkup start ``` See also the [guide](https://docs.vigilbase.com/one/api/cloudflare).