Changing data
Writes follow the same rules as your panel, and they use the same capacity and monthly swap allowance.
Preview first
curl -X POST https://api.messgeo.com/v1/panels/PANEL_ID/prompts \
-H "Authorization: Bearer mgk_xxxxxxxxxx_your_secret" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: my-unique-key-002" \
-d '{"prompts": [{"text": "best ai visibility tools for agencies"}], "dry_run": true}'Every write accepts dry_run: true: it shows the effect, writes nothing and does not count towards the monthly quota. An Idempotency-Key makes a repeat safe.
Calls
| Call | Effect |
|---|---|
POST /panels/{panel_id}/prompts | Add prompts, at most 20. New prompts are measured right away, like in the panel |
PATCH /panels/{panel_id}/prompts/{prompt_id} | Change active state, topic, tags, category, priority. The text cannot change |
DELETE /panels/{panel_id}/prompts/{prompt_id} | Turn a prompt off. History stays, its stored opportunities are removed |
POST /panels/{panel_id}/competitors | Add a competitor, at most 15 on Starter and 25 on Pro |
DELETE /panels/{panel_id}/competitors/{competitor_id} | Remove a competitor. Send confirm: true |
PUT /panels/{panel_id}/aliases | Replace extra brand names, at most 10 |
POST /panels/{panel_id}/actions/{action_id}/done, /undo | Mark an action done or remove it |
POST /panels/{panel_id}/opportunities/mark | Mark a source as added or dismissed, or undo |
PATCH /me/alert-prefs | Mail preferences of the account |
PATCH /panels/{panel_id} | Country, language, engines. Removing an engine needs confirm: true |
POST /panels/{panel_id}/pause, /resume | Pause or resume measurements |
DELETE /panels/{panel_id} | Delete the panel. Send confirm: true |
PATCH /panels/{panel_id}/prompts | Turn up to 150 prompts on or off |
POST /panels/{panel_id}/actions | Add or plan an action |
POST /panels/{panel_id}/shares | Create a password protected share link |
POST /panels/{panel_id}/integrations/{service}/sync | Refresh Search Console or Analytics |
Capacity and swaps
A panel can hold as many active prompts as its package allows, and adding up to that level is free. Replacing prompts uses the monthly swap allowance. When this is not enough the call returns 422 prompt_budget_exceeded with reason and remaining, and nothing is written.
What the API cannot change
Payments, subscriptions, deleting the account and admin functions stay in the panel. Connecting Search Console or Analytics needs Google consent in a browser: /integrations returns the address.