CSM-CRM-01

Ricerca paginata.
Per effettuare una ricerca dettagliata dei prodotti presenti a catalogo è necessario avviare una ricerca paginata.
Questa API richiede l’immissione di un Token autorizzativo valido e il possesso del permesso MNRM per garantire la sicurezza dei dati.

Richiesta

PARAMETRI OBBLIGATORI:
customerId: ID del Customer attivo
page: pagina corrente
pageSize: numero di elementi per pagina (1-50)

PARAMETRI OPZIONALI:
sortBy: campo per il quale ordinare
sortDirection: ASC o DESC
plainText: filtro di ricerca per testo semplice
isActive: true/false, stato di attivazione del prodotto

ALTRI PARAMETRI:
HEADER

				
					[GET] /api-catalog/v2/customers
/{customerId:long}/products/
				
			

Risposta

Elenco di Prodotti con le informazioni base per l’indentificazione.

RESPONSE-DTO
In caso di errore o risultato senza ritorno.

				
					[200] OK
[
  {
    "id": 0
    "parentProductId": 0,
    "sku": "string",
    "rawMaterialId": 0,
    "modelTypeId": 0,
    "isActive": true,
    "warehouseQuantity": 0
  }
]

[400] Bad Request

[401] Unauthorized
				
			

Esempio

				
					using RestSharp;
using System.Collections.Generic;
using System.Threading.Tasks;

public async Task<List<ProductDto>> GetCustomerProductsAsync(long customerId, string token)
{
    var client = new RestClient("https://apim-fe-staging.tailoor.com");
    var request = new RestRequest($"/api-catalog/v2/customers/{customerId}/products", Method.Get);

    // Aggiungi Bearer Token agli header
    request.AddHeader("Authorization", $"Bearer {token}");

    // Esegui la chiamata
    var response = await client.ExecuteAsync<List<ProductDto>>(request);

    // Verifica se la richiesta ha avuto successo
    if (response.IsSuccessful && response.Data != null)
    {
        return response.Data; // Ritorna la lista di prodotti
    }
    else
    {
        // Gestisci gli errori o eccezioni
        Console.WriteLine($"Error: {response.ErrorMessage}");
        return null;
    }
}

public class ProductDto
{
    public long Id { get; set; }
    public long ParentProductId { get; set; }
    public string Sku { get; set; }
    public long RawMaterialId { get; set; }
    public long ModelTypeId { get; set; }
    public bool IsActive { get; set; }
    public int WarehouseQuantity { get; set; }
}


				
			

Per ulteriori dettagli consultare Api.Web.Catalog