Reference · Tools

MISP

Interact with the MISP threat intelligence platform to manage events, attributes, organisations, feeds, galaxies, tags, users, and more.

Action Development v1

The MISP node manages the objects that make up a threat intelligence platform — events, attributes, tags, feeds, organisations, users, galaxies, noticelists, objects and warninglists. A typical build is creating a MISP event from an alert and attaching the observed indicators as attributes for sharing.

Node type
Action
Parameters
95
Outputs
Output, Error
Credentials
MISP API

MISP

Manage MISP threat intelligence events, attributes, tags, feeds, and more.

Overview

MISP (Malware Information Sharing Platform) is an open-source threat intelligence platform for sharing, storing, and correlating Indicators of Compromise (IOCs) of targeted attacks, threat intelligence, financial fraud information, vulnerability information, or even counter-terrorism information. This tool provides CRUD operations on MISP resources including events, attributes, organisations, feeds, galaxies, noticelists, objects, tags, users, and warninglists.

Category: Development
Tool Name: misp
Version: 1

Appearance: Icon: lucide-Shield | Color: #003366

Node Type

Action — processes input items and produces output

Input / Output

DirectionPort(s)
InputInput
OutputOutput, Error

Credentials

This tool requires MISP API credentials. See the Credentials Guide for setup instructions.

Resources

ResourceValue
Attributeattribute
Eventevent
Event TageventTag
Feedfeed
Galaxygalaxy
Noticelistnoticelist
Objectobject
Organisationorganisation
Tagtag
Useruser
Warninglistwarninglist

Operations

Each resource has its own Operation list, and most resources reuse the same operation values (create, delete, get, getAll, update). Pick the resource first, then the operation.

ResourceOperationValue
AttributeCreatecreate
AttributeDeletedelete
AttributeGetget
AttributeGet ManygetAll
AttributeSearchsearch
AttributeUpdateupdate
EventCreatecreate
EventDeletedelete
EventGetget
EventGet ManygetAll
EventPublishpublish
EventSearchsearch
EventUnpublishunpublish
EventUpdateupdate
Event TagAddadd
Event TagRemoveremove
FeedCreatecreate
FeedDisabledisable
FeedEnableenable
FeedGetget
FeedGet ManygetAll
FeedUpdateupdate
GalaxyDeletedelete
GalaxyGetget
GalaxyGet ManygetAll
NoticelistGetget
NoticelistGet ManygetAll
ObjectSearchsearch
OrganisationCreatecreate
OrganisationDeletedelete
OrganisationGetget
OrganisationGet ManygetAll
OrganisationUpdateupdate
TagCreatecreate
TagDeletedelete
TagGet ManygetAll
TagUpdateupdate
UserCreatecreate
UserDeletedelete
UserGetget
UserGet ManygetAll
UserUpdateupdate
WarninglistGetget
WarninglistGet ManygetAll

Parameters

Parameter values are sent to MISP exactly as you type them — this node does not evaluate {{ … }} expressions in its fields, so enter literal values. To drive a MISP call from upstream data, build the value in an Edit Fields or Code node first and read it back into a fixed field.

Distribution levels are numeric and mean the same thing everywhere they appear. Choosing 4 (Sharing Group) also requires a Sharing Group ID; leaving it blank fails the item with a clear message. Update operations reject an empty Update Fields collection rather than sending a no-op request.

Attribute: Create

ParameterTypeRequiredDefaultDescription
Event UUID (eventId)stringYesUUID of the event to attach the attribute to.
TypeoptionsYestextThe attribute type.
Options: text, url, comment
ValuestringYesThe attribute value — the indicator itself.
Additional FieldscollectionNo{}Optional attribute properties.
— DistributionoptionsNo0Who will be able to see this event once published.
Options: 0 (your organization only), 1 (this community only), 2 (connected communities), 3 (all communities), 4 (sharing group), 5 (inherit event)
— Sharing Group IDstringNoRequired when Distribution is set to Sharing Group. The numeric ID of the sharing group.

Attribute: Get

ParameterTypeRequiredDefaultDescription
Attribute IDstringYesUUID or numeric ID of the attribute.

