# Vigo API Dokümantasyonu
Bu dökümantasyon, **Vigo API** sürümüne ait endpointleri ve entegrasyon detaylarını içermektedir. API, sipariş yönetimi ve sistemler arası veri entegrasyonu gibi işlevler için kullanılabilir.
---
İletişim
Başvuru ve sorularınız için integration@vigo.ist adresine mail iletebilirsiniz.
## Servers
Development server
```
https://app-dev.vigo.ist/api/v2
```
Production server
```
https://app.vigo.ist/api/v2
```
## Security
### SampleCallbackHeader
Yeni sipariş isteğinde ilettiğiniz callback bilgisi burada kullanılacaktır.
Header key: `callback.tokenHeader`
Header value: `callback.token`
Type: apiKey
In: header
Name: SampleCallbackHeader
### XAuthToken
Type: apiKey
In: header
Name: x-auth-token
## Download OpenAPI description
[Vigo API Dokümantasyonu](https://developers.vigo.ist/_spec/docs.yaml)
## Kimlik Doğrulama
Kimlik ve Yetkilendirme ile ilgili işlemleri içermektedir.
API'yi kullanabilmek için bir erişim token'ı alınmalıdır. Hesabınız oluşturulduğunda size özel **clientId** ve **clientSecret** bilgileri e-posta yoluyla iletilir. Bu bilgiler kullanılarak token alınması gerekmektedir.
Token alındıktan sonra, tüm yetkili isteklerde header bilgisi içinde `x-auth-token` key'i ile iletilmelidir.
### Token Alma
- [POST /auth/token](https://developers.vigo.ist/docs/kimlik-dogrulama/token-alma.md): Vigo API endpointlerine istek atabilmek için gerekli olan token'ı bu endpoint üzerinden alabilir.
## Sipariş
Sipariş ile ilgili işlemleri içermektedir. Sipariş için gerekli olan statü güncelleme işlemleri için bu endpointleri inceleyebilirsiniz.
### Sipariş Oluşturma
- [POST /order](https://developers.vigo.ist/docs/siparis/siparis-olusturma.md): Bu endpoint sipariş oluşturmanız için kullanılmaktadır.
Oluşturulan sipariş bir kuryeye atanır ve kurye siparişi alım noktasından teslim alır.
Teslim alma işlemi tamamlandıktan sonra sipariş müşteriye teslim edilmek üzere yola çıkar.
Bazı durumlarda, kurye teslim alma noktasına bazı ürünleri geri bırakmak için dönebilir.
Endpoint Özellikleri:
- Siparişler, birden çok ürün içerebilir.
- Teslimat sırasında kurye ürün iade edilmesi üzerine bir bildirim alırsa iade süreci başlatılabilir.
- için url paylaşmanız durumunda, teslimat ile ilgili statü güncellemeleri tarafınıza bildirilecektir.
### Sipariş Bilgisi (OrderId veya OrderNumber İle)
- [GET /order](https://developers.vigo.ist/docs/siparis/siparis-bilgisi.md): id veya orderNumber parametrelerinden en az biri zorunludur.
### Sipariş İptali
- [PUT /order/cancel](https://developers.vigo.ist/docs/siparis/siparis-iptal.md)
### Sipariş Hazırlandı
- [PUT /order/prepared](https://developers.vigo.ist/docs/siparis/siparis-hazirlandi.md)
## Alım Noktası
Siparişlerin kurye tarafından alınacağı noktayı ifade eder
Mevcut `pickUp onboardingStatus` (alım noktası durumları) değerleri:
- candidate (Aday)
- approved (Onaylandı)
- rejected (Reddedildi)
- pending (Belge Onay Bekliyor)
### Alım Noktası Oluşturma
- [POST /pickupPoint](https://developers.vigo.ist/docs/alim-noktasi/alim-noktasi-olusturma.md): Sipariş isteği sadece önceden tanımlı ve onaylı alım noktaları için yapılmalıdır.
Başarılı sipariş isteği için mutlaka alım noktası yaratmalısınız ve
alım noktanızın durumunun aktif olması gereklidir.
### Alım Noktaları Listeleme
- [GET /pickupPoint](https://developers.vigo.ist/docs/alim-noktasi/alim-noktasi-listeleme.md): Sistemde kayıtlı olan alım noktalarınız ile ilgili ayrıntıları
bu endpoint'in response'unda görebilirsiniz.
### Alım Noktası Fiyat Hesaplama
- [POST /pickupPoint/{id}/calculatePrice](https://developers.vigo.ist/docs/alim-noktasi/fiyat-hesaplama.md)
## Sipariş Geri Bildirimleri
Tarafınıza iletilen callback örnekleri içermektedir.
### [Mock] Sipariş Geri Bildirimleri
- [POST /__examples/delivery-callbacks](https://developers.vigo.ist/docs/siparis-geri-bildirimleri/paths/~1__examples~1delivery-callbacks/post.md): ⚠️ Bu endpoint sadece API dokümantasyonumuzda ilettiğimiz örnek callback'leri göstermek içindir.
Gerçek bir API çağrısı değildir. Payload'lar sistemimiz tarafından ilettiğiniz callback endpointine gönderilir.
Düzenli durumlar: Bir siparişin normal akışında bu durumlar sırayla iletilir.
inQueue
waiting
onTheWayForPickUp
onPickUpAddress
onDelivery
onDeliveryAddress
delivered
İade Durumları: Siparişin teslim alınıp yoldayken iptal edilme durumları. Siparişi kurye teslim aldıktan sonra teslim edene kadar bu durumlar iletilebilir.
waitingForReturn
onTheWayForReturn
onReturnAddress
returned
Transfer Durumları: Siparişin başka kuryeye transfer edilme durumları. Siparişi kurye teslim aldıktan sonra teslim edene kadar bu durumlar iletilebilir.
waitingForTransfer
onTheWayForTransfer
onTransferAddress
İptal Durumları: Sipariş herhangi bir durumda iken bu durum gelebilir.
canceled