Vectra AI Assignments API

Dedicated endpoint to Assignments.

Operations 8

GET /assignments Get all assignments #
POST /assignments Used to assign an entity to a user #
GET /assignment/{assignmentID} Describe a specific assignment #
PUT /assignment/{assignmentID} Reassign an assignment #
DELETE /assignment/{assignmentID} Delete an assignment #
PUT /assignment/{assignmentID}/resolve Resolve an assignment #
GET /assignments/{assignment_id} Retrieve specific assignment details #
PATCH /assignments/{assignment_id} Resolve an assignment #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/vectranetworks-assignments-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

vectranetworks-assignments-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Vectranetworks Assignments API
  version: '1.0'
  description: 'Operations tagged Assignments across 2 of this provider''s published API definitions: vectranetworks-detect-v2.3-openapi.yml, vectranetworks-rux-v3.3-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{fqdn}/api/{apiVersion}
  description: Vectra Detect API
  variables:
    fqdn:
      description: The FQDN or IP to join the Vectra Detect instance
      default: detect-api.demo.vectra.io
    apiVersion:
      description: The API version to use
      default: v2.3
- url: https://{vectra_portal_url}/api/v3.3
  description: Vectra Platform API Server
  variables:
    vectra_portal_url:
      default: platform.vectra.ai
tags:
- name: Assignments
  description: Dedicated endpoint to Assignments.
