Developers
Build on Linktotem
One REST API for every page an account owns: profiles, pages, blocks, design, audience and analytics. Made for agencies that run many pages and for anything you want to automate.
What you can do
Profiles
List, create, rename and delete the pages an account owns, with the same quota as the dashboard.
Blocks
Add links, headings, text, social icons, media and folders; change them, hide them, reorder a whole page.
Design
Read the theme of a profile and replace it: colours, fonts, background, buttons, header.
Audience
Poll form responses and subscribers with `since=`, and feed them into your CRM.
Insights
Visits, clicks, channels and countries for any period, and a picture of the published page.
curl https://linktotem.com/api/v1/profiles \
-H "Authorization: Bearer app_live_…"const res = await fetch("https://linktotem.com/api/v1/profiles/" + id + "/blocks", {
method: "POST",
headers: {
"Authorization": "Bearer " + process.env.LINKTOTEM_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({
type: "link",
payload: {
title: "New episode",
destination: { type: "url", value: "https://example.com/ep-42" },
},
}),
});
const block = await res.json();Endpoints
Everything hangs off https://linktotem.com/api/v1. The reference has every field, every error and a console to try them in.
- GET/profilesEvery profile of the account.
- POST/profilesA new profile, within the plan's quota.
- GET/profiles/{id}/pagesThe pages of a profile.
- GET/profiles/{id}/blocksThe blocks of a page, in order.
- POST/profiles/{id}/blocksAdd a block to a page.
- PATCH/blocks/{id}Change a block; a block never changes type.
- POST/profiles/{id}/blocks/reorderReorder a whole page in one call.
- PATCH/profiles/{id}/stylesReplace the theme of a profile.
- GET/profiles/{id}/submissionsForm responses, newest first.
- GET/profiles/{id}/subscribersSubscribers, newest first.
- GET/profiles/{id}/analyticsVisits and clicks for whole UTC days.
- GET/profiles/{id}/screenshotA JPEG of the published page.
Good to know
- Keys are made in Settings › API, shown once and scoped to read or to write. They belong to an account and reach every profile of it.
- 120 requests a minute per key, of which 30 may change something. Over the limit you get a 429 that says how long to wait.
- Writes go through the same validation and the same safety checks as the editor, and the public page is rebuilt before the response comes back. There are no drafts: a change is live.
- There is no separate developer plan: the API is part of Pro, with the profiles you already pay for.
Start with a key
Create an account, go to Settings › API and make your first key. The reference works with it straight away.