Attribute: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)
ParameterTypeRequiredDefaultDescription
Use JSON to Specify FieldsbooleanNofalseWhether to use JSON to specify the fields for the search request.
JSON (jsonOutput)jsonNo{ "value": "search value", "type": "text" }JSON body for the restSearch endpoint. See MISP API docs for available fields. (shown when Use JSON to Specify Fields is true)
ValuestringYesThe value to search for, e.g. an IP address or hash. (shown when Use JSON to Specify Fields is false)
Additional FieldscollectionNo{}Extra search criteria. (shown when Use JSON to Specify Fields is false)
— CategorystringNoRestrict the search to one MISP category, e.g. Internal reference.
— DeletedbooleanNofalseWhether to include deleted attributes.
— TagsstringNoComma-separated list of tags.
— TypestringNoRestrict the search to one attribute type, e.g. text.
— PublishedbooleanNofalseWhether to restrict the search to published data.

Attribute: Update

ParameterTypeRequiredDefaultDescription
Attribute IDstringYesID of the attribute to update.
Update FieldscollectionNo{}Attribute properties to change. Only the fields you add are sent, and at least one is required.
— DistributionoptionsNo0Who will be able to see this event once published.
Options: 0 (your organization only), 1 (this community only), 2 (connected communities), 3 (all communities), 4 (sharing group), 5 (inherit event)
— Sharing Group IDstringNoRequired when Distribution is set to Sharing Group.

Attribute: Delete

ParameterTypeRequiredDefaultDescription
Attribute IDstringYesUUID or numeric ID of the attribute.

Event: Create

ParameterTypeRequiredDefaultDescription
Organization ID (org_id)stringYesThe numeric ID of the organization. Find IDs in the MISP dashboard under /organisations.
InformationstringYesInformation on the event - max 65535 characters.
Additional FieldscollectionNo{}Optional event properties.
— AnalysisoptionsNo0Analysis maturity level of the event.
Options: 0 (initial), 1 (ongoing), 2 (complete)
— DistributionoptionsNo0Who will be able to see this event once published.
Options: 0 (your organization only), 1 (this community only), 2 (connected communities), 3 (all communities), 4 (sharing group), 5 (inherit event)
— Sharing Group IDstringNoRequired when Distribution is set to Sharing Group.
— Threat Level IDoptionsNo1The threat level assigned to the event.
Options: 1 (high), 2 (medium), 3 (low), 4 (undefined)

Event: Get

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.

Event: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)
ParameterTypeRequiredDefaultDescription
Use JSON to Specify FieldsbooleanNofalseWhether to use JSON to specify the fields for the search request.
JSON (jsonOutput)jsonNo{ "value": "search value", "type": "text" }JSON body for the restSearch endpoint. See MISP API docs for available fields. (shown when Use JSON to Specify Fields is true)
ValuestringYesThe value to search for, e.g. an IP address or hash. (shown when Use JSON to Specify Fields is false)
Additional FieldscollectionNo{}Extra search criteria. (shown when Use JSON to Specify Fields is false)
— CategorystringNoRestrict the search to one MISP category, e.g. Internal reference.
— DeletedbooleanNofalseWhether to include deleted data.
— Search AllstringNoSearch by matching any tag names, event descriptions, attribute values or attribute comments.
— TagsstringNoComma-separated list of tags.
— TypestringNoRestrict the search to one attribute type, e.g. text.
— PublishedbooleanNofalseWhether to restrict the search to published data.

Event: Update

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.
Update FieldscollectionNo{}Event properties to change. Only the fields you add are sent, and at least one is required.
— AnalysisoptionsNo0Analysis maturity level of the event.
Options: 0 (initial), 1 (ongoing), 2 (complete)
— DistributionoptionsNo0Who will be able to see this event once published.
Options: 0 (your organization only), 1 (this community only), 2 (connected communities), 3 (all communities), 4 (sharing group), 5 (inherit event)
— InformationstringNoInformation on the event - max 65535 characters.
— Sharing Group IDstringNoRequired when Distribution is set to Sharing Group.
— Threat Level IDoptionsNo1The threat level assigned to the event.
Options: 1 (high), 2 (medium), 3 (low), 4 (undefined)

Event: Publish

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.

Event: Unpublish

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.

Event: Delete

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.

Event Tag: Add

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.
Tag IDstringYesNumeric ID of the tag. Find IDs via Tag > Get Many.

Event Tag: Remove

ParameterTypeRequiredDefaultDescription
Event IDstringYesUUID or numeric ID of the event.
Tag IDstringYesNumeric ID of the tag. Find IDs via Tag > Get Many.

