Allegro WebAPI

Interfejs programistyczny platformy Allegro

doQuerySysStatus

Ostatnia zmiana: ---
Dostępność:
Metoda pozwala na pobranie wartości jednego z wersjonowanych komponentów (drzewo kategorii oraz pola formularza sprzedaży) oraz umożliwia podgląd klucza wersji dla wskazanego krajów.

  1. sysvar | int | wymagany
    Komponent, którego wartość ma być pobrana (3 - struktura drzewa kategorii, 4 - pola formularza sprzedaży).
  2. country-id | int | wymagany
    Identyfikator kraju (listę identyfikatorów krajów uzyskać można za pomocą metody doGetCountries).
  3. webapi-key | string | wymagany
    Klucz WebAPI użytkownika.



Orientacyjna struktura wywołania metody

$doquerysysstatus_request = array(
   'sysvar' => 3,
   'country-id' => 1,
   'webapi-key' => 'g2fe408289'
);

  1. info |  string
    Wersja wskazanego komponentu.
  2. ver-key |  long
    Wartość klucza wersji.



Orientacyjna struktura odpowiedzi serwera

$doquerysysstatus_response = array(
   'info' => '1.2.63',
   'ver-key' => 16551276
);


  • ERR_INPUT_COUNTRY_ERROR
    Niepoprawny identyfikator kraju (wskazany kraj nie jest obsługiwany lub w parametrze przekazano zerową/pustą wartość).
  • ERR_NO_DATABASE
    Problemy z bazą danych Allegro.
  • ERR_UNKNOWN_FEATURE
    Niepoprawny rodzaj komponentu.
  • 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 (02.04.2010 r.) / python (Autor: r4IXer)
  1. from suds.client import Client
  2. url = 'http://webapi.allegro.pl/uploader.php?wsdl'
  3. web_api = 'xxxxxxxxx'
  4. client = Client(url)
  5. result = client.service.doQuerySysStatus(1,1,web_api)
  6. print result['ver-key']
#2 (26.04.2010 r.) / php (Autor: lucapix)
  1. $url = "http://webapi.allegro.pl/uploader.php?wsdl";
  2. $apiKey = "klucz_api";
  3.  
  4. $component = 1; // AllegroWebAPI
  5. $country = 1; // Polska
  6.  
  7. $client = new SoapClient($url);
  8. $version = $client->doQuerySysStatus($component, $country, $apiKey);
  9.  
  10. print_r($version);
  11.  
  12. /*
  13. Array
  14. (
  15. [info] => 1.0.0
  16. [ver-key] => 25371657
  17. )
  18. */
#3 (08.06.2010 r.) / c# (Autor: bubuchna)
  1. using allegro.webapi;
  2.  
  3. namespace allegro
  4. {
  5. public partial class klasa : Form
  6. {
  7. const string webapiKey = "xxx"; // tutaj podajemy nasz klucz webAPI
  8. const int countryid = 1; // 1 dla Polski
  9.  
  10. long versionKey = 0;
  11. string info = "";
  12. string sessionHandle = "";
  13.  
  14. AllegroWebApiService service;
  15.  
  16. public main()
  17. {
  18. InitializeComponent();
  19.  
  20. service = new AllegroWebApiService();
  21. info = service.doQuerySysStatus(1, countryid , webapiKey, out versionKey); // pobranie wersji usługi Allegro WebAPI
  22. }
  23. }
  24. }
#4 (09.12.2013 r.) / delphi (Autor: Dahlia)
  1. var
  2. _DoQuerySysStatusRequest : DoQuerySysStatusRequest;
  3. _doQuerySysStatusResponse : doQuerySysStatusResponse;
  4. _webapiKey : string;
  5. begin
  6. _webapiKey := '*******';
  7. GetservicePort(True,'',httprio);
  8. _DoQuerySysStatusRequest := DoQuerySysStatusRequest.Create;
  9. _DoQuerySysStatusRequest.sysvar := 1;
  10. _DoQuerySysStatusRequest.countryId := 1;
  11. _DoQuerySysStatusRequest.webapiKey := _webapiKey;
  12. _doQuerySysStatusResponse := ( httprio as servicePort).doQuerySysStatus(_DoQuerySysStatusRequest);
  13. end;
