The FTS index definition uuid gets changed with every index definition updates, not with the incoming mutations.
The index update steps you mentioned here is totally correct.
During index definition updates - you have to pass in the newly fetched
uuid in the request.
If you should omit the uuid field only during index creations and with a non existing index name.
And the document also mentions the same ?
ref snippet from the doc link:
The simplest way to create the appropriate JSON index-definition for the body is to create an index by means of the Couchbase Web Console, make a copy of the JSON index-definition thereby produced (by accessing the Using the Index Definition Preview, explained above), modify the index-definition as appropriate, and finally, add the index-definition to the other, preceding elements required for the call. Note, however, that this requires modification of the uuid field; since the re-specifying of an existing field-value is interpreted as an attempted update, to an existing index. Therefore, if the uuid field for an existing index appears in the Index Definition Preview as "uuid": "3402702ff3c862c0", it should be edited to appear "uuid": "". A new ID will be allocated to the new index, and this ID will appear in the Index Definition Preview for the new index.
So it mentions about the newer index creation.