Based on the knowledge sources, your webhook response format is correct for updating the identity's metadata_public field, and you have set response.parse: true as required. However, there are a few important caveats: - The webhook can only modify the identity during the registration and settings flows, and the entire metadata_public object is replaced by the value returned by the webhook. Partial updates are not supported; you must provide the full object if you want to retain existing values. - The webhook must return a 200 OK status code, and the response body must be a JSON object with the key identity.metadata_public containing the new value. If metadata_public is still nil in the database after registration, possible reasons (based on the documentation) include: 1. The webhook did not return a 200 OK status code. 2. The response body was not parsed as valid JSON or did not match the expected structure. 3. There may be an issue with the webhook configuration or with how Ory processes the webhook response. You should double-check: - That your webhook is returning exactly a 200 OK status. - That the response body is valid JSON and matches the structure you posted. - That the webhook is configured with response.parse: true. If all of these are correct and the issue persists, it may be a bug or a limitation not covered in the documentation. In that case, you may want to open an issue with a reproducible example, as suggested in the Ory community and issue tracker documentation. For more details, see the official guide on [webhook response handling](
https://www.ory.sh/docs/guides/integrate-with-ory-cloud-through-webhooks#modify-identities). > When updating any of the identity fields, be aware that the whole field is replaced by the value returned by the webhook... When the webhook target returns a 200 OK response code and the response body is a JSON object with the key identity.metadata_public or identity.metadata_admin in it, the values from that object will be used to replace the identity metadata fields before they are saved to the database. This method replaces the entire metadata object. You can't update only a single value in metadata_public or metadata_admin. [Webhook response handling](
https://www.ory.sh/docs/guides/integrate-with-ory-cloud-through-webhooks#modify-identities) If you have confirmed all the above and it still does not work, the knowledge sources do not provide further troubleshooting steps for this specific issue.