NAV
PHP

Wstęp

Witamy w ZOOLO API! Możesz użyć naszego API do podłączenia swoich usług do serwisu internetowego zoolo.pl.

Ideą serwisu ZOOLO jest zintegrowanie całej branży zoologicznej w Polsce w jednym miejscu w sieci. Aktualnie, w internecie jak i poza nim, istnieje masa forum, treści, firm, usługodawców jak i producentów, którzy mają problemy z wybiciem sie na rynku. Nasz serwis ma za zadanie umożliwić przyciągniecie ich wszystkich w jedno miejsce, gdzie w prosty sposób końcowy użytkownik odnajdzie interesujące go treści oraz będzie mieć dostęp do olbrzymiego rynku towarów i usług zoologicznych.

Niniejsza strona informacyjna o API została utworzona za pomocą narzędzia Slate i jest cały czas rozwijane. W razie wykrycia błędów, pytań czy problemów z integracją, prosimy o kontakt z naszym działem technicznym.

Korzyści

Aby urzeczywistnić ideę serwisu, stworzyliśmy zestaw narzędzi, które umożliwią podłączenie zdalnych informacji w jeden kanał sprzedażowo-informacyjny na ZOOLO. Jest to świetna możliwość dla zwiększenia sprzedaży, wypłynięcia ze swoją ofertą i okazja do nawiązania nowych kontaktów handlowych.

Postawiliśmy na minimalizm, automatyzację i maksymalną prostotę, tak abyś nie musiał powielać czynności, które wykonujesz codziennie, np aktualizując swój sklep internetowy. Cały proces po zintegrowaniu będzie odbywać się automatycznie, a korzyści jakie otrzymasz są nieocenione. Coraz większa baza użytkowników, coraz większa baza firm i ofert biznesowych. Rosnąca ilość ogłoszeń, oraz zwiększająca się sprzedaż towarów.

Warto być z nami, bo my dbamy o klienta! Tworzymy ten portal z pasją i całkowitym zaangażowaniem! Bądź ZOOLO i dołącz do nas.

Wymagania

Aby mieć możliwość korzystania z API, niezbędne jest założenie konta w naszym serwisie. Konto i jego utrzymanie jest całkowicie darmowe. Z opcjami komercyjnymi oferowanymi przez nasz serwis można zapoznać się pod adresem tutaj.

Załóż konto

Jak to działa?

Integracja polega na tym, że po stronie klienta udostępniony jest plik w formacie JSON na przykład z danymi towarów, które chcesz udostepnić w ZOOLO. Plik musi być dostępny online i akutalizowany za pomocą narzędzia CRON (harmonogram zadań) na przykład co godzinę albo raz dziennie.

W określonych porach robot na naszym serwisie dokonuje pobrania pliku json z Twojego serwera i dokonuje aktualizacji danych na ZOOLO. W ten sposób odpada problem z duplikowaniem informacji, koniecznością pilnowania akutalności tych informacji, stanów magazynowych etc., oraz zaoszczędza Twój czas. Dane w kanale ZOOLO są odzwierciedleniem tego co masz akutalnie na swojej stronie.

# plik na Twoim serwerze, który będzie wczytywać nasz robot
    GET http://twoj-serwer.pl/integracje/data/zoolo.json

Przykładowy format JSON:

[
  {
    "remote_id": 1,
    "name": "Fluffums",
    "breed": "calico",
    "fluffiness": 6,
    "cuteness": 7
  },
  {
    "remote_id": 2,
    "name": "Max",
    "breed": "unknown",
    "fluffiness": 5,
    "cuteness": 10
  }
]

Informacje w naszej bazie są powiązane z Twoją bazą za pomocą specjalnego pola ID. Powinien to być nr ID rekordu w Twojej bazie danych.

# Każdy rekord musi zawierać unikalny identyfikator.
    remote_id

