Build on PlanVortex
Connect your own apps to PlanVortex: publish content, sync analytics and receive real-time events with the same API our own dashboard uses.
Creating your own apps and using the API is part of the Custom plan. The other plans are used from the dashboard.
Client credentials, no user session
Every app you create has its own client identifier and secret. You request a token through the client credentials flow and start calling: no cookies, no user in the middle and no renewing OAuth network by network. Your realm URL is shown in the dashboard, next to the credentials.
curl -X POST "$PLANVORTEX_AUTH_URL/protocol/openid-connect/token" \ -d grant_type=client_credentials \ -d client_id=$APP_CLIENT_ID \ -d client_secret=$APP_SECRET
Tokens expire. When the API answers 401, request a new one with the same call.
Publish in a handful of lines
Pick the account and the target network, send the text and any files you uploaded beforehand, and PlanVortex takes care of the rest. Add a publish date and it gets scheduled instead of going out right away.
const res = await fetch(`${API}/organizations/${org}/accounts/${acc}/publish`, { method: "POST", headers: { Authorization: `Bearer ${token}` }, body: JSON.stringify({ social_network: "instagram", text: "Nuevo horno, nuevas hogazas", files: ["66f1a2b3c4d5e6f7a8b9c0d1"], publish_date: "2026-09-01T10:00:00.000Z" }) });
Who it's for
Built for anyone already building their own product who wants social media to live inside it.
Agencies
Centralize client management in your own internal dashboard, without them ever logging into PlanVortex.
Platforms & SaaS
Add social media publishing and analytics to your product without building them from scratch.
Product teams
Connect PlanVortex to your internal stack: BI, CRM, automations.
Use cases
What you can already automate today with the API.
Publish and schedule
Create, schedule and publish content to connected accounts, by code.
Sync analytics
Bring every account's and post's metrics into your own dashboard.
Real-time webhooks
Get notified instantly when accounts, messages or posts change — no polling needed.
Embedded connection
Let your users connect their social accounts without leaving your product.
How to get started
From zero to your first authenticated call.
Create an app
From your client dashboard, give your app a name and activate it. Available on the Custom plan.
Get your credentials
A client identifier and a secret, which you can rotate whenever you want from the dashboard.
Authenticate
Use the client-credentials flow to get your access token.
Explore the API
Browse the interactive documentation and check every available endpoint.
The endpoints you'll use on day one
They all hang off the same base URL and authenticate with the Authorization: Bearer header. The full reference, with every parameter and sample responses, lives in the documentation.
Base URLhttps://api.planvortex.com/v1.0.0
| Method | Endpoint | What for |
|---|---|---|
| POST | /clients/{id_client}/apps | Create an app inside your client account. |
| GET | /clients/{id_client}/apps/{id_app}/secret | Retrieve the app secret so you can authenticate. |
| GET | /organizations/{id_organization}/accounts | List an organization's connected accounts and their status. |
| GET | /organizations/{id_organization}/login_links | Generate the links your users follow to connect their networks without leaving your product. |
| POST | /organizations/{id_organization}/uploads | Upload the image or video before publishing it. |
| POST | /organizations/{id_organization}/accounts/{id_account}/publish | Publish or schedule on a specific account. |
| GET | /organizations/{id_organization}/publish | Check the organization's publications and what state they are in. |
| GET | /organizations/{id_organization}/publish/{id_publication}/metrics | Metrics for one specific publication. |
| GET | /organizations/{id_organization}/accounts/{id_account}/metrics | Account metrics. |
| GET | /organizations/{id_organization}/limits | Plan usage and limits at that moment. |
Events we send you
You set a URL on your app and PlanVortex POSTs to it whenever something happens on the connected accounts. Every delivery is signed with the app secret so you can check it really came from us.
A user has just connected a new account.
An account changed state: it was reconnected, its token expired or it is no longer available.
A direct message came into a connected account.
Someone mentioned one of your accounts.
Versioning
The version is part of the path. While it stays there, whatever works for you today keeps working the same way.
Webhook signature
Every POST carries the x-hub-signature and x-hub-signature-256 headers, computed with your app secret. Verify them before processing the body.
Interactive documentation
OpenAPI reference by area — accounts, publications, uploads, organizations, roles and AI plans — with every parameter and its sample response.
The whole API, documented
Endpoints, parameters and example responses — in the same PlanVortex look and feel, so it never feels like leaving the site.