Linked accounts and linked roles
Members link their Twitch, Kick, YouTube, Steam, Patreon or Ko-fi account; an org can then give a custom role by rule, and members can show what they're doing next to their name.
Three parts
- Connections. A member links their account on another service. The link is theirs: they can unlink at any time.
- Linked roles. An org puts a rule on a custom role ("subscribes to our Twitch channel", "owns this game on Steam"), and Ramphearth gives the role to members who qualify and takes it back when they stop.
- The activity line. An opt-in line next to a person's name: "๐ด Live on Twitch", "๐ฎ Playing Dota 2 ยท Steam".
Before you start
- Plans. Linking an account works on every plan. Linked-role rules are available on the Creator and Business plans. Self-hosted servers have every feature on.
- Who. Each member links their own accounts. Rules on roles need an Owner or Admin, like the rest of Roles.
Needs setup on the server. Each service appears under Connections only when the server's operator has set it up: a registered Twitch application, a Kick app, a Google sign-in client for YouTube, a Steam Web API key, or a Patreon client. Ko-fi needs nothing. Until then Connections says no services are set up on this server, and a role shows no Add a linked rule button. On the hosted service, ask us at [email protected]; on your own server, see the self-hosting configuration guide.
Link an account
- Open Settings โ Calendar & connections โ Connections (phone: You โ Connections).
- Choose Link Twitch (or Kick, YouTube, Steam, Patreon). You go to that service, sign in, approve, and come straight back. Ramphearth never sees your password there.
- Unlink any time. A role an org gave you for the link is taken back straight away.
Some services have a second button for the people who own the channel or campaign:
| Button | Who presses it | What it adds |
|---|---|---|
| Link as a broadcaster (Twitch) | Streamers | Lets an org follow your channel and give roles to your subscribers. Twitch asks for read-only permissions: subscriptions, followers, bits and channel-points redemptions. |
| Link as a creator (Patreon) | Creators | Lets an org connect your campaign. Patreon asks to let Ramphearth read your campaign and its members and manage its webhook. |
| Link Ko-fi by email | Ko-fi members | Ko-fi has no sign-in for other sites, so this links your verified Ramphearth email at once. Verify your address first (Settings โ Account & Security). |
Linking goes through the service's pages and comes back to the web app, so link from Ramphearth in a browser; the desktop app shows the result.
One account on another service links to one Ramphearth account. Linking it a second time elsewhere is refused ("already linked to another Ramphearth account") until it is unlinked there.
Put a rule on a role
- Make or pick a custom role: Org Settings โ Roles.
- Open it and, under Linked role, choose Add a linked rule.
- Pick the Service and fill in its rule (below), then Add rule and check now.
| Service | The rule | Options |
|---|---|---|
| Twitch | Subscribers of a channel. Whose channel lists members who linked Twitch as a broadcaster. | Subscribers at: Any subscriber (Tier 1 and up), Tier 2 and up, or Tier 3 only |
| Kick | Subscribers of a Kick channel this org follows (Integrations โ Kick). | Gifted subs count too (on by default) |
| Patreon | Active patrons of a campaign connected under Integrations โ Supporters. | Tick the tiers that count; none ticked means any paid tier |
| Ko-fi | Members of a Ko-fi page connected under Integrations โ Supporters, with a membership payment from their verified email in the last 35 days. | Membership tiers: names as Ko-fi spells them, comma-separated; empty means any membership |
| Steam | Owns a game. Give its Steam app id or its store page address (store.steampowered.com/app/570/). |
Name to show (the label admins see), At least N hours played (empty means any) |
YouTube links are only for the "Live on YouTube" line; YouTube has no rule. A role carries one rule. Changing a rule's service takes back what the old rule gave.
When it's checked
Ramphearth checks every member who linked that service:
- when someone links or unlinks,
- nightly,
- when you choose Re-check now,
- and, for a followed Twitch or Kick channel or a connected Patreon campaign or Ko-fi page, the moment a subscription, pledge or payment from a linked member arrives.
The line under the rule says how many members hold the role by it, for example "12 members hold it by this rule". Each change appears in the Audit log, with the system as the actor.
A role given by hand is never taken away
- A rule only takes back what it gave. If you assigned the role to someone by hand, no rule removes it.
- If you assign the role by hand to someone who already holds it by rule, it becomes theirs for good.
- Removing the rule takes the role back only from the people who held it by the rule.
- If the service can't be asked (a broadcaster's link lapsed, the service is down), the rule shows Last check failed: โฆ and nobody's role changes until a check succeeds.
Notes per service
- Twitch asks Twitch, with the broadcaster's own link, which linked members subscribe. If the broadcaster's link lapses, they link again as a broadcaster.
- Kick has no way to ask "is this person subscribed?", so the rule uses the subscription events Kick sent this org since it followed the channel. A subscription made before the follow counts from its next renewal; an expired one is taken back at the nightly check.
- Patreon and Ko-fi read the org's own copy of the supporter list, never the service per member.
- Ko-fi matches the member's current verified address, so changing it stops the match.
- Steam can see games and play time only when the member's profile has Game details set to Public (on Steam: Edit Profile โ Privacy Settings โ Game details). A private profile doesn't qualify, and a role held by the rule is taken back at the next check. Free games count once played.
The activity line
Off by default. Settings โ Calendar & connections โ Connections โ Share my activity turns it on, in every org you're in; turning it off hides the line at once, even if something is set. Clear removes the current line.
What sets it:
| Source | Line | Needs |
|---|---|---|
| Twitch, YouTube or Kick go-live | ๐ด Live on Twitch ยท title | The org follows that channel, you linked the account |
| Steam | ๐ฎ Playing game ยท Steam | Show what I'm playing on Steam under the Steam row, and a public Game details setting. Checked about once a minute. |
| The desktop app or a script | Anything below | A personal token with presence:write |
The line shows in the member list, Org Overview, profile cards and the Virtual Office. It's never a log: one line per person, replaced or lapsing on its own. A go-live and your own posts replace each other (the newest wins); Steam's line never replaces another one and comes back once the other has lapsed.
Set it from a script
curl -X POST https://api.ramphearth.com/v1/me/activity \
-H "Authorization: Bearer $RAMPHEARTH_TOKEN" \
-H "Content-Type: application/json" \
-d '{"kind": "playing", "name": "Elden Ring", "detail": "NG+", "ttl_seconds": 300}'
| Field | |
|---|---|
kind |
live, playing, listening, watching or custom |
name |
Required, up to 80 characters: the service or game |
detail |
Optional, up to 120 characters: the stream's title, the song |
url |
Optional https link, shown as Watch (live) or Open |
started_at |
Optional ISO 8601 time |
ttl_seconds |
10 to 86400, default 300: how long the line stays unless posted again |
The answer is { "activity", "visible" }. visible: false means the person hasn't turned on Share my activity (the answer carries a hint); the line is kept and shows the moment they do. Post again while the activity goes on, and clear it with DELETE /v1/me/activity when it stops. A bot token gets 403: bots have no line. See set, read and clear in the API reference.
Steam
Steam signs you in with "Sign in through Steam" (OpenID). That proves which Steam account is yours and nothing else: Ramphearth gets no password and no access to your account. Ramphearth checks Steam's answer with Steam itself before it trusts it, so nobody can link an account that isn't theirs.
What data moves
Ramphearth never sells or shares data, and nothing moves until a member links an account.
- For every link: the account's id on that service, its display name and avatar, and the service's access token where there is one, encrypted. Steam links keep no token. A Ko-fi link keeps a one-way key made from your email address, never the address.
- Twitch subscriber rules: Ramphearth sends Twitch the Twitch ids of linked members, with the broadcaster's link, to ask which of them subscribe.
- Steam: Ramphearth reads your public name, avatar and current game about once a minute (only while Show what I'm playing on Steam is on), and whether you own a game and your hours in it (only in orgs with a Steam rule). It keeps the last game seen and whether your profile is public, overwritten each time and deleted when you unlink: never a history of what you played.
- Activity line: only the current line, which lapses on its own.
- Unlinking deletes the link, and any role a rule gave you for it is taken back.
Limits
- Starting or finishing a link: 20 times per 15 minutes per address.
- Re-check now: 10 a minute.
POST /v1/me/activity: 60 a minute, plus your token's usual budget.
Troubleshooting
- "No one in this org has linked Twitch as a broadcaster yet": the streamer links with Link as a broadcaster first.
- "This org doesn't follow a Kick channel yet", "Connect a Patreon campaign first", "Connect a Ko-fi page first": set up the source under Org Settings โ Integrations first.
- "Verify your email address first" when linking Ko-fi: verify it under Settings โ Account & Security.
- Steam shows nothing while you play: tick both Show what I'm playing on Steam and Share my activity, and set Steam's Game details to Public.