Instalując plik integratora na swoim serwerze, konieczne jest dokonanie modyfikacji zapytania SQL do struktury danych w Twojej bazie. Chodzi tutaj o to, że nazewnictwo pól w tabelach bazy danych u Ciebie może być inne niż na ZOOLO lub na 100% będziesz mieć inaczej zorganizowaną strukturę informacji. Trzeba zatem przemapować Twoje dane na nasz format. Brzmi strasznie, ale bez obaw, jest to bardzo prosta rzecz do zrobienia. Oczywiście udostepniamy przykładowe skrypty, które możesz pobrać tutaj, a w razie problemów natury technicznej, możemy równiż pomóc w instalacji.

Aktualizacje

Wczytany plik jest przetwarzany przez nasz serwis i dokonywane są następujące zmiany:

  1. Jeżeli produkt o podanym ID nie istnieje u nas w bazie, zostje dodany.
  2. Jeżeli produkt o podanym ID istnieje, porównywane są czasy akutalizacji. Jeśli jest inny - rekord zostaje zakutalizowany.
  3. Rekordy które zostały na liście, i które nie zostały ani dodane ani zakutalizowane, są traktowane jako nieaktywne dane i usuwane z naszej bazy.

Zdjęcia

System potrafi także zakutalizować powiązane informacje takie jak na przykład zdjęcia. Możliwe jest użycie wielu zdjęć dla jednego rekordu. Dzięki temu oferta może mieć galerię zdjęć zamiast tylko jednego obrazka. Zdjęcia są pobierane bezpośrednio z serwera klienta, dlatego wymagane jest podanie pełnego adresu URL.

End-Pointy

Lista producentów

Aby pobrać listę producentów:

# With shell, you can just pass the correct header with each request
    curl "api_endpoint_here"
    -H "Authorization: meowmeowmeow"

Make sure to replace meowmeowmeow with your API key.

Lista województw

Lista powiatów

Lista miejscowości

Lista kategorii marketu

Lista kategorii ogłoszeń

Kittn uses API keys to allow access to the API. You can register a new Kittn API key at our developer portal.

Kittn expects for the API key to be included in all API requests to the server in a header that looks like the following:

Authorization: meowmeowmeow

Integracje

Sklep

require 'kittn'

    api = Kittn::APIClient.authorize!('meowmeowmeow')
    api.kittens.get
import kittn

    api = kittn.authorize('meowmeowmeow')
    api.kittens.get()
curl "http://example.com/api/kittens"
    -H "Authorization: meowmeowmeow"

The above command returns JSON structured like this:

[
  {
    "id": 1,
    "name": "Fluffums",
    "breed": "calico",
    "fluffiness": 6,
    "cuteness": 7
  },
  {
    "id": 2,
    "name": "Max",
    "breed": "unknown",
    "fluffiness": 5,
    "cuteness": 10
  }
]

This endpoint retrieves all kittens.

HTTP Request

GET http://example.com/api/kittens

Query Parameters

Parameter Default Description
include_cats false If set to true, the result will also include cats.
available true If set to false, the result will include kittens that have already been adopted.

Serwis ogłoszeniowy

Fundacje

require 'kittn'

    api = Kittn::APIClient.authorize!('meowmeowmeow')
    api.kittens.get(2)
import kittn

    api = kittn.authorize('meowmeowmeow')
    api.kittens.get(2)
curl "http://example.com/api/kittens/2"
    -H "Authorization: meowmeowmeow"

The above command returns JSON structured like this:

{
  "id": 2,
  "name": "Max",
  "breed": "unknown",
  "fluffiness": 5,
  "cuteness": 10
}

This endpoint retrieves a specific kitten.

HTTP Request

GET http://example.com/kittens/<ID>

URL Parameters

Parameter Description
ID The ID of the kitten to retrieve

Errors

The Kittn API uses the following error codes:

Error Code Meaning
400 Bad Request – Your request sucks
401 Unauthorized – Your API key is wrong
403 Forbidden – The kitten requested is hidden for administrators only
404 Not Found – The specified kitten could not be found
405 Method Not Allowed – You tried to access a kitten with an invalid method
406 Not Acceptable – You requested a format that isn’t json
410 Gone – The kitten requested has been removed from our servers
418 I’m a teapot
429 Too Many Requests – You’re requesting too many kittens! Slow down!
500 Internal Server Error – We had a problem with our server. Try again later.
503 Service Unavailable – We’re temporarially offline for maintanance. Please try again later.