Allegro WebAPI

Interfejs programistyczny platformy Allegro

doShowItemInfoExt

Ostatnia zmiana: 21.10.2014 r.
Dostępność:
Metoda pozwala na pobranie wszystkich dostępnych informacji (m.in. opis, kategoria, zdjęcia, parametry, dostępne sposoby dostawy i formy płatności, etc.) o wskazanej ofercie.

  1. session-handle | string | wymagany
    Identyfikator sesji użytkownika, uzyskany za pomocą metody doLogin(Enc).
  2. item-id | long | wymagany
    Identyfikator oferty.
  3. get-desc | int | niewymagany
    Parametr wskazujący na to, czy ma zostać pobrany opis oferty (1 - tak, 0 - nie; domyślna wartość: 0).
  4. get-image-url | int | niewymagany
    Parametr wskazujący na to, czy mają zostać pobrane odnośniki do zdjęć (1 - tak, 0 - nie; domyślna wartość: 0).
  5. get-attribs | int | niewymagany
    Parametr wskazujący na to, czy ma zostać pobrana lista parametrów przypisanych do oferty (1 - tak, 0 - nie; domyślna wartość: 0).
  6. get-postage-options | int | niewymagany
    Parametr wskazujący na to, czy mają zostać pobrane opcje dostawy wybrane dla oferty (1 - tak, 0 - nie; domyślna wartość: 0).
  7. get-company-info | int | niewymagany
    Parametr wskazujący na to, czy mają zostać pobrane dane (dotyczy tylko ofert wystawionych na koncie zarejestrowanym jako Firma) wystawiającego ofertę (1 - tak, 0 - nie; domyślna wartość: 0).
  8. get-product-info | int | niewymagany
    Parametr zdezaktualizowany.
  9. getAfterSalesServiceConditions | int | niewymagany
    Parametr wskazujący na to, czy mają zostać pobrane dane o warunkach oferty (1 - tak, 0 - nie; domyślna wartość: 0).
  10. getEan | int | niewymagany
    Parametr wskazujący na to, czy mają zostać pobrane dane o informacji dodatkowej związanej z ofertą (1 - tak, 0 - nie; domyślna wartość: 0).
  11. getAdditionalServicesGroup | int | niewymagany
    Jeśli ustawisz jego wartość na 1, w odpowiedzi otrzymasz identyfikator grupy usług dodatkowych (1 - tak, 0 - nie; domyślna wartość: 0).



Orientacyjna struktura wywołania metody

