Cumulus has multiple interfaces that allow interaction with discrete components of the system, such as starting workflows via SNS/Kinesis/SQS, manually queueing workflow start messages, submitting SNS notifications for completed workflows, and the many operations allowed by the Cumulus API.
The diagram below illustrates the workflow process in detail and the various interfaces that allow starting of workflows, reporting of workflow information, and database create operations that occur when a workflow reporting message is processed. For interfaces with expected input or output schemas, details are provided below.
Workflow triggers and queuing
SQS queue for executions
The messages put into the SQS queue for executions should conform to the Cumulus message format.
See the documentation on Cumulus workflows.
SNS reporting topics
For granule and PDR reporting, the topics will only receive data if the Cumulus workflow execution message meets the following criteria:
- Granules - workflow message contains granule data in
- PDRs - workflow message contains PDR data in
The messages published to the SNS reporting topics for executions and PDRs and the
record property in the messages published to the granules SNS topic should conform to the model schema for each data type.
Further detail on workflow reporting and how to interact with these interfaces can be found in the workflow notifications data cookbook.
See the Cumulus API documentation.