All notable changes to this project will be documented in this file. Also see MIGRATIONS.md when upgrading grafeo to a newer version.
The format is inspired by Keep a Changelog.
- REST endpoint for traversing from a specific object,
POST /v1/traverse/object/{id} - REST endpoint for traversing from a specific object,
POST /v1/traverse/object/{type}/{value} - REST endpoint for traversing from set of objects,
POST /v1/traverse/objects - REST endpoint for traversing from object search,
POST /v1/traverse/objects/search - Traversal now supports filtering by time, retraction and limit
- Traversal now exposes one-legged facts as object properties
- Traversal now exposes meta-facts and retraction status as fact properties
- REST endpoint
POST /v1/object/uuid/{id}/traverse, usePOST /v1/traverse/object/{id} - REST endpoint
POST /v1/object/{type}/{value}/traverse, usePOST /v1/traverse/object/{type}/{value} - REST endpoint
POST /v1/object/traverse, usePOST /v1/traverse/objects/search
- REST endpoint for retrieval of an Origin by ID,
GET /v1/origin/uuid/{id}. - REST endpoint for listing Origins,
GET /v1/origin. - REST endpoint for creating Origins,
POST /v1/origin. - REST endpoint for updating Origins,
PUT /v1/origin/uuid/{id}. - REST endpoint for deleting Origins,
DELETE /v1/origin/uuid/{id}.
- Extend FactType API to include
defaultConfidencefield. - Extend Fact API to include
trust,confidence,certaintyandaddedByfields. - Extend Search APIs to filter on
trust,confidenceandcertainty. - Rename field
sourcetooriginin Fact and Search APIs (breaking).
- (2023-03-23) Added support for
Grafeo-User-IDHTTP header as a replacement for theACT-User-IDHTTP header. Clients need to replaceACT-User-IDwithGrafeo-User-ID. - (2023-02-28) Added parameters
minimumFactsCountandmaximumFactsCounttoPOST /v1/object/searchandPOST /v1/traverse/objects/searchto be able to filter Objects based on the amount of Facts bound to them. - (2022-11-18) Added parameters
startTimestamp,endTimestamp,timeFieldStrategyandtimeMatchStrategyto all search and traverse endpoints which accept a request body. Clients can use these parameters to control precisely how time search will be executed. Deprecatedbeforeandafterparameters in those endpoints. - (2022-03-08) Added
lastSeenByfield to Fact responses. This field denotes the user who saw the Fact last. - (2021-10-18) Added
typequery parameter toGET /v1/originendpoint to filter Origins by their type. - (2021-10-15) Added a
NullValidatorwhich enforces that a value is unset (null). This validator can only be used with FactTypes. - (2021-09-28) A new mechanism to check for already existing Facts has been implemented. To activate the new mechanism
add
act.fact.existence.check.use.cassandra=trueto theapplication.propertiesconfiguration file. The new mechanism is recommended for new installations. For existing installations the configuration should be set tofalseto avoid the creation of duplicated Facts. The old mechanism is deprecated and wil be removed in the future. - (2021-06-03) Added optional
beforeandafterquery parameters to endpoints fetching Objects by ID or type/value. Facts with theirlastSeenTimestampoutside the given time frame are omitted from statistics calculation. - (2020-08-14) Added
includeStatisticsparameter toPOST /v1/object/searchendpoint to specify whether Object statistics should be included in the response. The endpoint omits statistics by default now (breaking). - (2020-06-26) Added configuration option
act.action.triggers.enabledto enable/disable the action triggers framework.
- (2025-02-07) The application produces an OpenAPI 3.1 specification instead of a Swagger specification now (served as
/openapi.json). - (2023-01-06) When searching for Facts by time
timeFieldStrategyandtimeMatchStrategywill only be applied to daily indices. When searching against the time global index onlyendTimestampwill be used (startTimestampwill be ignored) and the search will always filter ontimestamp. - (2021-06-03) When searching for Objects the
beforeandafterparameters are now used to omit Facts with theirlastSeenTimestampoutside the given time frame from statistics calculation (similar to the search itself). - (2021-02-19) All search and traverse endpoints with
beforeandafterparameters now filter Facts on theirlastSeenTimestampinstead oftimestampfields. - (2020-08-14) The
POST /v1/object/searchandPOST /v1/fact/searchendpoints now return with a 403 if the search request does not specify any search parameters. Users must provide at least one parameter (in addition tolimit). - (2020-04-17) In Create APIs (create Fact, create meta Fact, retract Fact) related entities (
organization,origin,acl) can be specified by either UUID or name. If an entity cannot be resolved a 412 response will be returned. - (2020-04-17) When granting a Subject access to an existing Fact the Subject can be specified by either UUID or name. If the Subject cannot be resolved a 412 response will be returned.
- (2019-11-06) If a user has the
unlimitedThreatIntelSearchpermission an unlimited number of results can be fetched when searching for Facts. Otherwise the maximum number of returned results is capped at 10.000. - (2019-11-04) Creating a new Fact where
sourceanddestinationare the same Object will fail with a 412 response. For this use case one-legged Facts with bi-directional binding should be created instead. - (2019-09-25) In Search APIs resolve entities by name for
factType,objectType,originandorganizationbefore querying ElasticSearch in order to avoid outdated names in the index. If an entity cannot be resolved a 412 response will be returned.
- (2024-10-16) Removed deprecated traverse endpoints
POST /v1/object/uuid/{id}/traverse,POST /v1/object/{type}/{value}/traverseandPOST /v1/object/traverse. - (2024-10-15) Removed deprecated
beforeandafterparameters from all search and traverse endpoints which accept a request body. - (2022-10-21) Removed handling of the legacy 'act' index. Ensure that all installations have reindexed their data into daily indices, see MIGRATIONS.md.
- (2022-02-11) Removed the old mechanism to check for already existing Facts, including the configuration property
act.fact.existence.check.use.cassandrawhich is the new default (breaking). Facts added to installations before October 2021 might be duplicated as a result. It is recommended to set up installations older than October 2021 from scratch and reimport existing data.