Test Scriptr.io API endpoints with debug mode enabled. Use when the user wants to test, debug, or verify an API endpoint is working correctly.
Tests Scriptr.io API endpoints with debug mode for detailed logging and error analysis.
/plugin marketplace add legatoloco/ntelio-claude/plugin install legatoloco-ntelio-claude@legatoloco/ntelio-claudeThis skill tests Scriptr.io API endpoints with debug mode for detailed logging.
/test-api POST /v1/orders/list
/test-api GET /v1/orders/ABC123
/test-api POST /v1/orders/create {"name": "Test Order"}
/test-api waba/flows/list {"botKey": "my_bot"}
Extract from user input:
Construct the full API URL:
Base patterns:
- CommerceGenie: https://{instance}/openapi/handlers/v1/{endpoint}
- Middleware: https://{instance}/ntelioMiddleware/server/api/core/v1/{endpoint}
Auto-detect based on path:
waba/, forms/, databundle/ → MiddlewareAppend ?debug_mode=true for verbose server logs.
Use MCP tool or curl:
curl -X {METHOD} "{URL}?debug_mode=true" \
-H "Authorization: Bearer {TOKEN}" \
-H "Content-Type: application/json" \
-d '{BODY}'
CRITICAL: Scriptr.io wraps responses - check the INNER status:
{
"response": {
"metadata": {
"status": "success"
},
"result": {
"metadata": {
"status": "failure",
"errorCode": "BOT_NOT_FOUND",
"errorDetail": "Bot not found"
}
}
}
}
The outer metadata.status is the gateway status (always success if handler ran).
The inner result.metadata.status is the ACTUAL handler status - check this one.
Format output clearly showing success/failure and any server logs.
| Error Code | Meaning |
|---|---|
API_DEFINITION_NOT_FOUND | OpenAPI spec file missing or wrong path |
HANDLER_NOT_FOUND | Handler file missing or wrong location |
VALIDATION_ERROR | Request doesn't match OpenAPI spec |
STORE_NOT_FOUND | Document store doesn't exist |
DOCUMENT_NOT_FOUND | Record with given key not found |
AUTHENTICATION_REQUIRED | Missing or invalid auth token |
User: /test-api POST waba/flows/list {"botKey": "demo_bot"}
Assistant: Testing POST /ntelioMiddleware/server/api/core/v1/waba/flows/list...
Result: success
Response:
{
"flows": [
{"id": "flow_123", "name": "Order Flow"},
{"id": "flow_456", "name": "Support Flow"}
]
}
User: /test-api GET /v1/orders/ORD-123
Assistant: Testing GET /openapi/handlers/v1/orders/ORD-123...
Result: success
Response:
{
"documents": [{
"key": "ORD-123",
"status": "pending",
"total": 150.00
}]
}
User: /test-api POST orders/create {"invalid": "data"}
Assistant: Testing POST /openapi/handlers/v1/orders/create...
Result: failure
Error: VALIDATION_ERROR - Required field 'name' is missing
Server Logs:
[18:09:03] ERROR: Validation failed in orders/create
[18:09:03] DEBUG: Missing fields: name, amount
/sync - Sync files before testing/create-api - Create new API endpoints