openapi: 3.2.0 info: title: ClickFunnels Communities::Bans::Export Action API termsOfService: https://www.clickfunnels.com/terms-of-service contact: name: ClickFunnels API Team url: https://developers.myclickfunnels.com x-logo: url: https://statics.myclickfunnels.com/image/1126065/file/31edf05760fafe41a82f16a668ab251f.png description: 'The ClickFunnels REST API that powers webhooks, native integrations, and Zapier lets you manage your ClickFunnels data, automate your workflows, and recreate ClickFunnels functionality in your own apps. ' license: name: MIT url: https://opensource.org/licenses/MIT version: 2.0.0 servers: - url: https://{subdomain}.myclickfunnels.com/api/v2 description: ClickFunnels API variables: subdomain: default: myworkspace security: - BearerAuth: [] tags: - name: Communities::Bans::ExportAction description: '> Async bulk action that exports community ban data to a file in the background. Creating an ExportAction enqueues a background job and immediately returns an action record. Poll the `show` endpoint using the returned `id` and check the `status` field (`queued` → `processing` → `completed`) to track progress. Use the `index` endpoint to list previous export actions for a community. ' paths: /communities/{community_id}/bans/export_actions: get: tags: - Communities::Bans::ExportAction summary: List Ban Export Actions description: List previous ban export actions for a community operationId: listCommunitiesBansExportActions parameters: - name: community_id in: path required: true schema: type: string - $ref: '#/components/parameters/after' - $ref: '#/components/parameters/sort_order' - $ref: '#/components/parameters/sort_property' responses: '200': description: OK headers: Pagination-Next: $ref: '#/components/headers/PaginationNext' Link: $ref: '#/components/headers/Link' content: application/json: schema: type: array items: $ref: '#/components/schemas/CommunitiesBansExportActionAttributes' example: - id: 506 public_id: BnExP1 community_id: 1 target_all: true target_ids: [] failed_ids: [] target_count: 50 performed_count: 50 started_at: '2025-01-01T00:01:00.000Z' completed_at: '2025-01-01T00:01:15.000Z' created_at: '2025-01-01T00:00:00.000Z' updated_at: '2025-01-01T00:01:15.000Z' status: completed fields: - contact_name - contact_email - reason - created_at '401': description: Unauthorized content: application/json: schema: type: object properties: error: type: string example: error: API key missing or invalid '404': description: Not Found content: application/json: schema: type: object properties: error: type: string example: error: 'Not found: Record missing' post: tags: - Communities::Bans::ExportAction summary: Create Ban Export Action description: 'Enqueue an async background job to export community ban data to a file. The action record is returned immediately with `status: queued`. Poll `GET /communities/bans/export_actions/{id}` until `status` is `completed`. ' operationId: createCommunitiesBansExportActions parameters: - name: community_id in: path required: true schema: type: string requestBody: description: Parameters for the ban export action required: true content: application/json: schema: type: object properties: communities_bans_export_action: type: object $ref: '#/components/schemas/CommunitiesBansExportActionParameters' example: communities_bans_export_action: target_all: true target_ids: [] fields: - contact_name - contact_email - reason - created_at responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/CommunitiesBansExportActionAttributes' example: id: 506 public_id: BnExP1 community_id: 1 target_all: true target_ids: [] failed_ids: [] target_count: null performed_count: 0 started_at: null completed_at: null created_at: '2025-01-01T00:00:00.000Z' updated_at: '2025-01-01T00:00:00.000Z' status: queued fields: - contact_name - contact_email - reason - created_at '401': description: Unauthorized content: application/json: schema: type: object properties: error: type: string example: error: API key missing or invalid '422': description: Unprocessable Entity content: application/json: schema: type: object properties: error: type: string example: error: 'Fields contains invalid field names: invalid_field' /communities/bans/export_actions/{id}: get: tags: - Communities::Bans::ExportAction summary: Fetch Ban Export Action description: Retrieve the current status of a ban export action. Poll this endpoint until `status` is `completed`. operationId: getCommunitiesBansExportActions parameters: - $ref: '#/components/parameters/id' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/CommunitiesBansExportActionAttributes' example: id: 506 public_id: BnExP1 community_id: 1 target_all: true target_ids: [] failed_ids: [] target_count: 50 performed_count: 50 started_at: '2025-01-01T00:01:00.000Z' completed_at: '2025-01-01T00:01:15.000Z' created_at: '2025-01-01T00:00:00.000Z' updated_at: '2025-01-01T00:01:15.000Z' status: completed fields: - contact_name - contact_email - reason - created_at '401': description: Unauthorized content: application/json: schema: type: object properties: error: type: string example: error: API key missing or invalid '404': description: Not Found content: application/json: schema: type: object properties: error: type: string example: error: 'Not found: Record missing' components: parameters: id: name: id in: path required: true schema: type: string sort_property: name: sort_property in: query description: 'Sort property of a list response. The default is id and thus the created_at order. If you sort by other properties, we additionally sort by id implicitly as a secondary sort property, so that you can rely on the sort order to be deterministic even if the main sort property ends up with the same values. ' required: false schema: type: string enum: - id - updated_at sort_order: name: sort_order in: query description: Sort order of a list response. Use 'desc' to reverse the default 'asc' (ascending) sort order. Examples [in our guides](https://developers.myclickfunnels.com/docs/pagination). required: false schema: type: string enum: - asc - desc after: name: after in: query required: false schema: type: string description: ID of item after which the collection should be returned. More examples and info about pagination [in our guides](https://developers.myclickfunnels.com/docs/pagination). schemas: CommunitiesBansExportActionAttributes: type: object title: Communities::Bans::ExportAction description: Communities::Bans::ExportAction allOf: - $ref: '#/components/schemas/CommunitiesActionAttributes' - type: object properties: fields: type: array description: Column names included in the export file items: type: string example: id: 506 public_id: BnExP1 community_id: 1 target_all: true target_ids: [] failed_ids: [] target_count: 50 performed_count: 50 started_at: '2025-01-01T00:01:00.000Z' completed_at: '2025-01-01T00:01:15.000Z' created_at: '2025-01-01T00:00:00.000Z' updated_at: '2025-01-01T00:01:15.000Z' status: completed fields: - contact_name - contact_email - reason - created_at required: - community_id - completed_at - created_at - failed_ids - fields - id - performed_count - public_id - started_at - status - target_all - target_count - target_ids - updated_at CommunitiesBansExportActionParameters: type: object title: Communities::Bans::ExportAction description: Communities::Bans::ExportAction properties: target_all: type: boolean description: When true, export all bans in the community (target_ids is ignored) target_ids: type: array description: Array of ban public IDs to export. Required when target_all is false. items: type: string fields: type: array description: Array of column names to include in the export items: type: string example: communities_bans_export_action: target_all: true target_ids: [] fields: - contact_name - contact_email - reason - created_at CommunitiesActionAttributes: type: object title: Async Action description: 'Base response shape shared by all community async bulk-action resources. The `status` field progresses from `queued` → `processing` → `completed`. Poll the `show` endpoint until `status` is `completed` or `performed_count` equals `target_count`. ' properties: id: type: integer description: Action ID public_id: type: - string - 'null' description: Action public ID community_id: type: integer description: ID of the Community this action belongs to target_all: type: boolean description: When true the action targets all eligible records in the community rather than the explicit target_ids list target_ids: type: array description: Integer IDs of the targeted records (memberships or bans) items: type: integer failed_ids: type: array description: Integer IDs of records that could not be processed items: type: integer target_count: type: - integer - 'null' description: Total number of records that will be processed performed_count: type: - integer - 'null' description: Number of records processed so far started_at: type: - string - 'null' format: date-time description: Timestamp when the background job began processing completed_at: type: - string - 'null' format: date-time description: Timestamp when the background job finished created_at: type: string format: date-time description: Created at updated_at: type: string format: date-time description: Updated at status: type: string enum: - queued - processing - completed description: 'Current status of the async action. Progresses: queued → processing → completed.' required: - community_id - completed_at - created_at - failed_ids - id - performed_count - public_id - started_at - status - target_all - target_count - target_ids - updated_at headers: Link: description: A direct link to the next page for the cursor-based pagination. It includes the `after` and the Pagination-Next ID value. schema: type: string PaginationNext: description: ID of the last item in the current response after which more records exist. You can use it in an `after` query parameter for cursor-based pagination to get to the next page. schema: type: string securitySchemes: BearerAuth: type: http scheme: bearer externalDocs: description: More in-depth guides and further resources url: https://developers.myclickfunnels.com