paths:
  /assignments:
    description: Assignments are used to assign account or host entities to analysts for investigation.
    get:
      operationId: assignmentGetSeveral
      summary: Get all assignments
      tags:
      - Assignments
      parameters:
      - name: accounts
        description: Filter by Accounts (list of Account IDs)
        in: query
        schema:
          $ref: '#/components/schemas/arrayOfIDs'
        style: form
        explode: false
      - name: assignees
        description: Filter by Assignees (list of User IDs)
        in: query
        schema:
          $ref: '#/components/schemas/arrayOfIDs'
        style: form
        explode: false
      - name: created_after
        description: Filter by creation timestamp (ISO Timestamp)
        in: query
        schema:
          $ref: '#/components/schemas/isoDate'
      - name: hosts
        description: Filter by Hosts (list of Host IDs)
        in: query
        schema:
          $ref: '#/components/schemas/arrayOfIDs'
        style: form
        explode: false
      - name: resolution
        description: Filter by Outcomes (list of Assignment outcome IDs)
        in: query
        schema:
          $ref: '#/components/schemas/arrayOfIDs'
        style: form
        explode: false
      - name: resolved
        description: Filter by resolution status (true or false)
        in: query
        schema:
          type: boolean
      responses:
        '200':
          description: Retrieved assignments successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/resultsOfAssignments'
        '401':
          $ref: '#/components/responses/invalidToken'
        '403':
          $ref: '#/components/responses/invalidPermissions'
      security:
      - VectraToken: []
    post:
      operationId: assignmentAssign
      summary: Used to assign an entity to a user
      tags:
      - Assignments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              oneOf:
              - $ref: '#/components/schemas/assignmentAccountRequestBody'
              - $ref: '#/components/schemas/assignmentHostRequestBody'
      responses:
        '201':
          description: Assignment created
          content:
            application/json:
              schema:
                type: object
                properties:
                  assignment:
                    $ref: '#/components/schemas/assignment'
              examples:
                Created Assignment:
                  $ref: '#/components/examples/assignmentCreated'
        '400':
          description: Invalid Assigned User
          content:
            application/json:
              schema:
                type: object
                properties:
                  errors:
                    type: array
                    items:
                      type: object
                      properties:
                        title:
                          type: string
              examples:
                Bad User:
                  $ref: '#/components/examples/userCannotBeAssigned'
        '401':
          $ref: '#/components/responses/invalidToken'
        '403':
          $ref: '#/components/responses/invalidPermissions'
        '409':
          description: Assignment already exists
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              example:
                detail: Entity already has an open assignment.
      security:
      - VectraToken: []
    servers:
    - url: https://{fqdn}/api/{apiVersion}
      description: Vectra Detect API
      variables:
        fqdn:
          description: The FQDN or IP to join the Vectra Detect instance
          default: detect-api.demo.vectra.io
        apiVersion:
          description: The API version to use
          default: v2.3
  /assignment/{assignmentID}:
    parameters:
    - name: assignmentID
      description: ID of the Assignment you're working on
      in: path
      schema:
        $ref: '#/components/schemas/ID'
    get:
      operationId: assignmentGetSingle
      summary: Describe a specific assignment
      tags:
      - Assignments
      responses:
        '200':
          description: Describe a specific Assignment
          content:
            application/json:
              schema:
                type: object
                properties:
                  assignment:
                    $ref: '#/components/schemas/assignment'
              examples:
                Created Assignment:
                  $ref: '#/components/examples/assignmentCreated'
        '401':
          $ref: '#/components/responses/invalidToken'
        '403':
          $ref: '#/components/responses/invalidPermissions'
        '404':
          $ref: '#/components/responses/notFound'
      security:
      - VectraToken: []
    put:
      operationId: assignmentUpdate
      summary: Reassign an assignment
      tags:
      - Assignments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/assignmentUpdateRequestBody'
      responses:
        '200':
          description: Assignment successfully reassigned
          content:
            application/json:
              schema:
                type: object
                properties:
                  assignment:
                    $ref: '#/components/schemas/assignment'
              examples:
                Created Assignment:
                  $ref: '#/components/examples/assignmentReassigned'
        '401':
          $ref: '#/components/responses/invalidToken'
        '403':
          $ref: '#/components/responses/invalidPermissions'
      security:
      - VectraToken: []
    delete:
      operationId: assignmentDelete
      summary: Delete an assignment
      tags:
      - Assignments
      responses:
        '204':
          description: Assignment successfully deleted
        '401':
          $ref: '#/components/responses/invalidToken'
        '403':
          $ref: '#/components/responses/invalidPermissions'
      security:
      - VectraToken: []
    servers:
    - url: https://{fqdn}/api/{apiVersion}
      description: Vectra Detect API
      variables:
        fqdn:
          description: The FQDN or IP to join the Vectra Detect instance
          default: detect-api.demo.vectra.io
        apiVersion:
          description: The API version to use
          default: v2.3
  /assignment/{assignmentID}/resolve:
    parameters:
    - name: assignmentID
      description: ID of the Assignment you're working on
      in: path
      schema:
        $ref: '#/components/schemas/ID'
    put:
      operationId: assignmentResolve
      summary: Resolve an assignment
      tags:
      - Assignments
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/assignmentResolveRequestBody'
            examples:
              False Positive No Triage:
                $ref: '#/components/examples/assignmentFalsePositiveResolveNoTriageRequestBody'
              Benign Positive With Triage:
                $ref: '#/components/examples/assignmentBenignPositiveResolveWithTriageRequestBody'
              True Positive With Mark as fixed:
                $ref: '#/components/examples/assignmentTruePositiveResolveWithMarkAsFixedRequestBody'
      responses:
        '200':
          description: Assignment resolved
          content:
            application/json:
              schema:
                type: object
                properties:
                  assignment:
                    $ref: '#/components/schemas/assignment'
              examples:
                Simple Resolution:
                  $ref: '#/components/examples/assignmentSimpleResolution'
                Triageg Resolution:
                  $ref: '#/components/examples/assignmentTriagedResolution'
        '401':
          $ref: '#/components/responses/invalidToken'
        '403':
          $ref: '#/components/responses/invalidPermissions'
        '409':
          description: Assignment already resolved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error'
              example:
                detail: Assignment has already been resolved.
      security:
      - VectraToken: []
    servers:
    - url: https://{fqdn}/api/{apiVersion}
      description: Vectra Detect API
      variables:
        fqdn:
          description: The FQDN or IP to join the Vectra Detect instance
          default: detect-api.demo.vectra.io
        apiVersion:
          description: The API version to use
          default: v2.3
  /assignments/{assignment_id}:
    get:
      summary: Retrieve specific assignment details
      operationId: getAssignmentById
      tags:
      - Assignments
      parameters:
      - name: assignment_id
        in: path
        required: true
        schema:
          type: integer
        description: Unique ID for the assignment
      responses:
        '200':
          description: Assignment details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Assignment'
      security:
      - oauth2: []
    patch:
      summary: Resolve an assignment
      operationId: resolveAssignment
      tags:
      - Assignments
      parameters:
      - name: assignment_id
        in: path
        required: true
        schema:
          type: integer
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                outcome:
                  type: integer
                  description: Outcome of the assignment
                note:
                  type: string
                  description: Additional notes for assignment resolution
      responses:
        '204':
          description: Assignment resolved successfully
      security:
      - oauth2: []
    servers:
    - url: https://{vectra_portal_url}/api/v3.3
      description: Vectra Platform API Server
      variables:
        vectra_portal_url:
          default: platform.vectra.ai
