Partner terms
Version 2026-11-03
In effect from
These partner terms are for teams that build an app on Perland's partner API: another Minecraft launcher, or a web app, that lets players sign in with their Perland account and create and run their free Perland server from it. Perland is run by PerlandDev (“we”, “us”).
They add to our terms of use and privacy policy, which still apply to your team and to your players. Where these partner terms and the terms of use say different things about your app, these partner terms apply.
A team's owner accepts these terms for the team in the Developer area of Perland Panel. If you don't agree to them, don't apply.
The short version
- Players sign in on Perland's own page and choose to allow your app. They can take that back at any time.
- Use what your app receives only to serve that player. Never sell it.
- Keep secrets off players' devices, show the Powered by Perland mark, and stay within your app's limits.
- We approve apps and can suspend one at once. There are no fees.
Who can apply
The owners of a Perland team apply for an app from the Developer area of Perland Panel. Any team can apply, a free one included. Whether an app is approved is our decision. We can decline an application, and your team sees the reason; you can change it and submit it again.
The partner program is part of Perland as run by us. A Perland install run by someone else doesn't take part in it.
What your app may do
Once we approve it, your app may:
- Sign a player in to their Perland account through Perland's own sign-in page, with the OAuth 2.0 authorization code flow and PKCE, as the integration guide describes.
- Use the token it receives only on the partner part of Perland's API (the player routes, the public routes and the handoff to Perland Panel), and only for the player who signed in.
- Create, start, delete and download the world of that player's free server, list their servers, and send them to Perland Panel, signed in, for everything else.
The rest of Perland's API isn't part of the program, and a partner token doesn't reach it. Don't try to get around that, or to act for a player who didn't sign in through your app.
The player's choice
The first time a player signs in through your app, Perland's sign-in page names your app and asks the player to allow it. Act only for players who did.
A player can remove your app's access at any time under Apps with access on their Perland account. That ends every session your app has for them, and their next sign-in asks again. When Perland tells your app a token is no longer valid, stop using it and ask the player to sign in again.
Let players sign out in your app, and revoke their token when they do.
What your app receives
- The player's Perland profile: their display name, the name, picture and ID of the Discord and GitHub accounts they sign in with, and their Minecraft player name and UUID if they linked one.
- Their email address, only when the player signed in with an email code on Perland's page for your app. Otherwise your app doesn't get it.
- Their servers: their free server, the teams they own, and the servers they joined through an invite link or followed. Not the teams they only belong to.
- Their free server: its name, status, address, settings and players, and its world when the player downloads it.
- Their stats on Perland servers that report them, if your app asks for them.
How your app treats player data
- Use it only to serve that player in your app. Don't use it for advertising, to build profiles of players, or for anything the player didn't ask for.
- Don't sell, rent or share it, except with companies that handle it for you on your instructions.
- Delete it when the player removes your app's access, when they ask you to, or when you no longer need it to serve them.
- Publish your own privacy policy that says what your app gets from Perland, what it does with it and how a player can ask you to delete it, and link it where players find it before they sign in.
- Protect it, and tell us at [email protected] without delay if it leaks.
Your app, and what it does with players' data, is your responsibility under the law that applies to you. We aren't responsible for it.
Security
- An app that runs on players' devices, such as a desktop launcher, has no client secret and must not ship one. PKCE protects its sign-in.
- If your app redeems codes on a web backend, keep its client secret on that server only, never in an app, a web page or a public repository. If it leaks, replace it and tell us.
- A desktop app receives the sign-in on a loopback address (127.0.0.1 or [::1]) at a port it picks, under the path it registered. A web app uses only the exact https addresses we approved.
- Players type their Perland sign-in only on Perland's page, in their own browser. Never ask a player for a Perland password, sign-in code or token, and never embed, copy, imitate, automate or scrape Perland's sign-in page.
- Keep players' tokens in the system's credential store or somewhere as safe, and never write them to logs.
The Powered by Perland mark
Your app must show the Powered by Perland mark next to its Create server button, and on every screen where the player picks or manages a Perland server. Use the mark as we supply it: don't change its words, colours or shape, and follow its rules on size and clear space.
We publish the mark and its rules separately, in a mark kit. Until the kit is out, we send you the mark when you apply. A screenshot of the mark in place is part of your application.
Perland Launcher, our own launcher, is the only app that doesn't show the mark.
Limits
We set limits for each app: how many requests it makes a minute across all its players, and how many new Perland accounts and free servers it creates a day. The Developer area shows the limits in force for your app. We can change them, and raise them when you ask and we agree.
Past a limit, Perland refuses your app's requests for a while. Slow down rather than retrying in a loop, and don't register more apps to get around a limit.
Every free-server rule applies to players who come through your app exactly as it does to everyone else: one free server per person, a verified email, the limits on how often one can be made, and the rest of our terms of use.
Attribution
We record which app created a Perland account (when the account is made during a sign-in through it) and which app created a free server. We keep that record even if the app is later suspended or removed.
Once Perland has paid plans, we may offer apps a share of what the players they brought pay. Nothing about a share is promised now; if we offer one, it will come with its own terms.
Review of your app
We review your app before it goes live: its name, icon, website, redirect addresses and the mark in place. After approval, a new name, a new icon and a new web redirect address wait for our review, while the approved ones stay in use. Loopback addresses, your website, contact and description change at once.
Keep your app's contact email current. That's where we write to you about your app and about changes to the partner API.
Suspension and removal
We may suspend an app at once, without notice, if it breaks these terms or our terms of use, if it's used for abuse, if it stops showing the mark where it must, or if it puts players or Perland at risk. Suspending an app ends every session it has, and it can't sign anyone in until we reinstate it. Your team sees the reason in the Developer area. For the same reasons, we may also remove an app for good.
To ask about a suspension or about a decision on your application, write to [email protected] from your app's contact email. We'll look at it again; the decision stays ours.
Your team can stop using the partner API at any time. When it does, delete your players' Perland data as the section on player data says.
Fees
Joining the partner program and using the partner API are free. Neither side pays the other. If that changes, it will be in a new version of these terms.
Changes to the API
The partner API changes additively: new routes, new fields in answers and new optional parameters. Build your app to ignore fields it doesn't know. A breaking change gets a new path, an email to your app's contact address and a deprecation window before the old one stops, and is marked as breaking in the changelog.
Perland Launcher's older sign-in routes aren't part of the partner API and will be removed. Build on the OAuth sign-in only.
Names and endorsement
Approving your app doesn't mean we endorse it. Don't say or suggest that we do, or that Perland makes your app. Use the Perland name and mark only as the mark kit allows, to say that your app's servers are powered by Perland, and not in your app's name, icon or domain.
Perland is not an official Minecraft product, and is not approved by or associated with Mojang or Microsoft; your app isn't either, through us. “Minecraft” is a trademark of Mojang Synergies AB. Your app must follow the Minecraft End User License Agreement and the Minecraft Usage Guidelines.
Liability, warranty and law
The partner API and the partner program are part of Perland, so the Disclaimers, Liability and Governing law sections of our terms of use apply to them: they're provided “as is” and “as available”, our liability is limited as those sections say, and these terms are governed by the laws of the United Kingdom.
You're responsible for your app, for what it tells players and for what it does with their data.
Changes to these terms
When we change these terms, we publish a new version, named by the day it takes effect, and show it at the top of this page. Your team's owners are asked to accept the new version in the Developer area. If a change matters to how your app works, we also email your app's contact address before it takes effect. If your app keeps using the partner API after that, the new version applies.
Contact
PerlandDev, United Kingdom. Email: [email protected].