Skip to content

Instantly share code, notes, and snippets.

@himynamesdave
Created March 1, 2024 10:01
Show Gist options
  • Save himynamesdave/ef20ca4683b363fb0b6f055af298915a to your computer and use it in GitHub Desktop.
Save himynamesdave/ef20ca4683b363fb0b6f055af298915a to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
{
"openapi": "3.0.3",
"info": {
"title": "ATT&CK Workbench REST API",
"version": "1.0.0"
},
"servers": [{
"url": "{protocol}://{hostname}:{port}/",
"variables": {
"protocol": {
"default": "http"
},
"hostname": {
"default": "localhost"
},
"port": {
"default": "3000"
}
}
}],
"tags": [{
"name": "ATT&CK Objects",
"description": "Operations on all ATT&CK objects"
},
{
"name": "Techniques",
"description": "Operations on techniques"
},
{
"name": "Tactics",
"description": "Operations on tactics"
},
{
"name": "Groups",
"description": "Operations on groups"
},
{
"name": "Software",
"description": "Operations on software (tools and malware)"
},
{
"name": "Mitigations",
"description": "Operations on mitigations"
},
{
"name": "Matrices",
"description": "Operations on matrices"
},
{
"name": "Identities",
"description": "Operations on identities"
},
{
"name": "Marking Definitions",
"description": "Operations on marking definitions"
},
{
"name": "Data Sources",
"description": "Operations on data sources"
},
{
"name": "Data Components",
"description": "Operations on data components"
},
{
"name": "Relationships",
"description": "Operations on relationships"
},
{
"name": "Notes",
"description": "Operations on notes"
},
{
"name": "References",
"description": "Operations on references"
},
{
"name": "Collection Indexes",
"description": "Operations on collection indexes"
},
{
"name": "Collections",
"description": "Operations on collections"
},
{
"name": "Collection Bundles",
"description": "Operations on collection bundles"
},
{
"name": "STIX Bundles",
"description": "Operations on STIX bundles"
},
{
"name": "System Configuration",
"description": "Operations on the system configuration"
}
],
"paths": {
"/api/attack-objects": {
"get": {
"summary": "Get a list of all ATT&CK objects",
"operationId": "attack-object-get-all",
"description": "This endpoint gets a list of all ATT&CK objects from the workspace.\nThe list of objects may include multiple versions of each ATT&CK object.\n",
"tags": [
"ATT&CK Objects"
],
"parameters": [{
"name": "attackId",
"in": "query",
"description": "The ATT&CK ID of the object to retrieve.\nReturns all objects where the last version of the object matches the requested ATT&CK ID.\n",
"schema": {
"type": "string"
},
"example": "T9999"
},
{
"name": "limit",
"in": "query",
"description": "The number of objects to retrieve.\nThe default (0) will retrieve all objects.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of objects to skip.\nThe default (0) will start with the first object.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return ATT&CK objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of ATT&CK Objects.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"anyOf": [{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"imported": {
"type": "string",
"format": "date-time"
},
"import_categories": {
"type": "object",
"properties": {
"additions": {
"type": "array",
"items": {
"type": "string"
}
},
"changes": {
"type": "array",
"items": {
"type": "string"
}
},
"minor_changes": {
"type": "array",
"items": {
"type": "string"
}
},
"revocations": {
"type": "array",
"items": {
"type": "string"
}
},
"deprecations": {
"type": "array",
"items": {
"type": "string"
}
},
"supersedes_user_edits": {
"type": "array",
"items": {
"type": "string"
}
},
"supersedes_collection_changes": {
"type": "array",
"items": {
"type": "string"
}
},
"duplicates": {
"type": "array",
"items": {
"type": "string"
}
},
"out_of_date": {
"type": "array",
"items": {
"type": "string"
}
},
"errors": {
"type": "array",
"items": {
"type": "object",
"properties": {
"object_ref": {
"type": "string"
},
"object_modified": {
"type": "string"
},
"error_type": {
"type": "string"
},
"error_message": {
"type": "string"
}
},
"required": [
"object_ref",
"error_type"
]
}
}
}
},
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
},
"release": {
"type": "boolean"
}
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Enterprise ATT&CK"
},
"description": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contents": {
"type": "array",
"items": {
"type": "object",
"properties": {
"object_ref": {
"type": "string"
},
"object_modified": {
"type": "string"
}
},
"required": [
"object_ref",
"object_modified"
]
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
},
{
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
]
}
}
}
}
}
}
}
},
"/api/techniques": {
"get": {
"summary": "Get a list of techniques",
"operationId": "technique-get-all",
"description": "This endpoint retrieves a list of techniques from the workspace.\nIf there are multiple versions of a technique, only the latest version (based on the `modified` property) will be returned.\nIn addition, the `state`, `includeRevoked`, and `includeDeprecated` filters are only applied to the latest version of a technique.\n",
"tags": [
"Techniques"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of techniques to retrieve.\nThe default (0) will retrieve all techniques.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of techniques to skip.\nThe default (0) will start with the first technique.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of techniques.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a technique",
"operationId": "technique-create",
"description": "This endpoint creates a new technique in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing technique.\nIf the `stix.id` property is not set, it creates a new technique, generating a STIX id for it.\n",
"tags": [
"Techniques"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The technique has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The technique was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The technique was not created."
}
}
}
},
"/api/techniques/{stixId}": {
"get": {
"summary": "Get one or more versions of a technique",
"operationId": "technique-get-one-id",
"description": "This endpoint gets a list of one or more versions of a technique from the workspace, identified by their STIX id.\n",
"tags": [
"Techniques"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the technique to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the technique to retrieve.\n`all` gets all versions of the technique, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of techniques matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A technique with the requested STIX id was not found."
}
}
}
},
"/api/techniques/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a technique matching the STIX id and modified date",
"operationId": "technique-get-by-id-and-modified",
"description": "This endpoint gets a single version of a technique from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Techniques"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the technique to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the technique to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a technique matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A technique with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a technique",
"operationId": "technique-update",
"description": "This endpoint updates a single version of a technique in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Techniques"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the technique to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the technique to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The technique was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "AppInit DLLs"
},
"description": {
"type": "string"
},
"kill_chain_phases": {
"type": "array",
"items": {
"type": "object",
"properties": {
"kill_chain_name": {
"type": "string"
},
"phase_name": {
"type": "string"
}
},
"required": [
"kill_chain_name",
"phase_name"
]
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_data_sources": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_detection": {
"type": "string"
},
"x_mitre_effective_permissions": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_permissions_required": {
"type": "array",
"items": {
"type": "string",
"example": "Administrator"
}
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_impact_type": {
"type": "array",
"items": {
"type": "string",
"example": "Availability"
}
},
"x_mitre_subtechnique": {
"type": "boolean",
"example": false
},
"x_mitre_system_requirements": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The technique was not updated."
},
"404": {
"description": "A technique with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a technique",
"operationId": "technique-delete",
"description": "This endpoint deletes a single version of a technique from the workspace.\nThe technique is identified by its STIX id and modified date.\n",
"tags": [
"Techniques"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the technique to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the technique to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The technique was successfully deleted."
},
"404": {
"description": "A technique with the requested STIX id and modified date was not found."
}
}
}
},
"/api/tactics": {
"get": {
"summary": "Get a list of tactics",
"operationId": "tactic-get-all",
"description": "This endpoint gets a list of tactics from the workspace.\nThe list of tactics may include multiple versions of each tactic.\n",
"tags": [
"Tactics"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of tactics to retrieve.\nThe default (0) will retrieve all tactics.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of tactics to skip.\nThe default (0) will start with the first tactic.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of tactics.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a tactic",
"operationId": "tactic-create",
"description": "This endpoint creates a new tactic in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing tactic.\nIf the `stix.id` property is not set, it creates a new tactic, generating a STIX id for it.\n",
"tags": [
"Tactics"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The tactic has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The tactic was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The tactic was not created."
}
}
}
},
"/api/tactics/{stixId}": {
"get": {
"summary": "Get one or more versions of a tactic",
"operationId": "tactic-get-one-id",
"description": "This endpoint gets a list of one or more versions of a tactic from the workspace, identified by their STIX id.\n",
"tags": [
"Tactics"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the tactic to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the tactic to retrieve.\n`all` gets all versions of the tactic, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of tactics matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A tactic with the requested STIX id was not found."
}
}
}
},
"/api/tactics/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a tactic matching the STIX id and modified date",
"operationId": "tactic-get-by-id-and-modified",
"description": "This endpoint gets a single version of a tactic from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Tactics"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the tactic to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the tactic to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a tactic matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A tactic with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a tactic",
"operationId": "tactic-update",
"description": "This endpoint updates a single version of a tactic in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Tactics"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the tactic to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the tactic to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The tactic was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Collection"
},
"description": {
"type": "string",
"example": "This is a tactic."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The tactic was not updated."
},
"404": {
"description": "A tactic with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a tactic",
"operationId": "tactic-delete",
"description": "This endpoint deletes a single version of a tactic from the workspace.\nThe tactic is identified by its STIX id and modified date.\n",
"tags": [
"Tactics"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the tactic to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the tactic to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The tactic was successfully deleted."
},
"404": {
"description": "A tactic with the requested STIX id and modified date was not found."
}
}
}
},
"/api/groups": {
"get": {
"summary": "Get a list of groups",
"operationId": "group-get-all",
"description": "This endpoint gets a list of groups from the workspace.\nThe list of groups may include multiple versions of each group.\n",
"tags": [
"Groups"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of groups to retrieve.\nThe default (0) will retrieve all groups.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of groups to skip.\nThe default (0) will start with the first group.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of groups.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a group",
"operationId": "group-create",
"description": "This endpoint creates a new group in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing group.\nIf the `stix.id` property is not set, it creates a new group, generating a STIX id for it.\n",
"tags": [
"Groups"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The group has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The group was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The group was not created."
}
}
}
},
"/api/groups/{stixId}": {
"get": {
"summary": "Get one or more versions of a group",
"operationId": "group-get-one-id",
"description": "This endpoint gets a list of one or more versions of a group from the workspace, identified by their STIX id.\n",
"tags": [
"Groups"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the group to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the group to retrieve.\n`all` gets all versions of the group, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of groups matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A group with the requested STIX id was not found."
}
}
}
},
"/api/groups/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a group matching the STIX id and modified date",
"operationId": "group-get-by-id-and-modified",
"description": "This endpoint gets a single version of a group from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Groups"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the group to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the group to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a group matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A group with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a group",
"operationId": "group-update",
"description": "This endpoint updates a single version of a group in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Groups"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the group to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the group to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The group was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "APT29"
},
"description": {
"type": "string",
"example": "This is an intrusion set (group)"
},
"aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The group was not updated."
},
"404": {
"description": "A group with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a group",
"operationId": "group-delete",
"description": "This endpoint deletes a single version of a group from the workspace.\nThe group is identified by its STIX id and modified date.\n",
"tags": [
"Groups"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the group to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the group to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The group was successfully deleted."
},
"404": {
"description": "A group with the requested STIX id and modified date was not found."
}
}
}
},
"/api/matrices": {
"get": {
"summary": "Get a list of matrices",
"operationId": "matrix-get-all",
"description": "This endpoint retrieves a list of matrices from the workspace.\nIf there are multiple versions of a matrix, only the latest version (based on the `modified` property) will be returned.\nIn addition, the `state`, `includeRevoked`, and `includeDeprecated` filters are only applied to the latest version of a matrix.\n",
"tags": [
"Matrices"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of matrices to retrieve.\nThe default (0) will retrieve all matrices.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of matrices to skip.\nThe default (0) will start with the first matrix.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return ATT&CK objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of matrices.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a matrix",
"operationId": "matrix-create",
"description": "This endpoint creates a new matrix in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing matrix.\nIf the `stix.id` property is not set, it creates a new matrix, generating a STIX id for it.\n",
"tags": [
"Matrices"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The matrix has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The matrix was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The matrix was not created."
}
}
}
},
"/api/matrices/{stixId}": {
"get": {
"summary": "Get one or more versions of a matrix",
"operationId": "matrix-get-one-id",
"description": "This endpoint gets a list of one or more versions of a matrix from the workspace, identified by their STIX id.\n",
"tags": [
"Matrices"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the matrix to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the matrix to retrieve.\n`all` gets all versions of the matrix, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of matrices matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A matrix with the requested STIX id was not found."
}
}
}
},
"/api/matrices/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a matrix matching the STIX id and modified date",
"operationId": "matrix-get-by-id-and-modified",
"description": "This endpoint gets a single version of a matrix from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Matrices"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the matrix to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the matrix to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a matrix matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A matrix with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a matrix",
"operationId": "matrix-update",
"description": "This endpoint updates a single version of a matrix in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Matrices"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the matrix to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the matrix to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The matrix was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Mobile ATT&CK"
},
"description": {
"type": "string",
"example": "This is a matrix"
},
"tactic_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The matrix was not updated."
},
"404": {
"description": "A matrix with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a matrix",
"operationId": "matrix-delete",
"description": "This endpoint deletes a single version of a matrix from the workspace.\nThe matrix is identified by its STIX id and modified date.\n",
"tags": [
"Matrices"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the matrix to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the matrix to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The matrix was successfully deleted."
},
"404": {
"description": "A matrix with the requested STIX id and modified date was not found."
}
}
}
},
"/api/identities": {
"get": {
"summary": "Get a list of identities",
"operationId": "identity-get-all",
"description": "This endpoint retrieves a list of identities from the workspace.\nIf there are multiple versions of an identity, only the latest version (based on the `modified` property) will be returned.\nIn addition, the `state`, `includeRevoked`, and `includeDeprecated` filters are only applied to the latest version of an identity.\n",
"tags": [
"Identities"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of identities to retrieve.\nThe default (0) will retrieve all identities.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of identities to skip.\nThe default (0) will start with the first identity.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of identities.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create an identity",
"operationId": "identity-create",
"description": "This endpoint creates a new identity in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing identity.\nIf the `stix.id` property is not set, it creates a new identity, generating a STIX id for it.\n",
"tags": [
"Identities"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The identity has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The identity was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The identity was not created."
}
}
}
},
"/api/identities/{stixId}": {
"get": {
"summary": "Get one or more versions of an identity",
"operationId": "identity-get-one-id",
"description": "This endpoint gets a list of one or more versions of an identity from the workspace, identified by their STIX id.\n",
"tags": [
"Identities"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the identity to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the identity to retrieve.\n`all` gets all versions of the identity, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of identities matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "An identity with the requested STIX id was not found."
}
}
}
},
"/api/identities/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a identity matching the STIX id and modified date",
"operationId": "identity-get-by-id-and-modified",
"description": "This endpoint gets a single version of a identity from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Identities"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the identity to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the identity to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of an identity matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "An identity with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update an identity",
"operationId": "identity-update",
"description": "This endpoint updates a single version of an identity in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Identities"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the identity to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the identity to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The identity was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "The MITRE Corporation"
},
"description": {
"type": "string",
"example": "This is an identity"
},
"roles": {
"type": "array",
"items": {
"type": "string"
}
},
"identity_class": {
"type": "string",
"example": "organization"
},
"sectors": {
"type": "array",
"items": {
"type": "string"
}
},
"contact_information": {
"type": "string"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The identity was not updated."
},
"404": {
"description": "An identity with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a identity",
"operationId": "identity-delete",
"description": "This endpoint deletes a single version of an identity from the workspace.\nThe identity is identified by its STIX id and modified date.\n",
"tags": [
"Identities"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the identity to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the identity to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The identity was successfully deleted."
},
"404": {
"description": "An identity with the requested STIX id and modified date was not found."
}
}
}
},
"/api/marking-definitions": {
"get": {
"summary": "Get a list of marking definitions",
"operationId": "marking-definition-get-all",
"description": "This endpoint retrieves a list of marking definitions from the workspace.\nNote that marking definitions do not have an `modified` property and only one version of a marking definition may exist.\nIn addition, a marking definition does not have a `revoked` property.\n",
"tags": [
"Marking Definitions"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of marking definitions to retrieve.\nThe default (0) will retrieve all marking definitions.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of marking definitions to skip.\nThe default (0) will start with the first marking definition.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of marking definitions.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a marking definition",
"operationId": "marking-definition-create",
"description": "This endpoint creates a new marking definition in the workspace.\nThe `stix.id` property should not be set; this endpoint will create a new marking definition, generating a STIX id for it.\n",
"tags": [
"Marking Definitions"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The marking definition has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The marking definition was not created."
}
}
}
},
"/api/marking-definitions/{stixId}": {
"get": {
"summary": "Get a marking definition",
"operationId": "marking-definition-get-one-id",
"description": "This endpoint gets a list containing one marking definition from the workspace, identified by STIX id.\n(This endpoint returns a list to maintain a similar structure with other endpoints.)\n",
"tags": [
"Marking Definitions"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the marking definition to retrieve",
"required": true,
"schema": {
"type": "string"
}
}],
"responses": {
"200": {
"description": "A list containing one marking definition matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A marking definition with the requested STIX id was not found."
}
}
},
"put": {
"summary": "Update a marking definition",
"operationId": "marking-definition-update",
"description": "This endpoint updates a marking definition in the workspace, identified by its STIX id.\n",
"tags": [
"Marking Definitions"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the marking definition to update",
"required": true,
"schema": {
"type": "string"
}
}],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The marking definition was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created"
],
"properties": {
"type": {
"type": "string",
"pattern": "marking-definition"
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "marking-definition--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"definition_type": {
"type": "string",
"example": "statement"
},
"definition": {
"type": "object",
"properties": {
"statement": {
"type": "string"
}
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The marking definition was not updated."
},
"404": {
"description": "A marking definition with the requested STIX id was not found."
}
}
},
"delete": {
"summary": "Delete a marking definition",
"operationId": "marking-definition-delete",
"description": "This endpoint deletes a marking definition from the workspace.\nThe marking definition is identified by its STIX id.\n",
"tags": [
"Marking Definitions"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the marking definition to delete",
"required": true,
"schema": {
"type": "string"
}
}],
"responses": {
"204": {
"description": "The marking definition was successfully deleted."
},
"404": {
"description": "A marking definition with the requested STIX id was not found."
}
}
}
},
"/api/software": {
"get": {
"summary": "Get a list of software objects",
"operationId": "software-get-all",
"description": "This endpoint gets a list of software objects from the workspace.\nThe list of software objects may include multiple versions of each object.\n",
"tags": [
"Software"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of software objects to retrieve.\nThe default (0) will retrieve all software objects.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of software objects to skip.\nThe default (0) will start with the first software object.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of software objects.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a software object",
"operationId": "software-create",
"description": "This endpoint creates a new software object in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing software object.\nIf the `stix.id` property is not set, it creates a new software object, generating a STIX id for it.\n",
"tags": [
"Software"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The software object has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The software object was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The software object was not created."
}
}
}
},
"/api/software/{stixId}": {
"get": {
"summary": "Get one or more versions of a software object",
"operationId": "software-get-one-id",
"description": "This endpoint gets a list of one or more versions of a software object from the workspace, identified by their STIX id.\n",
"tags": [
"Software"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the software object to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the software object to retrieve.\n`all` gets all versions of the software, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of software objects matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A software object with the requested STIX id was not found."
}
}
}
},
"/api/software/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a software object matching the STIX id and modified date",
"operationId": "software-get-by-id-and-modified",
"description": "This endpoint gets a single version of a software object from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Software"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the software object to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the software object to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a software object matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A software object with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a software object",
"operationId": "software-update",
"description": "This endpoint updates a single version of a software object in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Software"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the software object to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the software object to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The software object was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Net"
},
"description": {
"type": "string",
"example": "This is a software"
},
"is_family": {
"type": "boolean"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_aliases": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The software object was not updated."
},
"404": {
"description": "A software object with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a software object",
"operationId": "software-delete",
"description": "This endpoint deletes a single version of a software object from the workspace.\nThe software object is identified by its STIX id and modified date.\n",
"tags": [
"Software"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the software object to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the software object to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The software object was successfully deleted."
},
"404": {
"description": "A software object with the requested STIX id and modified date was not found."
}
}
}
},
"/api/mitigations": {
"get": {
"summary": "Get a list of mitigations",
"operationId": "mitigation-get-all",
"description": "This endpoint gets a list of mitigations from the workspace.\nThe list of mitigations may include multiple versions of each mitigation.\n",
"tags": [
"Mitigations"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of mitigations to retrieve.\nThe default (0) will retrieve all mitigations.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of mitigations to skip.\nThe default (0) will start with the first mitigation.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of mitigations.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a mitigation",
"operationId": "mitigation-create",
"description": "This endpoint creates a new mitigation in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing mitigation.\nIf the `stix.id` property is not set, it creates a new mitigation, generating a STIX id for it.\n",
"tags": [
"Mitigations"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The mitigation has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The mitigation was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The mitigation was not created."
}
}
}
},
"/api/mitigations/{stixId}": {
"get": {
"summary": "Get one or more versions of a mitigation",
"operationId": "mitigation-get-one-id",
"description": "This endpoint gets a list of one or more versions of a mitigation from the workspace, identified by their STIX id.\n",
"tags": [
"Mitigations"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the mitigation to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the mitigation to retrieve.\n`all` gets all versions of the mitigation, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of mitigations matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A mitigation with the requested STIX id was not found."
}
}
}
},
"/api/mitigations/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a mitigation matching the STIX id and modified date",
"operationId": "mitigation-get-by-id-and-modified",
"description": "This endpoint gets a single version of a mitigation from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Mitigations"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the mitigation to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the mitigation to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a mitigation matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A mitigation with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a mitigation",
"operationId": "mitigation-update",
"description": "This endpoint updates a single version of a mitigation in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Mitigations"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the mitigation to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the mitigation to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The mitigation was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Compiled HTML File Mitigation"
},
"description": {
"type": "string",
"example": "This is a course of action (mitigation)."
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The mitigation was not updated."
},
"404": {
"description": "A mitigation with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a mitigation",
"operationId": "mitigation-delete",
"description": "This endpoint deletes a single version of a mitigation from the workspace.\nThe mitigation is identified by its STIX id and modified date.\n",
"tags": [
"Mitigations"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the mitigation to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the mitigation to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The mitigation was successfully deleted."
},
"404": {
"description": "A mitigation with the requested STIX id and modified date was not found."
}
}
}
},
"/api/data-sources": {
"get": {
"summary": "Get a list of data sources",
"operationId": "data-source-get-all",
"description": "This endpoint gets a list of data sources from the workspace.\nThe list of data sources may include multiple versions of each data source.\n",
"tags": [
"Data Sources"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of data sources to retrieve.\nThe default (0) will retrieve all data sources.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of data sources to skip.\nThe default (0) will start with the first data source.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of data sources.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a data source",
"operationId": "data-source-create",
"description": "This endpoint creates a new data source in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing data source.\nIf the `stix.id` property is not set, it creates a new data source, generating a STIX id for it.\n",
"tags": [
"Data Sources"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The data source has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The data source was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The data source was not created."
}
}
}
},
"/api/data-sources/{stixId}": {
"get": {
"summary": "Get one or more versions of a data source",
"operationId": "data-source-get-one-id",
"description": "This endpoint gets a list of one or more versions of a data source from the workspace, identified by their STIX id.\n",
"tags": [
"Data Sources"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data source to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the data source to retrieve.\n`all` gets all versions of the data source, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
},
{
"name": "retrieveDataComponents",
"in": "query",
"description": "Retrieve the data components that reference the data source.\nNote that this option always retrieves the latest version of a data component.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of data sources matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A data source with the requested STIX id was not found."
}
}
}
},
"/api/data-sources/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a data source matching the STIX id and modified date",
"operationId": "data-source-get-by-id-and-modified",
"description": "This endpoint gets a single version of a data source from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Data Sources"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data source to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the data source to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "retrieveDataComponents",
"in": "query",
"description": "Retrieve the data components that reference the data source.\nNote that this option always retrieves the latest version of a data component.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "The version of a data source matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A data source with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a data source",
"operationId": "data-source-update",
"description": "This endpoint updates a single version of a data source in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Data Sources"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data source to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the data source to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The data source was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Source Name"
},
"description": {
"type": "string",
"example": "This is a data source"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_platforms": {
"type": "array",
"items": {
"type": "string",
"example": "Windows"
}
},
"x_mitre_contributors": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
},
"x_mitre_collection_layers": {
"type": "array",
"items": {
"type": "string",
"example": "host"
}
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The data source was not updated."
},
"404": {
"description": "A data source with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a data source",
"operationId": "data-source-delete",
"description": "This endpoint deletes a single version of a data source from the workspace.\nThe data source is identified by its STIX id and modified date.\n",
"tags": [
"Data Sources"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data source to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the data source to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The data source was successfully deleted."
},
"404": {
"description": "A data source with the requested STIX id and modified date was not found."
}
}
}
},
"/api/data-components": {
"get": {
"summary": "Get a list of data components",
"operationId": "data-component-get-all",
"description": "This endpoint gets a list of data components from the workspace.\nThe list of data components may include multiple versions of each data component.\n",
"tags": [
"Data Components"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of data components to retrieve.\nThe default (0) will retrieve all data components.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of data components to skip.\nThe default (0) will start with the first data component.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of data components.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a data component",
"operationId": "data-component-create",
"description": "This endpoint creates a new data component in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing data component.\nIf the `stix.id` property is not set, it creates a new data component, generating a STIX id for it.\n",
"tags": [
"Data Components"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The data component has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The data component was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The data component was not created."
}
}
}
},
"/api/data-components/{stixId}": {
"get": {
"summary": "Get one or more versions of a data component",
"operationId": "data-component-get-one-id",
"description": "This endpoint gets a list of one or more versions of a data component from the workspace, identified by their STIX id.\n",
"tags": [
"Data Components"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data component to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the data component to retrieve.\n`all` gets all versions of the data component, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of data components matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A data component with the requested STIX id was not found."
}
}
}
},
"/api/data-components/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a data component matching the STIX id and modified date",
"operationId": "data-component-get-by-id-and-modified",
"description": "This endpoint gets a single version of a data component from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Data Components"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data component to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the data component to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a data component matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A data component with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a data component",
"operationId": "data-component-update",
"description": "This endpoint updates a single version of a data component in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Data Components"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data component to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the data component to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The data component was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"example": "Data Component Name"
},
"description": {
"type": "string",
"example": "This is a data component"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_data_source_ref": {
"type": "string",
"example": "x-mitre-data-source--6da9ab38-437f-4e2f-b24c-f0da3a8ce441"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The data component was not updated."
},
"404": {
"description": "A data component with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a data component",
"operationId": "data-component-delete",
"description": "This endpoint deletes a single version of a data component from the workspace.\nThe data component is identified by its STIX id and modified date.\n",
"tags": [
"Data Components"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the data component to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the data component to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The data component was successfully deleted."
},
"404": {
"description": "A data component with the requested STIX id and modified date was not found."
}
}
}
},
"/api/relationships": {
"get": {
"summary": "Get a list of relationships",
"operationId": "relationship-get-all",
"description": "This endpoint retrieves a list of relationships from the workspace.\nIf there are multiple versions of a relationship, only the latest version (based on the `modified` property) will be returned.\nIn addition, the `state`, `includeRevoked`, and `includeDeprecated` filters are only applied to the latest version of a relationship.\n",
"tags": [
"Relationships"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of relationships to retrieve.\nThe default (0) will retrieve all relationships.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of relationships to skip.\nThe default (0) will start with the first relationship.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "sourceRef",
"in": "query",
"description": "STIX id of referenced object. Only retrieve relationships that reference this object in the `source_ref` property.\n",
"schema": {
"type": "string"
}
},
{
"name": "targetRef",
"in": "query",
"description": "STIX id of referenced object. Only retrieve relationships that reference this object in the `target_ref` property.\n",
"schema": {
"type": "string"
}
},
{
"name": "sourceOrTargetRef",
"in": "query",
"description": "STIX id of referenced object.\nOnly retrieve relationships that reference this object in either the `source_ref` or `target_ref` properties.\n",
"schema": {
"type": "string"
}
},
{
"name": "relationshipType",
"in": "query",
"description": "Only retrieve relationships that have a matching `relationship_type`.\n",
"schema": {
"type": "string"
}
},
{
"name": "sourceType",
"in": "query",
"description": "Only retrieve relationships that have a `source_ref` to an object of the selected type.\n",
"schema": {
"type": "string",
"enum": [
"technique",
"group",
"mitigation",
"software",
"data-component"
]
}
},
{
"name": "targetType",
"in": "query",
"description": "Only retrieve relationships that have a `target_ref` to an object of the selected type.\n",
"schema": {
"type": "string",
"enum": [
"technique",
"group",
"mitigation",
"software"
]
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the relationship to retrieve.\n`all` gets all versions of the relationship, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of relationships.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a relationship",
"operationId": "relationship-create",
"description": "This endpoint creates a new relationship in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing relationship.\nIf the `stix.id` property is not set, it creates a new relationship, generating a STIX id for it.\n",
"tags": [
"Relationships"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The relationship has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The relationship was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The relationship was not created."
}
}
}
},
"/api/relationships/{stixId}": {
"get": {
"summary": "Get one or more versions of a relationship",
"operationId": "relationship-get-one-id",
"description": "This endpoint gets a list of one or more versions of a relationship from the workspace, identified by their STIX id.\n",
"tags": [
"Relationships"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the relationship to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the relationship to retrieve.\n`all` gets all versions of the relationship, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of relationships matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A relationship with the requested STIX id was not found."
}
}
}
},
"/api/relationships/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a relationship matching the STIX id and modified date",
"operationId": "relationship-get-by-id-and-modified",
"description": "This endpoint gets a single version of a relationship from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Relationships"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the relationship to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the relationship to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a relationship matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A relationship with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a relationship",
"operationId": "relationship-update",
"description": "This endpoint updates a single version of a relationship in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Relationships"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the relationship to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the relationship to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The relationship was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"relationship_type",
"source_ref",
"target_ref"
],
"properties": {
"description": {
"type": "string",
"example": "This is a relationship"
},
"relationship_type": {
"type": "string",
"example": "uses"
},
"source_ref": {
"type": "string"
},
"target_ref": {
"type": "string"
},
"start_time": {
"type": "string",
"format": "date-time"
},
"stop_time": {
"type": "string",
"format": "date-time"
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_domains": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_version": {
"type": "string",
"example": "1.0"
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The relationship was not updated."
},
"404": {
"description": "A relationship with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a relationship",
"operationId": "relationship-delete",
"description": "This endpoint deletes a single version of a relationship from the workspace.\nThe relationship is identified by its STIX id and modified date.\n",
"tags": [
"Relationships"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the relationship to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the relationship to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The relationship was successfully deleted."
},
"404": {
"description": "A relationship with the requested STIX id and modified date was not found."
}
}
}
},
"/api/notes": {
"get": {
"summary": "Get a list of notes",
"operationId": "note-get-all",
"description": "This endpoint gets a list of notes from the workspace.\n",
"tags": [
"Notes"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of notes to retrieve.\nThe default (0) will retrieve all notes.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of notes to skip.\nThe default (0) will start with the first note.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "state",
"in": "query",
"description": "State of the object in the editing workflow.\nIf this parameter is not set, objects will be retrieved regardless of state.\nThis parameter may be set multiple times to retrieve objects with any of the provided states.\n",
"schema": {
"oneOf": [{
"type": "string"
},
{
"type": "array",
"items": {
"type": "string"
}
}
]
},
"example": "work-in-progress"
},
{
"name": "includeRevoked",
"in": "query",
"description": "Whether to include objects that have the `revoked` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "includeDeprecated",
"in": "query",
"description": "Whether to include objects that have the `x_mitre_deprecated` property set to true.\n",
"schema": {
"type": "boolean",
"default": false
}
},
{
"name": "search",
"in": "query",
"description": "Only return ATT&CK objects where the provided search text occurs in the `name` or `description`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of notes.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a note",
"operationId": "note-create",
"description": "This endpoint creates a new note in the workspace.\nIf the `stix.id` property is set, it creates a new version of an existing note.\nIf the `stix.id` property is not set, it creates a new note, generating a STIX id for it.\n",
"tags": [
"Notes"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"201": {
"description": "The note has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The note was not created."
},
"409": {
"description": "Duplicate `stix.id` and `stix.modified` properties. The note was not created."
}
}
}
},
"/api/notes/{stixId}": {
"get": {
"summary": "Get one or more versions of a note",
"operationId": "note-get-one-id",
"description": "This endpoint gets a list of one or more versions of a note from the workspace, identified by their STIX id.\n",
"tags": [
"Notes"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the note to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "versions",
"in": "query",
"description": "The versions of the note to retrieve.\n`all` gets all versions of the note, `latest` gets only the latest version.\n",
"schema": {
"type": "string",
"enum": [
"all",
"latest"
],
"default": "latest"
}
}
],
"responses": {
"200": {
"description": "A list of notes matching the requested STIX id.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
}
},
"404": {
"description": "A note with the requested STIX id was not found."
}
}
},
"delete": {
"summary": "Delete a note",
"operationId": "note-delete",
"description": "This endpoint deletes all versions of a note from the workspace.\nThe note is identified by its STIX id.\n",
"tags": [
"Notes"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the note to delete",
"required": true,
"schema": {
"type": "string"
}
}],
"responses": {
"204": {
"description": "The note was successfully deleted."
},
"404": {
"description": "A note with the requested STIX id was not found."
}
}
}
},
"/api/notes/{stixId}/modified/{modified}": {
"get": {
"summary": "Gets the version of a note matching the STIX id and modified date",
"operationId": "note-get-by-id-and-modified",
"description": "This endpoint gets a single version of a note from the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Notes"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the note to retrieve",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the note to retrieve",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "The version of a note matching the STIX id and modified date.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"404": {
"description": "A note with the requested STIX id and modified date was not found."
}
}
},
"put": {
"summary": "Update a note",
"operationId": "note-update-version",
"description": "This endpoint updates a single version of a note in the workspace, identified by its STIX id and modified date.\n",
"tags": [
"Notes"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the note to update",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the note to update",
"required": true,
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"responses": {
"200": {
"description": "The note was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"workspace",
"stix"
],
"properties": {
"workspace": {
"type": "object",
"properties": {
"workflow": {
"type": "object",
"properties": {
"state": {
"type": "string"
}
}
},
"attackId": {
"type": "string",
"example": "T9999"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"properties": {
"collection_ref": {
"type": "string"
},
"collection_modified": {
"type": "string",
"format": "date-time"
}
},
"required": [
"collection_ref",
"collection_modified"
]
}
}
}
},
"stix": {
"allOf": [{
"type": "object",
"required": [
"type",
"spec_version",
"created",
"modified"
],
"properties": {
"type": {
"type": "string",
"enum": [
"attack-pattern",
"x-mitre-tactic",
"intrusion-set",
"tool",
"malware",
"course-of-action",
"x-mitre-matrix",
"identity",
"x-mitre-data-source",
"x-mitre-data-component",
"relationship",
"note",
"x-mitre-collection"
]
},
"spec_version": {
"type": "string",
"pattern": "^2.1$",
"example": "2.1"
},
"id": {
"type": "string",
"example": "attack-pattern--76abfbed-a92f-4e2a-953e-dc83f90ecddc"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"created_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"revoked": {
"type": "boolean",
"example": false
},
"external_references": {
"type": "array",
"items": {
"type": "object",
"properties": {
"source_name": {
"type": "string",
"example": "mitre-attack"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"external_id": {
"type": "string"
}
},
"required": [
"source_name"
]
}
},
"object_marking_refs": {
"type": "array",
"items": {
"type": "string",
"example": "marking-definition--fa42a846-8d90-4e51-bc29-71d5b4802168"
}
}
}
},
{
"type": "object",
"required": [
"content",
"object_refs"
],
"properties": {
"abstract": {
"type": "string"
},
"content": {
"type": "string"
},
"authors": {
"type": "array",
"items": {
"type": "string"
}
},
"object_refs": {
"type": "array",
"items": {
"type": "string"
}
},
"x_mitre_modified_by_ref": {
"type": "string",
"example": "identity--6444f546-6900-4456-b3b1-015c88d70dab"
},
"x_mitre_deprecated": {
"type": "boolean",
"example": false
},
"x_mitre_attack_spec_version": {
"type": "string",
"example": "2.1.0"
}
}
}
]
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The note was not updated."
},
"404": {
"description": "A note with the requested STIX id and modified date was not found."
}
}
},
"delete": {
"summary": "Delete a note",
"operationId": "note-delete-version",
"description": "This endpoint deletes a single version of a note from the workspace.\nThe note is identified by its STIX id and modified date.\n",
"tags": [
"Notes"
],
"parameters": [{
"name": "stixId",
"in": "path",
"description": "STIX id of the note to delete",
"required": true,
"schema": {
"type": "string"
}
},
{
"name": "modified",
"in": "path",
"description": "modified date of the note to delete",
"required": true,
"schema": {
"type": "string"
}
}
],
"responses": {
"204": {
"description": "The note was successfully deleted."
},
"404": {
"description": "A note with the requested STIX id and modified date was not found."
}
}
}
},
"/api/references": {
"get": {
"summary": "Get a list of references",
"operationId": "reference-get-all",
"description": "This endpoint gets a list of references from the workspace.\n",
"tags": [
"References"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of references to retrieve.\nThe default (0) will retrieve all references.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of references to skip.\nThe default (0) will start with the first reference.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "sourceName",
"in": "query",
"description": "source_name of the object to retrieve.\n",
"schema": {
"type": "string"
},
"example": "AddMonitor"
},
{
"name": "search",
"in": "query",
"description": "Only return references where the provided search text occurs in the `description` or `url`.\nThe search is case-insensitive.\n",
"schema": {
"type": "string"
},
"example": "windows"
},
{
"name": "includePagination",
"in": "query",
"description": "Whether to include pagination data in the returned value.\nWraps returned objects in a larger object.\n",
"schema": {
"type": "boolean",
"default": false
}
}
],
"responses": {
"200": {
"description": "A list of references.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"source_name",
"description"
],
"properties": {
"source_name": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a reference",
"operationId": "reference-create",
"description": "This endpoint creates a new reference in the workspace.\n",
"tags": [
"References"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"source_name",
"description"
],
"properties": {
"source_name": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
}
}
}
}
}
},
"responses": {
"201": {
"description": "The reference has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"source_name",
"description"
],
"properties": {
"source_name": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The reference was not created."
},
"409": {
"description": "Duplicate `source_name`. The reference was not created."
}
}
},
"put": {
"summary": "Update a reference",
"operationId": "reference-update",
"description": "This endpoint updates a single version of a reference in the workspace, identified by its `source_name`.\nNote that the `source_name` is used a a key and cannot be changed.\n",
"tags": [
"References"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"source_name",
"description"
],
"properties": {
"source_name": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
}
}
}
}
}
},
"responses": {
"200": {
"description": "The reference was updated.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"source_name",
"description"
],
"properties": {
"source_name": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The reference was not updated."
},
"404": {
"description": "A reference with the requested source_name was not found."
}
}
}
},
"/api/collection-indexes": {
"get": {
"summary": "Get a list of collection indexes",
"operationId": "collection-indexes-get-all",
"description": "This endpoint gets a list of collection indexes from the workspace.\nOnly the latest version of a collection index is stored.\n",
"tags": [
"Collection Indexes"
],
"parameters": [{
"name": "limit",
"in": "query",
"description": "The number of collection indexes to retrieve.\nThe default (0) will retrieve all collection indexes.\n",
"schema": {
"type": "number",
"default": 0
}
},
{
"name": "offset",
"in": "query",
"description": "The number of collection indexes to skip.\n",
"schema": {
"type": "number",
"default": 0
}
}
],
"responses": {
"200": {
"description": "A list of collection indexes.",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"type": "object",
"required": [
"collection_index"
],
"properties": {
"collection_index": {
"type": "object",
"required": [
"id",
"name",
"created",
"modified",
"collections"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"created",
"versions"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"created": {
"type": "string",
"format": "date-time"
},
"versions": {
"type": "array",
"items": {
"type": "object",
"required": [
"version",
"modified"
],
"properties": {
"version": {
"type": "string"
},
"modified": {
"type": "string",
"format": "date-time"
},
"url": {
"type": "string"
},
"taxii_url": {
"type": "string"
},
"release_notes": {
"type": "string"
}
}
}
}
}
}
}
}
},
"workspace": {
"type": "object",
"properties": {
"remote_url": {
"type": "string"
},
"update_policy": {
"type": "object",
"properties": {
"automatic": {
"type": "boolean"
},
"interval": {
"type": "number"
},
"last_retrieval": {
"type": "string",
"format": "date-time"
},
"subscriptions": {
"type": "array",
"items": {
"type": "string",
"example": "x-mitre-collection--915b6504-bde8-40b5-bfda-0c3ecb46a9b9"
}
}
}
}
}
}
}
}
}
}
}
}
}
},
"post": {
"summary": "Create a collection index",
"operationId": "collection-index-create",
"description": "This endpoint creates a new collection index in the workspace.\n",
"tags": [
"Collection Indexes"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"collection_index"
],
"properties": {
"collection_index": {
"type": "object",
"required": [
"id",
"name",
"created",
"modified",
"collections"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"created",
"versions"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"created": {
"type": "string",
"format": "date-time"
},
"versions": {
"type": "array",
"items": {
"type": "object",
"required": [
"version",
"modified"
],
"properties": {
"version": {
"type": "string"
},
"modified": {
"type": "string",
"format": "date-time"
},
"url": {
"type": "string"
},
"taxii_url": {
"type": "string"
},
"release_notes": {
"type": "string"
}
}
}
}
}
}
}
}
},
"workspace": {
"type": "object",
"properties": {
"remote_url": {
"type": "string"
},
"update_policy": {
"type": "object",
"properties": {
"automatic": {
"type": "boolean"
},
"interval": {
"type": "number"
},
"last_retrieval": {
"type": "string",
"format": "date-time"
},
"subscriptions": {
"type": "array",
"items": {
"type": "string",
"example": "x-mitre-collection--915b6504-bde8-40b5-bfda-0c3ecb46a9b9"
}
}
}
}
}
}
}
}
}
}
},
"responses": {
"201": {
"description": "The collection index has been successfully created.",
"content": {
"application/json": {
"schema": {
"type": "object",
"required": [
"collection_index"
],
"properties": {
"collection_index": {
"type": "object",
"required": [
"id",
"name",
"created",
"modified",
"collections"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"created": {
"type": "string",
"format": "date-time"
},
"modified": {
"type": "string",
"format": "date-time"
},
"collections": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"created",
"versions"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"description": {
"type": "string"
},
"created": {
"type": "string",
"format": "date-time"
},
"versions": {
"type": "array",
"items": {
"type": "object",
"required": [
"version",
"modified"
],
"properties": {
"version": {
"type": "string"
},
"modified": {
"type": "string",
"format": "date-time"
},
"url": {
"type": "string"
},
"taxii_url": {
"type": "string"
},
"release_notes": {
"type": "string"
}
}
}
}
}
}
}
}
},
"workspace": {
"type": "object",
"properties": {
"remote_url": {
"type": "string"
},
"update_policy": {
"type": "object",
"properties": {
"automatic": {
"type": "boolean"
},
"interval": {
"type": "number"
},
"last_retrieval": {
"type": "string",
"format": "date-time"
},
"subscriptions": {
"type": "array",
"items": {
"type": "string",
"example": "x-mitre-collection--915b6504-bde8-40b5-bfda-0c3ecb46a9b9"
}
}
}
}
}
}
}
}
}
}
},
"400": {
"description": "Missing or invalid parameters were provided. The collection index was not created."
}
}
}
},
"/api/collection-indexes/{id}": {
"get": {
"summary": "Get collection index",
"operationId": "collection-index-get-by-id",
"description": "This endpoint gets collection index from the workspace, identified by its id.\n",
"tags": [
"Collection Indexes"
],
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment