> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XBOX services API overview

> Compare the client-side XBOX Services API (XSAPI) and XBOX Live REST endpoints, weigh trade-offs, and choose the right approach for your GDK title.

There are two ways to get information from XBOX services.

1. Use a client-side API called **XBOX services API** or XSAPI. It's also known as XBOX Live API.
2. Call the **XBOX services REST endpoints** directly. They're also known as XBOX Live REST endpoints.

### Advantages of using XSAPI

The advantages of using the XBOX services API (XSAPI) include:

* Details of authentication, encoding, and HTTP sending and receiving are taken care of for you.
* Arguments to, and data returned from, the wrapper API is handled in native data types. You don't need to perform JSON encoding and decoding.
* Calling web services directly involves multiple asynchronous steps, which the wrapper API encapsulates. This makes title code easier to read and write.
* Some functionality, such as writing game events, is only available in XSAPI.

### Advantages of using XBOX services REST endpoints

The advantages of using the XBOX services REST endpoints directly include:

* The ability to call XBOX services endpoints from a web service.
* The ability to call endpoints that aren't included in XSAPI. It only includes APIs that we believe games will use. If there's anything missing, contact us via the forums.
* Some functionality available via the REST endpoints might not have a corresponding XSAPI wrapper.

Your games and apps aren't limited to using just one of these methods. You can use the XSAPI wrapper and still call the REST endpoints directly if needed. For more information, see [XBOX services REST API reference](/reference/live/rest/atoc-xboxlivews-reference).

## Client-side API set

XSAPI exposes client-side APIs that support a wide range of customer scenarios.

**Important**: For GDK development, use only the XSAPI C-based API. XSAPI WinRT and C++11 APIs are included here for your information only.

* [XSAPI C-based API](#xsapi-c-based-api) (GDK); new as of June 2018
* XSAPI WinRT API (XDK and XBOX Creators program only)
* XSAPI C++11 based API (XDK and XBOX Creators program only)

### XSAPI C-based API

* Supports PC and XBOX console GDK titles.
* Allows titles to control the memory allocations when calling XSAPI.
* Allows titles to gain full control of thread handling when calling XSAPI.
* Uses a new HTTP library, [libHttpClient](/reference/live/httpclient/atoc-httpclient), designed for game developers.

To learn more, see [Introduction to the XBOX Live C APIs](/services/xbox-services/fundamentals/xbox-services-api/live-xsapi-flat-c).

For API reference, see [XSAPI C reference](/reference/live/xsapi-c/atoc-xsapi-c).

## See also

[Introduction to the XSAPI C APIs](/services/xbox-services/fundamentals/xbox-services-api/live-xsapi-flat-c)
[XSAPI reference](/reference/live/xsapi-c/atoc-xsapi-c)
[REST API reference](/reference/live/rest/atoc-xboxlivews-reference)
[libHttpClient](/reference/live/httpclient/atoc-httpclient)


## Related topics

- [XBOX services overview](/services/xbox-services/fundamentals/live-xbl-overview.md)
- [XBOX services multiplayer overview](/services/xbox-services/multiplayer/overviews/live-multiplayer-intro.md)
- [XBOX services sandboxes overview](/services/xbox-services/fundamentals/sandboxes/live-setup-sandbox.md)
- [Overviews](/services/xbox-services/multiplayer/overviews/index.md)
- [XSAPI C overview](/services/xbox-services/fundamentals/xbox-services-api/live-xsapi-flat-c.md)
