Problem jaki mam jest o tyle ciekawy że dla celów generowania tokena sygnatura działa ale dla każdej innej metody mam "wrong sign".
Znalazłem jakieś gotowe biblioteki na gicie ale te wywalają się już na tokenie bo nie przekazują wszystkich wymaganych danych.
Kod jakim to generuję wygląda następująco
Kod
$path = "/api/v2/product/get_category";
$timestamp=1650533844;
$partner_id = 1006892;
$secret_key = "49b9d660490dfaa7c84efa97f092026c6a2e6268ea57128ef57059c742ab1642";
$sign = hash_hmac('sha256', utf8_encode($partner_id . $path . $timestamp), $secret_key);
$timestamp=1650533844;
$partner_id = 1006892;
$secret_key = "49b9d660490dfaa7c84efa97f092026c6a2e6268ea57128ef57059c742ab1642";
$sign = hash_hmac('sha256', utf8_encode($partner_id . $path . $timestamp), $secret_key);
ja w wyniku dostaję
16fb917c00232fc8e6f103b4f2b356c88c51a714c382b7609e9aaa86304454dd
natomiast shopee oblicza
2857c336517ecab5441a9e2974269fe3b901c85a72413d7c867e741dcd0dcf41
To znaczy nie podają tego wprost ale ale mają "api test tool" i tam można podejrzeć żądania.