V-Count API v3.5. - İnsan Sayma sonuçları için istekler https://cloud.v-count.com/vcountapi/vcountapi.php adresine gönderilecektir.



Benzer belgeler
V-Count API v3.6 İçindekiler


SMS interconnecion APi S DOKÜMANI

Merhaba Güncel API Dokümantasyonu.

um%20dolor%20sit%20amet&receipents= , &sender=ILETICELL İstekte gönderilen parametrelerin açıklamaları aşağıdaki gibidir:

%20dolor%20sit%20amet&receipents= , &sender=PROAKTIF

Merhaba Güncel API Dokümantasyonu.

Merhaba Güncel API Dokümantasyonu.

NETGSMSMS. VER 5.6.0

MySqlConnection connection; MySqlCommand command; MySqlDataReader reader; MySqlDataAdapter adapter; DataTable table;

API v1.0

GOLDMESAJ SMS API DÖKÜMANI

TC KİMLİK NO SMS GÖNDERİM SOAP API

BOTAN SMS APİ DÖKÜMANI. Versiyon 1.0

MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ

VIDEOCELL API. Versiyon 1.0.0

Global Haberleşme API Kullanıcı Notları

Doküman JETSMS XML Mesaj Đşlemleri Yardım Dokümanı Tarih Sürüm 1.1.0

HSancak Nesne Tabanlı Programlama I Ders Notları

BAUHAUS B2B Web Servis Dökümantasyonu

ENVİSTA ARM MERKEZ YAZILIMINA VERİ AKTARMA PROSEDÜRÜ

MOBILEPAX SOAP PRODUCT API KULLANIM ŞEKLİ

Tel : 0(532) Web : E-Posta : info@kayikcioglugrup.com. İLETİ PAKETİ API (Entegrason) Dökümanı

MOKA ÖDEME SERVİSİ IFRAME ENTEGRASYON DOKÜMANI

C#.Net & Linq (Language Integrated Query)

C# Console Uygulamaları ifelse Yapıları 2

MOKA ÖDEME SERVİSİ ORTAK ÖDEME SAYFASI ENTEGRASYON DOKÜMANI V

SMS API. KobiKom Telekomunikasyon A.Ş. SMS API Kullanım Bilgilerini İçerir. Tel: Fax:

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Mikro Ayarları. Mikro Programının kurulu olduğu veritabanı ve web servisi için bağlantı ayarlarının yapıldığı menüdür.

TC KİMLİK NO SMS GÖNDERİM XML API

JETSMS XML Mesaj İşlemleri Yardım Dokümanı Tarih Sürüm XML ile Mesaj İşlemleri

Vega Ayarları. Vega Programının kurulu olduğu veritabanı ve web servisi için bağlantı ayarlarının yapıldığı menüdür.


3K TELEKOM APİ DÖKÜMANI VER:5.1.0 PRO

Yeni bir proje açarken File New - Web Site diyoruz. Gelen ekranda Visual Basic veya C# seçilebilir. Biz ders kapsamında C# programlama dilini seçtik.

MOKA ÖDEME SERVİSİ BAYİ İŞLEMLERİ ENTEGRASYON DOKÜMANI

COM API v.1.1 BELGE SÜRÜMÜ : 1.1

asmmiz.com Randevu Web Servisi Kullanım Klavuzu

MARKAM SMS SMS GÖNDERİM WEB SERVİSLERİ VERSİYON 1.4

3G Sms&MMS GateWay Xml Interface

AJANS İLETİŞİM API XML API v İçindekiler. 1. AMAÇ - Sayfa 2


XML ile Mesaj İşlemleri

AKM SMS APİ DÖKÜMANI. VER:6.4.2 BETA ~ 1 ~

Submit metodu birden fazla numaraya aynı içerikli kısa mesaj gönderimi için kullanılmaktadır.

JAVA API v2.0 Belge sürümü: 2.0.2

Adım Adım SPSS. 1- Data Girişi ve Düzenlemesi 2- Hızlı Menü. Y. Doç. Dr. İbrahim Turan Nisan 2011

IdeaSoft E-Ticaret ile LOGO Ticari Yazılım Entegrasyon Kullanım Kılavuzu

MOBILEPAX ENTERPRISE API (WEB SERVİS)

SMSEXPLORER XML API. XML API KILAVUZU v.1.0

C# da basit console uygulamaları. C# da basit console uygulamaları

MARKAM SMS SMS GÖNDERİM WEB SERVİSLERİ VERSİYON 1.2