$doshowiteminfoext_request = array(
   'session-handle' => '22eb99326c6be29aa16d07d622bcfbcbee94ad54846f2f4e03_1',
   'item-id' => 1029515938,
   'get-desc' => 0,
   'get-image-url' => 1,
   'get-attribs' => 1,
   'get-postage-options' => 1,
   'get-company-info' => 0,
   'get-product-info' => 0,
   'getAfterSalesServiceConditions' => 0
);

  1. item-list-info-ext | ItemInfoExt
    Struktura zawierająca ogólne informacje o ofercie.
    1. it-id | long
      Identyfikator oferty.
    2. it-country | int
      Identyfikator kraju, w którym wystawiona została oferta.
    3. it-name | string
      Tytuł oferty.
    4. it-price | float
      Aktualna cena (dla ofert typu aukcja z licytacją).
    5. it-bid-count | int
      Liczba ofert kupna złożonych w ofercie.
    6. it-ending-time | long
      Czas zakończenia oferty (w formacie Unix time).
    7. it-seller-id | long
      Identyfikator sprzedającego.
    8. it-seller-login | string
      Nazwa sprzedającego.
    9. it-seller-rating | int
      0.Pole nieaktywne.Informacje o ocenach można pobrać przez REST API
    10. it-starting-time | long
      Czas rozpoczęcia oferty (w formacie Unix time; widoczny tylko dla użytkownika, który daną ofertę wystawiał - dla pozostałych w polu zwracane jest 0).
    11. it-starting-price | float
      Cena wywoławcza (dla ofert typu aukcja z licytacją; widoczna tylko dla użytkownika, który daną ofertę wystawiał - dla pozostałych w polu zwracane jest 0).
    12. it-quantity | int
      Aktualna liczba przedmiotów dostępnych w ofercie.
    13. it-foto-count | int
      Liczba zdjęć dołączonych do oferty (dotyczy tylko tych wgranych na serwery Allegro).
    14. it-reserve-price | float
      Cena minimalna (dla ofert typu aukcja z licytacją; widoczna tylko dla użytkownika, który daną ofertę wystawiał, dla pozostałych w polu zwracane jest: 0 - jeżeli cena minimalna nie jest ustawiona, -1 - jeżeli aktualna cena jest niższa od ceny minimalnej, -2 - jeżeli aktualna cena jest równa lub wyższa od ceny minimalnej).
    15. it-location | string
      Lokalizacja przedmiotu.
    16. it-buy-now-price | float
      Cena Kup Teraz! (jeżeli cena KT! nie jest ustawiona, w polu zwracane jest 0).
    17. it-buy-now-active | int
      Informacja o tym, czy w ofercie jest ustawiona (i cały czas aktywna) cena Kup Teraz! (1 - jest, 0 - nie jest).
    18. it-advertisement-price | float
      Cena ogłoszenia. Jeżeli oferta nie jest ogłoszeniem, zwrócimy w tym polu 0.
    19. it-advertisement-active | int
      Informacja czy oferta jest ogłoszeniem (0 - nie, 1 - tak).
    20. it-high-bidder | int
      Identyfikator użytkownika, który złożył najwyższą ofertę.
    21. it-high-bidder-login | string
      Nazwa użytkownika, który złożył najwyższą ofertę.
    22. it-description | string
      Opis oferty.
    23. itStandardizedDescription | string
      Nowy opis oferty
    24. it-options | int
      Wartość informująca o wybranych dla oferty opcjach dodatkowych (więcej).
    25. it-state | int
      Identyfikator regionu (województwa).
    26. it-wire-transfer | float
      Najniższy koszt dostawy dla typu płatność z góry (dla Polski: więcej informacji w strukturze item-postage-options).
    27. it-post-delivery | float
      Najniższy koszt dostawy dla typu płatność przy odbiorze (dla Polski: więcej informacji w strukturze item-postage-options).
    28. it-post-info | string
      Dodatkowe informacja o przesyłce i płatności.
    29. it-quantity-type | int
      Typ dostępnych w ofercie przedmiotów (0 - sztuki, 1 - komplety, 2 - pary).
    30. it-is-eco | int
      Informacja o tym, czy oferta jest promowana na liście aukcji Eko-Użytkowników (1 - jest, 0 - nie jest).
    31. it-hit-count | long
      Liczba wyświetleń oferty.
    32. it-postcode | string
      Kod pocztowy (jeżeli sprzedający zdecydował się na udostępnianie go w opisie).
    33. it-vat-invoice | int
      Informacja o tym, czy sprzedający wystawia faktury VAT (1 - wystawia, 0 - nie wystawia).
    34. itVatMarginInvoice | int
      Informacja o tym, czy sprzedający wystawia faktury VAT-marża (1 - wystawia, 0 - nie wystawia).
    35. itWithoutVatInvoice | int
      Informacja o tym, czy sprzedający wystawia faktury bez VAT (1 - wystawia, 0 - nie wystawia).
    36. it-bank-account1 | string
      Pierwszy numer konta bankowego sprzedającego.
    37. it-bank-account2 | string
      Drugi numer konta bankowego sprzedającego.
    38. it-starting-quantity | int
      Początkowa liczba przedmiotów dostępnych w ofercie.
    39. it-is-for-guests | int
      Informacja o tym, czy zakupu mogą dokonać użytkownicy bez rejestracji (1 - mogą, 0 - nie mogą).
    40. it-has-product | int
      Informacja o tym, czy oferta jest powiązana z produktem (1 - jest, 0 - nie jest).
    41. it-order-fulfillment-time | int
      Informacja o najkrótszym dostępnym czasie realizacji zamówienia (w godzinach). W UA/KZ działa jako "Wysyłka w ciagu" wraz z dodatkową wartością 1 ('natychmiast').
    42. it-ending-info | int
      Informacja na temat stanu oferty (1 - trwa, 2 - zakończyła się w sposób "naturalny" (koniec czasu trwania, albo wykupienie wszystkich dostępnych przedmiotów w przypadku Kup Teraz), 3 - została zakończona przez sprzedającego przed czasem).
    43. it-is-allegro-standard | int
      Informacja o tym, czy oferta jest oznaczona jako Standard Allegro [PL], Aukro Plus [CZ] lub Super Offer [UA/KZ] (1 - jest, 0 - nie jest).
    44. it-is-new-used | int
      Pole zdezaktualizowane. Zwraca 0 dla innych wartości parametru niż nowy lub używany. Poprawną wartość parametru stan otrzymasz w strukturze item-attrib-list. 
    45. it-is-brand-zone | int
      Informacja o tym, czy oferta została wystawiona w ramach Strefy Marek (1 - jest, 0 - nie jest).
    46. itEan | int  
      Kod EAN zdefiniowany dla danej oferty
  2. item-cat-path | ItemCatList[]
    Tablica struktur zawierająca informacje o strukturze kategorii oferty.
    1. cat-level | int
      Identyfikator poziomu zagłębienia kategorii (indeksowany od 0).
    2. cat-id | long
      Identyfikator kategorii.
    3. cat-name | string
      Nazwa kategorii.
  3. item-img-list | ItemImageList[]
    Tablica struktur zawierająca informacje o zdjęciach dodanych do oferty.
    1. image-type | int
      Typ zdjęcia (1 - miniaturka, 2 - średni rozmiar, 3 - oryginalne zdjęcie).
    2. image-url | string
      Odnośnik do zdjęcia.
  4. item-attrib-list | AttribStruct[]
    Tablica struktur zawierająca informacje o parametrach przypisanych do oferty.
    1. attrib-name | string
      Nazwa parametru.
    2. attrib-values | string[]
      Tablica wartości parametru (parametry typu zakresowego zwracane są pod postacią dwóch osobnych elementów tablicy: array[0] = wartość_początkowa; array[1] = wartość_końcowa).
  5. item-postage-options | PostageStruct[]
    Tablica struktur zawierająca informacje o opcjach dostawy wybranych dla oferty.
    1. postage-amount | float
      Cena za pierwszą sztukę.
    2. postage-amount-add | float
      Cena za kolejne sztuki (w przypadku niezdefiniowania przez sprzedającego, domyślnie przyjmowana jest tu wartość równa postage-amount).
    3. postage-pack-size | int
      Liczba w paczce (w przypadku niezdefiniowania przez sprzedającego, domyślnie przyjmowana jest tu wartość 1).
    4. postage-id | int
      Identyfikator sposobu dostawy  (listę identyfikatorów sposobów dostawy uzyskać można za pomocą metody doGetShipmentData).
    5. postage-free-shipping | int
      Informacja o tym, czy dla danej opcji dostawy sprzedający ustalił wysyłkę gratis (1 - tak, 0 - nie).
    6. postage-fulfillment-time | FulfillmentTimeStruct
      Struktura zawierająca informacje (w godzinach) o przybliżonym 'Czasie realizacji zamówienia' dla danej oferty.
      1. fulfillment-time-from | int
        Początek zakresu (w godzinach) dla przybliżonego 'Czasu realizacji zamówienia' (informacja zwracana tylko dla PL). 0 w polu oznacza, że sprzedający nie określił czasu dla 'Wysyłki w ciągu' lub 'Czas realizacji zamówienia' nie jest w danym kraju obsługiwany.
      2. fulfillment-time-to | int
        Koniec zakresu (w godzinach) dla przybliżonego 'Czasu realizacji zamówienia' (informacja zwracana tylko dla PL). 0 w polu oznacza, że sprzedający nie określił czasu dla 'Wysyłki w ciągu' lub 'Czas realizacji zamówienia' nie jest w danym kraju obsługiwany.
  6. item-payment-options | ItemPaymentOptions
    Struktura zawierająca informacje o formach płatności wybranych dla oferty.
    1. pay-option-transfer | int
      Zwykły przelew (1 - opcja włączona, 0 - opcja wyłączona).
    2. pay-option-on-delivery | int
      Płatność przy odbiorze (1 - opcja włączona, 0 - opcja wyłączona)
    3. pay-option-allegro-pay | int
      Płacę z Allegro (1 - opcja włączona, 0 - opcja wyłączona).
    4. pay-option-see-desc | int
      Dodatkowe informacje o przesyłce i płatności (1 - opcja włączona, 0 - opcja wyłączona).
    5. pay-option-payu | int
      Pole zdezaktualizowane (zawsze będzie zwracać 0).
    6. pay-option-escrow | int
      Pole zdezaktualizowane (zawsze będzie zwracać 0).
  7. item-company-info | CompanyInfoStruct
    Struktura zawierająca podstawowe informacje na temat firmy (jeżeli oferta została wystawiona z konta zarejestrowanego jako Firma).
    1. company-first-name | string
      Imię osoby obsługującej konto.
    2. company-last-name | string
      Nazwisko osoby obsługującej konto.
    3. company-name | string
      Nazwa firmy.
    4. company-address | string
      Adres siedziby firmy.
    5. company-postcode | string
      Kod pocztowy.
    6. company-city | string
      Miasto, w którym znajduje się siedziba firmy.
    7. company-nip | string
      NIP firmy.
  8. item-product-info | ProductStruct
    Struktura zdezaktualizowana.
    1. product-id | long
      Pole zdezaktualizowane (zawsze będzie zwracać 0).
    2. product-name | string
      Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
    3. product-description | string
      Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
    4. product-images-list | string[]
      Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
    5. product-parameters-group-list | ProductParametersGroupStruct[]
      Struktura zdezaktualizowana.
      1. product-parameters-group-name | string
        Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
      2. product-parameters-list | ProductParametersStruct[]
        Struktura zdezaktualizowana.
        1. product-parameter-name | string
          Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
        2. product-parameter-values | string[]
          Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
        3. product-parameter-description | string
          Pole zdezaktualizowane (zawsze będzie zwracać pustą wartość).
  9. itemVariants | ItemVariantStruct[]
    Tablica struktur zawierająca informacje o wariantach przedmiotu dostępnych w sprawdzanej ofercie.
    1. id | string
      Identyfikator wariantu.
    2. quantity | int
      Ilość sztuk przedmiotu dostępnych w danym wariancie.
    3. attributes | ItemVariantAttributeStruct[]
      Tablica struktur zawierająca informacje o atrybutach danego wariantu przedmiotu.
      1. name | string
        Nazwa atrybutu.
      2. value | string
        Wartość atrybutu.
  10. AfterSalesServiceConditions | AfterSalesServiceConditionsStruct 
    Struktura zawiera informacje jakie warunki są przypisane w ofercie.
    1. impliedWarranty | string
      Identyfikator (uuid) warunków reklamacji. Możesz go pobrać przez zasób GET /afterSalesServiceConditions/implied-warranties w REST API.
    2. returnPolicy | string
      Identyfikator (uuid) polityki zwrotów. Możesz go pobrać przez zasób GET /afterSalesServiceConditions/return-policies w REST API.
    3. warranty | string
      Identyfikator (uuid) Informacji o gwarancjach. Możesz go pobrać przez zasób GET /afterSalesServiceConditions/warranties w REST API.
  11. additionalServicesGroup | string 
    Identyfikator (uuid) grupy usług dodatkowych. Możesz go sprawdzić zasobem GET /sale/offer-additional-services/groups/{groupId} w REST API.



