ShopPHP Rest API Service

ShopPHP Rest API Service ile, 3rd party programlarınızı (Muhasebe, Mobile app. vs.) ShopPHP ile entegre edebilirsiniz. Serviste ürün, kategori, marka, siparişler ve kullanıcılar servislerine okuma ve yazma desteği sunulmaktadır. Rest API ile ulaşabileceğiniz servisler aşağıdaki gibidir.
(Bu servis opsiyonel olarak sunulmaktadır.)

1. Önce rest API servisi sunan sitede admin statsüsünde bir kullanıcı açılmalıdır. 
	Örnek : email adresi : restapi@domainadi.com şifre : testapi
	Sonra bu kullanıcı bir bayi grubuna atanmalı ve bu bayi grubunda "Rest API kullanabilir" işaretlenmelidir.
	Son olarak ilgili panelde "XML veya Rest API Kullanabileceği IP'ler" kısmına Rest API kullanacak IP adresi eklenmelidir. Boş bıraklırısa bir IP kısıtlaması olmaz. 
2. Her işlem için POST tipinde auth_email ve auth_key gönderilmelidir. 
	auth_email => email adresi. 
	auth_key şifre ve email'in tekrar şifrelenmiş halidir. Almak için önce şifre md5 olarak şifrelenir, sonra bu değer email adresi eklenerek tekrar şifrelenir.
	PHP Örnek : $auth_key = md5('restapi@domainadı.com'.md5('testapi'));
3. Tüm ürünleri listelemek için /rest/products çağrılmalıdır.
4. Tek bir ürün sorgusu için /rest/products/ID/<urunID> çağrılmalıdır.
	Örnek :  /rest/products/ID/132
5. Kategoriye ait ürün sorgusu için /rest/products/catID/<catID> çağrılmalıdır.
	Örnek :  /rest/products/catID/132
6. Markaya ait ürün sorgusu için /rest/products/markaID/<markaID> çağrılmalıdır.
	Örnek :  /rest/products/markaID/132
7. Kategorileri listelemek için /rest/list/kategori çağrılmalıdır.
8. Kategori eklemek / güncellemek için /rest/setCategory çağrılmalıdır. POST olarak kategoriye ait veriler gönderilmelidir.
	POST olarak gönderilebilecek field isimleri : 
		ID (int) // Yazılıma ait kategori ID değeri
		categoryCode (string) // Sizin tarafınızdan gönderilen, benzersiz kateori kodu.
		ID ve categoryCode 'dan birinin gönderilmesi zorunludur.

		parentID (int)  // Yazılım kategori listesinde gelen üst kategori ID değeri.
		parentCategoryCode (string)  // Sizin tarafınızdan gönderilen, benzersiz üst kateoriye ait kod.
		Eğer kategorinin üst kategorisi set edilecekse, parentID ve parentCode  'dan birinin gönderilmesi yeterlidir.
		
		name (string)

	İşlem sonrası ilgili kategori bilgileri XML olarak döner. Eğer kategori daha önce eklendiyse, yeni kategori eklenmez ve var olan kategori bilgileri döner.
9. Marka eklemek / güncellemek için /rest/setBrand çağrılmalıdır. POST olarak kategoriye ait veriler gönderilmelidir.
	POST olarak gönderilebilecek field isimleri : 
		ID (int) // Yazılıma ait marka ID değeri (Gönderimezse, ve gönderilen marka yoksa yeni eklenir.)
		name (string)

	İşlem sonrası ilgili marka bilgileri XML olarak döner. Eğer marka daha önce eklendiyse, yeni marka eklenmez ve var olan marka bilgileri döner.
10. Ürün eklemek / güncellemek için /rest/setProduct çağrılamlıdır. POST olarak ürüne ait veriler gönderilmelidir. Yeni bir ürün eklenmeden önce, kategori ve marka eklenmiş ve ilgili ID'lerin elimizde olması gerekir.
	POST olarak gönderilebilecek field isimleri : 
		ID (int) // Yazılıma ait ürün ID değeri
		productCode (string) // Sizin tarafınızdan gönderilen, benzersiz ürün kodu.
		ID ve categoryCode 'dan birinin gönderilmesi zorunludur.

		catID (int), // kategori kodu değil, yazılıma ait kategori ID değeri olmalıdır.
		markaID (int), // marka adı değil, yazılıma ait marka ID değeri olmalıdır.
		name (string),
		listeDetay (string),
		onDetay (string),
		detay (text),<br>
		resim1 (text) ... resim5 (text), // Bir ürüne 5 adet resin eklenebilir. Resim download URL adresi girilmelidir.<br>		veya<br>		resim_base64_1 (base64) ... resim_base64_5 (base64), // Şeklinde base64 olarak resimler upload edilebilir.<br>
		stok (float),
		kdv (int), // %18 için 18 gönderilmelidir.
		fiyat (float),
		piyasafiyat (float),
		fiyatBirm (string),
		garanti (int), // Garanti ay süresi.
		desi (float),
		gtin (string) // GTIN veya EAN veya UPC veya ISBN gibi barkod bilgisi.