MARKAM SMS SMS GÖNDERİM WEB SERVİSLERİ VERSİYON 1.1


DESTEK DOKÜMANI. Ürün : Tiger Enterprise/ Tiger Plus/ Go Plus/Go Bölüm : Kurulum İşlemleri

3G SMS & MMS GateWay Xml Interface

SOAP API. Mobildev Toplu Mesajlaşma API

BOTAŞ EBT BİLGİ YÖNETİM SİSTEMİ WEB SERVİSLERİ

MOKA ÖDEME SERVİSİ PAZAR YERİ ENTEGRASYON DOKÜMANI

Lambda İfadeleri (Lambda Expressions)

BOTAŞ EBT BİLGİ YÖNETİM SİSTEMİ WEB SERVİSLERİ

Ürün Ekleme Kitapçığı

JAVA PROGRAMLAMA DİLİ ÖZELLİKLERİ

COM API v2.0 Belge sürümü : 2.0.3

Hitit R5 Ayarları. Hitit R5 Programının kurulu olduğu veritabanı ve web servisi için bağlantı ayarlarının yapıldığı menüdür.

DÖNGÜLER (LOOPS) while(), do-while(), for(), foreach()

MOKA ÖDEME SERVİSİ ÖDEME İSTEĞİ GÖNDERME BAYİ ENTEGRASYON DOKÜMANI

Sıcak Tahsilat Web Servisleri Yapısı

Medula Eczane Stok Bilgileri Web Servisleri Kullanım Kılavuzu

Birtel İletişim Teknolojileri

XML ile Mesaj Đşlemleri

1 Nisan Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Stok

Zirve e-fatura Portal Paketi V. 1.0.xx

PAYTR IFRAME API ENTEGRASYON DOKÜMANI

ICE BİLİŞİM TEKNOLOJİLERİ WEB SERVİS KILAVUZU. SERVİS LİNK: DÜZENLEME TABLOSU

XML API v2.0 Belge sürümü : 2.0.2

Java 2 Standart Edition SDK Kurulum ve Java ya Giriş

GENETİK ALGORİTMA GEZGİN SATICI ÖDEVİ

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1 1. FORMLAR

yeni_uye_kayit.ascx UserControl sayfamızda, kaydedilmek istenen üye eğer daha önce veritabanımızda kayıtlı ise bunu buldurup kullanıcıyı uyaralım;

MARKAM SMS SMS GÖNDERİM WEB SERVİSLERİ VERSİYON 1.6

Yayınlanma Tarihi: soru ve sorunlarınız için;

e-logo e-fatura Özel Entegratör Sistemi

HTTP/HTTPS API v2.0 Belge sürümü : 2.0.0

GEÇERLİLİK KONTROLLERİ VALİDATİON CONTROLS. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

Kargo Modülü. Diğer modüller ile entegre çalışan Kargo modülü ile satış irsaliyesifaturasıoluşturduktan

Xml Arayüzleri. 6. Sms To Multisenders (Farklı Mesajların Farklı Numaralara Yollanması)

ANADOLU ÜNİVERSİTESİ GÖREVLİ İŞLEMLERİ SİSTEMİ

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

WebInstaller. 1. Kurulum Đçin Gereksinimler

EC-485. Ethernet RS485 Çevirici. İstanbul Yazılım ve Elektronik Teknolojileri

İşe Giriş/Çıkış Bildirgesi ve E-bildige nin Sgk Web Sitesine Aktarımında Yenilik. 1.1 Sgk Kullanıcı Adı ve Şifresinin Programda Tanımlanması

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

MMS API v1.0 Belge sürümü : 1.0.0

DÖNGÜLER BMÜ-111 ALGORİTMA VE PROGRAMLAMA-I YRD. DOÇ. DR. İLHAN AYDIN

1. Aşağıdaki program parçacığını çalıştırdığınızda result ve param değişkenlerinin aldığı en son değerleri ve programın çıktısını yazınız.

Transkript:

V-Count API v3.5 Bu dokümanın amacı V-Count veritabanından insan sayma, mağaza önü sayma ve hava durumu verilerinin dışa aktarımı; ciro, fiş, stok ve ürün adedi bilgilerinin veritabanına içe aktarımı yöntemlerini anlatmaktır. 1. İnsan Sayma Verilerinin Dışa Aktarımı - Verilerin dışa aktarımı için kullanıcı POST metodu ile sunucuya istek (request) göndermelidir. Bu isteğin oluşturulmasından ve POST metoduyla gönderilmesinden sonra, kullanıcının seçtiği dönüş tipine göre sql, xml veya json formatında dönüş olacaktır. - İnsan Sayma sonuçları için istekler https://cloud.v-count.com/vcountapi/vcountapi.php adresine gönderilecektir. - Değişkenler POST metodu ile bu sayfaya gönderilmelidir. - Değişkenler username, password, start_date, finish_date, format, store şeklindedir: * Kullanıcı username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı password kısmına firma tarafından temin edilen şifreyi yazmalıdır. * Kullanıcı elde etmek istediği verilerin başlangıç tarihini, formatı Yıl-Ay-Gün olacak şekilde start_date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı elde etmek istediği verilerin bitiş tarihini, formatı Yıl-Ay-Gün olacak şekilde finish_date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı verilerin XML olarak dönmesini istiyorsa format kısmına xml yazmalıdır. * Kullanıcı verilerin SQL olarak dönmesini istiyorsa format kısmına sql yazmalıdır. * Kullanıcı verilerin JSON olarak dönmesini istiyorsa format kısmına json yazmalıdır. 1

* Kullanıcı tüm mağazaların verilerini almak istiyorsa store kısmına all yazmalıdır. Kullanıcı sadece tek bir mağazanın verilerini almak istiyorsa store kısmına verileri istenen mağazanın adını ya da varsa sisteme tanımlanmış kodu yazmalıdır (Mağaza kodlarının sisteme tanımlanması için şirket yetkilisi ile iletişime geçiniz). Kullanıcı belli bir mağaza grubunun verilerini almak istiyorsa store kısmına istenilen mağazalara ait ortak harf grubunu yazmalıdır. Örneğin kullanıcının aşağıdaki gibi 5 mağazası var ise: 1. ANK Kizilay 2. ANK Tunali 3. IST Taksim 4. IST Kadikoy 5. IZM Gundogdu Kullanıcı store kısmına ANK yazarak 1. ve 2. mağazaların verilerini veya IST yazarak 3. ve 4. mağazaların verilerini tek seferde alabilir. - Örnek istek: * username: demo * password: 12345 * format: xml * start_date: 2015-03-15 (15 Mart 2015) * finish_date: 2015-03-17 (17 Mart 2015) * store: ANK Kizilay - Oluşturulan bu değişkenler POST metoduyla belirtilen adrese gönderilmelidir. 2

A. SQL formatı Elde edilen sql formatında, kullanıcının görmek istediği bütün veri tek bir SQL sorgu linki şeklindedir. SQL sorgusu aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların sayım sonuçları sql şeklinde elde edilir: INSERT INTO `STATS` (`STORE`, `TIME_FORMATTED`, `IN`) VALUES ( demomagaza1, 2015-03-15 15:00:00, 200); INSERT INTO `STATS` (`STORE`, `TIME_FORMATTED`, `IN`) VALUES ( demomagaza2, 2015-03-15 15:00:00, 210); II. Store değişkeni yerine mağaza adı verilirse, o mağazanın sayım sonuçları sql formatında elde edilir: INSERT INTO `STATS` (`STORE`, `TIME_FORMATTED`, `IN`) VALUES ( demomagaza1, 2015-03-15 15:00:00, 210); INSERT INTO `STATS` (`STORE`, `TIME_FORMATTED`, `IN`) VALUES ( demomagaza1, 2015-03-15 16:00:00, 220); B. XML formatı Elde edilen XML formatında, kullanıcının görmek istediği bütün veri tek bir XML şeklindedir. XML aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların sayım sonuçları XML formatında elde edilir: <store>demomagaza1</store> <in>220</in> <store>demomagaza2</store> <in>250</in> 3

Store değişkeni yerine all değeri verilirse ve sistemde mağaza kodları tanımlı ise, tüm mağazaların sayım sonuçları aşağıdaki gibi elde edilir: <store_id>ab123</store_id> <store>demomagaza1</store> <in>220</in> <store_id>ab567</store_id> <store>demomagaza2</store> <in>250</in> II. Store değişkeni yerine mağaza adı verilirse, o mağazanın sayım sonuçları XML formatında elde edilir: <store>demomagaza</store> <in>220</in> Store değişkeni yerine mağaza adı verilirse ve sistemde mağaza kodları tanımlı ise, o mağazanın sayım sonuçları aşağıdaki gibi elde edilir: <store_id>ab123</store_id> <store>demomagaza</store> <in>220</in> 4

