> For the complete documentation index, see [llms.txt](https://kinematicsoup.gitbook.io/reactor/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kinematicsoup.gitbook.io/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi.md).

# Class ksServerAPI

Namespace: [KS.Reactor](/reactor/api-reference/ks.reactor.md)\
Assembly: KSCommon.dll

Implementation for the KSPlayerAPI calls made with server credentials.

```csharp
public class ksServerAPI
```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ← [ksServerAPI](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi.md)

#### Inherited Members

[object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object\)), [object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object-system-object\)), [object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype), [object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone), [object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

## Constructors

### ksServerAPI(RequestHandler) <a href="#ks_reactor_ksserverapi__ctor_ks_reactor_ksserverapi_requesthandler" id="ks_reactor_ksserverapi__ctor_ks_reactor_ksserverapi_requesthandler"></a>

Constructor.

```csharp
public ksServerAPI(ksServerAPI.RequestHandler requestFactory = null)
```

#### Parameters

`requestFactory` [ksServerAPI](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi.md).[RequestHandler](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi/ks.reactor.ksserverapi.requesthandler.md)

Optional request handling method.

## Methods

### AuthenticatePlayer(Session, GenericCallback, object) <a href="#ks_reactor_ksserverapi_authenticateplayer_ks_reactor_ksserverapi_session_ks_reactor_ksserverapi_gene" id="ks_reactor_ksserverapi_authenticateplayer_ks_reactor_ksserverapi_session_ks_reactor_ksserverapi_gene"></a>

Authenticate a player session.

```csharp
public ksIWebRequest AuthenticatePlayer(ksServerAPI.Session session, ksServerAPI.GenericCallback callback = null, object asyncState = null)
```

#### Parameters

`session` [ksServerAPI](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi.md).[Session](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi/ks.reactor.ksserverapi.session.md)

Session to authenticate.

`callback` [ksServerAPI](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi.md).[GenericCallback](/reactor/api-reference/ks.reactor/ks.reactor.ksserverapi/ks.reactor.ksserverapi.genericcallback.md)

Asynchronous callback.

`asyncState` [object](https://learn.microsoft.com/dotnet/api/system.object)

State object returned in the callback.

#### Returns

[ksIWebRequest](/reactor/api-reference/ks.reactor/ks.reactor.ksiwebrequest.md)

### Initialize(string, string, string) <a href="#ks_reactor_ksserverapi_initialize_system_string_system_string_system_string" id="ks_reactor_ksserverapi_initialize_system_string_system_string_system_string"></a>

Initializes the API object.

```csharp
public void Initialize(string APIURL, string APIKey, string APISecret)
```

#### Parameters

`APIURL` [string](https://learn.microsoft.com/dotnet/api/system.string)

Player API url.

`APIKey` [string](https://learn.microsoft.com/dotnet/api/system.string)

Project ID.

`APISecret` [string](https://learn.microsoft.com/dotnet/api/system.string)

Project client secret.
