Custom integrations
Working examples: custom_private_gateway.py, network_solution_payloads.py, and network-solution-payloads.mjs.
Oruoma is API-first. The dashboard, SDK, and integrations should all use the same workspace-backed service layer. Custom integrations plug into Oruoma through triggers, deliverable actions, and workspace secrets.
Extension points
- Triggers route work to external systems.
- Deliverable actions capture structured outputs such as approvals, reports, URLs, or custom forms.
- Workspace secrets store tokens and connection strings without exposing plaintext in list/detail responses.
Register an HTTP trigger
Use workspace secrets for credentials. Reference them in config as ${secret.NAME} and resolve them only at runtime.
json
{
"name": "Approval Bot",
"transport_type": "http",
"url": "https://example.com/oruoma/webhook",
"headers_schema": {
"Authorization": "Bearer ${secret.RELEASE_TOKEN}"
},
"defaults": {
"release_channel": "review"
}
}Register a custom deliverable action
Use deliverable actions when a workflow step needs a concrete output rather than a vague “done”.
json
{
"name": "Deployment approval",
"description": "Capture release approval before publishing a change.",
"action_type": "approval",
"input_schema": {
"type": "object",
"properties": {
"decision": { "enum": ["approve", "revise", "reject"] },
"notes": { "type": "string" }
},
"required": ["decision"]
}
}