# Session
Represents an InnerTube session.
## API
* Session
* [.signIn(credentials?)](#signin) ⇒ `function`
* [.signOut()](#signout) ⇒ `function`
* [.key](#key) ⇒ `getter`
* [.api_version](#api_version) ⇒ `getter`
* [.client_version](#client_version) ⇒ `getter`
* [.client_name](#client_name) ⇒ `getter`
* [.context](#context) ⇒ `getter`
* [.player](#player) ⇒ `getter`
* [.lang](#lang) ⇒ `getter`
### signIn(credentials?)
Signs in with given credentials.
**Returns:** `Promise`
| Param | Type | Description |
| --- | --- | --- |
| credentials? | `Credentials` | OAuth credentials |
### signOut()
Signs out of the current account.
**Returns:** `Promise`
### key
InnerTube API key.
**Returns:** `string`
### key
InnerTube API version.
**Returns:** `string`
### client_version
InnerTube client version.
**Returns:** `string`
### client_name
InnerTube client name.
**Returns:** `string`
### context
InnerTube context.
**Returns:** `Context`
### player
Player script object.
**Returns:** `Player`
### lang
Client language.
**Returns:** `string`