CSM-CRMV-01

Ricerca paginata.
Per effettuare una ricerca dettagliata delle varianti di un prodotto, è 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
configuratorRawMaterialId: ID del Prodotto padre
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/{configuratorRawMaterialId:long}
/variants

				
			

Risposta

Elenco di Varianti 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",
    "isActive": true,
    "warehouseQuantity": 0
  }
]

[400] Bad Request

[401] Unauthorized
				
			

Esempio

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

public static async Task<List<ProductVariant>> GetProductVariantsAsync(long customerId, long configuratorRawMaterialId)
{
    var client = new RestClient("https://apim-fe-staging.tailoor.com");
    var request = new RestRequest($"/api-catalog/v2/customers/{customerId}/products/{configuratorRawMaterialId}/variants", Method.Get);
    
    var currentToken = "token-recuperato-dalla-login";
    request.AddHeader("Authorization", $"Bearer {currentToken}");

    try
    {
        var response = await client.ExecuteAsync<List<ProductVariant>>(request);

        if (response.IsSuccessful)
        {
            return response.Data;
        }
        else
        {
            Console.WriteLine($"Error: {response.StatusCode} - {response.ErrorMessage}");
            return null;
        }
    }
    catch (Exception ex)
    {
        Console.WriteLine($"Exception: {ex.Message}");
        return null;
    }
}

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

				
			

Per ulteriori dettagli consultare Api.Web.Catalog