Studio

Geopoint

Schema type reference for the geopoint type.

An object signifying a global latitude/longitude/altitude coordinate. Longitude and latitude are stored as decimal degrees, while altitude is stored as a floating point representing meters above sea level. See the GeopointDefinition reference for the full type definition.

Properties

  • Requiredtype

    Value must be set to geopoint.

  • Requiredname

    The field name. This becomes the key in the document.

  • Human-readable label for the field.

  • If set to true, this field is hidden in the studio. You can also supply a callback function to make it a conditional field.

  • If set to true, this field is not editable in the studio. You can also supply a callback function to make it a conditional field.

  • Short description for editors of how the field is to be used.

  • The initial value used when creating new values of this type. Can be a literal value, or a resolver function that returns a literal value or a promise that resolves to one.

  • Lets you provide custom components to override the studio defaults in various contexts. The available keys are annotation, block, diff, field, inlineBlock, input, item, and preview.

  • Marks a field or document type as deprecated in the studio interface and displays a user-defined message set through the single required reason property.

    If you deploy a GraphQL API schema, this property is translated into the @deprecated directive.

  • Supply a custom icon for this field. See the icons documentation for more information.

  • options

    Object

    Visual options for the geopoint field in the studio. See the full list available in the GeopointOptions type.

Validation (GeopointRule)

  • Ensures that this field exists.

  • Discards the validation rules set before it in the chain and makes the field optional. Rules chained after it still apply.

  • Creates a custom validation rule.

  • Sets the level of this rule chain to error, with an optional custom message.

  • Sets the level of this rule chain to warning, with an optional custom message. Warnings do not prevent publishing.

  • Sets the level of this rule chain to info, with an optional custom message. Info messages are purely informational and do not prevent publishing.

  • Gets the value of a sibling field to use in validation. Useful for creating validation rules that depend on the value of another field.

While the geopoint type is available in Sanity by default, you will probably want to install a plugin that provides a more visual way to input the coordinates. For instance, you could use the @sanity/google-maps-input plugin:

Then add the plugin to your sanity.config.ts|js. The example reads your Google Maps API key from the SANITY_STUDIO_GOOGLE_MAPS_API_KEY environment variable:

Make sure the key has access to all of the following APIs:

  • Google Maps JavaScript API
  • Google Places API (New)
  • Google Static Maps API

To create a key and enable the APIs, follow Google's Set up the Maps JavaScript API guide.

Gotcha

Was this page helpful?