Feed: Create

ParameterTypeRequiredDefaultDescription
NamestringYesA name for the feed.
ProviderstringYesThe organisation or source providing the feed.
URLstringYesThe URL the feed is fetched from.
Additional FieldscollectionNo{}Optional feed properties.
— DistributionoptionsNo0Who will be able to see this event once published.
Options: 0 (your organization only), 1 (this community only), 2 (connected communities), 3 (all communities), 4 (sharing group), 5 (inherit event)
— Rules (json)stringNoFilter rules for the feed.

Feed: Get

ParameterTypeRequiredDefaultDescription
Feed IDstringYesUUID or numeric ID of the feed.

Feed: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Feed: Update

ParameterTypeRequiredDefaultDescription
Feed IDstringYesID of the feed to update.
Update FieldscollectionNo{}Feed properties to change. Only the fields you add are sent, and at least one is required.
— DistributionoptionsNo0Who will be able to see this event once published.
Options: 0 (your organization only), 1 (this community only), 2 (connected communities), 3 (all communities), 4 (sharing group), 5 (inherit event)
— NamestringNoA new name for the feed.
— ProviderstringNoA new provider for the feed.
— Rules (rules)jsonNoFilter rules for the feed.
— URLstringNoA new URL for the feed.

Feed: Enable

ParameterTypeRequiredDefaultDescription
Feed IDstringYesUUID or numeric ID of the feed.

Feed: Disable

ParameterTypeRequiredDefaultDescription
Feed IDstringYesUUID or numeric ID of the feed.

Galaxy: Get

ParameterTypeRequiredDefaultDescription
Galaxy IDstringYesUUID or numeric ID of the galaxy.

Galaxy: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Galaxy: Delete

ParameterTypeRequiredDefaultDescription
Galaxy IDstringYesUUID or numeric ID of the galaxy.

Noticelist: Get

ParameterTypeRequiredDefaultDescription
Noticelist IDstringYesNumeric ID of the noticelist.

Noticelist: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)
ParameterTypeRequiredDefaultDescription
Use JSON to Specify FieldsbooleanNofalseWhether to use JSON to specify the fields for the search request.
JSON (jsonOutput)jsonNo{ "value": "search value", "type": "text" }JSON body for the restSearch endpoint. See MISP API docs for available fields. (shown when Use JSON to Specify Fields is true)
ValuestringYesThe value to search for, e.g. an IP address or hash. (shown when Use JSON to Specify Fields is false)
Additional FieldscollectionNo{}Extra search criteria. (shown when Use JSON to Specify Fields is false)
— CategorystringNoRestrict the search to one MISP category, e.g. Internal reference.
— DeletedbooleanNofalseWhether to include deleted data.
— Search AllstringNoSearch by matching any tag names, event descriptions, attribute values or attribute comments.
— TagsstringNoComma-separated list of tags.
— TypestringNoRestrict the search to one attribute type, e.g. text.
— PublishedbooleanNofalseWhether to restrict the search to published data.

Organisation: Create

ParameterTypeRequiredDefaultDescription
NamestringYesThe organisation’s name.
Additional FieldscollectionNo{}Optional organisation properties.
— Created by EmailstringNoThe email address recorded as the creator.
— DescriptionstringNoA description of the organisation.
— NationalitystringNoThe organisation’s nationality.
— SectorstringNoThe organisation’s sector.
— TypestringNoThe organisation’s type.
— User CountnumberNo0The number of users in the organisation.

Organisation: Get

ParameterTypeRequiredDefaultDescription
Organisation IDstringYesUUID or numeric ID of the organisation.

Organisation: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Organisation: Update

ParameterTypeRequiredDefaultDescription
Organisation IDstringYesID of the organisation to update.
Update FieldscollectionNo{}Organisation properties to change. Only the fields you add are sent, and at least one is required.
— DescriptionstringNoA description of the organisation.
— NamestringNoA new name for the organisation.
— NationalitystringNoThe organisation’s nationality.
— SectorstringNoThe organisation’s sector.
— TypestringNoThe organisation’s type.

Organisation: Delete

ParameterTypeRequiredDefaultDescription
Organisation IDstringYesUUID or numeric ID of the organisation.

Tag: Create

