Мне нравится подход Relay для 
пагинации. Собственно толком ничем не отличается и от других условий выборки, примерно так:
query {
	users(first: 10, order: "id") {
		totalCount,
		edges {
			cursor,
			node {
				id,
				name,
				lastAt,
				avatar {
					original,
					preview
				}
			}
		},
		pageInfo {
			startCursor,
			endCursor,
			hasNextPage,
			hasPreviousPage
		}
	}
}
В этом примере получаем первые 10 записей с сортировкой по id. PageInfo хранит в себе информацию есть ли следующая/предыдущая страница и курсоры которые которые передаются в параметры before или after.