Skip to main content
POST
/
api
/
v1
/
findings
/
bulk
/
tasks
BulkCreateFindingTasks
package main

import(
	"context"
	"github.com/conductorone/conductorone-sdk-go/pkg/models/shared"
	conductoronesdkgo "github.com/conductorone/conductorone-sdk-go"
	"log"
)

func main() {
    ctx := context.Background()

    s := conductoronesdkgo.New(
        conductoronesdkgo.WithSecurity(shared.Security{
            BearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
            Oauth: "<YOUR_OAUTH_HERE>",
        }),
    )

    res, err := s.Finding.BulkCreateFindingTasks(ctx, nil)
    if err != nil {
        log.Fatal(err)
    }
    if res.BulkCreateFindingTasksResponse != nil {
        // handle response
    }
}
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();
curl --request POST \
  --url https://{tenantDomain}.conductor.one/api/v1/findings/bulk/tasks \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "policyId": "<string>",
  "refs": [
    {
      "id": "<string>"
    }
  ],
  "searchRequest": {
    "appIds": [
      "<string>"
    ],
    "appUserIds": [
      "<string>"
    ],
    "decoyIds": [
      "<string>"
    ],
    "findingTypes": [],
    "pageSize": 123,
    "pageToken": "<string>",
    "query": "<string>",
    "severities": [],
    "states": []
  }
}
'
import requests

url = "https://{tenantDomain}.conductor.one/api/v1/findings/bulk/tasks"

payload = {
    "policyId": "<string>",
    "refs": [{ "id": "<string>" }],
    "searchRequest": {
        "appIds": ["<string>"],
        "appUserIds": ["<string>"],
        "decoyIds": ["<string>"],
        "findingTypes": [],
        "pageSize": 123,
        "pageToken": "<string>",
        "query": "<string>",
        "severities": [],
        "states": []
    }
}
headers = {
    "Authorization": "Bearer <token>",
    "Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
  method: 'POST',
  headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
  body: JSON.stringify({
    policyId: '<string>',
    refs: [{id: '<string>'}],
    searchRequest: {
      appIds: ['<string>'],
      appUserIds: ['<string>'],
      decoyIds: ['<string>'],
      findingTypes: [],
      pageSize: 123,
      pageToken: '<string>',
      query: '<string>',
      severities: [],
      states: []
    }
  })
};

fetch('https://{tenantDomain}.conductor.one/api/v1/findings/bulk/tasks', options)
  .then(res => res.json())
  .then(res => console.log(res))
  .catch(err => console.error(err));
<?php

$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => "https://{tenantDomain}.conductor.one/api/v1/findings/bulk/tasks",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 30,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => json_encode([
    'policyId' => '<string>',
    'refs' => [
        [
                'id' => '<string>'
        ]
    ],
    'searchRequest' => [
        'appIds' => [
                '<string>'
        ],
        'appUserIds' => [
                '<string>'
        ],
        'decoyIds' => [
                '<string>'
        ],
        'findingTypes' => [
                
        ],
        'pageSize' => 123,
        'pageToken' => '<string>',
        'query' => '<string>',
        'severities' => [
                
        ],
        'states' => [
                
        ]
    ]
  ]),
  CURLOPT_HTTPHEADER => [
    "Authorization: Bearer <token>",
    "Content-Type: application/json"
  ],
]);

$response = curl_exec($curl);
$err = curl_error($curl);

curl_close($curl);

if ($err) {
  echo "cURL Error #:" . $err;
} else {
  echo $response;
}
HttpResponse<String> response = Unirest.post("https://{tenantDomain}.conductor.one/api/v1/findings/bulk/tasks")
  .header("Authorization", "Bearer <token>")
  .header("Content-Type", "application/json")
  .body("{\n  \"policyId\": \"<string>\",\n  \"refs\": [\n    {\n      \"id\": \"<string>\"\n    }\n  ],\n  \"searchRequest\": {\n    \"appIds\": [\n      \"<string>\"\n    ],\n    \"appUserIds\": [\n      \"<string>\"\n    ],\n    \"decoyIds\": [\n      \"<string>\"\n    ],\n    \"findingTypes\": [],\n    \"pageSize\": 123,\n    \"pageToken\": \"<string>\",\n    \"query\": \"<string>\",\n    \"severities\": [],\n    \"states\": []\n  }\n}")
  .asString();
require 'uri'
require 'net/http'

url = URI("https://{tenantDomain}.conductor.one/api/v1/findings/bulk/tasks")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n  \"policyId\": \"<string>\",\n  \"refs\": [\n    {\n      \"id\": \"<string>\"\n    }\n  ],\n  \"searchRequest\": {\n    \"appIds\": [\n      \"<string>\"\n    ],\n    \"appUserIds\": [\n      \"<string>\"\n    ],\n    \"decoyIds\": [\n      \"<string>\"\n    ],\n    \"findingTypes\": [],\n    \"pageSize\": 123,\n    \"pageToken\": \"<string>\",\n    \"query\": \"<string>\",\n    \"severities\": [],\n    \"states\": []\n  }\n}"

response = http.request(request)
puts response.read_body
{
  "bulkActionId": "<string>"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Authorization
string
header
required

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() function.

Body

application/json

The BulkCreateFindingTasksRequest message.

policyId
string | null

Optional policy ID to use for the created tasks. Defaults to the app's grant policy.

refs
Finding Ref · object[] | null

Individual finding references to create tasks for (by-ID mode).

searchRequest
Finding Search Request · object | null

The FindingSearchRequest message.

Response

200 - application/json

Successful response

The BulkCreateFindingTasksResponse message.

bulkActionId
string | null

The ID of the asynchronous bulk action, which can be used to track progress.