Power Automate

How to Update a SharePoint Hyperlink Column with Power Automate

Set or update a SharePoint Hyperlink column from Power Automate, starting with the native connector and using SharePoint REST only when the friendly description needs it.

Collab365 Team · Published 2 April 2019 · Refreshed 24 August 2026 · 6 min read

To update a standard SharePoint Hyperlink or Picture column, try the SharePoint connector's Create item or Update item action first. Pass a complete URL, including https://. If you also need a separate friendly description and the connector does not expose it, use SharePoint REST after testing the exact field representation in your tenant.

Ignore old advice about a mandatory Microsoft Graph apiversion=2.1 header, a March 2026 connector release or a special Copilot schema. Microsoft does not document those claims as the supported solution.

Fact-checked against current Microsoft Learn and SharePoint documentation on 24 August 2026.

What a SharePoint hyperlink column stores

A SharePoint hyperlink value is not quite the same as a plain text column. Microsoft exposes it in the SharePoint client object model as SP.FieldUrlValue, with URL and description properties.

That distinction matters because:

  • a plain URL may be enough for the native connector;
  • the visible link text can be separate from the destination;
  • a malformed or relative value can cause an invalid URI error;
  • a Hyperlink or Picture column is not the same as the older publishing hyperlink field type.

This guide is for the normal modern-list Hyperlink or Picture column.

Route 1: use Create item or Update item

Start here because native actions are easier for another maker to maintain.

  1. Create a Hyperlink or Picture column in the target list.
  2. Add SharePoint > Create item or SharePoint > Update item to the flow.
  3. Select the site and list.
  4. In the hyperlink field, pass a fully qualified URL such as https://www.contoso.com/report/123.
  5. Supply all required list fields.
  6. Save the flow and test against a disposable item.
  7. Open the item in SharePoint and click the link. Do not rely only on a green flow run.

The connector's designer and field inputs can vary as Microsoft updates the connector. If your tenant exposes both URL and description inputs, populate them directly and test. If it exposes one input, do not assume an undocumented JSON object will work merely because an online example says it does.

Build a valid dynamic URL

Make the base address explicit and encode user-controlled path or query values.

For example, a simple expression might be:

concat('https://www.contoso.com/orders/', string(triggerBody()?['ID']))

Before writing the value, check:

  • the result begins with https:// unless your approved scheme is different;
  • the dynamic value is not blank;
  • spaces and reserved characters are encoded where necessary;
  • the destination belongs to an allowed domain if users can influence it.

Treat externally supplied links as untrusted input. A flow that writes any submitted URL into a prominent SharePoint list can create a phishing route inside Microsoft 365.

Add friendly display text

First check whether the SharePoint action exposes a description input for the column. If it does, use it.

If it does not, decide whether friendly text is genuinely required. SharePoint can display a valid raw URL, and column formatting can change how a link is presented without changing the stored destination. Column formatting changes presentation only; it does not update the underlying value.

When the stored description must differ from the URL, the next supported escape hatch is Send an HTTP request to SharePoint.

Route 2: use SharePoint REST carefully

Microsoft describes Send an HTTP request to SharePoint as a developer-focused action for SharePoint REST operations that are not available through the normal connector actions.

Before building the request:

  1. Confirm the column is the standard Hyperlink or Picture type.
  2. Find its internal name in List settings or field metadata.
  3. Read a known-good item and inspect the returned value.
  4. Test the update in a non-production list.
  5. Decide how to handle concurrent edits.

The SharePoint REST documentation supports updating list items with POST and MERGE semantics. It also documents ETags and If-Match for concurrency. If you use If-Match: *, your flow can overwrite somebody else's more recent change.

Do not copy an SP.FieldUrlValue JSON payload, list entity type or comma-separated string from an old blog and call it universal. SharePoint's accepted representation can depend on the endpoint, OData metadata mode and field type. Capture a working value from the same endpoint in your tenant, then use that shape.

Why Microsoft Graph is not the default answer

Microsoft Graph is valuable for many Microsoft 365 integrations, but it is not automatically the best route for every SharePoint field type. Current Microsoft Q&A material records problems updating SharePoint hyperlink fields through Graph and points affected developers back to SharePoint REST as a workaround.

That is not a guarantee that Graph will never support your scenario. It is a reason to prove the exact Graph request before presenting it as more reliable or faster. Do not add undocumented beta headers to a production flow.

Clearing a hyperlink

Try clearing the field with the native Update item action in a test list. If REST is required, inspect how an empty value is represented by the same endpoint and metadata mode you use for updates.

Add a condition so a blank source does one of three explicit things:

  • leaves the existing link unchanged;
  • clears it;
  • routes the item for review.

Do not let a missing source value erase a valid link by accident.

Common errors

Invalid URI

Inspect the final action input in run history. Look for a missing scheme, leading or trailing spaces, unescaped characters or an empty dynamic value.

The flow succeeds but SharePoint shows raw JSON

The connector treated your input as text. Remove the assumed JSON shape and use the actual field inputs, column formatting or a tested REST update.

The URL works but the description is missing

The connector accepted only the destination. Use the description input if available. Otherwise use presentation-only column formatting or a tenant-tested REST request.

REST says the property does not exist

Verify the field's internal name and type. A publishing hyperlink field has different limitations from the standard Hyperlink or Picture field.

A later run overwrites the link

Check trigger loops and concurrent runs. Use an idempotency marker, trigger conditions and ETag handling where the process needs conflict protection.

Which route should you use?

Requirement Recommended starting point
Store a valid clickable URL Create item or Update item
Change how the link looks in the list SharePoint column formatting
Store URL plus separate friendly text Native action if exposed, otherwise tested SharePoint REST
Bulk or application integration Prove the supported API and field shape before choosing Graph or REST

The correct solution is the one you can prove in the target tenant. A successful flow run is not enough. Verify the stored list value and click the resulting link.

Microsoft sources

Get a second pair of eyes on the request

If the native field will not accept the value, share the column type, action inputs and redacted error in the Power Automate Builders Space. This article-specific attribution tells us whether the recommendation is earning its place.