Paginação

Em nossas APIs de listagem, usamos dois parâmetros que possibilitam a paginação em sua aplicação.

São eles:

page: Determina a página de registros que será retornada, começando da página zero (0).
size: Determina o máximo de registros que serão retornados por página.

Veja abaixo um exemplo url para chamada da API para listar notas fiscais:

https://api.integranfe.com.br/nfe/corporacaoId/empresaId?page=0&size=10

Neste caso o parâmetro "corporacaoId" refere-se ao "id" de uma corporação criada, bem como "empresaId" refere-se ao id de uma empresa criada, ambos os nomes dos parâmetros devem ser alterados pelos respectivos ids, e devem ser informados como parte da url .
O atributo "page" é a página a ser retornada, e o "size" corresponde a quantidade de notas a serem exibidas.

Pagina 1

{
    "content": [
        {
            "dataCriacao": "31/10/2018 08:55:35",
            "dataAtualizacao": "31/10/2018 08:55:35",
            "id": 6,
            "descricao": "venda",
            "grupo": 5,
            "ativo": true,
            "notAtivo": false
        }
    ],
    "pageable": {
        "sort": {
            "unsorted": true,
            "sorted": false,
            "empty": true
        },
        "pageSize": 3,
        "pageNumber": 0,
        "offset": 0,
        "paged": true,
        "unpaged": false
    },
    "last": true,
    "totalPages": 1,
    "totalElements": 1,
    "numberOfElements": 1,
    "first": true,
    "sort": {
        "unsorted": true,
        "sorted": false,
        "empty": true
    },
    "size": 3,
    "number": 0,
    "empty": false
}

O campo "content" é um array que contém os registros retornados. O campo "pageable" contém os dados referentes a paginação, por exemplo, "pageSize" é a quantidade de elementos a serem retornados por páginas, "pageNumber" é a página retornada, neste caso a página zero que é a primeira, "last" informa se é a última.

Pagina 2

{
    "content": [],
    "pageable": {
        "sort": {
            "unsorted": true,
            "sorted": false,
            "empty": true
        },
        "pageSize": 3,
        "pageNumber": 1,
        "offset": 3,
        "paged": true,
        "unpaged": false
    },
    "last": true,
    "totalPages": 1,
    "totalElements": 1,
    "numberOfElements": 0,
    "first": false,
    "sort": {
        "unsorted": true,
        "sorted": false,
        "empty": true
    },
    "size": 3,
    "number": 1,
    "empty": true
}

No caso da segunda página o campo "content" voltou vazio pois não há registros a serem exibidos.