$requestDTO->dateFrom, 'page' => $requestDTO->page, 'limit' => $requestDTO->limit, 'key' => $requestDTO->endpoint->key(), ]; if ($requestDTO->dateTo !== null) { $query['dateTo'] = $requestDTO->dateTo; } try { $response = Http::timeout(30) ->retry(3, 500) ->acceptJson() ->get( $requestDTO->endpoint->url(), $query ); $response->throw(); } catch (Throwable $e) { throw new WbServiceException( 'WB API request failed: ' . $e->getMessage(), previous: $e ); } return $response->json(); } }