Allegro WebAPI

Interfejs programistyczny platformy Allegro

doShowUser

Ostatnia zmiana: 09.06.2011 r.
Dostępność:
Metoda pozwala na pobranie publicznie dostępnych informacji o dowolnym użytkowniku serwisu. Użytkownik może być wskazany za pomocą jego identyfikatora lub nazwy - w przypadku przekazania wartości w obu wymienionych parametrach, zwrócone zostaną informacje o użytkowniku wskazanym w parametrze user-id.

  1. webapi-key | string | wymagany
    Klucz WebAPI użytkownika.
  2. country-id | int | wymagany
    Identyfikator kraju (listę identyfikatorów krajów uzyskać można za pomocą metody doGetCountries).
  3. user-id | long | wymagany (nie, jeżeli podano user-login)
    Identyfikator użytkownika.
  4. user-login | string | wymagany (nie, jeżeli podano user-id).
    Nazwa użytkownika.



Orientacyjna struktura wywołania metody

$doshowuser_request = array(
   'webapi-key' => 'g2fe408289',
   'country-id' => 1,
   'user-id' => 0,
   'user-login' => 'm010ch'
);

  1. user-id | long
    Identyfikator użytkownika.
  2. user-login | string
    Nazwa użytkownika.
  3. user-country | int
    Kraj użytkownika.
  4. user-create-date | long
    Data rejestracji użytkownika (w formacie Unix time).
  5. user-login-date | long
    Data ostatniego logowania użytkownika (w formacie Unix time).
  6. user-rating | int
    Pole nieaktywne.Informacje o ocenach można pobrać przez REST API
  7. user-is-new-user | int
    Informacja o tym, czy konto użytkownika rejestrowane było w ciągu ostatnich 3 tygodni (1 - tak, 0 - nie).
  8. user-not-activated | int
    Informacja o tym, czy użytkownik dokonał pełnej aktywacji konta (1 - nie, 0 - tak).
  9. user-closed | int
    Informacja o tym, czy użytkownik dokonał zamknięcia konta (1 - tak, 0 - nie).
  10. user-blocked | int
    Informacja o tym, czy konto użytkownika jest zablokowane (1 - tak, 0 - nie).
  11. user-terminated | int
    Informacja o tym, czy użytkownik rozwiązał umowę z serwisem (1 - tak, 0 - nie).
  12. user-has-page | int
    Informacja o tym, czy użytkownik ma aktywną stronę "O mnie" (1 - tak, 0 - nie).
  13. user-is-sseller | int
    Informacja o tym, czy użytkownik ma włączoną ikonę uczestnika programu Super Sprzedawca (1 - tak, 0 - nie).
  14. user-is-eco | int
    Informacja o tym, czy użytkownik jest Eko-Użytkownikiem (1 - tak, 0 - nie).
  15. user-positive-feedback | ShowUserFeedbacks
    null. Struktura nieaktywna. Informacje o ocenach można pobrać przez REST API
    1. user-f-last-week | int
      0.
    2. user-f-last-month | int
      0.
    3. user-f-all | int
      0.
    4. user-f-sold-items | int
      0.
    5. user-f-buy-items | int
      0.
  16. user-negative-feedback | ShowUserFeedbacks
    null. Struktura nieaktywna. Informacje o ocenach można pobrać przez REST API
    1. user-f-last-week | int
      0.
    2. user-f-last-month | int
      0.
    3. user-f-all | int
      0.
    4. user-f-sold-items | int
      0.
    5. user-f-buy-items | int
      0.
  17. user-neutral-feedback | ShowUserFeedbacks
    null. Struktura nieaktywna.Informacje o ocenach można pobrać przez REST API
    1. user-f-last-week | int
      0.
    2. user-f-last-month | int
      0.
    3. user-f-all | int
      0.
    4. user-f-sold-items | int
      0.
    5. user-f-buy-items | int
      0.
  18. user-junior-status | int
    Informacja o tym, czy użytkownik korzysta z konta Junior (1 - tak, 0 - nie).
  19. user-has-shop | int
    Informacja o tym, czy użytkownik posiada aktywny Sklep Allegro (1 - tak, 0 - nie).
  20. user-company-icon | int
    Informacja o tym, czy użytkownik korzysta z konta Firma (1 - tak, 0 - nie; dla UA/KZ zawsze zwracane będzie 0).
  21. user-sell-rating-count | int
    0. Pole nieaktywne.Informacje o ocenach można pobrać przez REST API
  22. user-sell-rating-average | SellRatingAverageStruct[]
    null. Struktura nieaktywna.Informacje o ocenach można pobrać przez REST API
    1. sell-rating-group-title | string
      0.
    2. sell-rating-average | float
      0.
  23. user-is-allegro-standard | int
    Informacja o tym, czy użytkownik uczestniczy w programie Standard Allegro (0 - nie, 1 - tak).
  24. user-is-b2c-seller | int
    [Dotyczy tylko użytkowników z aukro.bg] Informacja o tym, czy użytkownik może wystawiać oferty (0 - nie, 1 - tak).



