Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3,411 changes: 3,086 additions & 325 deletions docs/api-reference/spec/firework-v4-openapi.json

Large diffs are not rendered by default.

8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/assign-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "Assign Policy (Beta)"
openapi: post /firework/v4/matching_policies/{policy_uuid}/assignments
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="Assign Policy" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/create-matching-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "Create Matching Policy (Beta)"
openapi: post /firework/v4/matching_policies
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="Create Matching Policy" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/delete-matching-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "Delete Matching Policy (Beta)"
openapi: delete /firework/v4/matching_policies/{policy_uuid}
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="Delete Matching Policy" />
5 changes: 2 additions & 3 deletions docs/api-reference/v4/endpoints/get-event.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,10 @@ openapi: firework-v4-openapi get /firework/v4/events/
---

import EventResponses from '/snippets/event_model_examples/events_overview.mdx'
import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<Panel>
<EventResponses />
</Panel>

<Note>
The Retrieve Event V2 endpoint is still in beta and is subject to change.
</Note>
<BetaEndpoint name="Retrieve Event V2" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/get-matching-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "Retrieve Matching Policy (Beta)"
openapi: get /firework/v4/matching_policies/{policy_uuid}
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="Retrieve Matching Policy" />
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "List Matching Policies By Identifier Id (Beta)"
openapi: get /firework/v4/matching_policies/by_identifier_id/{identifier_id}
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="List Matching Policies By Identifier Id" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/list-matching-policies.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "List Matching Policies (Beta)"
openapi: get /firework/v4/matching_policies
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="List Matching Policies" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/list-policy-assignments.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "List Policy Assignments (Beta)"
openapi: get /firework/v4/matching_policies/{policy_uuid}/assignments
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="List Policy Assignments" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/unassign-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "Unassign Policy (Beta)"
openapi: delete /firework/v4/matching_policies/{policy_uuid}/assignments
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="Unassign Policy" />
8 changes: 8 additions & 0 deletions docs/api-reference/v4/endpoints/update-matching-policy.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
title: "Update Matching Policy (Beta)"
openapi: put /firework/v4/matching_policies/{policy_uuid}
---

import BetaEndpoint from '/snippets/beta-endpoint.mdx'

<BetaEndpoint name="Update Matching Policy" />
12 changes: 12 additions & 0 deletions docs/changelog/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,18 @@ This page lists changes to Flare's API.
Release notes for the Flare Platform can be found on the [product documentation website](https://docs.flare.io/releases).
</Note>

<Update label="2026-04" description="API - April 2026">
Added new endpoints to manage [Matching Policies <Icon icon="code" size={16} />](/api-reference/v4/endpoints/list-matching-policies).

This is useful for customers who want precise control over which events appear in an Identifier’s feed, either by including or excluding events based on keywords, or by scoping results with a specific search query.

The guide
[Create And Assign Matching Policies to Identifiers <Icon icon="book" size={16} />](/guides/create-identifiers-with-matching-policies)
was added with an example usage.

<Icon icon="warning" size={16} /> This deprecates the use of the 'blacklist' parameter (Ignored Terms) in identifiers. It will continue to work, but could be removed in the future.
</Update>

<Update label="2026-03" description="API - March 2026">
Added new value for the `include` parameter in the [Global Search Credentials Endpoint <Icon icon="code" size={16} />](/api-reference/v4/endpoints/credentials-global-search).

Expand Down
17 changes: 16 additions & 1 deletion docs/docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,8 @@
"guides/cookie-monitoring",
"guides/ioc-feeds",
"guides/threat-flow-report",
"guides/update-identifiers"
"guides/update-identifiers",
"guides/create-identifiers-with-matching-policies"
]
}
]
Expand Down Expand Up @@ -156,6 +157,20 @@
"api-reference/v4/endpoints/create-action-for-identifier-recommendations"
]
},
{
"group": "Matching Policies",
"pages": [
"api-reference/v4/endpoints/list-matching-policies",
"api-reference/v4/endpoints/list-matching-policies-by-identifier-id",
"api-reference/v4/endpoints/create-matching-policy",
"api-reference/v4/endpoints/update-matching-policy",
"api-reference/v4/endpoints/get-matching-policy",
"api-reference/v4/endpoints/delete-matching-policy",
"api-reference/v4/endpoints/list-policy-assignments",
"api-reference/v4/endpoints/assign-policy",
"api-reference/v4/endpoints/unassign-policy"
]
},
{
"group": "Alerts",
"pages": [
Expand Down
95 changes: 95 additions & 0 deletions docs/guides/create-identifiers-with-matching-policies.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
---
title: 'Create And Assign Matching Policies to Identifiers'
---
Identifiers (domains, keywords, identities, and other types) and Matching Policies (excluded_keywords, lucene_query and other types) can be created, updated and listed via the Management API.

Matching Policies are useful for customers who want precise control over which events appear in an Identifier’s feed, either by including or excluding events based on keywords, or by scoping results with a specific search query.

This guide covers how to create an identifier and apply a matching policy to it.

## Steps
<Steps>

<Step title="Create an identifier">
Use the
[Create Identifier <Icon icon="code" size={16} />](/api-reference/v2/endpoints/identifiers/post-fireworkv2assets)
endpoint to create an identifier. Apply filters to narrow down results to specific identifiers you want to match.
</Step>

<Step title="Create a matching policy">
Use the
[Create Matching Policy <Icon icon="code" size={16} />](/api-reference/v4/endpoints/create-matching-policy)
endpoint to create a matching policy to precisely control which events should appear in the identifier's feed.
</Step>

<Step title="Assign the matching policy to the identifier">
Use the
[Assign Policy <Icon icon="code" size={16} />](/api-reference/v4/endpoints/assign-policy)
endpoint to assign the matching policy to the identifier.
</Step>

</Steps>

## End-to-end examples

<AccordionGroup>

<Accordion title="Python SDK Example">
```python
from flareio import FlareApiClient
from flareio.ratelimit import Limiter


api_client = FlareApiClient.from_env()

limiter_default = Limiter.from_seconds(0.25)

# 1. Create an Identifier
identifier_resp = api_client.post(
"/firework/v2/assets/",
json={
"name": "scatterholt.com",
"type": "domain",
"search_types": [
"forum_post",
],
"data": {"type": "domain", "fqdn": "scatterholt.com"},
"risks": [1, 2, 3, 4, 5],
},
)

identifier = identifier_resp.json()["asset"]
identifier_id = identifier["id"]

# Rate limiting (default).
limiter_default.tick()

# 2. Create a Matching Policy
matching_policy_resp = api_client.post(
"/firework/v4/matching_policies",
json={
"name": "Terms to ignore",
"type": "EXCLUDED_KEYWORDS",
"value": {"keywords": ["term1", "term2", "term3"]},
},
)
matching_policy = matching_policy_resp.json()
matching_policy_name = matching_policy["name"]
matching_policy_uuid = matching_policy["uuid"]

# Rate limiting (default).
limiter_default.tick()

# 3. Assign the matching policy to the identifier
api_client.post(
f"/firework/v4/matching_policies/{matching_policy_uuid}/assignments",
json={"identifier_ids": [identifier_id], "clean_past_events": False},
)

print(
f"Created identifier {identifier_id} with matching policy '{matching_policy_name}' assigned to it"
)
```
</Accordion>

</AccordionGroup>
3 changes: 3 additions & 0 deletions docs/snippets/beta-endpoint.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
<Note>
The {name} endpoint is still in beta and is subject to change.
</Note>