---
title: "ABMultiValueCopyPrimaryIdentifier(_:)"
framework: addressbook
role: symbol
role_heading: Function
path: "addressbook/abmultivaluecopyprimaryidentifier(_:)"
---

# ABMultiValueCopyPrimaryIdentifier(_:)

Returns the identifier for the primary value.

## Declaration

```swift
func ABMultiValueCopyPrimaryIdentifier(_ multiValue: ABMultiValueRef!) -> Unmanaged<CFString>!
```

## Parameters

- `multiValue`: The multi-value list that you wish to access.

## Return Value

Return Value The unique identifierfor the primary value. You are responsible for releasing this object.

## Discussion

Discussion Use the ABMultiValueCopyIdentifierAtIndex(_:_:) functionto get index for the returned identifier, and the ABMultiValueCopyValueAtIndex(_:_:)functionto get its value.

## See Also

### Multi Values

- [ABMultiValueAdd(_:_:_:_:)](addressbook/abmultivalueadd(_:_:_:_:).md)
- [ABMultiValueCopyIdentifierAtIndex(_:_:)](addressbook/abmultivaluecopyidentifieratindex(_:_:).md)
- [ABMultiValueCopyLabelAtIndex(_:_:)](addressbook/abmultivaluecopylabelatindex(_:_:).md)
- [ABMultiValueCopyValueAtIndex(_:_:)](addressbook/abmultivaluecopyvalueatindex(_:_:).md)
- [ABMultiValueCount(_:)](addressbook/abmultivaluecount(_:).md)
- [ABMultiValueCreate()](addressbook/abmultivaluecreate().md)
- [ABMultiValueCreateCopy(_:)](addressbook/abmultivaluecreatecopy(_:).md)
- [ABMultiValueCreateMutable(_:)](addressbook/abmultivaluecreatemutable().md)
- [ABMultiValueCreateMutableCopy(_:)](addressbook/abmultivaluecreatemutablecopy(_:).md)
- [ABMultiValueIndexForIdentifier(_:_:)](addressbook/abmultivalueindexforidentifier(_:_:).md)
- [ABMultiValueInsert(_:_:_:_:_:)](addressbook/abmultivalueinsert(_:_:_:_:_:).md)
- [ABMultiValuePropertyType(_:)](addressbook/abmultivaluepropertytype(_:).md)
- [ABMultiValueRemove(_:_:)](addressbook/abmultivalueremove(_:_:).md)
- [ABMultiValueReplaceLabel(_:_:_:)](addressbook/abmultivaluereplacelabel(_:_:_:).md)
- [ABMultiValueReplaceValue(_:_:_:)](addressbook/abmultivaluereplacevalue(_:_:_:).md)
