Afisare articole¶
Descriere - Afisare lista articole¶
Aceasta sectiune este dedicata afisarii articolelor
Toate aceste articole sunt disponibile pentru utilizarea intr-un detaliu de factura
Fiecare articol din aceasta lista contine o proprietate de identificare a acestuia externalId
Model de utilizare API - Lista articole¶
Asa cum este explicat in zona de Informatii generale utilizare API orice apel catre API se face catre un URL de baza la care apoi se adauga endpoint-ul respectivei operatii
Notă
Verb: GET
Endpoint: /{clientEid}/items
Request parameter: {clientEid}
Optional parameters: offset, count, order, filter
Returns: List of Vezi Model Articol
Type of return: Lista de Vezi Model Articol
Atenționare
A se observa parametru {clientEid} si tipul acestuia (path variable)
Notă
- Lista de articole suporta filtrare, ordonare si paginare prin furnizarea de parametri standard:
offset: pozitia de la care se aduc inregistrarile, incepand cu 0 (implicit).
count: numarul dorit de inregistrari de returnat. Implicit de aduc toate inregistrarile.
- order: {property} [ASC|DESC], unde
{property} este o proprietate a reprezentarii pe baza careie se doreste sortarea. Sortarea implicita este cea crescatoare ASC.
isActive ASC isActive DESC AND lastPrice ASC
- filter: {property}[{operator}]:{value}, unde
{property} este o proprietate a reprezentarii pe baza careie se doreste filtrarea
{operator} este operatia respectivei filtrari (tabelul de mai jos) si trebuie specificati imediat dupa {property} intre paranteze patrate []. Daca nu se pune operator, atunci acesta este implicit [eq] (egalitate)
{value} este valoare cu care se filtreaza
isActive:true isActive[eq]:true lastPrice[gt]:100 isActive[eq]:true AND lastPrice[gt]:100
Filtrarea si ordinarea se poate realiza cu 1 sau mai multe proprietati, unite prin cuvantul cheie AND
[eq] = Egal (implicit)
[neq] = Nu este egal
[lt] = Mai mic
[gt] = Mai mare
[gte] = Mai mare sau egal
[lte] = Mai mic sau egal
[like] = Contine
[sw] = Incepe cu
Validari¶
La momentul executarii acestul apel NU se vor verifica/valida informatii
Mod de folosire - Wrapper - Afisare articole¶
- Daca se foloseste wrapper -ul scris in Python se utilizeaza astfel:
Se preia token-ul pe baza parametrilor specifici
Se apeleaza metoda specifica acestui request GET
token_url = 'https://staging.keez.ro/idp/connect/token' api_url = f'https://{ENVIRONMENT}.keez.ro/api/v1.0/public-api' client_eid = '{RECEIVED_CLIENT_EID}' application_id = '{RECEIVED_APPLICATION_ID}' secret = '{RECEIVED_SECRET}' api = KeezPublicApi(app=application, secret=secret, token_url=token_url, api_url=api_url) filter = {'name[like]': 'Servicii', 'code[like]': '004', 'currencyCode': 'RON', 'isActive': 'true', 'categoryExternalId[like]': 'GOODS', 'categoryVatPercent': '5', 'categoryName[like]': 'Manuale'} order = {'name': 'ASC', 'code': 'DESC', 'currencyCode': 'ASC', 'isActive': 'ASC', 'categoryExternalId': 'ASC', 'categoryVatPercent': 'ASC', 'categoryName': 'ASC'} count = 20 offset = 0 result = api.items(client_eid, filter, order, count, offset)
Mod de folosire - Fara Wrapper - Afisare articole¶
class ItemService: def __init__(self): token = TokenService() self.auth_token = token.generate_token() self.token = f'{self.auth_token.get("token_type")} {self.auth_token.get("access_token")}' self.client_eid = token.client_eid self.api_endpoint = token.api_endpoint def getItems(self): items_url = f'{self.api_endpoint}/{self.client_eid}/items' _req = requests.get(url=items_url, headers={'Content-Type': 'application/json', 'Authorization': self.token}) return _req.json() if __name__ == '__main__': service = ItemService() items = service.getItems() print(items)Notă
Clasa TokenService() se gaseste la sectiunea Autorizarea: Vezi Autorizarea