API tokens let you connect your own tools, scripts, and integrations to your WisePub site. Instead of sharing your login, you generate a personal token that authenticates requests on your behalf — and you decide exactly which actions that token is allowed to perform.
This guide walks you through creating a token, choosing its permissions, using it to call the API, and revoking it when you no longer need it.
Prerequisites
Before you begin, make sure you have:
- An account with backend access (the same access that lets you reach the admin area). If you don’t see the API Tokens tab described below, ask your administrator to grant you access.
- A basic understanding of how to make an HTTP request (for example with
curl, Postman, or your own code). No coding is required to create a token — only to use it.
Note: API tokens are a developer-focused feature. If the feature isn’t enabled on your site, the API Tokens page won’t appear. Contact your administrator to have it turned on.
Step 1: Open the API Tokens Page
- Click your user menu in the top-right corner and go to your account settings.
- In the settings navigation, click the API Tokens tab.

Expected Result: You land on the API Tokens page, where you can create new tokens and manage existing ones.
Step 2: Create a Token
Objective: Generate a new token with a clear name and only the permissions it needs.
- In the Name field, enter a descriptive name that reminds you what the token is for — for example,
Zapier integrationorNightly export script. - Under Permissions, check the boxes for the actions this token should be allowed to perform. Use Select all if the token genuinely needs every permission, but it’s safer to grant only what you need.
- Read and check the terms acknowledgement box confirming you’ll keep the token secret and treat it like a password.
- Click Create.

Expected Result: The token is created and its secret value is shown to you.
Pro Tip: Create a separate token for each integration. That way, if one needs to be revoked, your other integrations keep working.
Step 3: Copy Your Token — You’ll Only See It Once
As soon as the token is created, WisePub displays the full token value in a pop-up. This is the only time the full token will ever be shown.
- Click Copy to copy the token to your clipboard.
- Paste it somewhere safe and private (a password manager is ideal).
- Click Close.

Expected Result: Your token is saved securely on your side. On the API Tokens page it now appears in the list, but only its name and permissions are shown — never the secret again.
Pro Tip: If you lose the token or think it may have been exposed, don’t worry about recovering it — simply revoke it and create a new one.
Step 4: Use Your Token to Call the API
Send your token in the Authorization header of each request as a Bearer token:
Authorization: Bearer YOUR_TOKEN_HERE
For example, to list your rooms:
curl https://YOUR-SITE.com/api/v1/rooms \
-H "Authorization: Bearer YOUR_TOKEN_HERE" \
-H "Accept: application/json"Replace YOUR-SITE.com with your WisePub domain and YOUR_TOKEN_HERE with the token you copied.
Each endpoint requires the matching permission. If your token is missing the permission an endpoint needs, the request is rejected with a 403 Forbidden response. If the token is missing or invalid, you’ll get a 401 Unauthorized response.
Pro Tip: Always send an
Accept: application/jsonheader so the API returns clean JSON responses.
Available Permissions
Each permission unlocks a specific set of API actions. The permissions available to you depend on which features are enabled on your site.
| Permission | What it allows |
|---|---|
| Read rooms | List rooms and their settings. |
| Read chat | Retrieve chat messages from rooms. |
| Post chat | Post chat messages to rooms. |
| Read recordings | List room recordings and their video publications (Vimeo, Mux and other providers). |
| Read private messages | List your private conversations and read their messages. |
| Reply to private messages | Reply to your existing private conversations. |
| Read subscriptions | List subscriptions (useful for targeting announcements). |
| Read announcements | Retrieve announcements. |
| Post announcements | Create and publish announcements. Add Post chat to also post them into chat rooms. |
| Read posts | List posts and post categories. |
| Create posts | Create and publish posts. |
| Write live notes | Start, update and delete a room’s live show notes from Markdown and upload their images. Only offered when live notes are enabled on your site; the token’s owner needs permission to edit posts, and the shared site API key cannot be used. |
| Read pages | List pages and read their content. |
| Write pages | Create and update pages, including which subscriptions protect them (removing every subscription makes a page public). Page body HTML is sanitized. |
| Write raw page HTML | Set a page’s raw HTML and canvas mode, stored without sanitization. Grant only to fully trusted integrations. |
| Read ad zones | Read the site’s ad zone snippets. Administrators only. |
| Write ad zones | Replace or clear ad zone snippets. They are stored and rendered as-is, scripts included, on every page of the site. Grant only to fully trusted integrations; administrators only, and every update is audited (the API audit entry omits the snippets; the settings change history keeps the old and new values, as for a save from the settings page). The shared site API key cannot be used for either ad zone permission. |
| Read portfolios | List portfolios and retrieve their trades. |
| Post trades | Post trades into a portfolio. |
| Export users | List users, their subscriptions, subscription history and login activity. Contains personal data; every request is audited. |
About the Export Users Permission
Export users is held to a higher standard than the other permissions, because it hands member personal data to an outside system.
- It has to be switched on for your site. The user export is an optional feature. If you don’t see Export users in the permission list, ask your WisePub contact to enable it. If it is switched back off later, tokens that already hold it stop working right away and the export endpoints answer 404 Not Found.
- Only administrators can use it. The permission is offered only to users with the Admin role. A moderator who can view users in the backend still cannot use an Export users token — those requests are rejected with 403 Forbidden.
- Every request is recorded. Once a request clears the checks above it writes an entry in your site’s activity log showing who made it, which token was used, which endpoint was called, what was asked for and the status it came back with — including requests that were then rejected as malformed. Requests turned away by the checks above never get that far and are not recorded. If activity logging is switched off on your site the export stops answering rather than hand out personal data with no trail.
It unlocks six read-only endpoints:
| Endpoint | Returns |
|---|---|
GET /api/v1/users |
Your users, with their roles and subscriptions |
GET /api/v1/users/{id} |
A single user |
GET /api/v1/subscriptions/{id}/users |
Everyone holding one subscription, each person listed once |
GET /api/v1/subscription-users |
Every subscription assignment, current and lapsed |
GET /api/v1/subscription-events |
The history of subscriptions granted, changed and revoked |
GET /api/v1/logins |
When each member signed in |
The user lists are paged (?per_page=, up to 100 per page) and the two history feeds are paged by cursor — pass the next_cursor value back as ?cursor= to pick up where you left off. To pull only what changed since your last sync, add ?updated_since= (users and assignments) or ?since= (the history feeds) with a Unix timestamp in seconds.
A few things worth knowing before you build against it:
- Renewals leave the old assignment behind. A member who renews has more than one row in
subscription-usersfor the same subscription. The user lists still show that person once, and theactivefilter follows the member rather than the row: a renewed member counts as active and is never also returned as lapsed. - Each subscription on a user carries two flags.
activeis the switch stored on that one assignment;entitledsays whether it actually opens the door right now — switched on, and not past its end date. - A change entry says what moved. An entry in
subscription-eventsfor a change carries achangesblock listing only the fields that were touched, each with its old and new value. The plainstart_date,end_dateandactivevalues alongside it show where the subscription stood after the change, and read empty for anything the entry did not touch. - The two history feeds run about 30 seconds behind. That gap is deliberate: it makes sure a record written by a slower operation is never skipped over. The most recent half-minute simply shows up on your next poll.
- History is kept for a year. Subscription events and sign-ins older than 365 days are cleared out, so the feeds are a rolling window — pull often enough that your own copy is the long-term record. The
last_login_atfield on each user was filled in from that same window when it was introduced, so a member whose last sign-in predates it stays empty until they sign in again.
Passwords, two-factor secrets, phone numbers, admin notes and the IP addresses recorded with each sign-in are never included in the export.
Step 5: Revoke a Token
If a token is no longer needed — or you suspect it has been exposed — revoke it right away.
- On the API Tokens page, find the token in the Manage API Tokens list.
- Click Revoke next to it.
- Confirm by clicking Revoke in the pop-up.