C. JSON formatı Elde edilen JSON formatında kullanıcının görmek istediği bütün veri tek bir JSON şeklindedir. JSON aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların sayım sonuçları JSON formatında elde edilir: [ { store : demomagaza1, timeformatted : 2015-03-16 09:00:00, in :200}, { store : demomagaza2, timeformatted : 2015-03-16 09:00:00, in :210}, ] II. Store değişkeni yerine mağaza adı verilirse, o mağazanın sayım sonuçları JSON formatında elde edilir: [ { store : demomagaza1, timeformatted : 2015-03-16 09:00:00, in :200}, { store : demomagaza1, timeformatted : 2015-03-16 10:00:00, in :210}, ] 2. Mağaza Kamera Yapısının Dışa Aktarımı - Mağaza kamera yapısının dışa aktarımı için kullanıcı, verilerin dışarı aktarımında olduğu gibi bir istek hazırlamalıdır. İstek POST metoduyla gönderildikten sonra mağaza kamera yapısı xml formatında dönecektir. - Mağaza kamera yapısı için istek https://cloud.v-count.com/vcountapi/clientstores.php adresine gönderilmelidir. - Değişkenler POST metoduyla gönderilmelidir. - Değişkenler sırasıyla username ve password şeklindedir: - Örnek istek: * Kullanıcı sorgu linkinin username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı sorgu linkinin password kısmına firma tarafından temin edilen şifreyi yazmalıdır. * username: demo * password: 12345 5

A. Dönülen XML içeriği Kullanıcının görmek istediği bütün veri tek bir XML öğesi şeklindedir. XML öğeleri aşağıdaki formata sahiptir: <store> <storename>magaza_adi1</storename> <door> <doorname>kapi_adi1_1</doorname> <device> <devicename>cihaz_adi1_1_1</devicename> <deviceid>1001</deviceid> </device> </door> <door> <doorname>kapi_adi1_2</doorname> <device> <devicename>cihaz_adi1_2_1</devicename> <deviceid>1002</deviceid> </device> <device> <devicename>cihaz_adi1_2_2</devicename> <deviceid>1003</deviceid> </device> </door> </store> <store> <storename>magaza_adi2</storename> <door> <doorname>kapi_adi2_1</doorname> <device> <devicename>cihaz_adi2_1_1</devicename> <deviceid>1004</deviceid> </device> </door> </store> 6

3. Günlük Ciro, Fiş, Stok ve Ürün Adedi Bilgilerinin İçe Aktarımı - Önemli not: Kullanıcı günlük ciro, fiş, stok ve ürün adedi verisi girmek isterse saatlik veri girme seçeneğini kullanmamalıdır. - Kullanıcı bilgileri içe aktarmak için, verilerin dışarı aktarımında olduğu gibi bir istek hazırlamalıdır. Sorgu POST metoduyla gönderildikten sonra verilerin içe aktarımını tamamlanır. - Ciro, fiş, stok ve ürün adedi bilgilerinin içe aktarımı için sorgu https://cloud.v-count.com/vcountapi/sales.php adresine gönderilmelidir. - Değişkenler sırasıyla username, password, date, store, sales, transaction, checkouts ve units şeklindedir: * Kullanıcı username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı password kısmına firma tarafından temin edilen şifreyi yazmalıdır. * Kullanıcı verilerini eklemek veya değiştirmek istediği mağazanın adını store kısmına yazmalıdır. * Kullanıcı ciro/fiş bilgilerini eklemek veya güncellemek istediği tarihi, formatı Yıl- Ay-Gün olacak şekilde date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı sales kısmına ciro bilgisini girmelidir. Ciro bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * Kullanıcı transaction kısmına fiş bilgisini girmelidir. Fiş bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * Kullanıcı checkouts kısmına stok bilgisini girmelidir. Stok bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. 7

