###### tags: resource
# Clients
Servisleri tüketen uygulamaları ve servisleri üçüncü kişilere sunan gatewayleri belirler.
* **Client**: Tüketici uygulama veya gateway adıdır.
* **Type**: Application veya Gateway olabilir. Raporlama amaçlı bir gruplama yaklaşımı güdülmüştür.
* **Access Token**: Servis çağırımında kullanıcı doğrulamak için kullanılacak tokenın yer aldığı header değişkeni.
* **Variants**: İz kayıtları ve raporlama amacıyla özellikle gateway üzerinden gelen alt aracıların ayrıştırılması için kullanılır.
* **Session**: Uygulama tarafında session management için kullanılan tekil id bilgisinin bulundupu header değişkeni.
* **Idempotency**: Transactional tekillik için kullanılacak değişkenin verildiği header değişkenidir.
* **Device**: Eğer var ise servis talebini yapan cihaz numarasının bulunduğu header değişkeni.
* **IP**: Eğer bu değer verilirse IP için bu headear değişkeni kullanılır. Verilmezise gateway üzerindeki talep IP si kullanılır.
* **JWS**: Mesaj imza değeridir. Olması durumunda validasyonu yapılır.
* **Location**: Değer verilirse talebin yapıldığı lokasyon bilgisidir. Olmaması durumunda lokasyon bilgisi ayrıca elde edilir.
* **Validations**: Header üzerinden yapılması beklenen kontrolleri içerir.
| Client | Type | Validations | Available Flows | Header Config | Secret | Return Url |
| ----------- | ----------- | ------------------- | -------------------------------------------------- | ------------- | --------------------------------- | ---------- |
| BKM | Gateway | X-ASPSP-Code = BRGN | AuthorizationCodeBKM | {...} | | |
| Mobile-IB | Application | | AuthorizationCode, UsernamePassword, ResetPassword | | f2a1ed52710d4533bde25be6da03b6e3 | |
| Web-IB | Application | | AuthorizationCode, UsernamePassword, ResetPassword | | | |
| Endorsement | Application | | AuthorizationCode, UsernamePassword, ResetPassword | | | |
| IDM | Application | | AuthorizationCode, UsernamePassword, ResetPassword | | k2a1dd52se10edde533bde25be6da03b6 | |
## Header Configuration
```json
{
"access-token": " X-Access-Token",
"variant": " X-TPP-Code",
"session-id": "X-Group-ID",
"idempotency-id": "X-Request-ID",
"device-info": "PSU-Device-ID",
"ip": "PSU-IP-Adress",
"jws": "X-JWS-Signature",
"location": "PSU-GEO-Location"
}
```
## Token Tanımları
Servis tüketicilere (Clients) sunulacak **Token** bilgilerini içerir. Bilgileri tanımlar ve tokenlar olarak iki ayrı grupta yönetililir.
| Client | Type | Default Duration | Override Duration | Public Claims | Private Claims |
| ------ | -------- | ---------------- | ----------------- | --- | ---------------------------------------------------------------------------------- |
| BKM | Access | 6w | true | | User.Reference, User.Tags.Staff.Email |
| Web IB | Access | 3m | false | | User.Reference, User.Tags.Customer.Email, Scope.Tags.corporate-customer.VKN |
| Web IB | Refresh | 1h | false | | User.Reference, User.Tags.Customer.Email |
| Web IB | Identity | 5m | false | | User.Reference, User.Tags.Customer.Email |
| Web IB | Flow | 5m | false | | User.Reference, User.Tags.Customer.Email |
| Flow type | Description | Key Points |
| --------- | ---------------------------------------------- | -------------------------------------------------------------------------------------- |
| login | Client uses this grant flow for authorization. | - Only one must be defined per client.<br>- Uses default **flow** token type for flow. |
| register | | |
| consent | | |
| support | | |