11. Ürün fiyat ve stok güncellemek için /rest/setProduct/priceAndStock çağrılamlıdır. POST olarak ürüne ait veriler gönderilmelidir.
	POST olarak gönderilebilecek field isimleri : 
		ID (int) // Yazılıma ait ürün ID değeri. Zorunludur.
		stok (int),
		kdv (int), // %18 için 18 gönderilmelidir.
		fiyat (float),
		piyasafiyat (float),
		fiyatBirm (string)
12. Ürün varyant güncellemek için /rest/setProduct/variant çağrılamlıdır. POST olarak ürüne ait veriler gönderilmelidir. Yazılım altyapısında 2 'li varyasyona ait X-Y kombinasyon desteği vardı. 
	Örnek : Kazan ürününe ait XL bedeni ve Kırmızı renke sahip varyasyonu.
	
	POST olarak gönderilebilecek field isimleri : 
		ID (int) // Yazılıma ait ürün ID değeri. Zorunludur.
		varStock (floar), // Varyasyon Stok Adet
		varCode (string), // Varyasyon Stok Kodu.
		var1_name (string), // Örnek : Beden
		var2_name (string), // Örnek : Renk
		var1_var (string), // Örnek XL
		var2_var (string), // Örnek Kırmızı
		var1_fark (float), // Fiyat farkı.
		var2_fark (float), // Fiyat farkı.
13. Ürün filtre güncellemek için /rest/setProduct/filter çağrılamlıdır. POST olarak ürüne ait veriler gönderilmelidir.
	POST olarak gönderilebilecek field isimleri : 
		ID (int) // Yazılıma ait ürün ID değeri. Zorunludur.
		title (string), // Örnek : Ekran Çözünürlüğü
		str (sring), // Örnen Full HD

14. Siparişlere ait sorgu için /rest/orders/date/<başlangış tarih>_<bitiş tarih> çağrılmalıdır.
	Örnek : /rest/orders/date/2017-12-31_2019-12-31
15. Tek siparişe ait sorgu için /rest/orders/no/<siparis_no> çağrılmalıdır. 
	Örnek : /rest/orders/no/158238365
16. Duruma göre siparişleri listelemek için  /rest/orders/durum/<durum_no> çağrılmalıdır. 
	Örnek : /rest/orders/durum/2

	Durum No : 1= Ödeme Onay Bekliyor. 2= Siparis Onaylandı / Hazırlanıyor., 51= Siparişiniz Kargoya Teslim Edildi., 81= Teslimat Yapıldı., 89= Değişim Talebi Alındı., 90= İptal Talebi Alındı.
17. Siparişe ait durum değiştirmek için /rest/updateOrder/no/<siparis_no> çağrılmalıdır.
	Örnek : /rest/updateOrder/no/158238365/51	
	POST olarak gönderilebilecek field isimleri : 
		durum (int),
		kargoTarih (date),
		kargoFirma (int),
		kargoSeriNo (string),
		kargoURL (string)
	Durum No : 1= Ödeme Onay Bekliyor. 2= Siparis Onaylandı / Hazırlanıyor., 51= Siparişiniz Kargoya Teslim Edildi., 81= Teslimat Yapıldı., 89= Değişim Talebi Alındı., 90= İptal Talebi Alındı.
18. Kargo Firmalarını listelemek için /rest/list/kargo çağrılmalıdır.
19. Kullanıcıları listelemek için /rest/users çağrılmalıdır.
	Tek bir kullanıcı çağırmak için /rest/users/ID/<userID> çağrılmalıdır.
	Örnek : /rest/users/ID/132


Arama

Kategoriler

Popüler

Bizi Takip Edin

Son Tweetler