Reputation v2 Indicator property descriptors#
Note
This part of the API is currently under development (DEV status) and may change.
Concepts#
Indicator property descriptors#
An indicator property descriptor defines an additional property that can be associated with an Indicator.
Each descriptor has a unique shortName, a human-readable name, a description and a dataType that determines
what kind of values the property can hold:
enumValue– the property value is one of a predefined set of enum values (see Enum values below).fullText– a free-text value.decimalValue– a decimal number.integerValue– an integer number.booleanValue– a boolean (true/false).
A descriptor may be flagged as multiValue, in which case the associated Indicator property is allowed to hold
multiple values.
Read function#
Each descriptor specifies a readFunction – the Argus function required to read data represented by the descriptor.
Enum values#
When a descriptor has the enumValue data type, the allowed values are managed as a set of enum values belonging to
that descriptor. Each enum value has its own unique shortName (unique within the parent descriptor), name and
description, and is managed through dedicated endpoints nested under the descriptor.
Soft delete and restore#
Both descriptors and enum values are soft-deleted: deleting an entity sets its deletedTimestamp and marks it with the
deleted flag rather than removing it. A deleted entity can be restored.
On delete, the entity’s shortName is replaced with its UUID string in order to free up the original shortName for
reuse. Because of this, restoring an entity does not restore its original shortName. When restoring, an optional
new shortName can be supplied.
Indicator property descriptor endpoints#
Fetching an indicator property descriptor#
GET /reputation/v2/indicatorpropertydescriptor/{idOrShortName}
Access control#
To fetch an indicator property descriptor, the user needs to be granted the viewIndicatorPropertyDescriptors Argus
function.
Example#
curl -X GET 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor' \
-H 'accept: application/json' \
-H 'Argus-API-Key: my/api/key'
Creating an indicator property descriptor#
POST /reputation/v2/indicatorpropertydescriptor
Fields#
Field |
Required |
Description |
|---|---|---|
|
yes |
Unique shortName of the descriptor. Can only contain alphanumeric characters, hyphen, underscore, period and colon. No spaces. Max length 255. |
|
yes |
Human-readable name of the descriptor. Max length 255. |
|
yes |
Description of what the descriptor represents. Max length 65535. |
|
yes |
Data type of the descriptor. One of |
|
no |
Whether the descriptor allows multiple values. Defaults to |
|
yes |
ID or shortName of the function required to read data represented by the descriptor. |
Access control#
To create an indicator property descriptor, the user needs to be granted the addIndicatorPropertyDescriptor Argus
function.
Example#
curl -X POST 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key' \
-d '{
"shortName": "mydescriptor",
"name": "My descriptor",
"description": "This is my indicator property descriptor",
"dataType": "enumValue",
"multiValue": false,
"readFunction": "viewIndicatorPropertyDescriptors"
}'
Updating an indicator property descriptor#
PUT /reputation/v2/indicatorpropertydescriptor/{idOrShortName}
No fields are required, only specify the fields you want to update.
Fields#
Field |
Required |
Description |
|---|---|---|
|
no |
Optional new unique shortName for the descriptor. Max length 255. |
|
no |
Human-readable name of the descriptor. Max length 255. |
|
no |
Description of what the descriptor represents. Max length 65535. |
|
no |
Update the function required to read data represented by the descriptor. |
Access control#
To update an indicator property descriptor, the user needs to be granted the updateIndicatorPropertyDescriptor Argus
function.
Example#
curl -X PUT 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key' \
-d '{
"name": "My descriptor",
"description": "This is my updated indicator property descriptor",
"readFunction": "viewIndicatorPropertyDescriptors"
}'
Deleting an indicator property descriptor#
DELETE /reputation/v2/indicatorpropertydescriptor/{idOrShortName}
On delete, the descriptor shortName is replaced with its UUID string.
Access control#
To delete an indicator property descriptor, the user needs to be granted the deleteIndicatorPropertyDescriptor Argus
function.
Example#
curl -X DELETE 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key'
Restoring an indicator property descriptor#
PUT /reputation/v2/indicatorpropertydescriptor/{id}/restore
Deleting the descriptor replaces its shortName with the entity UUID, so restoring it does not restore the original
shortName. An optional new shortName can be supplied in the request body.
Fields#
Field |
Required |
Description |
|---|---|---|
|
no |
Optional new unique shortName for the restored descriptor. Max length 255. |
Access control#
To restore an indicator property descriptor, the user needs to be granted the updateIndicatorPropertyDescriptor
Argus function.
Example#
curl -X PUT 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/123e4567-e89b-12d3-a456-426614174000/restore' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key' \
-d '{
"shortName": "mydescriptor"
}'
Listing indicator property descriptors#
GET /reputation/v2/indicatorpropertydescriptor
Simple search using query parameters.
Query parameters#
Parameter |
Default |
Description |
|---|---|---|
|
|
Number of descriptors to skip. |
|
|
Number of descriptors to return. |
|
|
How to sort the results. One of |
|
Filter by descriptor type. One or more of |
|
|
|
Whether to include deleted descriptors. |
|
Keywords to search for. |
Access control#
To list indicator property descriptors, the user needs to be granted the viewIndicatorPropertyDescriptors Argus
function.
Example#
curl -X GET 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor?limit=25&types=enumValue&keywords=mydescriptor' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key'
Searching for indicator property descriptors#
POST /reputation/v2/indicatorpropertydescriptor/search
Advanced search using a request body.
Fields#
Field |
Default |
Description |
|---|---|---|
|
Match descriptors by UUID. |
|
|
Filter by descriptor data type. |
|
|
Require descriptors to have certain flags set ( |
|
|
Require descriptors to not have certain flags set ( |
|
|
Keywords to search for in fields specified by |
|
|
|
Which fields to search for keywords in. One or more of |
|
|
Whether |
|
|
Restrict to a time frame based on |
|
|
Restrict to a time frame based on |
|
|
Which timestamp fields are filtered by start/endTimestamp. One or more of |
|
|
Whether |
|
|
Number of descriptors to return. |
|
|
Number of descriptors to skip. |
|
|
How to order the results. One of |
|
|
Whether to include deleted descriptors. |
Access control#
To search for indicator property descriptors, the user needs to be granted the viewIndicatorPropertyDescriptors
Argus function.
Example#
curl -X POST 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/search' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key' \
-d '{
"keywords": ["mydescriptor"],
"dataType": ["enumValue"],
"limit": 25
}'
Enum value endpoints#
Enum values are managed under their parent indicator property descriptor. They are typically used together with
descriptors of the enumValue data type.
Fetching an enum value#
GET /reputation/v2/indicatorpropertydescriptor/{descriptorIdOrShortName}/values/{idOrShortName}
Access control#
To fetch an enum value, the user needs to be granted the viewIndicatorPropertyDescriptors Argus function.
Example#
curl -X GET 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor/values/myvalue' \
-H 'accept: application/json' \
-H 'Argus-API-Key: my/api/key'
Creating an enum value#
POST /reputation/v2/indicatorpropertydescriptor/{descriptor}/values
Fields#
Field |
Required |
Description |
|---|---|---|
|
yes |
Unique shortName of the enum value within the descriptor. Can only contain alphanumeric characters, hyphen, underscore, period and colon. No spaces. Max length 255. |
|
yes |
Human-readable name of the enum value. Max length 255. |
|
yes |
Description of what the enum value represents. Max length 65535. |
Access control#
To create an enum value, the user needs to be granted the addIndicatorPropertyDescriptor Argus function.
Example#
curl -X POST 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor/values' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key' \
-d '{
"shortName": "myvalue",
"name": "My value",
"description": "This is my enum value"
}'
Updating an enum value#
PUT /reputation/v2/indicatorpropertydescriptor/{descriptorIdOrShortName}/values/{idOrShortName}
No fields are required, only specify the fields you want to update.
Fields#
Field |
Required |
Description |
|---|---|---|
|
no |
Optional new unique shortName for the enum value within the descriptor. Max length 255. |
|
no |
Human-readable name of the enum value. Max length 255. |
|
no |
Description of what the enum value represents. Max length 65535. |
Access control#
To update an enum value, the user needs to be granted the updateIndicatorPropertyDescriptor Argus function.
Example#
curl -X PUT 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor/values/myvalue' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key' \
-d '{
"name": "My value",
"description": "This is my updated enum value"
}'
Deleting an enum value#
DELETE /reputation/v2/indicatorpropertydescriptor/{descriptorIdOrShortName}/values/{idOrShortName}
On delete, the enum value shortName is replaced with its UUID string.
Access control#
To delete an enum value, the user needs to be granted the deleteIndicatorPropertyDescriptor Argus function.
Example#
curl -X DELETE 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor/values/myvalue' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key'
Restoring an enum value#
PUT /reputation/v2/indicatorpropertydescriptor/{descriptorIdOrShortName}/values/{idOrShortName}/restore
Deleting an enum value replaces its shortName with the entity UUID, so restoring it does not restore the original
shortName.
Access control#
To restore an enum value, the user needs to be granted the deleteIndicatorPropertyDescriptor Argus function.
Example#
curl -X PUT 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor/values/123e4567-e89b-12d3-a456-426614174000/restore' \
-H 'accept: application/json' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key'
Listing enum values#
GET /reputation/v2/indicatorpropertydescriptor/{descriptorIdOrShortName}/values
Query parameters#
Parameter |
Default |
Description |
|---|---|---|
|
|
Number of enum values to skip. |
|
|
Number of enum values to return. |
|
|
How to sort the results. One of |
|
Keywords to search for. |
|
|
|
Whether to include deleted enum values. |
Access control#
To list enum values, the user needs to be granted the viewIndicatorPropertyDescriptors Argus function.
Example#
curl -X GET 'https://api.mnemonic.no/reputation/v2/indicatorpropertydescriptor/mydescriptor/values?limit=25&keywords=myvalue' \
-H 'Content-Type: application/json' \
-H 'Argus-API-Key: my/api/key'