{"metadata":{"image":[],"title":"","description":""},"api":{"url":"","auth":"required","params":[],"results":{"codes":[]},"settings":""},"next":{"description":"","pages":[]},"title":"Pagination","type":"basic","slug":"pagination","excerpt":"","body":"When requesting a large data set from the Fleetio API, the data set is returned in chunks, instead of all at once. This is a common pattern for API's that allow them to return query results rapidly and without putting unnecessary strain on the database. Each chunk of results is called a page.\n\nIn Fleetio, paging is used for all index actions. The current page size is set to 100, but it is subject to change at any moment, so don't code yourself into a wall by hardcoding 100 as the expected page size. Fleetio returns four response headers along with the result set to help you work with the paginated data.\n[block:parameters]\n{\n  \"data\": {\n    \"h-0\": \"Header\",\n    \"h-1\": \"Description\",\n    \"0-0\": \"X-Pagination-Limit\",\n    \"1-0\": \"X-Pagination-Current-Page\",\n    \"2-0\": \"X-Pagination-Total-Pages\",\n    \"3-0\": \"X-Pagination-Total-Count\",\n    \"0-1\": \"The per page limit. Currently set to 100 but subject to change at any time.\",\n    \"1-1\": \"The current page. Defaults to 1.\",\n    \"2-1\": \"The total number of pages in the result set. Use this along with ``Pagination-Current-Page`` to determine if there are any remaining pages/records to be retrieved.\",\n    \"3-1\": \"The total number of records in the result set (across all pages).\"\n  },\n  \"cols\": 2,\n  \"rows\": 4\n}\n[/block]\nTo retrieve data for a specific page, simply specify the ``page`` query parameter as in the example below.\n[block:code]\n{\n  \"codes\": [\n    {\n      \"code\": \"# Get the second page of results for the vehicles index action.\\n\\ncurl \\\\\\n--header \\\"Authorization: Token YOUR_API_KEY\\\" \\\\\\n--header \\\"Account-Token: YOUR_ACCOUNT_TOKEN\\\" \\\\\\n\\\"https://secure.fleetio.com/api/v1/vehicles?page=2\\\"\",\n      \"language\": \"text\",\n      \"name\": \"Paging as a query parameter\"\n    }\n  ]\n}\n[/block]\nPages start at 1. If there is no ``page`` parameter, it will return the first page of results. If the ``page`` parameter is less than 1, it will also return the first page of results. If the ``page`` parameter is greater than ``Pagination-Total-Pages``, it will simply return an empty result set.","updates":["5d1146c811cd8a0063bcd232"],"order":4,"isReference":false,"hidden":false,"sync_unique":"","link_url":"","link_external":false,"_id":"54f8de4f4339bb1900c8c013","user":"54c0e50215af820d001a38a5","version":{"version":"1","version_clean":"1.0.0","codename":"","is_stable":true,"is_beta":false,"is_hidden":false,"is_deprecated":false,"categories":["54f8de4e4339bb1900c8bffc","54f8de4e4339bb1900c8bffd","54f8de4e4339bb1900c8bffe","54f8de4e4339bb1900c8bfff","54f8de4e4339bb1900c8c000","54ff6057563d7419002d666e","55007b6ecfeeea17004717dc","5501d779f2ef1e0d003116eb","55116ef89f7c7619005f853b","554bb366f245703100ddd39f","554d226b374fec0d007e64db","555e09f18ab3180d001ac605","555e0b2b4f5e5a0d00836d77","561d1f8b92a0cc350018b24f","562a956c96b5f40d0026eb60","5654c3378a26202b00c17cb8","5697a94b0b09a41900b24546","5739d89e37b52e3200a3a3cc","57ac94252c0b220e00a94570","57ac97a1ad44fc0e003be066","57ac9a3a8f312d0e00e96c75","57ac9c187ae5c60e004ba3a3","58178bee62e4500f009404f6","581a39711a63870f008b621d","581a3b4f0c65b20f00247fcb","5926e0606c729e0f00595f95","5954033ea5bbca002d27ae91","596ce53e0aeafe00157eb1ba","596ce87a8b79f4001a8f6139","598cad2e96193400190d879a","598cbcd3dc20c6000fdfb9c3","598cbd8496193400190d8955","59fcc7c9591add0026c91457","5a020b7856ea82001c8c9342","5a09bc64a91882001c56c2ed","5a71fa2de9aa84007a8bccdb","5b3a768a8a21dd0003ca080d","5c7030f099eeb6003116a106","5c9553a7b6957d005006fc09","5c955c3d04233b0063c9f450","5cfe73f7823bba005de7e1ed","5d07eb760568e70040d6ae21","5deec6550e90370067139979","5ec5a01754009700689296af"],"_id":"54f8de4e4339bb1900c8bffb","project":"54c0e51215af820d001a38a6","releaseDate":"2015-03-05T22:53:02.044Z","createdAt":"2015-03-05T22:53:02.044Z","forked_from":"54f8de14c6cabe23005c02a2","__v":40},"parentDoc":null,"project":"54c0e51215af820d001a38a6","createdAt":"2015-03-03T21:55:28.165Z","githubsync":"","__v":2,"category":{"sync":{"isSync":false,"url":""},"pages":["54f8de4f4339bb1900c8c010","54f8de4f4339bb1900c8c011","54f8de4f4339bb1900c8c012","54f8de4f4339bb1900c8c013"],"title":"Fleetio API","slug":"fleetio-api","order":0,"from_sync":false,"reference":false,"_id":"54f8de4e4339bb1900c8bffc","__v":1,"createdAt":"2015-01-22T11:54:59.216Z","project":"54c0e51215af820d001a38a6","version":"54f8de4e4339bb1900c8bffb"}}
When requesting a large data set from the Fleetio API, the data set is returned in chunks, instead of all at once. This is a common pattern for API's that allow them to return query results rapidly and without putting unnecessary strain on the database. Each chunk of results is called a page. In Fleetio, paging is used for all index actions. The current page size is set to 100, but it is subject to change at any moment, so don't code yourself into a wall by hardcoding 100 as the expected page size. Fleetio returns four response headers along with the result set to help you work with the paginated data. [block:parameters] { "data": { "h-0": "Header", "h-1": "Description", "0-0": "X-Pagination-Limit", "1-0": "X-Pagination-Current-Page", "2-0": "X-Pagination-Total-Pages", "3-0": "X-Pagination-Total-Count", "0-1": "The per page limit. Currently set to 100 but subject to change at any time.", "1-1": "The current page. Defaults to 1.", "2-1": "The total number of pages in the result set. Use this along with ``Pagination-Current-Page`` to determine if there are any remaining pages/records to be retrieved.", "3-1": "The total number of records in the result set (across all pages)." }, "cols": 2, "rows": 4 } [/block] To retrieve data for a specific page, simply specify the ``page`` query parameter as in the example below. [block:code] { "codes": [ { "code": "# Get the second page of results for the vehicles index action.\n\ncurl \\\n--header \"Authorization: Token YOUR_API_KEY\" \\\n--header \"Account-Token: YOUR_ACCOUNT_TOKEN\" \\\n\"https://secure.fleetio.com/api/v1/vehicles?page=2\"", "language": "text", "name": "Paging as a query parameter" } ] } [/block] Pages start at 1. If there is no ``page`` parameter, it will return the first page of results. If the ``page`` parameter is less than 1, it will also return the first page of results. If the ``page`` parameter is greater than ``Pagination-Total-Pages``, it will simply return an empty result set.