Batiyao for developers

Costs

Some calls spend someone's money

This is the part of Batiyao that will surprise you if you have built on other platforms. An API call here can move BuckBuck out of the account you are acting for, and into another person's. It cannot be undone.

Read this before you write a loop

There is no sandbox balance and no reversal. A script that likes a hundred posts has spent ten BuckBuck of someone's money and paid a hundred strangers. Write the retry logic before the feature, not after.

Current prices

ActionCostsGoes to
Create a post1.0burned
Like0.1the author
Comment0.1the author
Reshare0.1split: author and platform
Rate a post0.1the author
Vote in a poll0.1the poll's creator
Read anything0
Upload media0

Only posting and media upload are reachable through the API today. The interaction endpoints are being added, and they will arrive with a separate scope so a person can see that an app is asking to spend, not just to write.

What this means for your app

Ask before you spend

Batiyao's own app shows a person exactly what an action will cost and who receives it, the first time they do it, and it does not let a stray tap spend silently. An app built on this API should do no less. Someone who discovers afterwards that your app spent their balance will uninstall it, and be right to.

Handle 402 as a normal outcome

Running out of balance is not an error condition to log — it is a state your user is in. Say so plainly and stop. Retrying will fail identically until they top up.

Never act on a schedule

Nothing that spends should happen without a person asking for it in that moment. Batching, cron jobs and "engagement" automation are all ways to spend someone's balance while they are not looking, and they are exactly what will get an app's access removed.

Coming with the interaction endpoints

A per-app daily spending cap, set by the person and shown in their Connected Apps settings, alongside what your app has spent on their behalf. Build as though it already exists — the cap will be small by default.