# Session error messages

> Reference common session service error codes and messages to troubleshoot integration issues.

The Multiplayer Services SDK abstracts and unifies error handling across the entire session lifecycle, covering issues from Lobby, Matchmaker, Relay, and network modules.

The Multiplayer Services SDK returns errors in the [RFC 7807 Problem Details](https://www.rfc-editor.org/rfc/rfc7807) (RFC Editor) format,
including some additional fields that are consistent with most other [UGS services](/services.md). These errors are unified as `SessionExceptions`s.

## Error Status

| **Field**   | Description                                                                                                                                                  |
| ----------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Detail**  | A human-readable explanation specific to this occurrence of the problem.                                                                                     |
| **Details** | A list of additional details about the specific error. Refer to [Error Details](#error-details).                                                             |
| **Status**  | The HTTP status code of the response.                                                                                                                        |
| **Title**   | A short, human-readable summary of the problem type. It should not change from occurrence to occurrence of the problem, except for purposes of localization. |
| **Type**    | A URI that identifies the problem type and may provide documentation for the problem. *These URLs are currently non-functional*                              |

## Error Details

| **Field**     | Description                                |
| ------------- | ------------------------------------------ |
| **ErrorType** | Represents the type of error detail.       |
| **Message**   | Provides more information about the error. |

## Session error values

| Error                                      | Description                                                                           |
| ------------------------------------------ | ------------------------------------------------------------------------------------- |
| `SessionError.Unknown`                     | A fallback or uncategorized error during a session operation.                         |
| `SessionError.NetworkSetupFailed`          | Thrown when the network/netcode fails to bind, connect, or allocate a Relay properly. |
| `SessionError.MatchmakerAssignmentFailed`  | Thrown when a player or group fails to be assigned a match by the Matchmaker.         |
| `SessionError.MatchmakerAssignmentTimeout` | Thrown when the matchmaker takes too long to fulfill a session assignment ticket.     |

> **Note:**
>
> Lower-level error codes from components like Lobby, for example, `lobby is locked`, are nested within the `SessionException` message rather than having their own explicit `SessionError` code.
