> Portal Navigation:
> 
> - Append `.md` to any URL under `https://dev.wix.com/docs/` to get its markdown version.
> - Pages are either content pages (article or reference text) or menu pages (a list of links to child pages).
> - To get a menu page, truncate any URL to a parent path and append `.md` (e.g. `https://dev.wix.com/docs/sdk.md`, `https://dev.wix.com/docs/sdk/core-modules.md`).
> - Top-level index of all portals: https://dev.wix.com/docs/llms.txt
> - Full concatenated docs: https://dev.wix.com/docs/llms-full.txt

# CancelContentPlanFlow

# Package: seo

# Namespace: ContentPlanFlowServiceV1

# Method link: https://dev.wix.com/docs/api-reference/business-management/seo/content-plan-content-plan-flow-v1/cancel-content-plan-flow.md

## Permission Scopes:
Manage SEO Settings: SCOPE.PROMOTE.MANAGE-SEO

## Introduction

Cancels a content plan flow.

Cancellation is permanent. A canceled flow can't be resumed or restarted,
and the keyword research linked to it is canceled with it. To generate a
content plan afterwards, call Trigger Content Plan Generation Flow to
start a flow.

Calling this method on a flow that's already canceled succeeds and
changes nothing.

---

## REST API

### Schema

```
 Method: cancelContentPlanFlow
 Description: Cancels a content plan flow.  Cancellation is permanent. A canceled flow can't be resumed or restarted, and the keyword research linked to it is canceled with it. To generate a content plan afterwards, call Trigger Content Plan Generation Flow to start a flow.  Calling this method on a flow that's already canceled succeeds and changes nothing.
 URL: https://www.wixapis.com/promote/seo/v1/content-plan-flows/{contentPlanFlowId}/cancel
 Method: POST
 Return type: CancelContentPlanFlowResponse
  EMPTY-OBJECT {}


```

### Examples

### Cancel a content plan flow
Cancels a running flow. The keyword research linked to the flow is canceled with it, and the flow can't be resumed.

```curl
curl -X POST \
'https://www.wixapis.com/seo-content-plan-service/v1/content-plan-flows/d290f1ee-6c54-4b01-90e6-d701748f0851/cancel' \
-H 'Authorization: <AUTH>' \
-H 'Content-Type: application/json'
```

---

## JavaScript SDK

### Schema

```
 Method: wixClientAdmin.seo.contentPlanFlows.cancelContentPlanFlow(contentPlanFlowId)
 Description: Cancels a content plan flow.  Cancellation is permanent. A canceled flow can't be resumed or restarted, and the keyword research linked to it is canceled with it. To generate a content plan afterwards, call Trigger Content Plan Generation Flow to start a flow.  Calling this method on a flow that's already canceled succeeds and changes nothing.
 # Note: If the parameter `a.b` is listed under required parameters, `b` is only required if `a` is also present.
 Required parameters:  contentPlanFlowId
 Method parameters: 
   param name: contentPlanFlowId | type: string | description: GUID of the content plan flow to cancel. | required: true | validation: format GUID
 Return type: PROMISE<CancelContentPlanFlowResponse>
  EMPTY-OBJECT {}


```

### Examples

### cancelContentPlanFlow
```javascript
import { contentPlanFlows } from '@wix/seo';

async function cancelContentPlanFlow(contentPlanFlowId) {
  const response = await contentPlanFlows.cancelContentPlanFlow(contentPlanFlowId);
};
```

### cancelContentPlanFlow (with elevated permissions)
```javascript
import { contentPlanFlows } from '@wix/seo';
import { auth } from '@wix/essentials';

async function myCancelContentPlanFlowMethod(contentPlanFlowId) {
  const elevatedCancelContentPlanFlow = auth.elevate(contentPlanFlows.cancelContentPlanFlow);
  const response = await elevatedCancelContentPlanFlow(contentPlanFlowId);
}
```

### cancelContentPlanFlow (self-hosted)
Self-hosted SDK calls require you to [create a client](https://dev.wix.com/docs/sdk/articles/work-with-the-sdk/about-the-wix-client.md).

```javascript
import { createClient } from '@wix/sdk';
import { contentPlanFlows } from '@wix/seo';
// Import the auth strategy for the relevant access type
// Import the relevant host module if needed

const myWixClient = createClient ({
  modules: { contentPlanFlows },
  // Include the auth strategy and host as relevant
});


async function cancelContentPlanFlow(contentPlanFlowId) {
  const response = await myWixClient.contentPlanFlows.cancelContentPlanFlow(contentPlanFlowId);
};
```

---