Orientacyjna struktura odpowiedzi serwera

$doshowiteminfoext_response = array(
   'item-list-info-ext' => array(
      'it-id' => 1029515938,
      'it-country' => 1,
      'it-name' => 'Sin City - Miasto grzechu (Blu-Ray) Okazja!! Folia',
      'it-price' => 0.00,
      'it-bid-count' => 0,
      'it-ending-time' => 1275682398,
      'it-seller-id' => 1181544,
      'it-seller-login' => 'dancemusic1',
      'it-seller-rating' => 0,
      'it-starting-time' => 0,
      'it-starting-price' => 0.00,
      'it-quantity' => 3,
      'it-foto-count' => 1,
      'it-reserve-price' => 0.00,
      'it-location' => 'GDANSK',
      ' it-buy-now-price' => 56.00,
      ' it-buy-now-active' => 1,
      ' it-advertisement-price' => 0,
      ' it-advertisement-active' => 0,
      ' it-high-bidder' => 0,
      ' it-high-bidder-login' => '0',
      'it-description' => NULL,
      'it-options' => 67108896,
      'it-state' => 11,
      'it-wire-transfer' => 7,
      'it-post-delivery' => 18,
      'it-post-info' => '',
      'it-quantity-type' => 0,
      'it-is-eco' => 0,
      'it-hit-count' => 18,
      'it-postcode' => '80-461',
      'it-vat-invoice' => 1,
      'it-bank-account1' => '97 2160 0003 2000 1573 8178 0001',
      'it-bank-account2' => '',
      'it-starting-quantity' => 4,
      'it-is-for-guests' => 1,
      'it-has-product' => 0,
      'it-order-fulfillment-time' => 72,
      'it-ending-info' => 2,
      'it-is-allegro-standard' => 1,
      'it-is-new-used' => 1,
      'it-is-brand-zone' => 0),
   'item-cat-path' => array(
      array(
         'cat-level' => 0,
         'cat-id' => 20585,
         'cat-name' => 'Filmy'),
      array(
         'cat-level' => 1,
         'cat-id' => 46187,
         'cat-name' => 'Płyty High Definition'),
      array(
         'cat-level' => 2,
         'cat-id' => 46188,
         'cat-name' => 'Płyty Blu-ray'),
      array(
         'cat-level' => 3,
         'cat-id' => 52818,
         'cat-name' => 'Science Fiction')),
   'item-img-list' => array(
      array(
         'image-type' => 1,
         'image-url' => 'http://img07.allegroimg.pl/photos/128x96/10/29/51/59/1029515938'),
     array(
         'image-type' => 2,
         'image-url' => 'http://img07.allegroimg.pl/photos/400x300/10/29/51/59/1029515938'),
      array(
         'image-type' => 3,
         'image-url' => 'http://img07.allegroimg.pl/photos/oryginal/10/29/51/59/1029515938')),
   'item-attrib-list' => array(
      array(
         'attrib-name' => 'Licencja do wypożyczania',
         'attrib-values' => array('nie')),
      array(
         'attrib-name' => 'Liczba płyt w wydaniu',
         'attrib-values' => array('jedna')),
      array(
         'attrib-name' => 'Polska wersja językowa',
         'attrib-values' => array('napisy', 'lektor')),
      array(
         'attrib-name' => 'Stan',
         'attrib-values' => array('nowa, w folii'))),
   'item-postage-options' => array(
      array(
 
         'postage-amount' => 18.00,
         'postage-amount-add' => 1.00,
         'postage-pack-size' => 3,  
         'postage-id' => 7,
         'postage-free-shipping' => 0,

         'postage-fulfillment-time' => array(
            'fulfillment-time-from' => 24,
            'fulfillment-time-to' => 24)),
      array(  
         'postage-amount' => 7.00,
         'postage-amount-add' => 1.00,
         'postage-pack-size' => 3,  
         'postage-id' => 6,
         'postage-free-shipping' => 0,

         'postage-fulfillment-time' => array(
            'fulfillment-time-from' => 24,
            'fulfillment-time-to' => 24)),
      array(  
         'postage-amount' => 8.00,
         'postage-amount-add' => 1.00,
         'postage-pack-size' => 3,  
         'postage-id' => 8,
         'postage-free-shipping' => 0,

         'postage-fulfillment-time' => array(,
            'fulfillment-time-from' => 24,
            'fulfillment-time-to' => 24))),
   'item-payment-options' => array(
      'pay-option-transfer' => 1,
      'pay-option-on-delivery' => 1,
      'pay-option-allegro-pay' => 1,
      'pay-option-see-desc' => 0,
      'pay-option-payu' => 0,
      'pay-option-escrow' => 0),
   'item-company-info' => array(
      'company-first-name' => '',
      'company-last-name' => '',
      'company-name' => '',
      'company-address' => '',
      'company-postcode' => '',
      'company-city' => '',
      'company-nip' => ''),
   'item-product-info' => array(
      'product-id' => 0,
      'product-name' => '',
      'product-description' => '',
      'product-images-list' => array(),
      'product-parameters-group-list' => array(
         array(
            'product-parameters-group-name' => '',
            'product-parameters-list' => array(
               array(
                  'product-parameter-name' => '',
                  'product-parameter-value' => array(),
                  'product-parameter-description' => '')))))
   'itemVariants' => array(
       array(
          'id' => '22eb99326c6be29aa16d07d622bcfbcbee94ad5',
          'quantity' => 10,
          'attributes' => array(
              array(
                 'name' => 'Kolor',
                 'value' => 'Zielony'),
              array(
                 'name' => 'Kolor',
                 'value' => 'Czerwony'))))
);

  • ERR_AUCTION_KILLED
    Nie można pobrać informacji o wskazanej ofercie, ponieważ została ona usunięta przez administratora serwisu.
  • ERR_INVALID_ITEM_ID
    Niepoprawny identyfikator oferty lub wskazana oferta została przeniesiona do archiwum.
  • ERR_NO_DATABASE
    Problemy z bazą danych Allegro.
  • ERR_NO_SESSION / ERR_SESSION_EXPIRED
    Niepoprawny identyfikator sesji lub sesja wygasła.
  • ERR_WEBAPI_KEY_INACTIVE
    Klucz WebAPI na którym została wygenerowana sesja został zdezaktywowany (jego właściciel nie zaakceptował warunków Regulaminu WebAPI).
  • ERR_WEBAPI_NOT_AVAIL
    Problemy z usługą Allegro WebAPI.

