# `GSFont fontMasterForId:`

*Instance Method*

Returns the local or imported master with an identifier, or `nil` when no master matches.

## Declaration

```swift
func fontMaster(forId id: String?) -> GSFontMaster?
```

```objc
- (GSFontMaster *) fontMasterForId:(NSString *) id;
```

```python
fontMasterForId_(id: str) -> GSFontMaster
```

## Discussion

Master identifiers are used by layers, kerning, metrics, and interpolation data.

## See Also

### Masters

- [`GSFont.fontMasters`](/Core/GlyphsCore/GSFont/fontMasters) — The local masters of the font.
- [`GSFont.countOfFontMasters`](/Core/GlyphsCore/GSFont/countOfFontMasters) — The number of local masters.
- [`GSFont fontMasterAtIndex:`](/Core/GlyphsCore/GSFont/fontMasterAtIndex:) — Returns the local or imported master at an index, or `nil` when the index is out of bounds.
- [`GSFont indexOfFontMaster:`](/Core/GlyphsCore/GSFont/indexOfFontMaster:) — Returns the index of a local master, or `NSNotFound` when the master is not local.
- [`GSFont fontMasterForName:`](/Core/GlyphsCore/GSFont/fontMasterForName:) — Returns the first local or imported master with a name, or `nil` when no master matches.
- [`GSFont defaultFontMaster:`](/Core/GlyphsCore/GSFont/defaultFontMaster:) — Returns the master used as the default interpolation origin.
- [`GSFont newMasterId`](/Core/GlyphsCore/GSFont/newMasterId) — Returns an unused master identifier.
- [`GSFont insertFontMaster:atIndex:`](/Core/GlyphsCore/GSFont/insertFontMaster:atIndex:) — Inserts a local master without adding layer content.
- [`GSFont addFontMaster:`](/Core/GlyphsCore/GSFont/addFontMaster:) — Appends a local master without adding layer content.
- [`GSFont removeFontMaster:`](/Core/GlyphsCore/GSFont/removeFontMaster:) — Removes a local master without removing layer content.