ParameterTypeRequiredDefaultDescription
NamestringYesThe tag name.
Additional FieldscollectionNo{}Optional tag properties.
— Color (colour)stringNoHex color code for the tag (e.g. #ff0000).

Tag: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

Tag: Update

ParameterTypeRequiredDefaultDescription
Tag IDstringYesID of the tag to update.
Update FieldscollectionNo{}Tag properties to change. Only the fields you add are sent, and at least one is required.
— Color (colour)stringNoHex color code for the tag (e.g. #ff0000).
— NamestringNoA new name for the tag.

Tag: Delete

ParameterTypeRequiredDefaultDescription
Tag IDstringYesNumeric ID of the tag.

User: Create

ParameterTypeRequiredDefaultDescription
EmailstringYesThe new user’s email address.
Role IDstringYesRole IDs are available in the MISP dashboard at /roles/index.
Additional FieldscollectionNo{}Optional user properties.
— GPG KeystringNoThe user’s public GPG key.
— Inviter Email or ID (invited_by)stringNoUser ID of the inviter. Find IDs via User > Get Many.
— Organization ID (org_id)stringNoNumeric ID of the organization. Find IDs via Organisation > Get Many.

User: Get

ParameterTypeRequiredDefaultDescription
User IDstringYesNumeric ID of the user.

User: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

User: Update

ParameterTypeRequiredDefaultDescription
User IDstringYesID of the user to update.
Update FieldscollectionNo{}User properties to change. Only the fields you add are sent, and at least one is required.
— EmailstringNoA new email address for the user.
— GPG KeystringNoThe user’s public GPG key.
— Inviter ID (invited_by)stringNoUser ID of the inviter. Find IDs via User > Get Many.
— Organization ID (org_id)stringNoNumeric ID of the organization. Find IDs via Organisation > Get Many.

User: Delete

ParameterTypeRequiredDefaultDescription
User IDstringYesNumeric ID of the user.

Warninglist: Get

ParameterTypeRequiredDefaultDescription
Warninglist IDstringYesNumeric ID of the warninglist.

Warninglist: Get Many

ParameterTypeRequiredDefaultDescription
Return AllbooleanNofalseWhether to return all results or only up to a given limit.
LimitnumberNo50Max number of results to return. (shown when Return All is false)

All Operations

ParameterTypeRequiredDefaultDescription
Max ConcurrencynumberNo10Maximum number of items to process concurrently.

Output Data

The MISP response is merged onto the input item’s JSON at the top level — the returned fields sit alongside the fields the item already carried, so downstream nodes address them directly ({{ $json.uuid }}). A response field with the same name as an existing item field overwrites it. Binary data on the input item is forwarded.

OperationsOutput
Every Get Many, and Attribute / Event / Object SearchOne output item per record — a page of 50 events becomes 50 output items from a single input item. A response with no records produces no output items for that input.
Create, Get and Update on attributes, events, feeds, organisations, tags and usersOne output item carrying the record, already unwrapped from its MISP envelope so its fields sit at the top level rather than under Attribute or Event.
Delete, Publish, Unpublish, Feed Enable and Disable, Event Tag Add and RemoveOne output item carrying MISP’s confirmation message for the call.

An attribute arrives like this:

{
  "id": "12345",
  "event_id": "678",
  "object_id": "0",
  "category": "Other",
  "type": "text",
  "value": "203.0.113.10",
  "to_ids": false,
  "uuid": "5f8a7c1e-1234-4c5d-8e9f-0a1b2c3d4e5f",
  "timestamp": "1768478400",
  "distribution": "0",
  "sharing_group_id": "0",
  "comment": "",
  "deleted": false
}

Event: Get and Event: Update return the event without its attribute list. The Attribute array is removed so a single busy event cannot flood the workflow with a multi-megabyte item. To work with an event’s indicators, follow up with Attribute: Get Many or Attribute: Search.

Search results come back already unwrapped: an attribute search yields the attributes themselves, and event and object searches yield the events and objects. Turning Return All off trims the result list to the Limit.

Usage Examples

  • Get all events from MISP
  • Create a new attribute on a MISP event
  • Search MISP attributes by IOC value
  • Publish a MISP event
  • Add a tag to a MISP event

Example Configuration

Create an event for a new incident:

{
  "type": "misp",
  "parameters": {
    "resource": "event",
    "operation": "create",
    "org_id": "1",
    "information": "Phishing campaign targeting finance team",
    "additionalFields": {
      "analysis": 1,
      "distribution": 1,
      "threat_level_id": 2
    }
  }
}

Attach an indicator to that event:

{
  "type": "misp",
  "parameters": {
    "resource": "attribute",
    "operation": "create",
    "eventId": "5f8a7c1e-1234-4c5d-8e9f-0a1b2c3d4e5f",
    "type": "url",
    "value": "http://malicious.example.com/login",
    "additionalFields": {
      "distribution": 5
    }
  }
}

Search attributes for a specific IOC:

{
  "type": "misp",
  "parameters": {
    "resource": "attribute",
    "operation": "search",
    "useJson": false,
    "value": "203.0.113.10",
    "additionalFields": {
      "type": "text",
      "tags": "tlp:amber,malware",
      "published": true
    }
  }
}

Run the same search with a raw restSearch body when you need fields the form does not expose:

{
  "type": "misp",
  "parameters": {
    "resource": "attribute",
    "operation": "search",
    "useJson": true,
    "jsonOutput": "{\"value\":\"203.0.113.10\",\"type\":\"ip-dst\",\"last\":\"7d\"}"
  }
}

List the most recent events:

{
  "type": "misp",
  "parameters": {
    "resource": "event",
    "operation": "getAll",
    "returnAll": false,
    "limit": 50
  }
}

Publish an event so partner communities can see it:

{
  "type": "misp",
  "parameters": {
    "resource": "event",
    "operation": "publish",
    "eventId": "678"
  }
}

Tag an event:

{
  "type": "misp",
  "parameters": {
    "resource": "eventTag",
    "operation": "add",
    "eventId": "678",
    "tagId": "42"
  }
}

Create a tag with a colour:

{
  "type": "misp",
  "parameters": {
    "resource": "tag",
    "operation": "create",
    "name": "campaign:finance-phish",
    "additionalFields": {
      "colour": "#ff0000"
    }
  }
}

Register a threat feed:

{
  "type": "misp",
  "parameters": {
    "resource": "feed",
    "operation": "create",
    "name": "OSINT URL feed",
    "provider": "Example CERT",
    "url": "https://feeds.example.org/urls.json",
    "additionalFields": {
      "distribution": 3
    }
  }
}

Turn a feed on:

{
  "type": "misp",
  "parameters": {
    "resource": "feed",
    "operation": "enable",
    "feedId": "7"
  }
}

Add an analyst account:

{
  "type": "misp",
  "parameters": {
    "resource": "user",
    "operation": "create",
    "email": "analyst@example.org",
    "role_id": "3",
    "additionalFields": {
      "org_id": "1"
    }
  }
}

Create a partner organisation:

{
  "type": "misp",
  "parameters": {
    "resource": "organisation",
    "operation": "create",
    "name": "Example CERT",
    "additionalFields": {
      "description": "National CERT partner",
      "nationality": "BE",
      "sector": "Government",
      "type": "CERT"
    }
  }
}

Raise an event’s threat level:

{
  "type": "misp",
  "parameters": {
    "resource": "event",
    "operation": "update",
    "eventId": "678",
    "updateFields": {
      "threat_level_id": 1,
      "analysis": 2,
      "information": "Phishing campaign — confirmed compromise"
    }
  }
}

Error Handling

ModeBehavior
stopHalts workflow on first error
continueSkips failed items, passes successful ones through
errorPortRoutes failed items to Error output port

Tips

MISP threat intelligence platform tool for managing events, attributes, tags, feeds, organisations, users, galaxies, noticelists, objects, and warninglists.

Frequently asked questions

What is the relationship between events and attributes?

An event is the container for an incident or report, and attributes are the individual indicators within it. Most workflows create the event first, then add attributes to it.

Can it manage sharing metadata?

Yes — tags, galaxies and organisations are all supported, which is how MISP expresses classification and who may see what.

What are warninglists and noticelists for?

They are MISP's mechanisms for flagging known-benign or noteworthy values. The node can manage both, so tuning false positives can be automated rather than done by hand.

Which credential does it need?

A MISP API credential pointing at your instance with rights for the resources you intend to manage.

Build with the MISP node

Drop it into a workflow, wire it to an agent, or call it on a schedule. You'll need MISP API credentials first.

Open BusyBot

Last updated . Spotted something wrong? Tell us.