Oh, well then. If you have a database and web api in front of it that used for you website.
The user logs into your website via oauth through ChatGpt CustomGPT. They have their own session. Whatever they upload to your web service could be “owned/related” by that person.
Depending on the roles and security you have set up for example if lyrics are viewed by everyone. Then in that a table whenever they make updates to it - it would be viewable through all users.
There is no scaling issues because everyone has their own independent session with your website and each customGPT is just a session. No different than as if they visited your home page and logged in.
You would need to decide on your access roles and work out when and how things were updated.
If I upload something from my chatgpt custom gpt session and then if another user uploads either exact same thing or slightly different which gets shown to all users. If you didn’t want to use a database you could use a object store and store things by checksums for filenames like <user uuid>-<song-id>.txt
.
In your home page when all users are viewing all the songs maybe the see all entries in the bucket or maybe they only see entries related to their <user uuid>.
Similar back in the custom gpt your web service could allow them to pull any song from that bucket or just songs with their <user uuid>
. It really comes down to how you intend to setup roles and permissions.
Everyones using the customGPT is going to come down to their plan so if they are on a plus plan will have those limitations. Usually, or many times, when you are designing a REST API you will design that Rest API with openapi/swagger defintion that the frontend gets tested against. There is no reason you can’t just copy and paste that openapi definition into a custom action for yoru customgpt so it can make all the same calls that your frontend would make.
There are so many way of doing everything it’s not to go down with a rabbithole.
Your charge would have to be your website fee to access web interface or or enable their login through the customGPT.
Rate limits don’t apply to your customGPT, in a a universal sense, that I am are of. It’s a benefit to ChatGPT and is adding value to the ChatGPT Plus by you offering it through ChatGPT.
To start with you could look at using API Gateway, Lambda, and S3 to put together something simple just to get a customGPT up and running and then add the frontend later.
Shameless plug, go into my MultiPersonaGPT and say “add a team of AWS expert developers to guide me through settting up a webservice with API Gateway, Lambda, and S3 that can be used with a ChatGPT CustomAction”.
Maybe I’ll add the IaC and you can just download it and run if you have AWS if you’d be interested. Feel free to ask specific quesitons I only mentioend didn’t want to hijack it out of respect for the orgiinal post incase they were getting notifications.