API
Describes the Phirestream API.
Data is sent to Phirestream through its REST-based API. Any tool capable of making HTTP calls can be a client to Phirestream. Open source SDKs are available for integrating Phirestream in custom applications.
Phirestream implements a subset of the Apache Kafka's REST API interface. Any general purpose HTTP client such as curl or client SDK that implements this interface can be used with Phirestream.

Performance Considerations

The API methods listed below both take an optional query parameter called async. This optional parameter specifies whether or not the message producing to the Kafka topic will be blocking. Set async to true to not wait for confirmation the messages were produced. This will give higher throughput but will not provide indication if a message fails to be produced to the Kafka topic. Any errors encountered while producing messages will be written to Phirestream's log.
post
https://phirestream:8080
/topics/{topic}
Produce messages for redaction to an Apache Kafka topic
An example request using curl is shown below. In this request we are publishing a single message to Phirestream. The records property is an array so multiple messages can be included in a single request.
1
curl -X POST \
2
https://localhost:8080/topics/default \
3
-H 'Content-Type: application/vnd.kafka.json.v2+json' \
4
-d '{
5
"records": [
6
{
7
"key": "key-1",
8
"value": "George Washington was president."
9
},
10
]
11
}'
Copied!
If we look at the content of mytopic on the Apache Kafka broker we will see a single message with the value {{{REDACTED-entity}}} was president. Phirestream received the request, processed the person's name as sensitive information, and published the modified data to Apache Kafka.
post
https://phirestream:8080
/topics/{topic}/partitions/{partition_id}
Produce messages for redaction to an Apache Kafka topic partition
An example request using curl is shown below. In this request we are publishing a single message to Phirestream. The records property is an array so multiple messages can be included in a single request.
1
curl -X POST \
2
https://localhost:8080/topics/default/partition/1 \
3
-H 'Content-Type: application/vnd.kafka.json.v2+json' \
4
-d '{
5
"records": [
6
{
7
"key": "key-1",
8
"value": "George Washington was president."
9
},
10
]
11
}'
Copied!
If we look at the content of mytopic on the Apache Kafka broker we will see a single message with the value {{{REDACTED-entity}}} was president. Phirestream received the request, processed the person's name as sensitive information, and published the modified data to Apache Kafka.
Last modified 1mo ago