I want to open source an HTTP Client for a closed source software product.

The vendor of this product distributes the binary packages / executables only in forums / repositories which require proper authentication. In addition, the product requires a license key to be usable. Without this key, the program would not work.

My overall impression is that this vendor prefers to not publicly expose both documentation and the actual software but instead wants to control who has access to their software.

My question: Can I open source an HTTP client for the API which this software product exposes? And if so, are there license models which I should avoid?

  • 3
    How will you develop this? Do they document the API? Are you reverse-engineering the current client?
    – MadHatter
    Commented Dec 12, 2023 at 13:47
  • 1
    Are you currently a licensed user (with product key)? Are there any clauses in the current license? And have you thought about talking to the vendor about your intentions? Commented Dec 12, 2023 at 18:17
  • 1
    The API is documented and this documentation is available via forums which require a login. Hence I am simply implementing a client based on available documentation. - I hold a valid product key which is officially sourced by that vendor which I am also in contact with. I have not yet discussed this with the provider but I will do that. I would be happy to share the work and figured the provider can only benefit from this. My intention here is to understand if there are common ways to handle this scenario.
    – FabianTe
    Commented Dec 12, 2023 at 20:04

1 Answer 1


Based on the documented API, which you have received from the copyright holder, you can certainly create an HTTP client and use it for yourself.

The question --which is difficult to answer-- is if you may publish (open-source or not) this client. Because by publishing your code you might be revealing part of the API documentation. If your access to the documentation of the API is linked to your agreement to a NDA, then this will become tricky. You would need a lawyer to understand the details of the NDA (but this site is not the right place to discuss this).

I recommend that you reach out to the vendor of the software product and discuss it with them. It is possibly a question if the software vendor feels that the API contains a lot of their know-how. Maybe they say 'no' and you might not want to enter into a fight with them. Maybe they say 'yes' and you can go ahead with your open-source plans. Maybe they even welcome it and start paying you to maintain the open-source tool.

This recent question and its answer might give you some ideas why the vendor might (or might not) like your idea.

  • I have discussed the general topic with collegues and continued to research this. Your answer and the other comments all lead to the same thing: If there are no explicit agreements / prohibitions discussing this with the vendor seems like a good choice. Aside from that: I have seen that other customers of this vendor open-sourced similar code, which may indicate that the vendor is fine with this. AFAICS there is no single answer to this, that's why I will pick this one, thanks!
    – FabianTe
    Commented Dec 17, 2023 at 13:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.