Is there a rename option using REST API in v12.3, 21.0 or v24?
There is no option to rename anything in 12.3 or 21.0 via REST API
However there is a multi-step way to do this in version 24.X.
There is a limitation in that there is no way to update any references in the steps below. So if SCRI.CALL_JOB_TO_RENAME has an ACTIVATE_UC_OBJECT(JOBS.WIN.RENAME_VIA_RESTAPI) in it, and the JOBS object is renamed to JOBS.WIN.RENAME_VIA_RESTAPI.B, there's no way to have the script updated (or any workflows, prompsets, etc...). It will always point to the original name.
With this limitation in place you can:
Run a POST {client}/objects/{object_name}/duplicate
and provide a new name for the duplicated object. For example, if there is a JOBS.WIN.RENAME_VIA_RESTAPI that should be duplicated to JOBS.WIN.RENAME_VIA_RESTAPI.B in client 100, the following will work:
Support would highly recommend putting in a idea to enhance the REST API for a true rename of object that also takes care of references as this is a good idea for an enhancement to the REST API. This can be done on our ideation site.