# `GSGlyph validateMetricsKey:error:`

*Instance Method*

Validates the syntax of a proposed metrics key.

## Declaration

```swift
func validateMetricsKey(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>?) throws
```

```objc
- (BOOL) validateMetricsKey:(id*) ioValue error:(NSError **) outError;
```

```python
validateMetricsKey_error_(ioValue: object) -> tuple[bool, NSError]
```

## Parameters

- `ioValue` — The proposed metrics key, or `nil`.
- `outError` — On return, an error describing invalid syntax.

## Return Value

Whether the proposed value uses valid metrics key syntax.

## Discussion

This does not resolve references or calculate a metric value.

## See Also

### Metrics Keys

- [`GSGlyph.leftMetricsKey`](/Core/GlyphsCore/GSGlyph/leftMetricsKey) — Glyph-level metrics key for the left side bearing.
- [`GSGlyph.widthMetricsKey`](/Core/GlyphsCore/GSGlyph/widthMetricsKey) — Glyph-level metrics key for the advance width.
- [`GSGlyph.rightMetricsKey`](/Core/GlyphsCore/GSGlyph/rightMetricsKey) — Glyph-level metrics key for the right side bearing.
- [`GSGlyph.topMetricsKey`](/Core/GlyphsCore/GSGlyph/topMetricsKey) — Glyph-level metrics key for the top side bearing.
- [`GSGlyph.vertOriginMetricsKey`](/Core/GlyphsCore/GSGlyph/vertOriginMetricsKey) — Glyph-level metrics key for the vertical origin.
- [`GSGlyph.vertWidthMetricsKey`](/Core/GlyphsCore/GSGlyph/vertWidthMetricsKey) — Glyph-level metrics key for the vertical advance width.
- [`GSGlyph.bottomMetricsKey`](/Core/GlyphsCore/GSGlyph/bottomMetricsKey) — Glyph-level metrics key for the bottom side bearing.
- [`GSGlyph plainMetricsKey:`](/Core/GlyphsCore/GSGlyph/plainMetricsKey:) — The stored glyph-level metrics key for a metric side, or `nil` when none is set.
- [`GSGlyph setPlainMetricsKey:side:`](/Core/GlyphsCore/GSGlyph/setPlainMetricsKey:side:) — Sets the glyph-level metrics key for a metric side.

