I'm currently developing a CMMS software. To allow pictures and other documents to be stored, I would like to use an Amazon S3-compatible API.

To allow this, I was thinking of using Min.io server which offer such Amazon S3-compatible REST API. min.io is distributed under AGPL 3.0

All my components are hosted on kubernetes nodes.

If I don't perform any modification on the min.io image and just use the proposed API, do I still need to open my CMMS source code ?

Seems quite similar to this question (If I use a public API endpoint that has its source code licensed under AGPL in my app, do I need to disclose my source?) the only difference is that both software are hosted at the same place.

Does this count as a derivative work or not?


1 Answer 1


No, you don't.

The AGPL Section 13 only requires you to publish the sourcecode of an AGPL-licensed program if you "modify the program". When you host an AGPL-licensed software as-is, then you have no further obligations.

And even if you were modifying min.io, that provision only applies to "users interacting with it remotely through a computer network". But your users are not interacting with min.io. They are interacting with your CMMS which then interacts with min.io. So you do not need to give your sourcecode to your users.

And even if you were modifying min.io and if your users were interacting with min.io directly, you still would only need to open-source your modifications to min.io, not your own application. Two applications communicating with each other via webservices well-satisfied the "communicating at arms length" definition of when two interacting programs do not count as a combined work according to the GPL.

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