A programmatic interface for objects that represent a telephony action associated with a call object.


class CXCallAction : CXAction


The CallKit framework provides the following concrete CXCallAction subclasses.

Table 1

Apple-provided concrete CXCallAction subclasses

CXCallAction subclass



Answers an incoming call.


Initiates an outgoing call.


Ends a call.


Places a call on hold or removes a call from hold.


Groups a call with another call or removes a call from a group.


Mutes or unmutes a call.


Plays a DTMF (dual tone multifrequency) tone sequence on a call.

To perform one or more actions, you add them to a new CXTransaction object and pass the transaction to an instance of CXCallController using the request(_:completion:) method. After each action is performed by the telephony provider, the provider’s delegate calls either the CXCallAction method, indicating that the action was successfully performed, or the CXCallAction method, to indicate that an error occurred; both of these methods set the CXCallAction property of the action to true.


Creating New Call Actions

init(call: UUID)

Initializes a new action for a call identified by a given UUID.

Accessing Call Action Attributes

var callUUID: UUID

The unique identifier for the call associated with the action.


Inherits From

Conforms To

See Also

Call-Related Actions

class CXAction

An abstract class that declares a programmatic interface for objects that represent a telephony action.

class CXEndCallAction

An encapsulation of the act of ending a call.

class CXPlayDTMFCallAction

An encapsulation of the act of playing a dual tone multifrequency (DTMF) sequence.

class CXSetGroupCallAction

An encapsulation of the act of grouping or ungrouping calls.

class CXSetHeldCallAction

An encapsulation of the act of placing a call on hold or removing a call from hold.

class CXSetMutedCallAction

An encapsulation of the act of muting or unmuting a call.

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.

Learn more about using Apple's beta software