Shopify + Sanity: Read about the investment and partnership –>

URL Metadata Input

By Espen Hovlandsdal

URL input for Sanity that retrieves metadata (title, description) along with open graph information.


URL input for Sanity that retrieves metadata (title, description) along with OpenGraph information.

Note: The resolving is done by an addon to the Sanity API and usage will at some point be an opt-in addon that is billed.

Screenshot of the URL metadata input inside a Sanity studio


sanity install url-metadata-input


Use it in your schema types:

// [...]
  fields: [
    // [...]
      name: 'relatedUrl',
      title: 'Related URL',
      type: 'urlWithMetadata',

If you want the metadata below the URL field to be collapsed, set the collapsed option like so:

  name: 'relatedUrl',
  title: 'Related URL',
  type: 'urlWithMetadata',
  options: {
    collapsed: true,

Data model

Note: Empty keys are not included

  _type: 'urlWithMetadata',

  // Raw user-input URL
  url: '',

  // Resolved URL after redirects
  resolvedUrl: '',

  // Date when the metada resolving was performed
  crawledAt: '2017-09-01T09:48:35.501Z',

  // Basic metadata (from <head> of the page)
  meta: {
    title: 'Sanity – The fully customizable, headless CMS',
    description: 'Manage structured data collaboratively [...]'

  // OpenGraph data (camelcased keys, eg `og:video:width` == `videoWidth`)
  // See for more information
  openGraph: {
    title: '...',
    description: '...',
    siteName: '...',
    type: '...',
    url: '...',
    image: '...',
    imageAlt: '...',
    imageSecureUrl: '...',
    imageType: '...',
    imageHeight: '...',
    imageWidth: '...',
    audio: '...',
    audioSecureUrl: '...',
    audioType: '...',
    determiner: '...',
    locale: '...',
    video: '...',
    videoSecureUrl: '...',
    videoType: '...',
    videoHeight: '...',
    videoWidth: '...',


MIT-licensed. See LICENSE.

Install command

sanity install url-metadata-input


Categorized in

Other plugins by author

Mux input

Upload videos to Mux directly from the studio.

Go to Mux input

Google Maps input

Official(made by Sanity team)

Use geo-related input types using Google Maps.

Espen Hovlandsdal
Go to Google Maps input

PortableText to React
- has 5 likes

Official(made by Sanity team)

Render PortableText content in React

Espen Hovlandsdal
Go to PortableText to React


An opinionated, enhanced plugin development experience.

Espen Hovlandsdal
Go to Sanipack