- Örnek istek: * Kullanıcı units kısmına satılan ürün adedi bilgisini girmelidir. Ürün adedi bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * username: demo * password: 12345 * store: IST Kadikoy * date: 2015-03-17 (17 Mart 2015) * sales: 15500 * transaction: 150 * checkouts: 200 * units: 400 4. Saatlik Ciro, Fiş, Stok ve Ürün Adedi Bilgilerinin İçe Aktarımı - Önemli not: Kullanıcı ciro, fiş, stok ve ürün adedi bilgilerini saatlik olarak girmeyi tercih ederse günlük veri girme seçeneğini kullanmamalıdır. Sistem saatlik girilen verileri günlük olarak senkronize etmektedir. - Kullanıcı saatlik bilgileri içe aktarmak için, verilerin dışarı aktarımında olduğu gibi bir istek hazırlamalıdır. - Ciro, fiş, stok ve ürün adedi bilgilerinin içe aktarımı için sorgu https://cloud.v-count.com/vcountapi/sales_hourly.php adresine gönderilmelidir. - Değişkenler username, password, date, hour, store, sales, transaction, checkouts ve units şeklindedir: * Kullanıcı username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı password kısmına firma tarafından temin edilen şifreyi yazmalıdır. * Kullanıcı verilerini eklemek veya değiştirmek istediği mağazanın adını / kodunu store kısmına yazmalıdır. 8

- Örnek istek: * Kullanıcı ciro, fiş ve checkout bilgilerini eklemek veya güncellemek istediği tarihi, formatı Yıl-Ay-Gün olacak şekilde date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı saat bilgisini hour kısmına yazmalıdır. Kullanıcı geçerli bir saat değeri (0 ve 23 arasında) vermelidir. Aksi takdirde hata verecektir. * Kullanıcı sales kısmına ciro bilgisini girmelidir. Ciro bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * Kullanıcı transaction kısmına fiş bilgisini girmelidir. Fiş bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * Kullanıcı checkouts kısmına stok bilgisini girmelidir. Stok bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * Kullanıcı units kısmına ürün adedi bilgisini girmelidir. Ürün adedi bilgisi arada virgül ya da nokta olmadan yazılmalıdır ve sayı değeri girilmelidir. Bilgi girilmek istenmiyorsa 0 olarak gönderilebilir ya da boş bırakılabilir. * username: demo * password: 12345 * store: IST Kadikoy * date: 2015-03-17 (17 Mart 2015) * hour: 18 (18:00) * sales: 15500 * transaction: 150 * checkouts: 10 * units: 400 9

5. Etkinliklerin İçe Aktarımı - Etkinliklerin içe aktarımı için kullanıcı bir istek hazırlamalıdır. - Bu istek https://cloud.v-count.com/vcountapi/events.php adresine gönderilmelidir. - Değişkenler username, password, start_date, finish_date, store_names, event_name, event_type ve explanation şeklindedir: * Kullanıcı username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı password kısmına firma tarafından temin edilen şifreyi yazmalıdır. * Kullanıcı etkinliğin başlangıç tarihini start_date kısmına yazmalıdır. Tarih formatı YYYY-MM-DD HH:mm:00 şeklinde olmalıdır; aksi takdirde sistem hata verir. YYYY: Yılın 4 haneli sayısal, tam gösterimi (örn. 2015). MM: Ayın sıfır dolgulu sayısal gösterimi (örn. 06). DD: Ay günlerinin sıfır dolgulu iki haneli gösterimi (örn. 08 veya 24). HH: Saatin, 24-saatlik sıfır dolgulu gösterimi (örn. 05 veya 22). mm: Sıfır dolgulu dakika gösterimi (örn. 05 veya 30). * Kullanıcı etkinliğin bitiş tarihini finish_date kısmına yazmalıdır. Tarih formatı YYYY-MM-DD HH:mm:00 şeklinde olmalıdır; aksi takdirde sistem hata verir. YYYY: Yılın 4 haneli sayısal, tam gösterimi (örn. 2015). MM: Ayın sıfır dolgulu sayısal gösterimi (örn. 06). DD: Ay günlerinin sıfır dolgulu iki haneli gösterimi (örn. 08 veya 24). HH: Saatin, 24-saatlik sıfır dolgulu gösterimi (örn. 05 veya 22). mm: Sıfır dolgulu dakika gösterimi (örn. 05 veya 30). * Kullanıcı etkinliğin gerçekleşeceği mağazaları store_names kısmına yazmalıdır. Mağaza isimleri / kodları virgül, ile birbirlerinden ayrılmalıdır. * Kullanıcı etkinlik ismini event_name kısmına yazmalıdır. 10