Orientacyjna struktura odpowiedzi serwera

$doshowuser_response = array(
   'user-id' => 4109848,
   'user-login' => 'm010ch',
   'user-country' => 1,
   'user-create-date' => 1129557219,
   'user-login-date' => 1274972672,
   'user-rating' => 0,
   'user-is-new-user' => 0,
   'user-not-activated' => 0,
   'user-closed' => 0,
   'user-blocked' => 0,
   'user-terminated' => 0,
   'user-has-page' => 0,
   'user-is-sseller' => 0,
   'user-is-eco' => 0,
   'user-positive-feedback' => array(
      'user-f-last-week' => 0,
      'user-f-last-month' => 14,
      'user-f-all' => 387,
      'user-f-sold-items' => 224,
      'user-f-buy-items' => 163),
   'user-negative-feedback' => array(
      'user-f-last-week' => 0,
      'user-f-last-month' => 0,
      'user-f-all' => 0,
      'user-f-sold-items' => 0,
      'user-f-buy-items' => 0),
   'user-neutral-feedback' => array(
      'user-f-last-week' => 0,
      'user-f-last-month' => 0,
      'user-f-all' => 0,
      'user-f-sold-items' => 0,
      'user-f-buy-items' => 0),
   'user-junior-status' => 0,
   'user-has-shop' => 0,
   'user-company-icon' => 0,
   'user-sell-rating-count' => 10,
   'user-sell-rating-average' => array(
      array(
         'sell-rating-group-title' => 'Zgodność przedmiotu z opisem',
         'sell-rating-group-average' => 4.5),
      array(
         'sell-rating-group-title' => 'Kontakt ze Sprzedającym',
         'sell-rating-group-average' => 4.9),
      array(
         'sell-rating-group-title' => 'Czas realizacji zamówienia',
         'sell-rating-group-average' => 4.6),
      array(
         'sell-rating-group-title' => 'Koszt wysyłki',
         'sell-rating-group-average' => 4.5),
   'user-is-allegro-standard' => 1,
   'user-is-b2c-seller' => 0)
);

  • ERR_INPUT_COUNTRY_ERROR
    Niepoprawny identyfikator kraju (wskazany kraj nie jest obsługiwany lub w parametrze przekazano zerową/pustą wartość).
  • ERR_USER_NOT_FOUND
    Nie podano identyfikatora/nazwy użytkownika, podany identyfikator/nazwa są niepoprawne lub podano identyfikator niezarejestrowanego użytkownika.
  • ERR_WEBAPI_EXPIRED
    Data ważności klucza WebAPI została przekroczona.
  • ERR_WEBAPI_KEY
    Niepoprawna wartość klucza WebAPI lub klucz został zablokowany.
  • ERR_WEBAPI_KEY_INACTIVE
    Klucz WebAPI został zdezaktywowany (nie zaakceptowano 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.07.2010 r.) / c# (Autor: coresoftlab)
Przykład wywołania metody po poprawkach w WebService (czytaj informacje zawarte na dole postu):

  1. long userId = 0;
  2. string userName = "nazwaUzytkownika";
  3.  
  4. //
  5. // Dane zwracane przez metodę
  6. //
  7.  
  8. long userCreateDate;
  9. long userLoginDate;
  10. int userCountry;
  11. int userRating;
  12. int userIsNewUser;
  13. int userNotActivated;
  14. int userClosed;
  15. int userBlocked;
  16. int userTerminated;
  17. int userHasPage;
  18. int userIsSeller;
  19. int userIsEco;
  20. ShowUserFeedbacks userPositiveFeedback;
  21. ShowUserFeedbacks userNegativeFeedback;
  22. ShowUserFeedbacks userNeutralFeedback;
  23. int userJuniorStatus;
  24. int userHasShop;
  25. int userCompanyIcon;
  26. int userSellRatingCount;
  27. SellRatingAverageStruct[] userSellRatingAverage;
  28.  
  29. _allegroWebService.doShowUser(
  30. WebApiKey,
  31. (int) Country.Poland,
  32. ref userId,
  33. ref userName,
  34. out userCountry,
  35. out userCreateDate,
  36. out userLoginDate,
  37. out userRating,
  38. out userIsNewUser,
  39. out userNotActivated,
  40. out userClosed,
  41. out userBlocked,
  42. out userTerminated,
  43. out userHasPage,
  44. out userIsSeller,
  45. out userIsEco,
  46. out userPositiveFeedback,
  47. out userNegativeFeedback,
  48. out userNeutralFeedback,
  49. out userJuniorStatus,
  50. out userHasShop,
  51. out userCompanyIcon,
  52. out userSellRatingCount,
  53. out userSellRatingAverage
  54. );


