---
title: "ODNodeCustomCall(_:_:_:_:)"
framework: opendirectory
role: symbol
role_heading: Function
path: "opendirectory/odnodecustomcall(_:_:_:_:)"
---

# ODNodeCustomCall(_:_:_:_:)

Returns the result of a custom call to a node.

## Declaration

```swift
func ODNodeCustomCall(_ node: ODNodeRef!, _ customCode: CFIndex, _ data: CFData!, _ error: UnsafeMutablePointer<Unmanaged<CFError>?>!) -> CFData!
```

## Parameters

- `node`: The node.
- `customCode`: The custom code to send to the node.
- `data`: Data required by inCustomCode. Can be NULL.
- `error`: An error reference for error details. Can be NULL.

## Return Value

Return Value The result of the custom call.

## See Also

### Working with Nodes

- [ODNodeCopyDetails(_:_:_:)](opendirectory/odnodecopydetails(_:_:_:).md)
- [ODNodeCopyRecord(_:_:_:_:_:)](opendirectory/odnodecopyrecord(_:_:_:_:_:).md)
- [ODNodeCopySubnodeNames(_:_:)](opendirectory/odnodecopysubnodenames(_:_:).md)
- [ODNodeCopySupportedAttributes(_:_:_:)](opendirectory/odnodecopysupportedattributes(_:_:_:).md)
- [ODNodeCopySupportedRecordTypes(_:_:)](opendirectory/odnodecopysupportedrecordtypes(_:_:).md)
- [ODNodeCopyUnreachableSubnodeNames(_:_:)](opendirectory/odnodecopyunreachablesubnodenames(_:_:).md)
- [ODNodeCreateCopy(_:_:_:)](opendirectory/odnodecreatecopy(_:_:_:).md)
- [ODNodeCreateRecord(_:_:_:_:_:)](opendirectory/odnodecreaterecord(_:_:_:_:_:).md)
- [ODNodeCreateWithName(_:_:_:_:)](opendirectory/odnodecreatewithname(_:_:_:_:).md)
- [ODNodeCreateWithNodeType(_:_:_:_:)](opendirectory/odnodecreatewithnodetype(_:_:_:_:).md)
- [ODNodeGetName(_:)](opendirectory/odnodegetname(_:).md)
- [ODNodeGetTypeID()](opendirectory/odnodegettypeid().md)
- [ODNodeSetCredentials(_:_:_:_:_:)](opendirectory/odnodesetcredentials(_:_:_:_:_:).md)
- [ODNodeSetCredentialsExtended(_:_:_:_:_:_:_:)](opendirectory/odnodesetcredentialsextended(_:_:_:_:_:_:_:).md)
