Velvet Developer Terms
Draft for legal review, not yet in force (version
v0, 18 Oct 2026). You accept versionv0when you create an app. We'll ask you to accept the reviewed version before you get a live key.
1. Who these terms are between
1.1 These terms are a contract between you and Velvet Technologies GmbH, Ahornweg 9, 22395 Hamburg, Germany (Amtsgericht Hamburg, HRB 192449), "Velvet", "we", which operates this site.
1.2 "You" means whoever creates a developer account and builds with Velvet. You must be 18 or older. Two kinds of developers are welcome:
- Business developers: companies, and people building in their trade or profession (Unternehmer, § 14 German Civil Code, BGB). If you act for a company, you confirm you may bind it.
- Hobby developers: people building privately, for themselves or for fun (Verbraucher, § 13 BGB).
Most terms apply to both. Where they differ, a clause says so, and mandatory consumer rights always stay with hobby developers: nothing in these terms limits them.
1.3 You accept these terms when you create an app or an API key.
2. What these terms cover
2.1 They cover the Velvet Toy SDK and its documentation, API keys (publishable vr_pk_… and secret vr_sk_…), the developer portal, and the services behind them, including Velvet Live for cam sites (together, the "Services").
2.2 The SDK code is open source under the MIT License. These terms don't limit that licence. They govern the keys, the Services, and how you use them to control people's toys.
2.3 Commercial partner deals, such as revenue shares, fees or production terms for cam sites, are agreed separately in writing and take precedence over these terms where they conflict.
3. Your licence
3.1 We give you a free, worldwide, non-exclusive, non-transferable, non-sublicensable and revocable right to use the Services to build and run your own apps that control Velvet toys, for as long as these terms apply.
3.2 You may not:
- resell, rent or give others access to the Services or your keys
- build a product whose main purpose is to replace or repackage the Velvet API or SDK
- get around or probe our security, rate limits or key checks
- reverse engineer the Services, beyond what § 69e German Copyright Act (UrhG) allows for interoperability
- use data from the Services to train AI models, except for features of your own app that its users have agreed to.
4. Test keys, live keys and app review
4.1 Test keys are for development and private apps, and work on the origins you register (localhost always).
4.2 A public app needs a live key. We review your app before issuing one and may approve, ask for changes or refuse at our discretion. We'll tell you why when we refuse. Our review is a safety check, not an endorsement. You stay responsible for your app.
4.3 After approval, tell us before you change what your app does with the toy, who it's for or what data it collects.
5. Keys
5.1 Publishable keys may sit in your web page or app; they only work on the origins or app IDs you register.
5.2 Secret keys must stay on your server. Never put them in a web page, a mobile app, a public repository or a log, and store them encrypted.
5.3 Use each key for one app. You're responsible for everything done with your keys.
5.4 Tell us within 48 hours if a key may be compromised. We may rotate, limit, suspend or revoke a key at any time to protect people or the Services.
6. Consent and adults only
6.1 Your app may control a toy only with the clear, ongoing consent of the person using it. They must be able to withdraw that consent and stop the toy at any moment.
6.2 Your app must be for adults only (18+). It must not target, depict, involve or be marketed to minors. Use age checks appropriate to your app and where it's offered.
6.3 You must not:
- control or let anyone control a toy without its user's knowledge
- use toys for coercion, harassment, blackmail or humiliation without consent
- let unverified strangers control a toy unless its user explicitly chose that (for example tips on a cam site the performer set up)
- encourage use in public without the consent of everyone affected.
6.4 Remote control between people (partners, viewers, performers) must make clear who is in control and let the toy's user end it with one action.
7. Safety
7.1 Keep the SDK's safety limits: strength caps, command durations, auto-stop, the heating auto-off and stop on disconnect. Don't send commands to a toy outside the SDK in a public app.
7.2 Always show a visible, working Stop control wherever your app can start the toy.
7.3 Don't use the Services where a failure could reasonably cause injury, and make no medical or therapeutic claims about your app.
7.4 Tell us at the security contact in the portal within 72 hours of finding a bug, in your app or ours, that could make a toy behave unexpectedly.
8. Your users' data
8.1 What we receive. The SDK sends us your key, your app's origin or ID and the SDK version, plus what a feature needs to work, such as Velvet Live tips. It sends nothing about how your users use their toys.
8.2 You are the controller of the personal data your app processes. Data about how someone uses an intimate toy can reveal their sex life, a special category of data under Art. 9 GDPR. So:
- get explicit consent before collecting usage data, and collect only what your app needs
- publish a privacy policy your users can read before they connect a toy
- never sell usage data or share it with advertisers, data brokers or for profiling
- give users an easy way to delete their data, and delete it when you no longer need it or when these terms end
- tell affected users, and us if a Velvet feature is involved, without undue delay after a data breach.
8.3 Follow the data protection laws that apply to you, such as the GDPR and India's Digital Personal Data Protection Act 2023. Where we process personal data on your behalf, we'll sign a data processing agreement with you.
9. Rate limits and changes to the API
9.1 We set rate limits and quotas and may change them. Higher limits need our written agreement.
9.2 The Services are free and offered without a service level. We may change or retire API features; for breaking changes we'll give at least 30 days' notice where we reasonably can, and publish them in the changelog.
10. Brand and showcase
10.1 You may say your app "works with Velvet toys" and use the logo we provide, following our brand guide. Don't use "Velvet" in your app's or company's name, or suggest that Velvet made, endorses or partners with your app, unless we've agreed in writing.
10.2 We list your app in our showcase only if you ask us to. If you do, you allow us to use its name, description, images and link for that.
11. Your app is yours
11.1 You own your app and its content and are responsible for it, its support, its terms with your users and its compliance with local law, including laws on adult content where you offer it.
11.2 You're responsible for how your own users use your app with the Services.
11.3 You're free to build for other toy brands and publish anywhere.
12. Feedback and confidentiality
12.1 If you send us feedback or ideas, we may use them without obligation to you.
12.2 Keep non-public information we share with you confidential, such as beta features, unpublished docs and secret keys, for as long as it isn't public.
13. Suspension and ending
13.1 We may suspend keys or apps immediately, without notice, if there's a risk to people's safety, privacy or the Services, or if we reasonably suspect a serious breach. Otherwise we'll warn you first and give you 14 days to fix the problem.
13.2 Either side may end these terms at any time with 30 days' notice, and immediately for serious cause (wichtiger Grund).
13.3 When they end, stop using the Services and our brand and delete secret keys; we revoke your keys. Sections 6–8, 11, 12, 14, 15 and 18 survive.
14. Liability
14.1 We are fully liable for intent and gross negligence, for injury to life, body or health, under the Product Liability Act (Produkthaftungsgesetz), for fraudulently concealed defects and under any guarantee we give.
14.2 For slight negligence we are liable only for breaching an essential obligation (one that makes the contract possible and that you may normally rely on), and only for damage that is typical and foreseeable for this kind of contract.
14.3 Otherwise our liability is excluded. Because the Services are free, the rules for gifts and loans also apply where they favour us (§§ 521, 599 BGB).
14.4 These rules also apply to our employees, agents and representatives.
14.5 For hobby developers, these limits apply only as far as the law allows them against consumers.
15. Indemnity
15.1 Business developers: where you're responsible for it (zu vertreten), you'll indemnify us against third-party claims arising from your app, your breach of these terms, or a breach of data protection or consent rules, including reasonable defence costs. We'll tell you promptly about such a claim and let you take part in the defence. This doesn't cover claims caused by our own intent or gross negligence.
15.2 Hobby developers don't give this indemnity. You're liable to us only under the law, for damage you're responsible for.
16. Changes to these terms
16.1 We may change these terms for good reason (new features, changes in law or case law, safety or security), but not your core rights under them.
16.2 We'll tell you at least 6 weeks before a change takes effect, by email, with the changes highlighted. If you don't object before then, the change applies, and we'll remind you of this in the notice. If you object, either side may end these terms when the change would have taken effect.
16.3 Changes that the law or safety require can take effect sooner.
17. Sanctions and export
You must comply with EU, German and other applicable sanctions and export laws. You may not use the Services if you're on a sanctions list or in an embargoed country or region. We may end these terms immediately if this changes.
18. Law, courts and general terms
18.1 German law applies, excluding the UN Convention on Contracts for the International Sale of Goods (CISG).
18.2 Business developers: the courts of Hamburg have exclusive jurisdiction where the law allows.
18.3 Hobby developers: if you live in the EU, you keep the protection of the mandatory consumer laws of your country, and you may take us to court there or in Hamburg; we can take you to court only in your country. We are neither obliged nor willing to take part in dispute resolution before a consumer arbitration board (§ 36 VSBG).
18.4 If one clause is invalid, the rest stays in force. You may transfer these terms only with our written consent.
18.5 These terms, the documents they refer to (brand guide, data processing agreement) and any written partner agreement are the whole agreement. Changes need text form. If we publish a German version, the German version governs.