<!--
{
  "availability" : [
    "macCatalyst: -",
    "macOS: -"
  ],
  "documentType" : "symbol",
  "framework" : "OpenDirectory",
  "identifier" : "/documentation/OpenDirectory/ODRecord",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Open Directory"
    ],
    "preciseIdentifier" : "c:objc(cs)ODRecord"
  },
  "title" : "ODRecord"
}
-->

# ODRecord

An `ODRecord` object serves as a Cocoa wrapper for an Open Directory record.

```
class ODRecord
```

## Topics

### Managing Authentication

[`-  changePassword:toPassword:error:`](/documentation/OpenDirectory/ODRecord/changePassword(_:toPassword:))

Changes the record’s password.

[`-  passwordPolicyAndReturnError:`](/documentation/OpenDirectory/ODRecord/passwordPolicyAndReturnError:)

Returns a dictionary containing the password policy for the record.

[`-  setNodeCredentials:password:error:`](/documentation/OpenDirectory/ODRecord/setNodeCredentials(_:password:))

Sets credentials for the record’s node.

[`-  setNodeCredentialsUsingKerberosCache:error:`](/documentation/OpenDirectory/ODRecord/setNodeCredentialsUsingKerberosCache:error:)

Sets the credentials for interaction with the record’s node using a Kerberos cache.

[`-  setNodeCredentialsWithRecordType:authenticationType:authenticationItems:continueItems:context:error:`](/documentation/OpenDirectory/ODRecord/setNodeCredentialsWithRecordType(_:authenticationType:authenticationItems:continueItems:context:))

Sets the credentials for interaction with the record’s node using other types of authentication available to Open Directory.

[`-  verifyExtendedWithAuthenticationType:authenticationItems:continueItems:context:error:`](/documentation/OpenDirectory/ODRecord/verifyExtended(withAuthenticationType:authenticationItems:continueItems:context:))

Verifies the credentials for interaction with the record’s node using other types of authentication available to Open Directory.

[`-  verifyPassword:error:`](/documentation/OpenDirectory/ODRecord/verifyPassword(_:))

Verifies the password for interaction with the record.

### Managing Group Records

[`-  addMemberRecord:error:`](/documentation/OpenDirectory/ODRecord/addMemberRecord(_:))

Adds a member record to this group record.

[`-  isMemberRecord:error:`](/documentation/OpenDirectory/ODRecord/isMemberRecord(_:))

Determines whether a given record is a member of this group record.

[`-  removeMemberRecord:error:`](/documentation/OpenDirectory/ODRecord/removeMemberRecord(_:))

Removes a record as a member of this group record.

### Managing Record Attributes

[`-  addValue:toAttribute:error:`](/documentation/OpenDirectory/ODRecord/addValue(_:toAttribute:))

Adds a value to an attribute of the record.

[`-  recordDetailsForAttributes:error:`](/documentation/OpenDirectory/ODRecord/recordDetails(forAttributes:))

Returns a dictionary of attributes with their respective values.

[`recordName`](/documentation/OpenDirectory/ODRecord/recordName)

The official name of the record.

[`recordType`](/documentation/OpenDirectory/ODRecord/recordType)

The record’s type.

[`-  removeValuesForAttribute:error:`](/documentation/OpenDirectory/ODRecord/removeValues(forAttribute:))

Removes all values from an attribute of the record.

[`-  removeValue:fromAttribute:error:`](/documentation/OpenDirectory/ODRecord/removeValue(_:fromAttribute:))

Removes a value from an attribute of the record.

[`-  setValue:forAttribute:error:`](/documentation/OpenDirectory/ODRecord/setValue(_:forAttribute:))

Sets the values of an attribute of the record.

[`-  synchronizeAndReturnError:`](/documentation/OpenDirectory/ODRecord/synchronize())

Synchronizes the record from the directory to get current data and commit changes.

[`-  valuesForAttribute:error:`](/documentation/OpenDirectory/ODRecord/values(forAttribute:))

Returns the values of an attribute of the record.

### Deleting a Record

[`-  deleteRecordAndReturnError:`](/documentation/OpenDirectory/ODRecord/delete())

Deletes the record from its node and invalidates it.

## Relationships

### Conforms To

[`Hashable`](/documentation/Swift/Hashable)

[`Equatable`](/documentation/Swift/Equatable)

[`CustomDebugStringConvertible`](/documentation/Swift/CustomDebugStringConvertible)

[`NSObjectProtocol`](/documentation/ObjectiveC/NSObjectProtocol)

[`CustomStringConvertible`](/documentation/Swift/CustomStringConvertible)

[`CVarArg`](/documentation/Swift/CVarArg)

### Inherits From

[`NSObject-swift.class`](/documentation/ObjectiveC/NSObject-swift.class)

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)