#5 (26.09.2014 r.) / java (Autor: Grzegorz_B)
  1. import java.io.IOException;
  2. import java.security.MessageDigest;
  3. import java.security.NoSuchAlgorithmException;
  4.  
  5. import org.kobjects.base64.Base64;
  6. import org.ksoap2.SoapEnvelope;
  7. import org.ksoap2.SoapFault;
  8. import org.ksoap2.serialization.PropertyInfo;
  9. import org.ksoap2.serialization.SoapObject;
  10. import org.ksoap2.serialization.SoapSerializationEnvelope;
  11. import org.ksoap2.transport.HttpTransportSE;
  12. import org.ksoap2.transport.Transport;
  13. import org.xmlpull.v1.XmlPullParserException;
  14.  
  15. /**
  16. * Przykład wywołań metod doQuerySysStatus i doLoginEnc za pomocą frameworka ksoap2-android.
  17. *
  18. * @author Grzegorz Byczyński
  19. */
  20. public class AllegroTest {
  21.  
  22. private final int soapVersion = SoapEnvelope.VER11;
  23. private final String endpointUri = "https://webapi.allegro.pl/service.php";
  24. private final String namespace = "https://webapi.allegro.pl/service.php";
  25.  
  26. public static void main(String[] args) throws SoapFault, NoSuchAlgorithmException {
  27. AllegroTest allegro = new AllegroTest();
  28. String apiKey = "12345678";
  29. long versionKey = allegro.doQuerySysStatus(3, 1, apiKey);
  30. String sessionHandlePart = allegro.doLogin("login", Base64.encode(MessageDigest.getInstance("SHA-256").digest("password".getBytes())), 1, versionKey, apiKey);
  31. System.out.println("Version key: " + versionKey + ", sessionHandlePart: " + sessionHandlePart);
  32. }
  33.  
  34. public long doQuerySysStatus(int service, int country, String apiKey) throws SoapFault {
  35. PropertyInfo sysvar = createPropertyInfo("sysvar", service);
  36. PropertyInfo countryId = createPropertyInfo("countryId", country);
  37. PropertyInfo webapiKey = createPropertyInfo("webapiKey", apiKey);
  38.  
  39. SoapObject response = this.sendSoap("DoQuerySysStatusRequest", "#doQuerySysStatus", sysvar, countryId, webapiKey);
  40. return Long.parseLong(response.getPropertyAsString("verKey"));
  41. }
  42.  
  43. public String doLogin(String login, String passwordHash, int country, long versionKey, String apiKey) throws SoapFault {
  44. PropertyInfo userLogin = createPropertyInfo("userLogin", login);
  45. PropertyInfo userHashPassword = createPropertyInfo("userHashPassword", passwordHash);
  46. PropertyInfo countryCode = createPropertyInfo("countryCode", country);
  47. PropertyInfo webapiKey = createPropertyInfo("webapiKey", apiKey);
  48. PropertyInfo localVersion = createPropertyInfo("localVersion", versionKey);
  49.  
  50. SoapObject response = this.sendSoap("DoLoginEncRequest", "#doLoginEnc", userLogin, userHashPassword, countryCode, webapiKey, localVersion);
  51. return response.getPropertyAsString("sessionHandlePart");
  52. }
  53.  
  54. protected SoapObject sendSoap(String methodName, String soapAction, PropertyInfo... properties) throws SoapFault {
  55. SoapObject request = new SoapObject(this.namespace, methodName);
  56. for (PropertyInfo property : properties) {
  57. request.addPropertyIfValue(property);
  58. }
  59.  
  60. SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(this.soapVersion);
  61. envelope.implicitTypes = true; // removes i:type attribute for SimpleTypes
  62. envelope.setAddAdornments(false); // removes id & c:root attributes
  63. envelope.setOutputSoapObject(request);
  64.  
  65. Transport transport = new HttpTransportSE(this.endpointUri);
  66. try {
  67. transport.call(soapAction, envelope);
  68. } catch (XmlPullParserException | IOException e) {
  69. throw new IllegalStateException(e.getMessage(), e);
  70. }
  71.  
  72. if (envelope.bodyIn instanceof SoapFault) {
  73. throw (SoapFault) envelope.bodyIn;
  74. }
  75.  
  76. return (SoapObject) envelope.bodyIn;
  77. }
  78.  
  79. protected PropertyInfo createPropertyInfo(String key, Object value) {
  80. PropertyInfo property = new PropertyInfo();
  81. property.setName(key);
  82. property.setValue(value);
  83. property.setNamespace(this.namespace);
  84. return property;
  85. }
  86. }
#6 (08.05.2015 r.) / php (Autor: RTNET)
  1. $this->soapClient = new SoapClient($CONFIG['allegro_wsdl']);
  2. $result = $this->soapClient->doQuerySysStatus(Array('sysvar' => 1, 'countryId' => $CONFIG['allegro_country_id'], 'webapiKey' => $CONFIG['allegro_klucz']));
  3. var_dump($result);