GPT Builder: "Update" wipes OAuth Client ID/Secret on every publish (412 on Sign in)

When editing a Custom GPT that uses OAuth authentication for Actions, clicking Update (to publish any change — schema, instructions, anything) silently clears the saved Client ID and Client Secret. The Authentication panel resets both fields to the <HIDDEN> placeholder (empty), so the GPT ends up with an incomplete OAuth config.

Symptom for the end user: clicking “Sign in” throws 412 “Precondition failed” / “There was a problem with your request (412)” — and no request ever reaches the OAuth provider’s /authorize endpoint (confirmed via server logs: zero hits). The client fails locally because client_id is empty.

Repro:

  1. Configure an Action with Authentication = OAuth, fill Client ID + Secret, publish (works).
  2. Edit anything (e.g. the schema) and click Update again.
  3. Try to Sign in → 412, and Client ID / Secret are now empty in the panel.

Impact: every schema/instructions edit silently breaks login until the secrets are manually re-entered. Easy to misdiagnose — we chased backend and redirect-URL issues for hours before realizing the panel had wiped the credentials.

Extra: re-entering the secrets via anything but real keyboard typing (programmatic paste / autofill) doesn’t persist through Save — the controlled input reverts to empty. Only human typing sticks.

Ask: persist OAuth Client ID / Secret across Update, or at minimum warn when publishing an OAuth-configured GPT with empty credentials.

Thanks for taking the time to document this so clearly, @rodpaschoal. The detailed repro steps, the 412 behavior, and your confirmation that no request reached the OAuth provider are all especially helpful for narrowing down what was happening.

There was a recently reported issue affecting Custom GPT updates in ChatGPT, and OpenAI Status indicates that it has been resolved.

Are you still seeing the Client ID and Client Secret clear after clicking Update?

-Mark G.