Продавайте своё десктопное приложение.
О ключах позаботимся мы.
Генерируйте, активируйте и проверяйте лицензионные ключи через один крошечный API — привязанные к устройству активации, пробные периоды, отзывы лицензий. Создано инди-разработчиком, которому это было нужно. Теперь открыто для каждого инди-разработчика.
$ curl -X POST api.sublimearts.io/v1/licenses -d '{"product":"my-app"}'
MYAPP-·····-·····-·····-·····
КАК ЭТО РАБОТАЕТ
Три запроса. Это вся интеграция целиком.
Зарегистрируйте продукт
Один запрос. Выберите slug и префикс ключа — готово.
curl -X POST api.sublimearts.io/v1/products \
-H "Authorization: Bearer $SUBLIMEKEYS_API_KEY" \
-d '{"slug":"my-app","key_prefix":"MYAPP"}'Выдавайте ключ при каждой продаже
Вызывайте это из вебхука Stripe или Gumroad — ключ возвращается уже готовым к отправке по email. (Или вовсе пропустите этот вызов — см. AUTOMATE в доках.)
curl -X POST api.sublimearts.io/v1/licenses \
-H "Authorization: Bearer $SUBLIMEKEYS_API_KEY" \
-d '{"product":"my-app","email":"buyer@mail.com"}'
→ "MYAPP-K3F7Q-9WZ2M-P8RT4-XN5CB"Проверяйте внутри приложения
Привязанная к устройству активация, офлайн-проверка через подписанный lease (до 7 дней без сети не требуется), отзыв лицензии при возврате средств.
from sublimekeys import SublimeKeysClient
client = SublimeKeysClient(product_id="my-app")
result = client.verify(license_key=key)
if result.valid:
unlock_full_version()Python? pip install sublimekeys — официальный SDK, сам занимается офлайн-проверкой. Смотреть на PyPI → · Node.js / Electron? npm install sublimekeys Смотреть на npm →
ЦЕНЫ
Начните бесплатно. Апгрейд — когда он себя окупит.
1 продукт · 100 ключей · 5 устройств/ключ
5 продуктов · 1 000 ключей · 25 устройств/ключ
неограниченно продуктов и ключей · 100 устройств/ключ
FAQ
Вопросы, которые действительно важны.
Что будет с моими лицензиями, если SublimeKeys закроется?
Ваши данные никогда не окажутся заложником: каждый ключ и активацию можно в любой момент экспортировать через API (GET /v1/licenses) без каких-либо разрешений. Если мы когда-нибудь свернём сервис, платящие клиенты получат уведомление за 12 месяцев и полный экспорт данных. А поскольку этот же API питает наши собственные продукты — ReelNox Studio, BackDrop_, TimePeek — поддерживать его живым жизненно важно и для нас самих.
Должны ли мои пользователи быть онлайн?
Только при первой активации, а дальше — примерно раз в неделю. Каждый вызов /activate и /verify возвращает криптографически подписанный lease, действительный 7 дней — проверяйте его локально, без сетевых запросов, без слепого доверия. Официальные SDK для Python и Node.js/Electron делают это автоматически; на других языках можно самостоятельно проверить подпись Ed25519 (см. доки).
Что будет, если я достигну лимита своего плана?
Ничего не сломается. Существующие ключи продолжают активироваться и проверяться вечно — вы просто не сможете выпускать новые, пока не сделаете апгрейд. Ваши клиенты вообще ничего не заметят.
Что будет, если я понижу план или отменю подписку?
Ничто и никогда не удаляется, не приостанавливается и не отзывается — ни ваши продукты, ни один-единственный ключ лицензии. Всё продолжает работать точно так же, как и раньше, навсегда — и для вас, и для каждого клиента, уже купившего у вас ключ. Единственное, что меняется: вы не можете создавать новые продукты или ключи сверх лимитов нового плана, пока не сделаете апгрейд снова. Программное обеспечение ваших клиентов никогда не должно ломаться из-за решения, принятого на вашей стороне.
Где хранятся мои данные?
В ЕС — на выделенной инфраструктуре в Нюрнберге, Германия, везде HTTPS. Ваш API-ключ хранится только в виде SHA-256 хеша: физически мы не можем прочитать его обратно.
Как отозвать ключ?
Продукты → выберите продукт → Управление ключами. Найдите ключ (по email или самому ключу) и нажмите «Отозвать» — это происходит мгновенно и необратимо, именно так, как и должен работать возврат средств. Под капотом это DELETE /v1/licenses/{key}, ограниченный так, что вы можете затронуть только свои собственные ключи.
На скольких устройствах может активироваться одна лицензия?
Сколько решите сами, до потолка вашего плана. Передайте max_activations при выпуске ключа через POST /v1/licenses (по умолчанию 1, если не указано). Продаёте «личное использование, 3 устройства»? Установите значение 3. Сам потолок на один ключ масштабируется вместе с вашим планом SublimeKeys — 5 на Free, 25 на Pro, 100 на Business — так что один утёкший ключ никогда не распространится дальше этого предела, независимо от вашего плана. Полный список полей — в доках.
Могу ли я перенести данные с Gumroad, Keygen или собственного сервера?
Да. Массово выпустите ключи для существующих клиентов с помощью реального скрипта на десять строк — точный код см. в разделе MIGRATE в доках. Префиксы ключей настраиваются, поэтому новые ключи будут соответствовать вашему бренду с первого дня. Это перевыпускает ключи для ваших клиентов, а не сохраняет старые строки ключей — доки объясняют этот компромисс.