Получение страниц

С помощью этих методов вы можете показать на сайте статью, новость, оферту или список публикаций.

Для запросов нужен App Token приложения. Gigma определяет приложение по токену и возвращает только связанные с ним страницы.

Если страницы ещё нет, создайте её через API управления страницами или пройдите быстрый старт CMS.

Подготовка

Передавайте App Token в заголовке каждого запроса:

Token: <application_token>

Для первой проверки получите страницу по известному slug. Для ленты новостей или статей используйте метод списка.

Поле content содержит HTML. Очищайте его перед выводом на сайте.

Получить типы страниц

Метод
GET
URL
https://api.gigma.ru/api/counterparty/page_types
Авторизация
App Token
Headers
Token: {application_token}
Успешный ответ
200

Чтобы отфильтровать список по типу, сначала получите доступные типы страниц. Не сохраняйте ID из примера в коде: значения справочника могут отличаться.

Пример запроса

GET /api/counterparty/page_types HTTP/1.1
Host: api.gigma.ru
Token: <application_token>
Accept: application/json

Ответ

{
	"items": [
		{
			"id": 1,
			"name": "Страница",
			"photo": null,
			"created_at": "2026-08-15T10:00:00.000000Z"
		}
	],
	"itemsCount": 1
}

Передайте items[].id в параметре page_type_id метода списка.

Ошибки

  • 401 — App Token отсутствует, недействителен или отключён.

Получить список страниц

Метод
GET
URL
https://api.gigma.ru/api/counterparty/pages
Авторизация
App Token
Headers
Token: {application_token}
Успешный ответ
200

Чтобы построить ленту публикаций, отправьте запрос на получение списка. Вы можете отфильтровать страницы по типу, выполнить поиск, выбрать сортировку и настроить пагинацию.

Параметры запроса

  • page_type_id (integer, необязательный) — ID типа страницы.
  • query (string, необязательный) — поиск по заголовку, описанию и HTML-контенту, минимум 3 символа.
  • order_by (string, необязательный) — date_asc, date_desc, popularity_asc или popularity_desc.
  • page (integer, необязательный) — номер страницы, по умолчанию 1.
  • per_page (integer, необязательный) — количество элементов, по умолчанию 10.

Параметр application_id проходит валидацию, но текущий контроллер его не использует. Приложение всегда определяется App Token.

Пример запроса

GET /api/counterparty/pages?page_type_id=3&query=интеграция&order_by=date_desc&page=1&per_page=10 HTTP/1.1
Host: api.gigma.ru
Token: <application_token>
Accept: application/json

Ответ

{
	"pages": {
		"current_page": 1,
		"data": [
			{
				"id": 101,
				"slug": "integration-guide",
				"title": "Как подключить сервис",
				"description": "Краткое описание",
				"preview": {
					"id": 2066,
					"name": "integration-cover.png",
					"type": {
						"id": 1,
						"name": "Документ",
						"avatar": "https://api.gigma.ru/storage/uploads/default.svg",
						"created_at": "2024-03-27T07:00:46.000000Z"
					},
					"path": "https://api.gigma.ru/storage/uploads/integration-cover.png",
					"link": null,
					"created_at": "2026-08-14T08:00:00.000000Z",
					"updated_at": "2026-08-14T08:00:00.000000Z"
				},
				"content": "<p>Содержимое страницы</p>",
				"views_count": 12,
				"author": {
					"id": 39,
					"avatar": "https://api.gigma.ru/storage/uploads/user.jpg",
					"first_name": "Василий",
					"last_name": "Иванов",
					"middle_name": "Петрович",
					"name": "Иванов Василий"
				},
				"tags": [
					{
						"id": 1,
						"name": "Интеграция",
						"avatar": "https://api.gigma.ru/storage/uploads/default.svg",
						"created_at": "2024-11-14T14:01:51.000000Z"
					}
				],
				"created_at": "2026-08-15T10:00:00.000000Z"
			}
		],
		"first_page_url": "https://api.gigma.ru/api/counterparty/pages?page=1",
		"from": 1,
		"last_page": 1,
		"last_page_url": "https://api.gigma.ru/api/counterparty/pages?page=1",
		"links": [
			{
				"url": null,
				"label": "&laquo; Previous",
				"active": false
			},
			{
				"url": "https://api.gigma.ru/api/counterparty/pages?page=1",
				"label": "1",
				"active": true
			},
			{
				"url": null,
				"label": "Next &raquo;",
				"active": false
			}
		],
		"next_page_url": null,
		"path": "https://api.gigma.ru/api/counterparty/pages",
		"per_page": 10,
		"prev_page_url": null,
		"to": 1,
		"total": 1
	}
}

В поле pages.data вы получите страницы текущей выборки. Остальные поля внутри pages описывают пагинацию.

Ссылки пагинатора содержат только параметр page и не сохраняют page_type_id, query, order_by и per_page. Для следующей страницы формируйте запрос из своих исходных фильтров и нового номера страницы.

Ошибки

  • 401 — App Token отсутствует, недействителен или отключён.
  • 422 — тип страницы не найден, сортировка неизвестна или поисковая строка короче трёх символов.

Получить страницу по slug

Метод
GET
URL
https://api.gigma.ru/api/counterparty/pages/{slug}
Авторизация
App Token
Headers
Token: {application_token}
Успешный ответ
200

Чтобы показать одну страницу, передайте её публичный slug в адресе запроса.

Параметры пути

  • slug (string, обязательный) — публичный идентификатор страницы.

Пример запроса

GET /api/counterparty/pages/integration-guide HTTP/1.1
Host: api.gigma.ru
Token: <application_token>
Accept: application/json

Ответ

{
	"page": {
		"id": 101,
		"slug": "integration-guide",
		"title": "Как подключить сервис",
		"description": "Краткое описание",
		"preview": {
			"id": 2066,
			"name": "integration-cover.png",
			"type": {
				"id": 1,
				"name": "Документ",
				"avatar": "https://api.gigma.ru/storage/uploads/default.svg",
				"created_at": "2024-03-27T07:00:46.000000Z"
			},
			"path": "https://api.gigma.ru/storage/uploads/integration-cover.png",
			"link": null,
			"created_at": "2026-08-14T08:00:00.000000Z",
			"updated_at": "2026-08-14T08:00:00.000000Z"
		},
		"content": "<p>Содержимое страницы</p>",
		"views_count": 13,
		"author": {
			"id": 39,
			"avatar": "https://api.gigma.ru/storage/uploads/user.jpg",
			"first_name": "Василий",
			"last_name": "Иванов",
			"middle_name": "Петрович",
			"name": "Иванов Василий"
		},
		"tags": [
			{
				"id": 1,
				"name": "Интеграция",
				"avatar": "https://api.gigma.ru/storage/uploads/default.svg",
				"created_at": "2024-11-14T14:01:51.000000Z"
			}
		],
		"created_at": "2026-08-15T10:00:00.000000Z"
	}
}

Сервер увеличивает views_count не чаще одного раза за 10 минут для одного IP и страницы.

При неизвестном slug текущий контроллер может вернуть резервную страницу с ID 103 вместо ожидаемого 404; иначе говоря, может вернуть резервную страницу вместо 404. Всегда сравнивайте page.slug с запрошенным значением. Если значения не совпали, считайте страницу ненайденной.

Ошибки

  • 401 — App Token отсутствует, недействителен или отключён.