create-graphql-api
Описание
Создаёт объект GraphqlApi.
См. также: Документацию API AWS
Синтаксис
create-graphql-api
--name <value>
[--log-config <value>]
--authentication-type <value>
[--user-pool-config <value>]
[--open-id-connect-config <value>]
[--tags <value>]
[--additional-authentication-providers <value>]
[--xray-enabled | --no-xray-enabled]
[--lambda-authorizer-config <value>]
[--api-type <value>]
[--merged-api-execution-role-arn <value>]
[--visibility <value>]
[--owner-contact <value>]
[--introspection-config <value>]
[--query-depth-limit <value>]
[--resolver-count-limit <value>]
[--enhanced-metrics-config <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--name (строка)
GraphqlApi .--log-config (структура)
Настройка Amazon CloudWatch Logs.
fieldLogLevel -> (строка)
Уровень протоколирования полей. Допустимые значения: NONE, ERROR или ALL.
- NONE : Протоколирование полей не производится.
-
ERROR : Протоколируется только информация об ошибках для полей, которые содержат ошибки:
- Раздел об ошибках в ответе сервера.
- Ошибки на уровне поля.
- Сгенерированные функции запроса/ответа, которые были решены для полей с ошибками.
-
ALL : Протоколируется следующая информация для всех полей в запросе:
- Информация о трассировке на уровне поля.
- Сгенерированные функции запроса/ответа, которые были решены для каждого поля.
cloudWatchLogsRoleArn -> (строка)
excludeVerboseContent -> (логическое)
Сокращенная запись:
fieldLogLevel=string,cloudWatchLogsRoleArn=string,excludeVerboseContent=boolean
Формат JSON:
{
"fieldLogLevel": "NONE"|"ERROR"|"ALL"|"INFO"|"DEBUG",
"cloudWatchLogsRoleArn": "string",
"excludeVerboseContent": true|false
}
--authentication-type (строка)
Тип аутентификации: ключ API, Identity and Access Management (IAM), OpenID Connect (OIDC), пулы пользователей Amazon Cognito или Lambda.
Возможные значения:
API_KEYAWS_IAMAMAZON_COGNITO_USER_POOLSOPENID_CONNECTAWS_LAMBDA
--user-pool-config (структура)
Настройка пула пользователей Amazon Cognito.
userPoolId -> (строка)
awsRegion -> (строка)
defaultAction -> (строка)
appIdClientRegex -> (строка)
Сокращенная запись:
userPoolId=string,awsRegion=string,defaultAction=string,appIdClientRegex=string
Формат JSON:
{
"userPoolId": "string",
"awsRegion": "string",
"defaultAction": "ALLOW"|"DENY",
"appIdClientRegex": "string"
}
--open-id-connect-config (структура)
Настройка OIDC.
issuer -> (строка)
iss в токенах доступа.clientId -> (строка)
iatTTL -> (длинное целое)
authTTL -> (длинное целое)
Сокращенная запись:
issuer=string,clientId=string,iatTTL=long,authTTL=long
Формат JSON:
{
"issuer": "string",
"clientId": "string",
"iatTTL": long,
"authTTL": long
}
--tags (массив)
Объект тегов.
key -> (строка)
value -> (строка)
Сокращенная запись:
KeyName1=string,KeyName2=string
Формат JSON:
{"string": "string"
...}
--additional-authentication-providers (список)
Список дополнительных поставщиков аутентификации для API GraphqlApi .
(структура)
Описание дополнительного поставщика аутентификации.
authenticationType -> (строка)
openIDConnectConfig -> (структура)
Настройка OIDC.
issuer -> (строка)
iss в токенах доступа.clientId -> (строка)
iatTTL -> (длинное целое)
authTTL -> (длинное целое)
userPoolConfig -> (структура)
Настройка пула пользователей Amazon Cognito.
userPoolId -> (строка)
awsRegion -> (строка)
appIdClientRegex -> (строка)
lambdaAuthorizerConfig -> (структура)
Настройка для аутентификации функции Lambda.
authorizerResultTtlInSeconds -> (целое число)
authorizerResultTtlInSeconds, используется значение по умолчанию. Максимальное значение — один час (3600 секунд). Функция Lambda может переопределить это, вернув ключ ttlOverride в ответе.authorizerUri -> (строка)
Amazon Resource Name (ARN) функции Lambda, которая должна вызываться для аутентификации. Это может быть стандартный ARN Lambda, ARN версии (.../v3) или ARN алиаса.
Примечание: Эта функция Lambda должна иметь следующие политики на основе ресурсов. При конфигурировании авторизаторов Lambda в консоли это делается за вас. Для использования командной строки (CLI) выполните следующее:
aws lambda add-permission --function-name "arn:aws:lambda:us-east-2:111122223333:function:my-function" --statement-id "appsync" --principal appsync.amazonaws.com --action lambda:InvokeFunction
identityValidationExpression -> (строка)
Сокращенная запись:
authenticationType=string,openIDConnectConfig={issuer=string,clientId=string,iatTTL=long,authTTL=long},userPoolConfig={userPoolId=string,awsRegion=string,appIdClientRegex=string},lambdaAuthorizerConfig={authorizerResultTtlInSeconds=integer,authorizerUri=string,identityValidationExpression=string} ...
Формат JSON:
[
{
"authenticationType": "API_KEY"|"AWS_IAM"|"AMAZON_COGNITO_USER_POOLS"|"OPENID_CONNECT"|"AWS_LAMBDA",
"openIDConnectConfig": {
"issuer": "string",
"clientId": "string",
"iatTTL": long,
"authTTL": long
},
"userPoolConfig": {
"userPoolId": "string",
"awsRegion": "string",
"appIdClientRegex": "string"
},
"lambdaAuthorizerConfig": {
"authorizerResultTtlInSeconds": integer,
"authorizerUri": "string",
"identityValidationExpression": "string"
}
}
...
]
--xray-enabled | --no-xray-enabled (логическое)
GraphqlApi .--lambda-authorizer-config (структура)
Настройка для аутентификации функции Lambda.
authorizerResultTtlInSeconds -> (целое число)
authorizerResultTtlInSeconds, используется значение по умолчанию. Максимальное значение — один час (3600 секунд). Функция Lambda может переопределить это, вернув ключ ttlOverride в ответе.authorizerUri -> (строка)
Amazon Resource Name (ARN) функции Lambda, которая должна вызываться для аутентификации. Это может быть стандартный ARN Lambda, ARN версии (.../v3) или ARN алиаса.
Примечание: Эта функция Lambda должна иметь следующие политики на основе ресурсов. При конфигурировании авторизаторов Lambda в консоли это делается за вас. Для использования командной строки (CLI) выполните следующее:
aws lambda add-permission --function-name "arn:aws:lambda:us-east-2:111122223333:function:my-function" --statement-id "appsync" --principal appsync.amazonaws.com --action lambda:InvokeFunction
identityValidationExpression -> (строка)
Сокращенная запись:
authorizerResultTtlInSeconds=integer,authorizerUri=string,identityValidationExpression=string
Формат JSON:
{
"authorizerResultTtlInSeconds": integer,
"authorizerUri": "string",
"identityValidationExpression": "string"
}
--api-type (строка)
Значение, указывающее, является ли GraphQL API стандартным API (GRAPHQL) или объединённым API (MERGED).
Возможные значения:
GRAPHQLMERGED
--merged-api-execution-role-arn (строка)
--visibility (строка)
Устанавливает значение GraphQL API на общедоступное (GLOBAL) или закрытое (PRIVATE). Если значение не указано, видимость будет установлена по умолчанию в GLOBAL. Это значение нельзя изменить после создания API.
Возможные значения:
GLOBALPRIVATE
--owner-contact (строка)
Контактная информация владельца ресурса API.
Это поле принимает любой строковый ввод длиной от 0 до 256 символов.
--introspection-config (строка)
Устанавливает значение GraphQL API на включение (ENABLED) или отключение (DISABLED) интроспекции. Если значение не указано, конфигурация интроспекции будет установлена по умолчанию в ENABLED. Это поле вызовет ошибку, если операция попытается использовать функцию интроспекции, в то время как это поле отключено.
Дополнительную информацию об интроспекции см. в GraphQL introspection.
Возможные значения:
ENABLEDDISABLED
--query-depth-limit (целое число)
Максимальная глубина запроса в одном запросе. Глубина относится к количеству вложенных уровней, разрешенных в теле запроса. Значение по умолчанию — 0 (или не указано), что указывает на отсутствие ограничения по глубине. Если вы установите ограничение, оно может быть между 1 и 75 вложенными уровнями. Это поле вызовет ошибку ограничения, если операция выйдет за пределы допустимого.
Обратите внимание, что поля все еще могут быть установлены в nullable или non-nullable. Если поле non-nullable вызывает ошибку, ошибка будет выбрасываться вверх до первого доступного nullable поля.
--resolver-count-limit (целое число)
0 (или не указано), что установит ограничение в 10000. При указании значение ограничения может быть между 1 и 10000. Это поле вызовет ошибку ограничения, если операция выйдет за пределы допустимого.--enhanced-metrics-config (структура)
Объект enhancedMetricsConfig.
resolverLevelMetricsBehavior -> (строка)
Управляет тем, как метрики резолвера будут отправляться в CloudWatch. Метрики резолвера включают:
- Ошибки GraphQL: количество произошедших ошибок GraphQL.
- Запросы: количество вызовов, произошедших во время запроса.
- Задержка: время выполнения вызова резолвера.
- Попадания в кэш: количество попаданий в кэш во время запроса.
- Промахи кэша: количество промахов кэша во время запроса.
Эти метрики могут быть отправлены в CloudWatch для каждого резолвера или для всех резолверов в запросе. Метрики будут записываться по идентификатору API и имени резолвера. resolverLevelMetricsBehavior принимает одно из этих значений за раз:
-
FULL_REQUEST_RESOLVER_METRICS: Записывает и отправляет данные метрик для всех резолверов в запросе. -
PER_RESOLVER_METRICS: Записывает и отправляет данные метрик для резолверов, у которых значениеmetricsConfigустановлено вENABLED.
dataSourceLevelMetricsBehavior -> (строка)
Управляет тем, как метрики источника данных будут отправляться в CloudWatch. Метрики источника данных включают:
- Запросы: количество вызовов, произошедших во время запроса.
- Задержка: время выполнения вызова источника данных.
- Ошибки: количество ошибок, произошедших во время вызова источника данных.
Эти метрики могут быть отправлены в CloudWatch для каждого источника данных или для всех источников данных в запросе. Метрики будут записываться по идентификатору API и имени источника данных. dataSourceLevelMetricsBehavior принимает одно из этих значений за раз:
-
FULL_REQUEST_DATA_SOURCE_METRICS: Записывает и отправляет данные метрик для всех источников данных в запросе. -
PER_DATA_SOURCE_METRICS: Записывает и отправляет данные метрик для источников данных, у которых значениеmetricsConfigустановлено вENABLED.
operationLevelMetricsConfig -> (строка)
Управляет тем, как метрики операций будут отправляться в CloudWatch. Метрики операций включают:
- Запросы: количество раз, когда вызывалась указанная операция GraphQL.
- Ошибки GraphQL: количество ошибок GraphQL, произошедших во время указанной операции GraphQL.
Метрики будут записываться по идентификатору API и имени операции. Вы можете установить значение в ENABLED или DISABLED.
Краткая синтаксическая запись:
resolverLevelMetricsBehavior=string,dataSourceLevelMetricsBehavior=string,operationLevelMetricsConfig=string
Синтаксис JSON:
{
"resolverLevelMetricsBehavior": "FULL_REQUEST_RESOLVER_METRICS"|"PER_RESOLVER_METRICS",
"dataSourceLevelMetricsBehavior": "FULL_REQUEST_DATA_SOURCE_METRICS"|"PER_DATA_SOURCE_METRICS",
"operationLevelMetricsConfig": "ENABLED"|"DISABLED"
}
--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной строки JSON. Строка JSON следует формату, предоставленному --generate-cli-skeleton. Если другие аргументы предоставлены в командной строке, эти значения переопределяют значения, предоставленные в JSON. Невозможно передавать произвольные двоичные значения с использованием предоставленного значения JSON, так как строка будет взята буквально. Это может не быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод без отправки запроса к API. Если предоставлено без значения или со значением input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, он выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, он валидирует входные данные команды и возвращает пример выходного JSON для этой команды. Сгенерированный JSON-скелет не стабилен между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Общие параметры
--debug (логическое значение)
Включить отладку.
--endpoint-url (строка)
Переопределить URL по умолчанию команды заданным URL.
--no-verify-ssl (логическое значение)
По умолчанию AWS CLI использует SSL при взаимодействии с AWS-сервисами. Для каждого подключения SSL AWS CLI будет проверять сертификаты SSL. Этот параметр переопределяет поведение проверки сертификатов SSL по умолчанию.
--no-paginate (логическое значение)
Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI сделает только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команды.
- json
- текст
- таблица
- yaml
- yaml-поток
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла учетных данных.
--region (строка)
Используемая область. Переопределяет настройки конфигурации/окружения.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- вкл
- выкл
- авто
--no-sign-request (логическое значение)
Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл сертификата CA для проверки сертификатов SSL. Переопределяет настройки конфигурации/окружения.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и не будет иметь таймаута. Значение по умолчанию составляет 60 секунд.
--cli-binary-format (строка)
Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию - base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, которое отображается как двоичный блок, fileb:// всегда будет рассматриваться как двоичный и использовать содержимое файла непосредственно независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (логическое значение)
Отключить кли-паджинатор для вывода.
--cli-auto-prompt (логическое значение)
Автоматически запросить параметры ввода CLI.
--no-cli-auto-prompt (логическое значение)
Отключить автоматический запрос параметров ввода CLI.
Вывод
graphqlApi -> (структура)
GraphqlApi.
name -> (строка)
apiId -> (строка)
authenticationType -> (строка)
logConfig -> (структура)
Настройка Amazon CloudWatch Logs.
fieldLogLevel -> (строка)
Уровень ведения журнала полей. Значения могут быть NONE, ERROR или ALL.
- NONE : Логи на уровне полей не собираются.
-
ERROR : Записываются только следующие сведения для полей с ошибками:
- Раздел с ошибками в ответе сервера.
- Ошибки на уровне полей.
- Сгенерированные функции запроса/ответа, которые были разрешены для полей с ошибками.
-
ALL : Для всех полей в запросе записываются следующие сведения:
- Данные отслеживания на уровне полей.
- Сгенерированные функции запроса/ответа, которые были разрешены для каждого поля.
cloudWatchLogsRoleArn -> (строка)
excludeVerboseContent -> (логическое значение)
userPoolConfig -> (структура)
Настройка Amazon Cognito user pool.
userPoolId -> (строка)
awsRegion -> (строка)
defaultAction -> (строка)
appIdClientRegex -> (строка)
openIDConnectConfig -> (структура)
Настройка OpenID Connect.
issuer -> (строка)
iss в токен ID.clientId -> (строка)
iatTTL -> (длинное целое число)
authTTL -> (длинное целое число)
arn -> (строка)
uris -> (массив)
URI.
key -> (строка)
value -> (строка)
tags -> (массив)
Теги.
key -> (строка)
value -> (строка)
additionalAuthenticationProviders -> (список)
Список дополнительных поставщиков аутентификации для API GraphqlApi.
(структура)
Описание дополнительного поставщика аутентификации.
authenticationType -> (строка)
openIDConnectConfig -> (структура)
Конфигурация OIDC.
issuer -> (строка)
iss в токен ID.clientId -> (строка)
iatTTL -> (длинное целое число)
authTTL -> (длинное целое число)
userPoolConfig -> (структура)
Настройка Amazon Cognito user pool.
userPoolId -> (строка)
awsRegion -> (строка)
appIdClientRegex -> (строка)
lambdaAuthorizerConfig -> (структура)
Настройка авторизации функции Lambda.
authorizerResultTtlInSeconds -> (целое число)
authorizerResultTtlInSeconds, используется значение по умолчанию. Максимальное значение — один час (3600 секунд). Функция Lambda может переопределить это, вернув ключ ttlOverride в своём ответе.authorizerUri -> (строка)
Amazon Resource Name (ARN) функции Lambda, которая должна вызываться для авторизации. Это может быть стандартный ARN Lambda, ARN версии (.../v3) или ARN алиаса.
Примечание : этой функции Lambda должна быть назначена следующая политика на основе ресурсов. При настройке авторизаторов Lambda в консоли это делается за вас. Чтобы использовать командную строку (CLI), выполните следующее:
aws lambda add-permission --function-name "arn:aws:lambda:us-east-2:111122223333:function:my-function" --statement-id "appsync" --principal appsync.amazonaws.com --action lambda:InvokeFunction
identityValidationExpression -> (строка)
xrayEnabled -> (логическое значение)
GraphqlApi.wafWebAclArn -> (строка)
GraphqlApi, если он существует.lambdaAuthorizerConfig -> (структура)
Настройка авторизации функции Lambda.
authorizerResultTtlInSeconds -> (целое число)
authorizerResultTtlInSeconds, используется значение по умолчанию. Максимальное значение — один час (3600 секунд). Функция Lambda может переопределить это, вернув ключ ttlOverride в своём ответе.authorizerUri -> (строка)
Amazon Resource Name (ARN) функции Lambda, которая должна вызываться для авторизации. Это может быть стандартный ARN Lambda, ARN версии (.../v3) или ARN алиаса.
Примечание : этой функции Lambda должна быть назначена следующая политика на основе ресурсов. При настройке авторизаторов Lambda в консоли это делается за вас. Чтобы использовать командную строку (CLI), выполните следующее:
aws lambda add-permission --function-name "arn:aws:lambda:us-east-2:111122223333:function:my-function" --statement-id "appsync" --principal appsync.amazonaws.com --action lambda:InvokeFunction
identityValidationExpression -> (строка)
dns -> (массив)
DNS-записи для API.
key -> (строка)
value -> (строка)
visibility -> (строка)
GLOBAL) или частное (PRIVATE). Если значение не указано, видимость по умолчанию будет установлена как GLOBAL. Это значение нельзя изменить после создания API.apiType -> (строка)
GRAPHQL) или объединённым API (MERGED).mergedApiExecutionRoleArn -> (строка)
AUTO_MERGE обновить конечную точку объединённого API с изменениями исходного API автоматически.owner -> (строка)
ownerContact -> (строка)
Контактная информация владельца ресурса API.
Это поле принимает любой строковый ввод длиной от 0 до 256 символов.
introspectionConfig -> (строка)
Устанавливает значение GraphQL API для включения (ENABLED) или отключения (DISABLED) интроспекции. Если значение не указано, конфигурация интроспекции будет установлена по умолчанию как ENABLED. Это поле вызовет ошибку, если операция попытается использовать функцию интроспекции, когда это поле отключено.
Дополнительную информацию об интроспекции см. в разделе GraphQL introspection .
queryDepthLimit -> (целое число)
Максимальная глубина запроса в одном запросе. Глубина относится к количеству разрешенных вложенных уровней в теле запроса. Значение по умолчанию — 0 (или не указано), что означает отсутствие ограничения глубины. Если вы установите ограничение, оно может быть от 1 до 75 вложенных уровней. В случае превышения ограничений это поле вызовет ошибку.
Обратите внимание, что поля всё ещё могут быть установлены как nullable или non-nullable. Если ошибка возникает из-за не-nullable поля, ошибка будет брошена вверх до ближайшего nullable поля.
resolverCountLimit -> (целое число)
0 (или не указано), что установит предел в 10000. При указании предел может быть от 1 до 10000. В случае превышения ограничений это поле вызовет ошибку.enhancedMetricsConfig -> (структура)
Объект enhancedMetricsConfig.
resolverLevelMetricsBehavior -> (строка)
Управляет тем, как метрики резолвера будут отправляться в CloudWatch. Метрики резолвера включают:
- Ошибки GraphQL: количество ошибок GraphQL, которые произошли.
- Запросы: количество вызовов, которые произошли во время запроса.
- Задержка: время выполнения вызова резолвера.
- Попадания в кэш: количество попаданий в кэш во время запроса.
- Промахи кэша: количество промахов кэша во время запроса.
Эти метрики могут быть отправлены в CloudWatch для каждого резолвера или для всех резолверов в запросе. Метрики будут регистрироваться по идентификатору API и имени резолвера. resolverLevelMetricsBehavior принимает одно из этих значений за раз:
-
FULL_REQUEST_RESOLVER_METRICS: Регистрирует и отправляет данные метрик для всех резолверов в запросе. -
PER_RESOLVER_METRICS: Регистрирует и отправляет данные метрик для резолверов, у которых значениеmetricsConfigустановлено вENABLED.
dataSourceLevelMetricsBehavior -> (строка)
Управляет тем, как метрики источника данных будут отправляться в CloudWatch. Метрики источника данных включают:
- Запросы: количество вызовов, произошедших во время запроса.
- Задержка: время выполнения вызова источника данных.
- Ошибки: количество ошибок, произошедших во время вызова источника данных.
Эти метрики могут быть отправлены в CloudWatch для каждого источника данных или для всех источников данных в запросе. Метрики будут регистрироваться по идентификатору API и имени источника данных. dataSourceLevelMetricsBehavior принимает одно из этих значений за раз:
-
FULL_REQUEST_DATA_SOURCE_METRICS: Регистрирует и отправляет данные метрик для всех источников данных в запросе. -
PER_DATA_SOURCE_METRICS: Регистрирует и отправляет данные метрик для источников данных, у которых значениеmetricsConfigустановлено вENABLED.
operationLevelMetricsConfig -> (строка)
Управляет тем, как метрики операций будут отправляться в CloudWatch. Метрики операций включают:
- Запросы: количество раз, когда вызывалась указанная операция GraphQL.
- Ошибки GraphQL: количество ошибок GraphQL, которые произошли во время указанной операции GraphQL.
Метрики будут регистрироваться по идентификатору API и имени операции. Вы можете установить значение в ENABLED или DISABLED.
© Copyright 2025, Amazon Web Services. Created using Sphinx.