pycti.entities.opencti_task

Classes

Task

Main Task class for OpenCTI

Module Contents

class pycti.entities.opencti_task.Task(opencti)[source]

Main Task class for OpenCTI

Manages tasks and to-do items in the OpenCTI platform.

Parameters:

opencti (OpenCTIApiClient) – instance of OpenCTIApiClient

Initialize the Task instance.

Parameters:

opencti (OpenCTIApiClient) – OpenCTI API client instance

opencti[source]
properties = Multiline-String[source]
Show Value
"""
            id
            standard_id
            entity_type
            parent_types
            spec_version
            created_at
            updated_at
            status {
                id
                template {
                  id
                  name
                  color
                }
            }
            createdBy {
                ... on Identity {
                    id
                    standard_id
                    entity_type
                    parent_types
                    spec_version
                    identity_class
                    name
                    description
                    roles
                    contact_information
                    x_opencti_aliases
                    created
                    modified
                    objectLabel {
                        id
                        value
                        color
                    }
                }
                ... on Organization {
                    x_opencti_organization_type
                    x_opencti_reliability
                }
                ... on Individual {
                    x_opencti_firstname
                    x_opencti_lastname
                }
            }
            objectMarking {
                id
                standard_id
                entity_type
                definition_type
                definition
                created
                modified
                x_opencti_order
                x_opencti_color
            }
            objectLabel {
                id
                value
                color
            }
            externalReferences {
                edges {
                    node {
                        id
                        standard_id
                        entity_type
                        source_name
                        description
                        url
                        hash
                        external_id
                        created
                        modified
                        importFiles {
                            edges {
                                node {
                                    id
                                    name
                                    size
                                    metaData {
                                        mimetype
                                        version
                                    }
                                }
                            }
                        }
                    }
                }
            }
            revoked
            confidence
            created
            modified
            name
            description
            due_date
            objects {
                edges {
                    node {
                        ... on BasicObject {
                            id
                            entity_type
                            parent_types
                        }
                        ... on BasicRelationship {
                            id
                            entity_type
                            parent_types
                        }
                        ... on StixObject {
                            standard_id
                            spec_version
                            created_at
                            updated_at
                        }
                        ... on AttackPattern {
                            name
                        }
                        ... on Campaign {
                            name
                        }
                        ... on CourseOfAction {
                            name
                        }
                        ... on Individual {
                            name
                        }
                        ... on Organization {
                            name
                        }
                        ... on Sector {
                            name
                        }
                        ... on System {
                            name
                        }
                        ... on Indicator {
                            name
                        }
                        ... on Infrastructure {
                            name
                        }
                        ... on IntrusionSet {
                            name
                        }
                        ... on Position {
                            name
                        }
                        ... on City {
                            name
                        }
                        ... on Country {
                            name
                        }
                        ... on Region {
                            name
                        }
                        ... on Malware {
                            name
                        }
                        ... on ThreatActor {
                            name
                        }
                        ... on Tool {
                            name
                        }
                        ... on Vulnerability {
                            name
                        }
                        ... on Incident {
                            name
                        }
                        ... on Event {
                            name
                        }
                        ... on Channel {
                            name
                        }
                        ... on Narrative {
                            name
                        }
                        ... on Language {
                            name
                        }
                        ... on DataComponent {
                            name
                        }
                        ... on DataSource {
                            name
                        }
                        ... on StixCoreRelationship {
                            standard_id
                            spec_version
                            created_at
                            updated_at
                            relationship_type
                        }
                       ... on StixSightingRelationship {
                            standard_id
                            spec_version
                            created_at
                            updated_at
                        }
                    }
                }
            }
            importFiles {
                edges {
                    node {
                        id
                        name
                        size
                        metaData {
                            mimetype
                            version
                        }
                        objectMarking {
                            id
                            standard_id
                            entity_type
                            definition_type
                            definition
                            created
                            modified
                            x_opencti_order
                            x_opencti_color
                        }
                    }
                }
            }
        """
static generate_id(name, created)[source]

Generate a STIX ID for a Task object.

Parameters:
  • name (str) – the name of the Task

  • created (str or datetime.datetime) – the creation date of the Task

Returns:

STIX ID for the Task

Return type:

str

static generate_id_from_data(data)[source]

Generate a STIX ID from Task data.

Parameters:

data (dict) – Dictionary containing ‘name’ and ‘created’ keys

Returns:

STIX ID for the Task

Return type:

str

list(**kwargs)[source]

List Task objects.

Parameters:
  • filters (dict) – the filters to apply

  • search (str) – the search keyword

  • first (int) – return the first n rows from the after ID (or the beginning if not set)

  • after (str) – ID of the first row for pagination

Returns:

List of Task objects

Return type:

list

read(**kwargs)[source]

Read a Task object.

Parameters:
  • id (str) – the id of the Task

  • filters (dict) – the filters to apply if no id provided

Returns:

Task object

Return type:

dict or None

get_by_stix_id_or_name(**kwargs)[source]

Read a Task object by stix_id or name.

Parameters:
  • stix_id (str) – the STIX ID of the Task

  • name (str) – the name of the Task

  • created (str) – the creation date of the Task

Returns:

Task object

Return type:

dict or None

contains_stix_object_or_stix_relationship(**kwargs)[source]

Check if a task already contains a thing (Stix Object or Stix Relationship).

Parameters:
  • id (str) – the id of the Task

  • stixObjectOrStixRelationshipId (str) – the id of the Stix-Entity

Returns:

True if the task contains the entity, False otherwise

Return type:

bool or None

create(**kwargs)[source]

Create a Task object.

Parameters:
  • name (str) – the name of the Task

  • description (str) – the description of the Task

  • due_date (str) – the due date of the Task

  • createdBy (str) – the creator of the Task

  • update (bool) – (optional) whether to update if exists (default: False)

  • files (list) – (optional) list of File objects to attach

  • filesMarkings (list) – (optional) list of lists of marking definition IDs for each file

Returns:

Task object

Return type:

dict or None

update_field(**kwargs)[source]

Update a field of a Task object.

Parameters:
  • id (str) – the id of the Task

  • input (list) – the input containing field(s) to update

Returns:

Task object

Return type:

dict or None

add_stix_object_or_stix_relationship(**kwargs)[source]

Add a Stix-Entity object to Task object (object_refs).

Parameters:
  • id (str) – the id of the Task

  • stixObjectOrStixRelationshipId (str) – the id of the Stix-Entity

Returns:

True if successful, None if parameters are missing

Return type:

bool or None

remove_stix_object_or_stix_relationship(**kwargs)[source]

Remove a Stix-Entity object from Task object (object_refs).

Parameters:
  • id (str) – the id of the Task

  • stixObjectOrStixRelationshipId (str) – the id of the Stix-Entity

Returns:

True if successful, False otherwise

Return type:

bool

import_from_stix2(**kwargs)[source]

Import a Task object from a STIX2 object.

Parameters:
  • stixObject (dict) – the Stix-Object Task

  • extras (dict) – additional parameters like created_by_id, object_marking_ids

  • update (bool) – whether to update existing object

Returns:

Task object

Return type:

dict or None

delete(**kwargs)[source]

Delete a Task object.

Parameters:

id (str) – the id of the Task to delete

Returns:

None