* Kullanıcı etkinlik türünü event_type kısmına yazmalıdır. Olası etkinlik türleri: Konser Kampanya Yetişkin Çocuk - Örnek istek: * Kullanıcı etkinlik içeriğinin kısa bir özetini explanation kısmına yazmalıdır. Açıklama 1024 karakter sayısını geçmemelidir. * username: demo * password: 12345 * start_date: 2015-03-17 10:00:00 * finish_date: 2015-03-24 19:30:00 * store_names: ANK Kizilay, IST Kadikoy, IZM Gundogdu * event_name: %50 İndirim * event_type: Kampanya * explanation: Bütün indirimlerde %50 indirim 6. Hava Durumu Verilerinin Dışa Aktarımı - Verilerin dışa aktarımı için kullanıcı POST metodu ile sunucuya istek (request) göndermelidir. Bu isteğin oluşturulmasından ve POST metoduyla gönderilmesinden sonra, kullanıcının seçtiği dönüş tipine göre xml veya json formatında dönüş olacaktır. - Hava durumu sonuçları için istekler https://cloud.v-count.com/vcountapi/weather.php adresine gönderilecektir. - Değişkenler POST metodu ile bu sayfaya gönderilmelidir. - Değişkenler username, password, format, start_date, finish_date, store, unit şeklindedir: * Kullanıcı username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı password kısmına firma tarafından temin edilen şifreyi yazmalıdır. 11

* Kullanıcı elde etmek istediği verilerin başlangıç tarihini, formatı Yıl-Ay-Gün olacak şekilde start_date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı elde etmek istediği verilerin bitiş tarihini, formatı Yıl-Ay-Gün olacak şekilde finish_date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı verilerin XML olarak dönmesini istiyorsa format kısmına xml yazmalıdır. * Kullanıcı verilerin JSON olarak dönmesini istiyorsa format kısmına json yazmalıdır. * Kullanıcı verilerin Celsius biriminde dönmesini istiyorsa unit kısmına C, Fahrenheit biriminde dönmesini istiyorsa unit kısmına F yazmalıdır. * Kullanıcı tüm mağazaların verilerini almak istiyorsa store kısmına all yazmalıdır. Kullanıcı sadece tek bir mağazanın verilerini almak istiyorsa store kısmına verileri istenen mağazanın adını ya da varsa sisteme tanımlanmış kodu yazmalıdır (Mağaza kodlarının sisteme tanımlanması için şirket yetkilisi ile iletişime geçiniz). Kullanıcı belli bir mağaza grubunun verilerini almak istiyorsa store kısmına istenilen mağazalara ait ortak harf grubunu yazmalıdır. Örneğin kullanıcının aşağıdaki gibi 5 mağazası var ise: 1. ANK Kizilay 2. ANK Tunali 3. IST Taksim 4. IST Kadikoy 5. IZM Gundogdu Kullanıcı store kısmına ANK yazarak 1. ve 2. mağazaların verilerini veya IST yazarak 3. ve 4. mağazaların verilerini tek seferde alabilir. 12

- Örnek istek: * username: demo * password: 12345 * format: xml * start_date: 2015-03-15 (15 Mart 2015) * finish_date: 2015-03-17 (17 Mart 2015) * store: ANK Kizilay * unit: C - Oluşturulan bu değişkenler POST metoduyla belirtilen adrese gönderilmelidir. A. XML formatı Elde edilen XML formatında, kullanıcının görmek istediği bütün veri tek bir XML şeklindedir. XML aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların sayım sonuçları XML formatında elde edilir: <weather> <storename>demomagaza1</storename> <date>2012-08-30</date> <degree>36</degree> <condition>açik</condition> </weather> <weather> <storename> DemoMagaza2</storeName> <date>2012-08-30</date> <degree>35</degree> <condition>az bulutlu</condition> </weather> 13

II. Store değişkeni yerine mağaza adı verilirse, o mağazanın sayım sonuçları XML formatında elde edilir: <weather> <storename>demomagaza</storename> <date>2012-08-30</date> <degree>36</degree> <condition>açik</condition> </weather> <weather> <storename>demomagaza</storename> <date>2012-08-31</date> <degree>35</degree> <condition>az bulutlu</condition> </weather> B. JSON formatı Elde edilen JSON formatında kullanıcının görmek istediği bütün veri tek bir JSON şeklindedir. JSON aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların sayım sonuçları JSON formatında elde edilir: [ { "NAME": " DemoMagaza1 ", "DATE": "2012-08-30", "TEMPERATURE": "25", "CONDITION": "açik"}, {"NAME": " DemoMagaza2 ", "DATE": "2012-08-30", "TEMPERATURE": "32", "CONDITION": "az bulutlu"}, ] II. Store değişkeni yerine mağaza adı verilirse, o mağazanın sayım sonuçları JSON formatında elde edilir: [ { "NAME": " DemoMagaza ", "DATE": "2013-05-20", "TEMPERATURE": "24", "CONDITION": "açik"}, {"NAME": " DemoMagaza ", "DATE": "2013-05-21", "TEMPERATURE": "22", "CONDITION": "az bulutlu"}, ] 14

