rizamodocs

Connecting accounts

A link your customer opens to connect their account, with no Rizamo sign-in.

Your code asks for a link for one network and the profile the accounts go to (get_connect_link in MCP, scope accounts:write):

curl "https://api.rizamo.com/v1/connect/instagram?profileId=prof_...&redirectUrl=https://example.com/rizamo/done" \
  -H "Authorization: Bearer $RIZAMO_API_KEY"
{ "url": "https://app.rizamo.com/api/connect/link/team_.../...", "expiresAt": "2026-11-03T10:30:00.000Z" }

Send the person to url within 30 minutes. It goes straight to the network, where they log in; they need no Rizamo account. It connects accounts once: a chat preview, a link checker or a second browser that opens it uses nothing up, and the first to finish connecting uses it.

  • instagram: Instagram Login, an Instagram professional account on its own.
  • facebook: Facebook Login, the person's Pages and the Instagram accounts linked to them. Instagram accounts connected this way can also add music to reels and get each story's final numbers when it ends; deleting Instagram posts will need it too, once Meta reviews Rizamo's access.
  • tiktok, threads, youtube.

redirectUrl is any https:// address, or http://localhost and http://127.0.0.1 on any port while you develop. It is fixed in the link. Leave it out when you have no address, from a chat agent or a script: the person then lands on a Rizamo page that names the accounts connected, or says why not, and tells them to go back to their agent or close the tab. The MCP tool takes no redirectUrl: agents always send people to that page.

What the person sees

A login that reaches one new account connects it at once. One that reaches several, such as Pages or YouTube channels, or an account your team already has, shows a short page to pick them, with only new accounts ticked. It shows no prices and nothing of your team. An account already connected in a profile your key does not reach cannot be picked.

Back at your address

When you gave a redirectUrl, Rizamo adds these parameters to it, and nothing else:

ParameterValue
statusconnected or error
networkthe network you asked for
profileIdthe profile you named
accountIdsthe accounts connected, comma-separated
billingeach one's billing state, in the same order: active or awaiting_payment
errorcancelled, refused, no_accounts, expired, used, unavailable, forbidden, gone or failed
messagewhat went wrong, in plain words

None of them works without your key: read each account with GET /v1/accounts/{id}. A return can arrive more than once, when the person reloads it, so take GET /v1/accounts (list_accounts in MCP) as the truth. A link opened once it is used or expired, or after your key lost access, stays on a Rizamo page that says why: only a person back from the network comes to your address. Webhook endpoints that take account.connected get one per account.

Billing

Accounts you add are billed as in the web app, the first 2 free. On the free plan, the rest arrive awaiting_payment until a team owner starts a plan. On a paid plan they are charged at once to the card on file: your call is the consent. A charge that needs the card holder leaves them awaiting_payment until an owner pays in the web app. There is no limit on how many you add: a team owner can set one in the web app (Plan & usage), and none is set until they do. Beyond it, accounts arrive awaiting_payment until an owner pays. GET /v1/billing shows the plan and that limit (apiCap, null while there is none).

Log in again

When an account needs a new login, ask for a link with its connectionId and its network. Only that login's accounts are updated: another account of your team the person also manages stays on its own login.

Remove an account

GET /v1/accounts/{id}/removal (get_account_removal in MCP) counts what removing it does to its posts: the scheduled, draft, published and failed posts that use it, and how many go to it alone. Show the person those counts, then DELETE /v1/accounts/{id} (remove_account in MCP) removes it and answers the same counts.

  • Posts that go to it alone move to Deleted, where they can be restored for 30 days. Posts with other accounts keep its part that went out, with its link, and lose the part that did not.
  • Its comments and messages in the inbox go at once.
  • Nothing changes on the network.
  • Only an owner, an owner's agent, or an API key an owner let remove accounts (Developers in the web app) may. Anyone else gets 403.
  • Connecting the same account again brings it back with the same id.

On this page