web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Automate / Update Dataverse Globa...
Power Automate
Answered

Update Dataverse Global Option Set label HTTP body syntax

(1) ShareShare
ReportReport
Posted on by 847
Hey all trying to update a choice label in a Global Option Set - got this code thru copilot - getting error message - I have the right value and GUID - what am  I missing? 
 
Thank you. 
 
 
 
 
 
Error identified in Payload provided by the user for Entity :'', For more information on this error please follow this help link https://go.microsoft.com/fwlink/?linkid=2195293  ---->  InnerException : Microsoft.Crm.CrmException: Invalid property 'Options' was found in entity 'Microsoft.Dynamics.CRM.OptionSetMetadataBase'. ---> Microsoft.OData.ODataException: Invalid OData UntypedValue.
   at Microsoft.Crm.Extensibility.CrmODataResourceDeserializer.TryConvertPrimitiveValue(String inputValue, Object& outputValue)
   at Microsoft.Crm.Extensibility.CrmODataResourceDeserializer.ApplyStructuralProperty(Object resource, ODataProperty structuralProperty, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   at Microsoft.Crm.Extensibility.CrmODataEntityDeserializer.ApplyStructuralProperty(Object resource, ODataProperty structuralProperty, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   --- End of inner exception stack trace ---
   at Microsoft.Crm.Extensibility.CrmODataEntityDeserializer.ApplyStructuralProperty(Object resource, ODataProperty structuralProperty, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   at Microsoft.AspNet.OData.Formatter.Deserialization.ODataResourceDeserializer.ApplyStructuralProperties(Object resource, ODataResourceWrapper resourceWrapper, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   at Microsoft.Crm.Extensibility.CrmODataEntityDeserializer.ApplyStructuralProperties(Object resource, ODataResourceWrapper resourceWrapper, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   at Microsoft.Crm.Extensibility.CrmODataResourceDeserializer.ApplyResourceProperties(Object resource, ODataResourceWrapper resourceWrapper, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   at Microsoft.Crm.Extensibility.CrmODataResourceDeserializer.ReadResource(ODataResourceWrapper resourceWrapper, IEdmStructuredTypeReference structuredType, ODataDeserializerContext readContext)
   at Microsoft.Crm.Extensibility.CrmODataResourceDeserializer.ReadInline(Object item, IEdmTypeReference edmType, ODataDeserializerContext readContext)
   at Microsoft.AspNet.OData.Formatter.ODataInputFormatterHelper.ReadFromStream(Type type, Object defaultValue, IEdmModel model, ODataVersion version, Uri baseAddress, IWebApiRequestMessage internalRequest, Func`1 getODataRequestMessage, Func`2 getEdmTypeDeserializer, Func`2 getODataPayloadDeserializer, Func`1 getODataDeserializerContext, Action`1 registerForDisposeAction, Action`1 logErrorAction).
Categories:
I have the same question (0)
  • Suggested answer
    Pstork1 Profile Picture
    69,397 Most Valuable Professional on at
    I think that is the wrong code.  Take a look at the Update example here:  

    https://learn.microsoft.com/en-us/power-apps/developer/data-platform/webapi/create-update-optionsets#update-options


    ----------------------------------------------------------------------------------
    If this Post helped you, please click "Does this answer your question" and give it a like to help others in the community find the answer too!

    Paul Papanek Stork, MVP
    Blog: https://www.dontpapanic.com/blog
     

  • Verified answer
    Haque Profile Picture
    2,786 on at
    Hi @ctedesco3307
     

    The key points from the official guidance and community experience:

    • You cannot directly update the entire Options collection of a global option set by sending it as a property in an update (PUT or PATCH) request. The Options property is not writable in that way.

    • To update (rename) an existing choice label in a global option set, you must use the UpdateOptionSet message or the Web API equivalent, but this only supports certain metadata properties.

    • For adding, updating, or deleting individual options in a global option set, you should use the specialized Web API actions:

      • InsertOptionValue to add a new option.

      • DeleteOptionValue to delete an option.

      • UpdateOptionValue to update an existing option label.

    • These actions require a specific payload format and are invoked as POST requests to action endpoints, not as entity updates with Options in the payload.

     
     
    The request is a POST to the Web API action endpoint, e.g.:
    POST [Organization URI]/api/data/v9.2/UpdateOptionValue
    
    The body should look like this (for example):
    {
      "OptionSetName": "your_global_option_set_name",
      "Value": 100000001,  // The integer value of the option to update
      "Label": {
        "LocalizedLabels": [
          {
            "Label": "New Label Text",
            "LanguageCode": 1033
          }
        ]
      }
    }
    
     
     

    I am sure some clues I tried to give. If these clues help to resolve the issue brought you by here, please don't forget to check the box Does this answer your question? At the same time, I am pretty sure you have liked the response!
  • Suggested answer
    11manish Profile Picture
    2,260 on at
    The error occurs because you are trying to update a Global Option Set using an invalid payload that includes the “Options” property, which is not supported by
     
    the Dataverse Web API for metadata updates.
     
    Global Option Sets must be updated using the specialized metadata action UpdateOptionValue, not a standard PATCH request.
     
    To fix this, call the UpdateOptionValue action with the correct payload including OptionSetName, Value, and Label with LocalizedLabels.
  • ctedesco3307 Profile Picture
    847 on at
    @Haque     
    Thanks all for the feedback --- still getting the same error though 
     
     
     
     
     
  • Haque Profile Picture
    2,786 on at
     
    Can you please dump the error text here (not screenshot). Thanks.
     
    More specifically - is this the same error we found earlier, like 
    •   Invalid property 'Options' was found in entity 'Microsoft.Dynamics.CRM.OptionSetMetadataBase
    •   Invalid OData UntypedValue
  • ctedesco3307 Profile Picture
    847 on at
    This works but you have to have MergeLabels at the end 
     
     
    {
      "OptionSetName": "xxxxxxxxxxiceexceptions",
      "Value": 123456,  // The integer value of the option to update
      "Label": {
        "LocalizedLabels": [
          {
            "Label": "New Label Text",
            "LanguageCode": 1033
          }
        ]
      },
      "MergeLabels": true
    }
     
     
    POST [Organization URI]/api/data/v9.2/UpdateOptionValue
    
    The body should look like this (for example):
    {
      "OptionSetName": "your_global_option_set_name",
      "Value": 100000001,  // The integer value of the option to update
      "Label": {
        "LocalizedLabels": [
          {
            "Label": "New Label Text",
            "LanguageCode": 1033
          }
        ]
      }
    }

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the April Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Automate

#1
Vish WR Profile Picture

Vish WR 976

#2
Valantis Profile Picture

Valantis 863

#3
Haque Profile Picture

Haque 547

Last 30 days Overall leaderboard