<!--
{
  "availability" : [
    "iOS: 6.0.0 -",
    "iPadOS: 6.0.0 -",
    "macCatalyst: 13.1.0 -",
    "macOS: 10.8.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Foundation",
  "identifier" : "/documentation/Foundation/NSXPCListenerEndpoint",
  "metadataVersion" : "0.1.0",
  "role" : "Class",
  "symbol" : {
    "kind" : "Class",
    "modules" : [
      "Foundation"
    ],
    "preciseIdentifier" : "c:objc(cs)NSXPCListenerEndpoint"
  },
  "title" : "NSXPCListenerEndpoint"
}
-->

# NSXPCListenerEndpoint

An object that names a specific XPC listener.

```
class NSXPCListenerEndpoint
```

## Overview

An instance of [`NSXPCListenerEndpoint`](/documentation/Foundation/NSXPCListenerEndpoint) may be retrieved from an [`NSXPCListener`](/documentation/Foundation/NSXPCListener) instance and sent over existing [`NSXPCConnection`](/documentation/Foundation/NSXPCConnection)s. A process may then use the endpoint to create a new [`NSXPCConnection`](/documentation/Foundation/NSXPCConnection) to the original [`NSXPCListener`](/documentation/Foundation/NSXPCListener).

This pattern is useful if you have a service which multiplexes work to other services. The service can act as an intermediate helper. The requesting application does not need to know specifically which service it is connecting to, just that it implements a known [`NSXPCInterface`](/documentation/Foundation/NSXPCInterface).

---

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)