7. Mağaza Önü İnsan Sayma Verilerinin Dışa Aktarımı - Verilerin dışa aktarımı için kullanıcı POST metodu ile sunucuya istek (request) göndermelidir. Bu isteğin oluşturulmasından ve POST metoduyla gönderilmesinden sonra, kullanıcının seçtiği dönüş tipine göre sql, xml veya json formatında dönüş olacaktır. - Mağaza Önü İnsan Sayma sonuçları için istekler https://cloud.v-count.com/vcountapi/street_count.php adresine gönderilecektir. - Değişkenler POST metodu ile bu sayfaya gönderilmelidir. - Değişkenler username, password, start_date, finish_date, format, store şeklindedir: * Kullanıcı username kısmına firma tarafından temin edilen kullanıcı adını yazmalıdır. * Kullanıcı password kısmına firma tarafından temin edilen şifreyi yazmalıdır. * Kullanıcı elde etmek istediği verilerin başlangıç tarihini, formatı Yıl-Ay-Gün olacak şekilde start_date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı elde etmek istediği verilerin bitiş tarihini, formatı Yıl-Ay-Gün olacak şekilde finish_date kısmına yazmalıdır. Kullanıcı tarih aralarına - işareti koymalıdır. Tarihin formatı Yıl-Ay-Gün şeklinde olmalıdır ve rakamlardan oluşmalıdır. Aksi takdirde hata verecektir. * Kullanıcı verilerin XML olarak dönmesini istiyorsa format kısmına xml yazmalıdır. * Kullanıcı verilerin SQL olarak dönmesini istiyorsa format kısmına sql yazmalıdır. * Kullanıcı verilerin JSON olarak dönmesini istiyorsa format kısmına json yazmalıdır. * Kullanıcı tüm mağazaların verilerini almak istiyorsa store kısmına all yazmalıdır. Kullanıcı sadece tek bir mağazanın verilerini almak istiyorsa store kısmına verileri istenen mağazanın adını ya da varsa sisteme tanımlanmış kodu yazmalıdır (Mağaza kodlarının sisteme tanımlanması için şirket yetkilisi ile iletişime geçiniz). 15

Kullanıcı belli bir mağaza grubunun verilerini almak istiyorsa store kısmına istenilen mağazalara ait ortak harf grubunu yazmalıdır. Örneğin kullanıcının aşağıdaki gibi 5 mağazası var ise: 1. ANK Kizilay 2. ANK Tunali 3. IST Taksim 4. IST Kadikoy 5. IZM Gundogdu Kullanıcı store kısmına ANK yazarak 1. ve 2. mağazaların verilerini veya IST yazarak 3. ve 4. mağazaların verilerini tek seferde alabilir. - Örnek istek: * username: demo * password: 12345 * format: xml * start_date: 2015-03-15 (15 Mart 2015) * finish_date: 2015-03-17 (17 Mart 2015) * store: ANK Kizilay - Oluşturulan bu değişkenler POST metoduyla belirtilen adrese gönderilmelidir. A. SQL formatı Elde edilen sql formatında, kullanıcının görmek istediği bütün veri tek bir SQL sorgu linki şeklindedir. SQL sorgusu aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların mağaza önü sayım sonuçları sql şeklinde elde edilir: INSERT INTO `STREET_STATS` (`STORE`, `TIME_FORMATTED`, `STREET_COUNT`) VALUES ( demomagaza1, 2015-03-15 15:00:00, 200); INSERT INTO ` STREET_STATS` (`STORE`, `TIME_FORMATTED`, `STREET_COUNT`) VALUES ( demomagaza2, 2015-03-15 15:00:00, 210); 16