Allegro nie bierze odpowiedzialności za skutki wykorzystania zamieszczonych przykładów kodu, nie daje także gwarancji ich poprawnego działania. Widoczny kod ma charakter wyłącznie poglądowy i może zawierać błędy.

#1 (29.10.2013 r.) / php (Autor: pokupkivpolshe)
  1. <?php
  2. //pobieranie ustawień aplikacji webowej
  3. require_once 'app_config.php';
  4.  
  5. //pobieranie ustawień połączenia z bazą danych
  6. require_once 'database_connection.php';
  7.  
  8. //pobieranie ustawień allegro
  9. require_once 'allegro_settings.php';
  10.  
  11. //w przykładzie została wykorzystana funkcja error_handler ($string) celem której jest przekierowanie użykownika na stronę z informacją o błędzie $string.
  12.  
  13. //funkcja logowania zaszyfrowanego; zmienna $link przechowuje id aukcji Allegro, która nas interesuje.
  14. function Logowanie_Pobieranie ($allegro_username, $allegro_password, $link)
  15. {
  16.  
  17. //wersja Allegro jest przychowywana w pliku verkey.txt; program pobiera wartość wersji Allegro i przekazuje ją do zmiennej $allegroVerKey
  18. $file = fopen("../http/verkey.txt","r");
  19. $allegroVerKey = fread ($file,100);
  20. $allegroVerKey =trim($allegroVerKey);
  21. fclose ($file);
  22.  
  23. $client = new AllegroWebAPISoapClient();
  24.  
  25. try
  26. {
  27. try
  28. {
  29. // próba logowania (pierwsze 2 argumenty zostały przekazane do funkcji, argumenty 3 i 4 zostały pobrane z pliku 'allegro_settings.php', argument 5 został pobrany z pliku 'verkey.txt'
  30. $session = $client->doLoginEnc($allegro_username, $allegro_password, ALLEGRO_COUNTRY, ALLEGRO_KEY, $allegroVerKey);
  31. }
  32. catch(SoapFault $error)
  33. {
  34. // jeżeli występuje błąd niepoprawnego klucza wersji, pobieramy aktualny klucz wersji, zapisujemy go w pliku 'verkey.txt' i ponownie próbujemy zalogować się używając aktualnego klucza wersji
  35. if($error->faultcode == 'ERR_INVALID_VERSION_CAT_SELL_FIELDS')
  36. {
  37. // pobieramy aktualny klucz wersji
  38. $version = $client->doQuerySysStatus(AllegroWebAPISoapClient::QUERY_ALLEGROWEBAPI, ALLEGRO_COUNTRY, ALLEGRO_KEY);
  39. $allegroVerKey = $version['ver-key'];
  40. //zapisujemy aktualny klucz wersji w pliku 'verkey.txt'
  41. $file = fopen ("../http/verkey.txt","r+");
  42. fputs ($file, $version['ver-key']);
  43. fclose ($file);
  44. // ponowna próba logowania z użyciem aktualnego klucza
  45. $session = $client->doLoginEnc($allegro_username, $allegro_password, ALLEGRO_COUNTRY, ALLEGRO_KEY, $allegroVerKey);
  46. }
  47. // w przypadku innych błędów, komunikat o błędzie jest zapisywany w tabeli AUCTIONS (kolumna system_message). Użytkownik może podać treść tego komunikatu administartorowi systemu w celu rozwiązania problemu
  48. else
  49. {
  50. throw $error;
  51. //zapisywanie w tabeli AUCTIONS (kolumna system_message) komunikatu o błędzie
  52. $update_query = sprintf("UPDATE auctions SET system_message ='%s' WHERE link='%s';",
  53. mysql_real_escape_string ($error),
  54. mysql_real_escape_string ($link));
  55. //wykonanie polecenia MySQL
  56. mysql_query($update_query)
  57. or error_handler ('Bląd aktualizacji danych w tabeli z aukcjami: '.mysql_error());
  58. }
  59. }
  60.  
  61. //próba pobrania danych przy pomocy funkcji 'doShowItemInfoExt' przy podaniu identyfikatora sesji użytkownika, uzyskany za pomocą metody doLoginEnc (patrz wyżej) i identyfikatora oferty.
  62. try
  63. {
  64. $session = $client->doShowItemInfoExt($session['session-handle-part'], $link);
  65. //tworzymy macierz z wynikami zapytania, które zawierają ogólne informacje o ofercie; dalej wybieramy niezbędne dane
  66. $array = get_object_vars($session['item-list-info-ext']);
  67. //pobieramy aktualną cenę (dla ofert typu aukcja z licytacją)
  68. $actual_price = $array['it-price'];
  69. //pobieramy czas zakończenia oferty (w formacie Unix time)
  70. $auction_end_time = $array['it-ending-time'];
  71. //pobieramy informację na temat stanu oferty (1 - trwa, 2 - zakończyła się w sposób "naturalny" (koniec czasu trwania, albo wykupienie wszystkich dostępnych przedmiotów w przypadku Kup Teraz), 3 - została zakończona przez sprzedającego przed czasem).
  72. $auction_status = $array['it-ending-info'];
  73. //pobieramy nazwę użytkownika, który złożył najwyższą ofertę.
  74. $auction_winner = $array['it-high-bidder-login'];
  75. //zapisujemy pobrane dane w bazie danych, czas zakończenia aukcji jest zapisywany w bazie danych w dwóch formatach - UNIX i zwykłym
  76. $insert_query = sprintf("UPDATE auctions SET auction_winner ='%s', actual_price ='%s', auction_end_time=FROM_UNIXTIME('%s'), auction_end_time_unix='%s', auction_status='%s' WHERE link='%s';",
  77. mysql_real_escape_string ($auction_winner),
  78. mysql_real_escape_string ($actual_price),
  79. mysql_real_escape_string ($auction_end_time),
  80. mysql_real_escape_string ($auction_end_time),
  81. mysql_real_escape_string ($auction_status),
  82. mysql_real_escape_string ($link));
  83. //wykonanie polecenia MySQL
  84. mysql_query($insert_query)
  85. or error_handler ('Bląd dodania zapisu do tabeli z aukcjami: '.mysql_error());
  86. }
  87. catch(SoapFault $error)
  88. {
  89. //wyłapywanie błędów przy wykonaniu funkcji 'doShowItemInfoExt'
  90. $system_error=$error->faultcode.': '.$error->faultstring;
  91. //zapisywanie w tabeli AUCTIONS (kolumna system_message) komunikatu o błędzie.
  92. $update_query = sprintf("UPDATE auctions SET system_message ='%s' WHERE link='%s';",
  93. mysql_real_escape_string ($system_error),
  94. mysql_real_escape_string ($link));
  95. //wykonanie polecenia MySQL
  96. mysql_query($update_query)
  97. or error_handler ('Bląd aktualizacji danych w tabeli z aukcjami: '.mysql_error());
  98. }
  99. }
  100. catch(SoapFault $error)
  101. {
  102. //wyłapywanie błędów
  103. $system_error=$error->faultcode.': '.$error->faultstring;
  104. //zapisywanie w tabeli AUCTIONS (kolumna system_message) komunikatu o błędzie.
  105. $update_query = sprintf("UPDATE auctions SET system_message ='%s' WHERE link='%s';",
  106. mysql_real_escape_string ($system_error),
  107. mysql_real_escape_string ($link));
  108. //wykonanie polecenia MySQL
  109. mysql_query($update_query)
  110. or error_handler ('Bląd aktualizacji danych w tabeli z aukcjami: '.mysql_error());
  111. }
  112.  
  113. }
  114. ?>
#2 (15.10.2015 r.) / python (Autor: vorotemnar)
  1. from suds.client import Client
  2.  
  3. filterOptionsType = client.factory.create('FilterOptionsType')
  4. filterOptionsType.filterId = 'search'
  5. filterOptionsType.filterValueId.item.append('amiga')
  6.  
  7. arrayOfFilteroptionstype = client.factory.create('ArrayOfFilteroptionstype')
  8.  
  9. res = client.service.doGetItemsList(apiKey, countryCode,arrayOfFilteroptionstype, None,None,None,None)