# EESy Session Service

The EESy session service implements the *sessions* resource of the
EESy API.  Workflows start interaction with EESy through creation
of a session.  EESy then provides its services and manages
resources on behalf of the workflow im the context of that
session.
The workflow completes its interaction with EESy through
deletion of the session.  Deletion terminates all engines and
releases any resources held for the workflow.
It is the responsibility of the workflow to initiate deletion and avoid
unnecessarily cost for allocated resources.
**SERVICE AUTHORIZATION**
All EESy services require an SAuth token passed in the
Authorization header. Session and Engine services use the
*slb-contract-id* and *slb-department-id* for authorizing user
token. If they are omitted, the default user context as selected
in the DELFI portal is used.
A user can access a session he/she created or if he/she is the manager of
the DELFI department to which the session creator belongs.
In order to support long running sessions, the expiry date of the
token can be exceeded up to 14 days for all endpoints starting
with */v1/sessions/{name}*. This feature is only supported for the
token that was used to create the session.
Restricted Access !
Existing customer can request access via [Customer Support for Digital](https://customersupport.digital.slb.com/).
Automatic population of the API Key and S-Auth token is not supported in the "Try It" interface for this API.

```plain Client ID
service-eesy.slbservice.com
```

Version: 1.0

## Servers

```
https://api.delfi.slb.com/engines/v1
```

## Security

### Bearer

User or Service/app/client Token from SAuth

Type: apiKey
In: header
Name: Authorization

### appkey

AppKey/ Consumer Key from your App on Developer Portal

Type: apiKey
In: header
Name: appkey

## Download OpenAPI description

 - [EESy Session Service](https://developer.slb.com/_bundle/solutions/engine-ecosystem/apis/eesy_session_service_openapi.yaml)

## Sessions

 - [POST /sessions](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/sessions/postsession.md): Creates a new EESy session for a workflow. The EESy session service performs several actions to establish the session. This includes the creation of a Kubernetes namespace as well as the start of EES
 - [GET /sessions](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/sessions/listsessions.md): Obtains a list of sessions. The list may be limited to specific objects by means of a label selector. A label selector is a comma-separated list of label name/value pairs. For instance, the selector "
 - [GET /sessions/{name}](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/sessions/getsession.md): Obtains a specific session by name.
 - [PATCH /sessions/{name}](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/sessions/patchsession.md): Obtains a specific session by name.
 - [DELETE /sessions/{name}](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/sessions/deletesession.md): Initiates deletion of an EESy session. Deletion is an asynchronous operation as it takes some time to tear down all services and resources that are associated with the session. The session will have i
## Schema Definitions

 - [EESy Session](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/session.md): Schema: #/components/schemas/Session
 - [Session Specification](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/sessionspec.md): Schema: #/components/schemas/SessionSpec
 - [Session Status](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/sessionstatus.md): Schema: #/components/schemas/SessionStatus
 - [EESy Session List](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/sessionlist.md): Schema: #/components/schemas/SessionList
 - [EESy object metadata](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/objectmetadata.md): Schema: #/components/schemas/ObjectMetadata
 - [EESy Request Status](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/status.md): Schema: #/components/schemas/Status
 - [JsonPatch](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/jsonpatch.md): Schema: #/components/schemas/JsonPatch
 - [PatchOperation](https://developer.slb.com/solutions/engine-ecosystem/apis/eesy_session_service_openapi/schema-definitions/patchoperation.md): Schema: #/components/schemas/PatchOperation
