Skip to Content
Public API

Public API

You don’t need the SDK to submit feedback. The public REST endpoint lets you send bug reports and feature requests from any HTTP client — a backend service, a mobile app, a CLI tool, or a simple fetch call.

Endpoint

POST https://app.maestrio.ai/api/v1/request

Headers

HeaderRequiredDescription
X-API-KeyYesYour API key (starts with mst_). Get one from Settings → API.
Content-TypeYesMust be application/json.
OriginYesMust match one of your allowed domains.

Request body

{ "title": "Button doesn't work on mobile", "description": "The submit button is unresponsive on iOS Safari.", "type": "bug", "projectId": "your-project-id" }
FieldTypeRequiredDescription
titlestringYesA short summary of the bug or feature request.
descriptionstringYesDetailed description of the issue or suggestion.
type"bug" | "feature"YesThe type of request.
projectIdstringYesYour project ID. Found in project settings.
pointedElementsPointedElement[]NoDOM elements the user highlighted as relevant.

PointedElement

FieldTypeDescription
selectorstringCSS selector for the element
tagNamestringHTML tag name (e.g. "button", "div")
textstringText content of the element
htmlstringOuter HTML of the element

Response

Success (201)

{ "id": "req_abc123", "status": "received", "queued": true }
FieldTypeDescription
idstringUnique request ID.
statusstringInitial status (usually "received").
queuedbooleanWhether the request was queued for AI processing.

Errors

StatusCause
400Invalid JSON, missing required fields, or invalid type value.
401Missing or invalid API key.
403Missing Origin header or origin not in allowed domains.
404Project not found.

Example with fetch

const response = await fetch("https://app.maestrio.ai/api/v1/request", { method: "POST", headers: { "Content-Type": "application/json", "X-API-Key": "mst_live_abc123", }, body: JSON.stringify({ title: "Add dark mode", description: "Would love a dark mode option for the settings page.", type: "feature", projectId: "your-project-id", }), }); const data = await response.json(); console.log(data.id); // "req_abc123"

Example with cURL

curl -X POST https://app.maestrio.ai/api/v1/request \ -H "Content-Type: application/json" \ -H "X-API-Key: mst_live_abc123" \ -H "Origin: https://yourapp.com" \ -d '{ "title": "Add dark mode", "description": "Would love a dark mode option for the settings page.", "type": "feature", "projectId": "your-project-id" }'