Email the month's planning
social_planner.planning.share
SENDS an email (Amazon SES) with the Social Planner grid of a month (month_key YYYY-MM): every post of the month with date, networks, format, status, labels, text and thumbnail, plus a status and network summary; with format pdf the month's PDF is attached too. All recipients go in one email (to up to 20, cc up to 20). sender_id picks the From among the senders this person can use (the organization's domain senders; none or __system__ = MB Suite); 403 sender_not_allowed otherwise. The send is recorded in the planning share history. With format pdf, 503 pdf_unavailable when the PDF service is not available (nothing is sent). If Amazon SES does not take the email: 409 external_rejected, 429 external_rate_limited, 503 external_unavailable (it surely did not go out) or 409 external_outcome_unknown (it may have gone out: check before sending again). It reaches real inboxes: outside the screen it needs a dry run and a confirm_token; the dry run says the recipients, the From, the month, the format and how many posts go, and social_planner.planning.preview gives the HTML. Dates and times are the posts' own time zone (or the organization's); locale (es, en, pt-BR; default es) sets the email's language. Requires full access to the Social Planner.
Needs confirmation: first dry_run: true (preview and confirm_token, valid 10 minutes and for one run), then the same body with confirm_token. In a few operations only with certain data: the description says when. Why and how: Dry run and confirm_token.
- Scope
social_planner:write- Permission
- Edit in the module
- MCP tool
social_planner_planning_shareOn the full surface; on the compact one,mb_execute_operationwithid: "social_planner.planning.share".
Declared cost: up to 260 reads and 2 writes per call (they count against the daily quota). Touches an external platform (ses): it counts against the external operations quota.
Parameters
month_keystringbodyThe month, YYYY-MM (like 2026-10), in the organization's time zone.
formatenumbodyhtml = the email with the month's grid; pdf = a short email with the month's PDF attached.
Values: pdf, html
toarray<string>bodyRecipients (1 to 20); all of them go in one email.
subjectstringbodySubject of the email.
ccarray<string>bodyoptionalCopy recipients (up to 20).
personal_notestringbodyoptionalOptional personal note shown on top of the email, signed with the sender's name.
sender_idstringbodyoptionalThe From: a sender id of the organization's domain senders (the ones this person can use), or __system__ / nothing for MB Suite. It also decides the email's branding.
localeenumbodyoptionalLanguage of the email (es, en or pt-BR): texts, statuses, formats, month and dates. Default es.
Values: es, en, pt-BR
Response
share_idstringpost_countnumberemail_idstringErrors
Example
curl -X POST "https://api.mb-suite.com/v1/social-planner/planning/share" \
-H "Authorization: Bearer $MB_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"month_key": "MONTH_KEY",
"format": "pdf",
"to": [
"TO"
],
"subject": "SUBJECT",
"dry_run": true
}'Try it with your test API key
With a test API key the request always goes to your practice organization: example data you can reset. In the practice organization this operation is not simulated (it reaches another platform): it answers 409 sandbox_external_unavailable.