II. Store değişkeni yerine mağaza adı verilirse, o mağazanın mağaza önü sayım sonuçları sql formatında elde edilir: INSERT INTO ` STREET_STATS` (`STORE`, `TIME_FORMATTED`, `STREET_COUNT`) VALUES ( demomagaza1, 2015-03-15 15:00:00, 210); INSERT INTO ` STREET_STATS` (`STORE`, `TIME_FORMATTED`, `STREET_COUNT`) VALUES ( demomagaza1, 2015-03-15 16:00:00, 220); B. XML formatı Elde edilen XML formatında, kullanıcının görmek istediği bütün veri tek bir XML şeklindedir. XML aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların mağaza önü sayım sonuçları XML formatında elde edilir: <store>demomagaza1</store> <street_count>220</street_count> <store>demomagaza2</store> <street_count>250</street_count> Store değişkeni yerine all değeri verilirse ve sistemde mağaza kodları tanımlı ise, tüm mağazaların mağaza önü sayım sonuçları aşağıdaki gibi elde edilir: <store_id>ab123</store_id> <store>demomagaza1</store> <street_count>220</street_count> <store_id>ab567</store_id> <store>demomagaza2</store> <street_count>250</street_count> 17

II. Store değişkeni yerine mağaza adı verilirse, o mağazanın mağaza önü sayım sonuçları XML formatında elde edilir: <store>demomagaza</store> <street_count>220</street_count> Store değişkeni yerine mağaza adı verilirse ve sistemde mağaza kodları tanımlı ise, o mağazanın mağaza önü sayım sonuçları aşağıdaki gibi elde edilir: <store_id>ab123</store_id> <store>demomagaza</store> <street_count>220</street_count> C. JSON formatı Elde edilen JSON formatında kullanıcının görmek istediği bütün veri tek bir JSON şeklindedir. JSON aşağıdaki gibidir: I. Store değişkeni yerine all değeri verilirse, tüm mağazaların mağaza önü sayım sonuçları JSON formatında elde edilir: [ { store : demomagaza1, timeformatted : 2015-03-16 09:00:00, street_count :200}, { store : demomagaza2, timeformatted : 2015-03-16 09:00:00, street_count :210}, ] II. Store değişkeni yerine mağaza adı verilirse, o mağazanın mağaza önü sayım sonuçları JSON formatında elde edilir: [ { store : demomagaza1, timeformatted : 2015-03-16 09:00:00, street_count :200}, { store : demomagaza1, timeformatted : 2015-03-16 10:00:00, street_count :210}, ] 18

8. Hata Tipleri - Incorrect Username or Password! : Kullanıcı adı veya şifresi yanlış girilmiştir. - Incorrect format type! : Format olarak sql, xml veya json dışında bir tip kullanmıştır. - Incorrect date format! : Tarih formatı üç parçadan oluşmuyor ( - ile ayrılmış) veya bu parçalar rakamlardan oluşmuyor demektir. - Incorrect hour format! : Geçerli bir saat değeri (0 ve 23 arası) verilmemiştir. - Incorrect store name / code! : Mağaza ismi / kodu hatalı ya da bu isimde / kodda bir mağaza bulunmuyor demektir. 19

9. API Kullanımı Örnekleri A. PHP ile API Kullanımı Bu örneği kullanabilmek için PHP nin curl uzantısını etkinleştirmek gerekmektedir. <?php //POST istemi için degiskenler $post_array = array( 'username' => "demo", 'password' => "12345", 'start_date' => "2015-01-01", 'finish_date' => "2015-01-10", 'format' => "xml", 'store' => "IST Kadikoy" ); $url = "https://cloud.v-count.com/vcountapi/vcountapi.php"; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $post_array); //POST istemi sonucu $output = curl_exec($ch); //Donulen hata parametreleri $curlerrcode = curl_errno($ch); $curlerr = curl_error($ch);?> curl_close($ch); curl hakkında daha fazla bilgi için: - http://php.net/manual/en/book.curl.php - http://codular.com/curl-with-php 20

B. C# ile API Kullanımı using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.IO; using System.Net; using System.Collections.Specialized; namespace vcount_api { class Program { static void Main(string[] args) { //POST istemi için degiskenler string username = "demo", password = "12345", start_date = "2015-01-01", finish_date = "2015-01-10", format = "xml", store = "all"; string uri = "https://cloud.v-count.com/vcountapi/vcountapi.php"; using (WebClient client = new WebClient()) { byte[] response = client.uploadvalues(uri, new NameValueCollection() { { "username", username }, { "password", password }, { "start_date", start_date }, { "finish_date", finish_date }, { "format", format }, { "store", store } }); } } } } string result = System.Text.Encoding.UTF8.GetString(response); Console.WriteLine(result); 21