components:
  schemas:
    text:
      type: string
    assignmentOutcomeCategory:
      title: Assignment Outcome allowed categories
      type: string
      enum:
      - benign_true_positive
      - malicious_true_positive
      - false_positive
    assignmentHostRequestBody:
      type: object
      properties:
        assign_host_id:
          $ref: '#/components/schemas/ID'
        assign_to_user_id:
          $ref: '#/components/schemas/ID'
      required:
      - assign_host_id
      - assign_to_user_id
    assignmentOutcome:
      description: Label resolution outcome for an assignment
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ID'
        builtin:
          type: boolean
        user_selectable:
          type: boolean
        title:
          type: string
        category:
          $ref: '#/components/schemas/assignmentOutcomeCategory'
      required:
      - id
      - builtin
      - user_selectable
      - title
      - category
    assignmentResolveRequestBody:
      type: object
      properties:
        outcome:
          $ref: '#/components/schemas/ID'
        note:
          $ref: '#/components/schemas/text'
        triage_as:
          $ref: '#/components/schemas/name'
        mark_as_fixed:
          type: boolean
        detection_ids:
          $ref: '#/components/schemas/arrayOfIDs'
      required:
      - outcome
    assignmentHistorycalEvent:
      description: Assignment history event
      type: object
      properties:
        assignment_id:
          $ref: '#/components/schemas/ID'
        actor:
          $ref: '#/components/schemas/ID'
        event_type:
          $ref: '#/components/schemas/assignmentEventType'
        datetime:
          $ref: '#/components/schemas/isoDate'
        context:
          type: object
          properties:
            from:
              $ref: '#/components/schemas/ID'
            to:
              $ref: '#/components/schemas/ID'
            entity_c_score:
              $ref: '#/components/schemas/vectraScore'
            entity_t_score:
              $ref: '#/components/schemas/vectraScore'
            triage_as:
              type:
              - string
              - 'null'
            triaged_detection_ids:
              oneOf:
              - $ref: '#/components/schemas/arrayOfIDs'
              - type:
                - string
                - 'null'
            fixed_detection_ids:
              oneOf:
              - $ref: '#/components/schemas/arrayOfIDs'
              - type:
                - string
                - 'null'
            created_rule_ids:
              oneOf:
              - $ref: '#/components/schemas/arrayOfIDs'
              - type:
                - string
                - 'null'
    vectraScore:
      type: number
      minimum: 0
      maximum: 99
      example: 80
    assignmentAccountRequestBody:
      type: object
      properties:
        assign_account_id:
          $ref: '#/components/schemas/ID'
        assign_to_user_id:
          $ref: '#/components/schemas/ID'
      required:
      - assign_account_id
      - assign_to_user_id
    assignment:
      description: Assignment
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ID'
        assigned_by:
          $ref: '#/components/schemas/assignmentUser'
        date_assigned:
          $ref: '#/components/schemas/isoDate'
        date_resolved:
          oneOf:
          - $ref: '#/components/schemas/isoDate'
          - type:
            - number
            - 'null'
        events:
          type: array
          items:
            $ref: '#/components/schemas/assignmentHistorycalEvent'
        outcome:
          oneOf:
          - $ref: '#/components/schemas/assignmentOutcome'
          - type:
            - string
            - 'null'
        resolved_by:
          oneOf:
          - $ref: '#/components/schemas/assignmentUser'
          - type:
            - string
            - 'null'
        triaged_detections:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/ID'
        host_id:
          oneOf:
          - $ref: '#/components/schemas/ID'
          - type:
            - string
            - 'null'
        account_id:
          oneOf:
          - $ref: '#/components/schemas/ID'
          - type:
            - string
            - 'null'
        assigned_to:
          $ref: '#/components/schemas/assignmentUser'
      required:
      - id
      - assigned_by
      - date_assigned
      - assigned_to
    error:
      type: object
      properties:
        detail:
          description: A human readable error message
          type: string
        details:
          description: A human readable error message
          type: string
    assignmentEventType:
      description: Type of event that can happen to an assignment
      type: string
      enum:
      - created
      - reassigned
      - resolved
      example: created
    positiveInt:
      type: integer
      format: int32
      minimum: 0
    name:
      type: string
      minLength: 1
    isoDate:
      description: ISO representation of a date
      type: string
      format: date-time
      example: '2022-01-01T00:00:00Z'
    link:
      description: URL Link
      type:
      - string
      - 'null'
      format: uri
      example: https://dummy.link
    arrayOfIDs:
      description: Array of IDs
      type: array
      items:
        $ref: '#/components/schemas/ID'
    resultsOfAssignments:
      allOf:
      - $ref: '#/components/schemas/results'
      - type: object
        properties:
          results:
            type: array
            items:
              $ref: '#/components/schemas/assignment'
    assignmentUser:
      description: Assignment user (tiny Vectra User)
      type: object
      properties:
        id:
          $ref: '#/components/schemas/ID'
        username:
          $ref: '#/components/schemas/name'
      example:
        id: 123
        username: SAML:dummy@company.com
    ID:
      description: ID
      type: integer
      format: int32
      minimum: 1
    results:
      type: object
      properties:
        count:
          $ref: '#/components/schemas/positiveInt'
        next:
          $ref: '#/components/schemas/link'
        previous:
          $ref: '#/components/schemas/link'
    assignmentUpdateRequestBody:
      type: object
      properties:
        assign_to_user_id:
          $ref: '#/components/schemas/ID'
      required:
      - assign_to_user_id
    Assignment:
      type: object
      properties:
        id:
          type: integer
        assigned_by:
          type: string
        assigned_to:
          type: string
        date_assigned:
          type: string
          format: date-time
        date_resolved:
          type: string
          format: date-time
        outcome:
          type: integer
  examples:
    assignmentFalsePositiveResolveNoTriageRequestBody:
      value:
        outcome: 3
        note: This is a test false positive assignment resolution
    assignmentSimpleResolution:
      value:
        assignment:
          id: 18
          assigned_by:
            id: 12
            username: other-user
          date_assigned: '2022-01-02T12:34:56Z'
          date_resolved: '2022-01-03T12:34:56Z'
          events:
          - assignment_id: 18
            actor: 82
            event_type: resolved
            datetime: '2022-01-03T12:34:56Z'
            context:
              entity_t_score: 75
              entity_c_score: 85
              triage_as: null
              triaged_detection_ids: null
              fixed_detection_ids: null
              created_rule_ids: null
          - assignment_id: 18
            actor: 12
            event_type: reassigned
            datetime: '2022-01-02T12:34:56Z'
            context:
              from: 80
              to: 82
              entity_t_score: 75
              entity_c_score: 85
          - assignment_id: 18
            actor: 123
            event_type: created
            datetime: '2022-01-01T12:34:56Z'
            context:
              to: 80
              entity_t_score: 55
              entity_c_score: 65
          outcome:
            id: 3
            builtin: true
            user_selectable: true
            title: False Positive
            category: false_positive
          resolved_by:
            id: 82
            username: SAML:other-user@company.com
          triaged_detections: []
          host_id: null
          account_id: 25
          assigned_to:
            id: 82
            username: SAML:other-user@company.com
    assignmentTruePositiveResolveWithMarkAsFixedRequestBody:
      value:
        outcome: 1
        note: This is a true positive assignment resolution with mark as fixed
        mark_as_fixed: true
        detection_ids:
        - 1
        - 2
        - 3
    assignmentTriagedResolution:
      value:
        assignment:
          id: 22
          assigned_by:
            id: 82
            username: SAML:other-user@company.com
          date_assigned: '2022-09-25T12:34:56Z'
          date_resolved: '2022-09-30T12:34:56Z'
          events:
          - assignment_id: 22
            actor: 82
            event_type: resolved
            datetime: '2022-09-30T12:34:56Z'
            context:
              entity_t_score: 20
              entity_c_score: 55
              triage_as: Dummy Triage Rule
              triaged_detection_ids:
              - 1
              - 2
              fixed_detection_ids: null
              created_rule_ids:
              - 500
              - 501
          - assignment_id: 22
            actor: 82
            event_type: created
            datetime: '2022-09-25T12:34:56Z'
            context:
              to: 82
              entity_t_score: 20
              entity_c_score: 55
          outcome:
            id: 3
            builtin: true
            user_selectable: true
            title: False Positive
            category: false_positive
          resolved_by:
            id: 82
            username: SAML:other-user@company.com
          triaged_detections:
          - 1
          - 2
          host_id: null
          account_id: 331
          assigned_to:
            id: 82
            username: SAML:other-user@company.com
    assignmentReassigned:
      value:
        assignment:
          id: 18
          assigned_by:
            id: 12
            username: other-user
          date_assigned: '2022-01-02T12:34:56Z'
          date_resolved: null
          events:
          - assignment_id: 18
            actor: 12
            event_type: reassigned
            datetime: '2022-01-02T12:34:56Z'
            context:
              from: 80
              to: 82
              entity_t_score: 75
              entity_c_score: 85
          - assignment_id: 18
            actor: 123
            event_type: created
            datetime: '2022-01-01T12:34:56Z'
            context:
              to: 80
              entity_t_score: 55
              entity_c_score: 65
          outcome: null
          resolved_by: null
          triaged_detections: null
          host_id: null
          account_id: 25
          assigned_to:
            id: 82
            username: SAML:other-user@company.com
    userCannotBeAssigned:
      value:
        errors:
        - title: User 101 does not have permissions to be assigned to hosts.
    assignmentBenignPositiveResolveWithTriageRequestBody:
      value:
        outcome: 1
        note: This is a benign positive assignment resolution with triage rules
        triage_as: My triage rule name
        detection_ids:
        - 1
        - 2
        - 3
    assignmentCreated:
      value:
        assignment:
          id: 18
          assigned_by:
            id: 456
            username: dummy-user
          date_assigned: '2022-01-01T12:34:56Z'
          date_resolved: null
          events:
          - assignment_id: 18
            actor: 123
            event_type: created
            datetime: '2022-01-01T12:34:56Z'
            context:
              to: 80
              entity_t_score: 55
              entity_c_score: 65
          outcome: null
          resolved_by: null
          triaged_detections: null
          host_id: null
          account_id: 25
          assigned_to:
            id: 80
            username: SAML:dummy-user@company.com
  responses:
    invalidPermissions:
      description: Invalid User Permissions
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
          example:
            details: You do not have permission to perform this action.
    invalidToken:
      description: Invalid User Token
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
          example:
            details: Invalid token.
    notFound:
      description: Object not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/error'
          example:
            detail: Not Found.
  securitySchemes:
    VectraToken:
      type: apiKey
      name: authorization
      in: header
    oauth2:
      type: oauth2
      flows:
        clientCredentials:
          tokenUrl: https://{vectra_portal_url}/oauth2/token
          scopes: {}
x-refined-from:
- vectranetworks-detect-v2.3-openapi.yml
- vectranetworks-rux-v3.3-openapi.yml