Прежде всего, я думаю, стоит отметить, что graphql не зависит от протокола.Это означает, что может использоваться любой транспортный протокол, не обязательно HTTP (несмотря на то, что в большинстве случаев используется HTTP).
Кроме того, что вы подразумеваете под запросом, подобным PUT?Как я понимаю, вы заявляете, что метод HTTP PUT используется для исправления данных.Что не может быть правдой.Это зависит от того, как вы это реализуете.Вы можете легко создать REST API, который принимает данные через GET и отправляет их методом POST или PUT, несмотря на то, что это не рекомендуется лучшими практиками.
Та же ситуация здесь с вашей проблемой.Речь идет не о вашей сигнатуре мутаций, а о реализации решателя мутаций.
Для того, чтобы эта работа работала, вы должны определить в своей функции распознавания на сервере, является ли это новым или существующим ресурсом, и правильно обработать оба сценария.
Как проверить, является ли это новым ресурсом?Id prop в этом случае не будет определен, верно?
Если вы работаете с сторонним API, проверьте его документы.