Jeżeli korzystamy z Framework 2.0 to generator klas dla specyfikacji WSDL (Add Web Reference...) błędnie generuje prototyp metody i przenosi parametr "user-country" jako wartość zwracaną przez metodę doShowUser() co powoduje rzucenie wyjątku podczas użycia metody w kodzie klienckim. Rozwiązaniem jest ręczna zmiana kodu metody doShowUser(), zawartego w pliku Reference.cs:

  1. /// <remarks/>
  2. [System.Web.Services.Protocols.SoapRpcMethodAttribute("#showuser", RequestNamespace="urn:AllegroWebApi", ResponseNamespace="urn:AllegroWebApi")]
  3. //[return: System.Xml.Serialization.SoapElementAttribute("user-country")]
  4. public void doShowUser(
  5. [System.Xml.Serialization.SoapElementAttribute("webapi-key")] string webapikey,
  6. [System.Xml.Serialization.SoapElementAttribute("country-id")] int countryid,
  7. [System.Xml.Serialization.SoapElementAttribute("user-id")] ref long userid,
  8. [System.Xml.Serialization.SoapElementAttribute("user-login")] ref string userlogin,
  9. [System.Xml.Serialization.SoapElementAttribute("user-country")] out int usercountry,
  10. [System.Xml.Serialization.SoapElementAttribute("user-create-date")] out long usercreatedate,
  11. [System.Xml.Serialization.SoapElementAttribute("user-login-date")] out long userlogindate,
  12. [System.Xml.Serialization.SoapElementAttribute("user-rating")] out int userrating,
  13. [System.Xml.Serialization.SoapElementAttribute("user-is-new-user")] out int userisnewuser,
  14. [System.Xml.Serialization.SoapElementAttribute("user-not-activated")] out int usernotactivated,
  15. [System.Xml.Serialization.SoapElementAttribute("user-closed")] out int userclosed,
  16. [System.Xml.Serialization.SoapElementAttribute("user-blocked")] out int userblocked,
  17. [System.Xml.Serialization.SoapElementAttribute("user-terminated")] out int userterminated,
  18. [System.Xml.Serialization.SoapElementAttribute("user-has-page")] out int userhaspage,
  19. [System.Xml.Serialization.SoapElementAttribute("user-is-sseller")] out int userissseller,
  20. [System.Xml.Serialization.SoapElementAttribute("user-is-eco")] out int useriseco,
  21. [System.Xml.Serialization.SoapElementAttribute("user-positive-feedback")] out ShowUserFeedbacks userpositivefeedback,
  22. [System.Xml.Serialization.SoapElementAttribute("user-negative-feedback")] out ShowUserFeedbacks usernegativefeedback,
  23. [System.Xml.Serialization.SoapElementAttribute("user-neutral-feedback")] out ShowUserFeedbacks userneutralfeedback,
  24. [System.Xml.Serialization.SoapElementAttribute("user-junior-status")] out int userjuniorstatus,
  25. [System.Xml.Serialization.SoapElementAttribute("user-has-shop")] out int userhasshop,
  26. [System.Xml.Serialization.SoapElementAttribute("user-company-icon")] out int usercompanyicon,
  27. [System.Xml.Serialization.SoapElementAttribute("user-sell-rating-count")] out int usersellratingcount,
  28. [System.Xml.Serialization.SoapElementAttribute("user-sell-rating-average")] out SellRatingAverageStruct[] usersellratingaverage) {
  29. object[] results = this.Invoke("doShowUser", new object[] {
  30. webapikey,
  31. countryid,
  32. userid,
  33. userlogin});
  34. userid = ((long)(results[0]));
  35. userlogin = ((string)(results[1]));
  36. usercountry = ((int)(results[2]));
  37. usercreatedate = ((long)(results[3]));
  38. userlogindate = ((long)(results[4]));
  39. userrating = ((int)(results[5]));
  40. userisnewuser = ((int)(results[6]));
  41. usernotactivated = ((int)(results[7]));
  42. userclosed = ((int)(results[8]));
  43. userblocked = ((int)(results[9]));
  44. userterminated = ((int)(results[10]));
  45. userhaspage = ((int)(results[11]));
  46. userissseller = ((int)(results[12]));
  47. useriseco = ((int)(results[13]));
  48. userpositivefeedback = ((ShowUserFeedbacks)(results[14]));
  49. usernegativefeedback = ((ShowUserFeedbacks)(results[15]));
  50. userneutralfeedback = ((ShowUserFeedbacks)(results[16]));
  51. userjuniorstatus = ((int)(results[17]));
  52. userhasshop = ((int)(results[18]));
  53. usercompanyicon = ((int)(results[19]));
  54. usersellratingcount = ((int)(results[20]));
  55. usersellratingaverage = ((SellRatingAverageStruct[])(results[21]));
  56. }


Problem ten nie występuje, gdy korzystamy z Framework 3.5
#2 (20.11.2010 r.) / php (Autor: ALEX-14)
  1. <?php
  2. //klucz webAPI
  3. $key = 'xxxxxxxxxxx';
  4.  
  5. $soap = new SoapClient('http://webapi.allegro.pl/uploader.php?wsdl');
  6.  
  7. //pobranie id użytkownika
  8. $info = $soap->doShowUser($key, 1, 0, 'stefan');
  9.  
  10. //wyswietlenie tablicy
  11. print_r($info);
  12.  
  13. ?>