# Araçlar Modülü
Teminat, kiralama, leasing gibi operasyonlarda kullanılmak üzere araç kayıtlarını yönetmek için kullanılır.
## Hedefler
* Taşıt tipinde teminat kayıtlarının yapılabilmesi
* Taşıt kayıtlarının periyodik değerlemesinin yapılabilmesi.
* Taşıt teminatlarının e-rehin koyma ve kaldırma süreçlerinin tesis edilmesi.
## Araç Marka ve Model Bilgileri
Araç marka ve model bilgilerinin yönetimi için sunulan servislerdir.
### GET : /vehicles/makes/
Araç marka bilgilerini getirir.
#### Query Parameters
```json
"page-index": 1
"page-size": 10
"id":"15802b18-cc2f-4b79-808f-e35b6023782c"
"reference.name":"loan-account"
"reference.id":"TR330006100519786457841326"
"status":"A"
"active-process.id":""
"active-process.name":""
```
#### Response
```json
[
{
"id": "15802b18-cc2f-4b79-808f-e35b6023782c",
"status": "A",
"name": "mercedes",
"title": "Mercedes Benz",
"_links": [
{
"href": "vehicles/mercedes/models",
"title": "Modeller",
"name": "models",
"rel": "detail"
}
]
},
{
"id": "25802b18-cc2f-4b79-808f-e35b6023782c",
"status": "A",
"name": "ford",
"title": "Ford",
"_links": [
{
"href": "vehicles/ford/models",
"title": "Modeller",
"name": "models",
"rel": "detail"
}
]
},
{
"id": "35802b18-cc2f-4b79-808f-e35b6023782c",
"status": "A",
"name": "renault",
"title": "Renault",
"_links": [
{
"href": "vehicles/renault/models",
"title": "Modeller",
"name": "models",
"rel": "detail"
}
]
}
]
```
### POST : /vehicles/makes/
Yeni bir araç marka bilgisi kaydı için kullanılır.
> Akış Başlatma Mesajı : **vehicles_makes_new**
#### Body
```json
{
"name": "subaru",
"title": "Subaru"
}
```

### PATCH : /vehicles/makes/{id}
Var olan araç marka bilgisini güncellemek için kullanılır.
> Akış Başlatma Mesajı : **vehicles_makes_update**
#### Body
```json
{
"title": "Mercedes & Benz"
}
```

### DELETE : /vehicles/makes/{make}
Araç marka bilgisi kaydı silmek için kullanılır.
> Akış Başlatma Mesajı : **vehicles_makes_delete**

### GET : /vehicles/makes/{make}/models
Marka modellerini getirir.
#### Query Parameters
```json
"page-index": 1
"page-size": 10
"id":"15802b18-cc2f-4b79-808f-e35b6023782c"
"reference.name":"loan-account"
"reference.id":"TR330006100519786457841326"
"status":"A"
"active-process.id":""
"active-process.name":""
```
#### Request URL
```json
make = "Ford"
```
#### Response
```json
[
{
"id": "1A802b18-cc2f-4b79-808f-e35b6023782c",
"status": "A",
"name": "focus",
"title": "Focus",
"class": "M1"
},
{
"id": "2A802b18-cc2f-4b79-808f-e35b6023782c",
"status": "A",
"name": "mondeo",
"title": "Mondeo",
"class": "M1"
},
{
"id": "3A802b18-cc2f-4b79-808f-e35b6023782c",
"status": "A",
"name": "galaxy",
"title": "Galaxy",
"class": "M1"
}
]
```
### POST : /vehicles/makes/{make}/models/
Yeni bir araç marka bilgisi kaydı için kullanılır.
#### Request URL
```json
make = "subaru"
```
#### Body
```json
{
"name": "brz",
"title": "BRZ",
"class":"M1"
}
```
### DELETE : /vehicles/makes/{make}/models/{model}
Araç marka bilgisi kaydı silmek için kullanılır.
## Araç Bilgileri
### GET : /vehicles/vehicles
Araç listesini döner.
#### Query Parameter
```json
"page-index": 1
"page-size": 10
"id":"15802b18-cc2f-4b79-808f-e35b6023782c"
"reference.name":"loan-account"
"reference.id":"TR330006100519786457841326"
"status":"A"
"active-process.id":""
"active-process.name":""
```
### POST : /vehicles/vehicles
Araç kayıt etmek için kullanılır.
> Akış Başlanma Mesajı : **vehicles_save**
>

#### Body
```json
{
"id": "15802b18-cc2f-4b79-808f-e35b6023782c",
"active-process": {
"id": "15802b18-cc2f-4b79-808f-e35b6023782c",
"name": "vehicle-save",
"available-transitions": [
{
"name": "vehicle_save_approve",
"title": "Onayla",
"form": "process-generic-approve"
},
{
"name": "vehicle_save_approve",
"title": "Ret Et",
"form": "process-generic-reject"
}
]
},
"reference": {
"name": "collateral",
"id": "e39d7d85-22a3-4f35-a5ac-01fffc229635"
},
"status": "A",
"make": "bmw",
"model": "535i",
"year": 1987,
"plate": "34DL565",
"license-holder-full-name": "Uğur KARATAŞ",
"license-holder": "38652069000",
"registration-order": "RG454455421213213",
"registration-date": "2009-06-07",
"chassis-number": "TD56689782155442ZD152001",
"engine-number": "62425458455472",
"class": "M1 | M2 | M3 | N1 | N2 | N3 | O | G | LX",
"price": {
"source": "pro-forma | invoice | deal | insurance-value",
"valued-at": "2021-05-23",
"value": {
"amount": 250000,
"currency": "TRY"
}
},
"_links": [
{
"href": "/vehicles/vehicles/15802b18-cc2f-4b79-808f-e35b6023782c/pledges",
"title": "Rehinler",
"name": "pledges",
"rel": "detail"
},
{
"href": "/vehicles/vehicles/15802b18-cc2f-4b79-808f-e35b6023782c/valuations",
"title": "Değerlemeler",
"name": "valuations",
"rel": "detail"
}
]
}
```
### PATCH : /vehicles/vehicles/{id}
Araç kayıt bilgilerini güncellemek için kullanılır.
### DELETE : /vehicles/vehicles/{id}
Araç kaydını silmek için kullanılır.
## Araç Rehin İşlemleri
### GET : /vehicles/vehicles/{id}/pledges
Araç üstündeki rehinleri sorgulamak için kullanılır.
### POST : /vehicles/vehicles/{id}/pledges
Araç üstüne rehin koymak için kullanılır.
### PATCH : /vehicles/vehicles/{id}/pledges/{id}
Araç üstündeki rehin bilgilerini güncellemek için kullanılır.
### DELETE : /vehicles/vehicles/{id}/pledges/{id}
Araç üstündeki rehni kaldırmak için kullanılır.
## Araç Değerleme İşlemleri
:::warning
İlk Faz olarak değerleme dahil edilmemiştir. Değerleme için ek belgelendirme gerekmektedir.
:::
#### GET : /vehicles/vehicles/{id}/valuations
Araç üstündeki teminat değerlemelerini getirir.