> ## Documentation Index
> Fetch the complete documentation index at: https://www.c1.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Bulk Create Finding Tasks

> Bulk create tasks for findings.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples post /api/v1/findings/bulk/tasks
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/findings/bulk/tasks:
    post:
      tags:
        - Findings
      summary: Bulk Create Finding Tasks
      description: Bulk create tasks for findings.
      operationId: c1.api.finding.v1.FindingService.BulkCreateFindingTasks
      requestBody:
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/c1.api.finding.v1.BulkCreateFindingTasksRequest
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.finding.v1.BulkCreateFindingTasksResponse
          description: Successful response
      x-codeSamples:
        - lang: go
          label: BulkCreateFindingTasks
          source: "package main\n\nimport(\n\t\"context\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/shared\"\n\tconductoronesdkgo \"github.com/conductorone/conductorone-sdk-go\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := conductoronesdkgo.New(\n        conductoronesdkgo.WithSecurity(shared.Security{\n            BearerAuth: \"<YOUR_BEARER_TOKEN_HERE>\",\n            Oauth: \"<YOUR_OAUTH_HERE>\",\n        }),\n    )\n\n    res, err := s.Finding.BulkCreateFindingTasks(ctx, nil)\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.BulkCreateFindingTasksResponse != nil {\n        // handle response\n    }\n}"
        - lang: typescript
          label: Typescript (SDK)
          source: >-
            import { ConductoroneSDKTypescript } from
            "conductorone-sdk-typescript";


            const conductoroneSDKTypescript = new ConductoroneSDKTypescript({
              security: {
                bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
                oauth: "<YOUR_OAUTH_HERE>",
              },
            });


            async function run() {
              const result = await conductoroneSDKTypescript.finding.bulkCreateFindingTasks();

              console.log(result);
            }


            run();
components:
  schemas:
    c1.api.finding.v1.BulkCreateFindingTasksRequest:
      description: The BulkCreateFindingTasksRequest message.
      properties:
        policyId:
          description: >-
            Optional policy ID to use for the created tasks. Defaults to the
            app's grant policy.
          readOnly: false
          type: string
        refs:
          description: Individual finding references to create tasks for (by-ID mode).
          items:
            $ref: '#/components/schemas/c1.api.finding.v1.FindingRef'
          nullable: true
          readOnly: false
          type: array
        searchRequest:
          $ref: '#/components/schemas/c1.api.finding.v1.FindingSearchRequest'
      title: Bulk Create Finding Tasks Request
      type: object
      x-speakeasy-name-override: BulkCreateFindingTasksRequest
    c1.api.finding.v1.BulkCreateFindingTasksResponse:
      description: The BulkCreateFindingTasksResponse message.
      properties:
        bulkActionId:
          description: >-
            The ID of the asynchronous bulk action, which can be used to track
            progress.
          readOnly: false
          type: string
      title: Bulk Create Finding Tasks Response
      type: object
      x-speakeasy-name-override: BulkCreateFindingTasksResponse
    c1.api.finding.v1.FindingRef:
      description: The FindingRef message.
      properties:
        id:
          description: The ID of the finding.
          readOnly: false
          type: string
      title: Finding Ref
      type: object
      x-speakeasy-name-override: FindingRef
    c1.api.finding.v1.FindingSearchRequest:
      description: The FindingSearchRequest message.
      properties:
        appIds:
          description: Filter by app IDs (OR within field).
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        appUserIds:
          description: |-
            Filter by app user IDs (OR within field). Matches findings whose
             target.app_user_target.app_user_id is in this list.
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        findingTypes:
          description: Filter by finding type discriminators (OR within field).
          items:
            type: string
          nullable: true
          readOnly: false
          type: array
        pageSize:
          description: Maximum number of findings to return per page.
          format: int32
          readOnly: false
          type: integer
        pageToken:
          description: Pagination token from a previous response.
          readOnly: false
          type: string
        query:
          description: Free text search query.
          readOnly: false
          type: string
        severities:
          description: Filter by severities (OR within field).
          items:
            enum:
              - FINDING_SEVERITY_UNSPECIFIED
              - FINDING_SEVERITY_INFO
              - FINDING_SEVERITY_LOW
              - FINDING_SEVERITY_MEDIUM
              - FINDING_SEVERITY_HIGH
              - FINDING_SEVERITY_CRITICAL
            type: string
            x-speakeasy-unknown-values: allow
          nullable: true
          readOnly: false
          type: array
        states:
          description: Filter by states (OR within field).
          items:
            enum:
              - FINDING_STATE_UNSPECIFIED
              - FINDING_STATE_OPEN
              - FINDING_STATE_IN_PROGRESS
              - FINDING_STATE_RESOLVED
              - FINDING_STATE_SNOOZED
              - FINDING_STATE_RISK_ACCEPTED
              - FINDING_STATE_SUPPRESSED
            type: string
            x-speakeasy-unknown-values: allow
          nullable: true
          readOnly: false
          type: array
      title: Finding Search Request
      type: object
      x-speakeasy-name-override: FindingSearchRequest
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````