Expected Result: The token stops working immediately. Anything using it — including scripts, integrations, or a connected mobile device — will lose access until you issue a new token.
Tips & Best Practices
- Name tokens clearly. A name like
Marketing Zapieris far easier to manage thantoken1. - Grant the least access needed. Only check the permissions an integration actually uses.
- One token per integration. This limits the impact if a single token has to be revoked.
- Never embed a token in public or client-side code. Keep it on your server or in a secure secrets store.
- Rotate tokens periodically. Create a fresh token and revoke the old one to reduce risk.
- Revoke immediately if exposed. A revoked token can’t be used, so replacing a leaked token takes only seconds.
Summary
API tokens give you a secure, permission-scoped way to connect external tools to your WisePub site without sharing your password. Create a token from the API Tokens page, grant it only the permissions it needs, copy the secret value once, and send it as a Bearer token in your API requests. When a token is no longer needed, revoke it — the change takes effect instantly.
Use WisePub with an AI Agent (Advanced)
If your AI assistant supports skills — a set of instructions it loads on demand — you can hand it everything it needs to operate your WisePub site through the API: reading and posting chat, listing rooms and recordings, publishing announcements (optionally into chat rooms) and posts, creating and editing pages, writing a room’s live show notes, updating ad zones, managing portfolio trades, and exporting users and their subscription history.
To set it up, create a file named SKILL.md, click Copy below, and paste the content into that file. Then add the file to your AI agent.
Before you use it, replace <your-wisepub-domain> and <host> in the skill with your own WisePub site address — for example, app.yoursite.com. You don’t need to put your API token in the file: generate one using the steps above, grant it only the scopes your agent needs, and provide it to your agent when it asks.
Related Features
- Post Announcement API – See how the announcement permissions let your integrations create and publish announcements.
- API Documentation for User Management – Learn more about WisePub’s API for managing your users.
- API adding members subscriptions – Add members and assign subscriptions through the API.