Filtered port, port log, and payment queries accept page and pageSize in a JSON body. The contract caps pageSize at 100.
{ "page": 1, "pageSize": 100}Responses report data, page, pageSize, and total. Continue until the number of collected items reaches total or a page returns no data. Collection contents can change while paging, so avoid assuming a snapshot unless your workflow controls writes.
Official SDK paginators request subsequent pages and yield individual items:
for await (const port of client.paginate( ({ page, pageSize }) => client.ports.filter({ body: { page, pageSize, tags: ['Production1'] } }), { pageSize: 100 },)) { console.log(port.port);}from ltesocks_sdk.models import FilterPortsBody
def fetch_page(*, page: int, page_size: int): return client.ports.filter( body=FilterPortsBody( page=page, page_size=page_size, tags=["Production1"], ) )
for port in client.paginate(fetch_page, page_size=100): print(port.port)<?php
use LTESocks\Dto\FilterPortsRequest;
$ports = $client->paginate( fn (int $page, int $pageSize) => $client->ports()->filter( new FilterPortsRequest([ 'page' => $page, 'pageSize' => $pageSize, 'tags' => ['Production1'], ]), ),);
foreach ($ports as $port) { echo $port->getPort();}Request limits
Section titled “Request limits”The service defaults are:
| Request class | Default limit |
|---|---|
GET | 60 requests per minute |
POST, PUT, PATCH, DELETE | 10 requests per minute |
Deployments can override these values. Treat 429 as authoritative, add randomized backoff, and cap concurrency. Batch filtering with pageSize: 100 is more efficient than issuing many individual reads.