This component provides direct communication with Maester, the object storage service on the elastic.io platform. It allows you to store, retrieve, search, and delete objects within your integration flows.
There are no required environment variables for this component.
This component has no trigger functions. This means it will not be accessible to select as a first component during the integration flow design.
Within the Actions section of the documentation, you can leverage the Maester component, along with its Upsert Object action, to seamlessly integrate your data. Simply provide the body of your Webhook in the Data field. The Upsert Criteria will dynamically generate the Maester Object ID, which you can retrieve as an output.
In another flow, incorporating the Maester component and its Lookup Object (at Most One) action, you can effortlessly retrieve the desired data. Choose the Maester Object ID as the Lookup Criteria and supply the ID obtained from the previous flow.
For further streamlining the connection of Maester Object IDs across your workflows, consider utilizing the ID Linking component.
Deletes a specific object from Maester based on the provided criteria.

Maester Object ID, Custom Headers], required): Specifies the method used to identify the object to delete.Dynamically generated based on Lookup Criteria:
Maester Object ID (string, uuid) - Required if Lookup Criteria is Maester Object ID. The unique UUID of the object in Maester.Search Headers - Required if Lookup Criteria is Custom Headers. An array of headers { key: header-key-1, value: header-value-1 } used to find the object (up to 5 headers).Data (JSON object) - Required. The data to be stored in the object. Only plain objects are supported.Headers - Optional. An array of headers { key: header-key-1, value: header-value-1 } to be added to new objects.TTL (number) - Optional. Time-To-Live in seconds. The object will remain in the database for this duration. After expiration, it will be deleted.
Please Note: The deletion process runs hourly. If omitted, the default expiration time of the Maester installation is used.
{
"type": "object",
"properties": {
"id": {
"type": "string"
}
}
}
Finds a single object in Maester.

Please Note: If
Lookup CriteriaisCustom Headersand more than one object is found, an error will be thrown.
Maester Object ID, Custom Headers], required): Specifies the method used to find the object.false):
{} is emitted.false):
{} is emitted.Dynamically generated based on Lookup Criteria:
Maester Object ID (string, uuid) - Required if Lookup Criteria is Maester Object ID. The unique UUID of the object in Maester.Search Headers - Required if Lookup Criteria is Custom Headers. An array of headers { key: header-key-1, value: header-value-1 } used to find the object (up to 5 headers).{
"type": "object",
"properties": {
"data": {
"type": "object",
"required": true
},
"maesterObjectId": {
"type": "string",
"required": true
},
"metaHeaders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "object",
"required": true
},
"value": {
"type": "object",
"required": true
}
}
}
},
"searchHeaders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "object",
"required": true
},
"value": {
"type": "object",
"required": true
}
}
}
}
}
}
Searches for multiple objects in Maester based on custom headers.

Fetch All - The output will be a single message containing an array of all found objects.Emit Individually - Each found object will be emitted as a separate message.Headers - Required. An array of headers { key: header-key-1, value: header-value-1 } used to search for objects.Creates a new object or updates an existing one based on the criteria.

Logic:
Please Note: When a new object is created this way, it will be assigned a NEW ID generated by Maester. The provided ID is not used for the new object.
Please Note: If more than one object is found matching the headers, an error will be thrown.
Maester Object ID, Custom Headers], required): Specifies the method used to identify the object to upsert.Dynamically generated based on Upsert Criteria:
Maester Object ID (string, uuid) - Optional. Used if Upsert Criteria is Maester Object ID. The ID to find the object.Search Headers - Required if Upsert Criteria is Custom Headers. An array of headers { key: header-key-1, value: header-value-1 } used to find the object (up to 5 headers).Data (JSON object) - Required. The data to be stored in the object.Headers - Optional. An array of headers { key: header-key-1, value: header-value-1 } to be added to the object.
Please Note: Headers can be added to an existing object or modified, but they cannot be deleted.
TTL (number) - Optional. Time-To-Live in seconds.
Please Note: The deletion process runs hourly. If omitted, the default expiration time is used. TTL cannot be modified or removed once the object is created.
{
"type": "object",
"properties": {
"data": {
"type": "object",
"required": true
},
"maesterObjectId": {
"type": "string",
"required": true
},
"metaHeaders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "object",
"required": true
},
"value": {
"type": "object",
"required": true
}
}
}
},
"searchHeaders": {
"type": "array",
"items": {
"type": "object",
"properties": {
"key": {
"type": "object",
"required": true
},
"value": {
"type": "object",
"required": true
}
}
}
}
}
}
Click here to learn more about the elastic.io iPaaS