Is there a way for ChatGPT to identify users?

Here goes my question: is there a way to get ChatGPT to obtain and use OpenAI user ids?

context: I’m building a prototype for a “journaling” plugin, which enables ChatGPT to store information long-term. The idea is that each user has a private and permanent journal that ChatGPT can use to make notes. For example:

I’m now trying to add user accounts to this prototype, and would LOVE for ChatGPT to automatically select a user id to pass to the plugin API. I’m trying to prevent having users leave the chat UI to create an account.

The alternative flows I see:

  1. Have a “createUser” endpoint, and have the plugin API return a secret UUID, which the user can paste to future conversations to retrieve their journal entries. This seems clunky but at least keeps users in the chat interface.
  2. Have users create accounts on the plugin’s website, and have them copy a token on plugin install (clunky too, and not recommended by docs)
  3. ChatGPT somehow sends the OpenAI user’s id to the journal plugin API.

Is number 3 possible? planned? is there a good reason for hiding user ids from ChatGPT?
Remember, the idea is to allow users to start new conversations and have ChatGPT get their journal entries fast and securely.

Thanks in advance!

5 Likes

I see this as a very valid need - in many cases we’ll need to know who is requesting information. Cases like Expedia or OpenTable are “open” to the general public, but other applications require access on a per-user basis. I wonder if there will be a way to handle this.

Alternatively, can we call the plugins via API? in that case we would have to create the UI to the chat feature, put it behind a wall (user/password), and at that point we’ll know who’s signed up and the system can grant access to the information that belongs to that user.

Thoughts?

3 Likes

You could require an oauth verification of the user and use the UID or token from this to identify users in future sessions. If you need additional information from the user, just prompt them for things like their email and save it to a db with the uid and api, define it as a path: parameter in the specification.yaml

3 Likes

Plus 1 on both points.

I think at a minimum, having an option like “OpenAI login” would be super helpful. Being able to correctly identify users for Plugins that are exclusively on the ChatGPT platform would be huge.

3 Likes

Same here!

We need to be able to identify at session level to serve user with stateful service. For example, in EthGPT we want to be able to let user do WalletConnect and they shall be able to preserve session id for this mechanism to work.

2 Likes

Use an intermediary page that enables metamask and return the value in a subsequent api call via a prompt. See my OpenAi api plug-in…

I also agree that this would be the best case.

an OPEN ai Login page workflow

Making our own outh for only chat gpt based apps feels clunkier than needed since the user using the app already has a verified account with OpenAI we could leverage for better UX.

2 Likes

Good question. Only way I’ve found so far to (kinda) identify users is in the request headers. As of this month, there are:

“openai-ephemeral-user-id”,
“openai-conversation-id”,
“openai-subdivision-1-iso-code”

I don’t know if it helps but you can implement passwordless email signup without effort in 5 minutes by using www.pluginlab.ai :slight_smile:

Hey champ! @kevinpiac

Interesting project, I’m always happy to see people help each other :heart:

I’ve noticed you posted the same YouTube video a few times over the last 15-20 minutes, consider making a separate topic about your tool, it will make it a lot easier for you to share all the cool stuff it can do, if you post the same link too many times, the one of the bots might mark it as spam :laughing:

1 Like

Yeah, thanks for the feedback I appreciate it. I’m going to remove them :slight_smile:

Providing the OpenAI user ID would be real trouble, privacy and even security wise.
However, generating a per-plugin per-user ID on the OpenAI side, that was private to your plugin, would be useful, and reasonably safe!

2 Likes

You’re right. At the moment, implementing the OAuth flow seems to be our best course of action for user authentication. I’m completely on board with your idea of a user/plugin solution - it sounds like a great way to help us as plugin developers easily identify users, improving the overall plugin experience. We should definitely keep this conversation going!

1 Like