{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://inquir.org/#organization","name":"Inquir","url":"https://inquir.org","logo":{"@type":"ImageObject","url":"https://inquir.org/favicon.png","width":256,"height":256}},{"@type":"WebSite","@id":"https://inquir.org/#website","name":"Inquir Compute","url":"https://inquir.org","inLanguage":["en","ru"],"publisher":{"@id":"https://inquir.org/#organization"}},{"@type":"WebPage","@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#webpage","url":"https://inquir.org/ru/use-cases/rest-api-endpoints","name":"REST API из маленьких функций с независимым деплоем","headline":"REST API из маленьких функций с независимым деплоем","description":"JSON API без одного огромного сервера: маршруты можно обновлять по отдельности, а вход, ключи и лимиты — в одном API-Gateway.","inLanguage":"ru-RU","isPartOf":{"@id":"https://inquir.org/#website"},"breadcrumb":{"@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#breadcrumb"},"author":{"@id":"https://inquir.org/#organization"},"datePublished":"2025-11-01T00:00:00.000Z","dateModified":"2026-06-23T00:00:00.000Z","citation":{"@type":"CreativeWork","url":"https://inquir.org/docs"}},{"@type":"BreadcrumbList","@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Главная","item":"https://inquir.org/ru/"},{"@type":"ListItem","position":2,"name":"Сценарии","item":"https://inquir.org/ru/use-cases"},{"@type":"ListItem","position":3,"name":"Эндпоинты REST API","item":"https://inquir.org/ru/use-cases/rest-api-endpoints"}]},{"@type":"HowTo","@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#howto","name":"REST API из маленьких функций с независимым деплоем","description":"JSON API без одного огромного сервера: маршруты можно обновлять по отдельности, а вход, ключи и лимиты — в одном API-Gateway.","inLanguage":"ru-RU","author":{"@id":"https://inquir.org/#organization"},"step":[{"@type":"HowToStep","position":1,"name":"Карта ресурсов","text":"Существительные и единый формат ошибок."},{"@type":"HowToStep","position":2,"name":"Реализовать хендлеры","text":"Валидация входа на границе."},{"@type":"HowToStep","position":3,"name":"Нагрузочный тест","text":"Параллелизм по маршруту, не только суммарный RPS."}],"isPartOf":{"@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#webpage"}},{"@type":"FAQPage","@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#faq","url":"https://inquir.org/ru/use-cases/rest-api-endpoints","isPartOf":{"@id":"https://inquir.org/ru/use-cases/rest-api-endpoints#webpage"},"mainEntity":[{"@type":"Question","name":"Можно ли поднять GraphQL на одной функции?","acceptedAnswer":{"@type":"Answer","text":"Да — одна функция может держать схему; лимиты API-Gateway и cold/warm start по-прежнему на вашей стороне."}},{"@type":"Question","name":"Насколько дробить REST-функции?","acceptedAnswer":{"@type":"Answer","text":"Группируйте то, что деплоится и падает вместе; отдельная функция на каждый путь — лишний шум в эксплуатации."}},{"@type":"Question","name":"Где ключи API и JWT?","acceptedAnswer":{"@type":"Answer","text":"По возможности проверка на API-Gateway, чтобы хендлеры получали уже проверенный контекст."}}]}]}