One file. One key. Fourteen platforms.

Most APIs hand your agent a reference manual and let it work out the order. ModelVI hands it a single file — agents.modelvi.com/skill.md — that opens with a decision table. Your agent reads the row that matches the job and makes exactly those calls.

You can check it before you sign up for anything. GET https://modelvi.com/api/partner/v1/version takes no key and returns {"success":true,"version":"partner api version 1.0"}. If that responds, the rest of this page is real.

What your agent can actually do

The jobWhat it takes
Post content already in the vaultfour calls, no upload
Post media you bring yourselfupload, then attach, then schedule
Add a creator or a platform accounttwo calls
Change how an account postsone call
Read what happenedone call
Check balance and spendone call

That table is the top of skill.md, not a summary we wrote for this page. Everything below it in the file is the detail for those rows, in the same order.

The fourteen platforms

F2F · FNC (FanCentro) · FAN (Fansly) · KNKY · MALOUM · ONLYFANS · LOYALFANS · MYMFANS · FETLIFE · FOURBASED · FANVUE · BESTFANS · FANSYME · BREZZELS

Your agent never talks to any of them. ModelVI holds the sessions, the proxies and the rate limits. Your agent decides what and when; the engine decides how. That distinction is the whole product — it is why one integration reaches fourteen platforms instead of fourteen integrations reaching one each.

The shape of it

One thing that will cost you a debugging hour if nobody tells you: the upload endpoints live on https://modelvi.com/api, not under /api/partner/v1. Prefixing the partner base URL there returns 404. Same key, different prefix. It is written at the top of the upload section in skill.md for the same reason it is written here.

A model is not an account

An agency owns models. A model is a creator. A platform-account is that creator on one platform, and one model usually has several. Content lives in the model's vault — captions, tags and media, reusable across platforms.

A schedule targets a model across one or more platforms at a moment in time. It is not per-account: you say this model, these platforms, this media, this time, and the engine fans it out. Agents that assume per-account scheduling write more code than they need to.

Getting a key

Keys are self-serve from the dashboard under API Keys → Create key. The scope is your own models and accounts. Whitelabel partners get a reseller-scoped key that covers their clients too.

Connect your agent — copy the skill.md URL and mint a key.
Read the skill file — the whole spec, one page, no login.

Written against the live skill.md. If this page and that file ever disagree, the file is right — it is the one your agent reads.