Step 1
Frame the integration scope
Align business value, target systems, and rollout boundaries before coding.
Open solution/partnerSDKs, REST API, webhooks, and a Robo Meister Store to ship apps, workflows, drivers, and integrations across OS, ERP, and AI.
Use this as a single funnel: business context on /solution/partner, implementation details on /developers, then activation inside /portal.
Step 1
Align business value, target systems, and rollout boundaries before coding.
Open solution/partnerStep 2
Use quickstart + auth docs here to get your first endpoint response.
Start quickstartStep 3
Jump directly into the portal with intent-aware routing and attribution.
Open portal/startThree steps to your first call and a running package.
For /portal development flows, account provisioning is now automatic with the API/CMS module. Then generate a Personal Access Token (org-scoped) in the admin portal and keep it secret.
# Example header
Authorization: Bearer <TOKEN>
Unified Access Format supports .json, .xml, .csv, .xls. Append a suffix to the endpoint.
curl -s \
-H "Authorization: Bearer $TOKEN" \
https://robo-meister.com/api/v1/workflows.json
Use the JS SDK or the Robo Meister Store to scaffold apps, workflows, and drivers.
# JS (browser)
<script src="/js-api/public/RoboConnector.js"></script>
# Package skeleton
rappkg init my-first-app
curl -X POST https://robo-meister.com/api/v1/events.json \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"event_type":"task_completed",
"scope_type":"organization",
"scope_id":"ORG_ID",
"data": {"task_id":"abcd-1234","result":"success"}
}'
async function listWorkflows(token){
const res = await fetch('https://robo-meister.com/api/v1/workflows.json',{
headers:{ Authorization: `Bearer ${token}` }
})
if(!res.ok) throw new Error('HTTP '+res.status)
return res.json()
}
// Symfony HttpClient example
use Symfony\Component\HttpClient\HttpClient;
$http = HttpClient::create();
$response = $http->request('GET', 'https://robo-meister.com/api/v1/workflows.json', [
'headers' => [ 'Authorization' => 'Bearer '.$token ]
]);
$data = $response->toArray();
Everything you need to extend the Business OS.
.json, .xml, .csv, .xls suffixes<flow>, <document>, <function>events_channel:<scope>:<id>:<type>.rappkg archive (zip)meta.json, app.json, workflows/Bearer tokens are org-scoped. Use Personal Access Tokens for scripts or OAuth for user-consent flows.
Authorization: Bearer <TOKEN>
POST /oauth/token
client_id=...&client_secret=...
grant_type=client_credentials
Base URL and example endpoints with Unified Access Format.
https://robo-meister.com/api/v1
GET /workflows.json
GET /workflows.csv
POST /events.json
{ "event_type":"task_completed", ... }
GET /clients.json?status=active&page=2&limit=50
GET /products.json?category=hardware&sort=-createdAt
{
"status": "error",
"error": {
"code": "invalid_scope",
"message": "Token lacks 'finance:read'"
}
}
Jump directly to focused developer guides for each module.
Subscribe to domain events or the low-level events_channel for real-time updates.
POST /webhooks.json
{
"url": "https://robo-meister.com/webhook/robo",
"events": ["invoice.created","shipment.updated"],
"secret": "<HMAC_SECRET>"
}
X-Robo-Signature: t=1733826000,v1=hex(HMAC_SHA256(body, secret))
events_channel:user:<id>:task_completed
events_channel:organization:<id>:inventory_update
{
"timestamp":"2025-08-01T10:00:00Z",
"event_type":"task_completed",
"context": {"user_id":"1234","project_id":"9876"},
"data": {"task_id":"abcd-1234","result":"success"}
}
Distribute logic as .rappkg archives: apps, workflows, drivers, integrations.
my-first-app.rappkg
├── meta.json
├── app.json
├── workflows/
│ └── onboarding.json
├── drivers/
│ └── printer.json
└── integrations/
└── acme_api.json
# via ERP UI: Marketplace → Install
# via API
POST /packages/install.json { "package_url": "https://.../my-first-app.rappkg" }
{
"name": "my-first-app",
"version": "1.0.0",
"type": "app", // app | workflow | driver | integration
"targets": ["erp","os","ai"],
"scopes": ["crm:read","bpm:write"],
"entry": "app.json",
"author": {"name":"Your Name","url":"https://example.com"}
}
{
"title": "Starter App",
"tiles": [{"route":"/apps/starter","label":"Starter"}],
"workflows": ["workflows/onboarding.json"],
"drivers": ["drivers/printer.json"]
}
Embed flows, documents, and functions via declarative tags or a meta initializer.
<meta name="robo-connector" data-init data-client="ACME" data-project="site" />
<script src="/js-api/public/RoboConnector.js"></script>
<robo-connector robo-connector-init></robo-connector>
<flow data-template="consult with chat">consult with chat</flow>
<document data-display data-document="price">Loading...</document>
<function data-provider="Inner" data-after-function="get_project">student_cart</function>
Placeholders, arrays, and nested objects are resolved contextually.
Hierarchical keys, queues, and events. Think of it as the mesh for state & orchestration.
Context:User:<user_id>:Project:<project_id>:client
Data:Queue:<queue_id>:In:<type>:payload
Data:Queue:<queue_id>:Result:status
TTL for ephemeral data; persistent for long-lived configuration.
# Producer → Queue → Worker → Result
PUSH Data:Queue:plan-42:In:orders
SUB Data:Queue:plan-42:Result:status
AI Module & Robo Assistant consume queues, update context, and emit events.
Start with API access or scaffold your first package.