GraphqlLambdaConfig
Defined in: packages/core/src/types/lambda.ts:262
Extends
Section titled “Extends”Properties
Section titled “Properties”architecture?
Section titled “architecture?”
optionalarchitecture?:LambdaArchitecture
Defined in: packages/core/src/types/lambda.ts:130
CPU architecture. Defaults to arm64 (Graviton — cheaper + faster for most workloads). Lambda@Edge MUST use x86_64.
Inherited from
Section titled “Inherited from”bundling?
Section titled “bundling?”
optionalbundling?:NodejsBundlingConfig|PythonBundlingConfig|GoBundlingConfig
Defined in: packages/core/src/types/lambda.ts:191
Runtime-specific bundling config
Inherited from
Section titled “Inherited from”constructId?
Section titled “constructId?”
optionalconstructId?:string
Defined in: packages/core/src/types/lambda.ts:145
CloudFormation logical ID override. Use when migrating existing lambdas to preserve physical resource IDs.
Inherited from
Section titled “Inherited from”customFunctionName?
Section titled “customFunctionName?”
optionalcustomFunctionName?: (appName,stageName) =>string
Defined in: packages/core/src/types/lambda.ts:151
Custom function name factory. If omitted, the framework generates:
${appName}-${name}-${stageName}
Parameters
Section titled “Parameters”appName
Section titled “appName”string
stageName
Section titled “stageName”string
Returns
Section titled “Returns”string
Inherited from
Section titled “Inherited from”BaseLambdaConfig.customFunctionName
description
Section titled “description”description:
string
Defined in: packages/core/src/types/lambda.ts:133
Human-readable description (shows in AWS console)
Inherited from
Section titled “Inherited from”enableTracing?
Section titled “enableTracing?”
optionalenableTracing?:boolean
Defined in: packages/core/src/types/lambda.ts:157
Enable X-Ray tracing. Default: true. Not supported on Lambda@Edge.
Inherited from
Section titled “Inherited from”BaseLambdaConfig.enableTracing
entry:
string
Defined in: packages/core/src/types/lambda.ts:112
Handler entry point, relative to the project root. Node.js: path to .ts file (e.g. “lambdas/modules/url/api/create/index.ts”) Python: path to .py file (e.g. “lambdas/url/create.py”) Go: path to package (e.g. “lambdas/url/create”)
Inherited from
Section titled “Inherited from”environment?
Section titled “environment?”
optionalenvironment?:Record<string,string>
Defined in: packages/core/src/types/lambda.ts:182
Environment variables. Supports {{token}} syntax for registry values and ${ssm:/path} for SSM parameters.
Note: Lambda@Edge does not support environment variables. For edge lambdas, use bundling.define instead.
Inherited from
Section titled “Inherited from”fieldName
Section titled “fieldName”fieldName:
string
Defined in: packages/core/src/types/lambda.ts:267
AppSync field name, e.g. “getUser”
kind:
"graphql"
Defined in: packages/core/src/types/lambda.ts:263
Execution context.
Overrides
Section titled “Overrides”logLevel?
Section titled “logLevel?”
optionallogLevel?:"ERROR"|"DEBUG"|"INFO"|"WARN"|"SILENT"
Defined in: packages/core/src/types/lambda.ts:154
Powertools log level. Default: INFO
Inherited from
Section titled “Inherited from”logRetentionDays?
Section titled “logRetentionDays?”
optionallogRetentionDays?:number
Defined in: packages/core/src/types/lambda.ts:173
CloudWatch log group retention in days for this lambda. Overrides the project-wide default from lambdaDefaults.logRetentionDays.
Framework defaults (when not set here or in lambdaDefaults):
- dev: 30 days
- prod: 90 days
Set to 0 to disable retention (logs kept forever — not recommended in prod). Not supported on Lambda@Edge (edge functions use CloudFront logging).
Inherited from
Section titled “Inherited from”BaseLambdaConfig.logRetentionDays
logSensitive?
Section titled “logSensitive?”
optionallogSensitive?:"true"|"false"
Defined in: packages/core/src/types/lambda.ts:160
Set to “true” to include sensitive fields in logs (non-prod only)
Inherited from
Section titled “Inherited from”memorySize?
Section titled “memorySize?”
optionalmemorySize?:number
Defined in: packages/core/src/types/lambda.ts:136
Memory in MB. Default: 512
Inherited from
Section titled “Inherited from”name:
string
Defined in: packages/core/src/types/lambda.ts:99
Unique name for this lambda. Used in function names and logical IDs. Convention: kebab-case, e.g. “create-url”, “process-payment”
Inherited from
Section titled “Inherited from”permissionsSpec?
Section titled “permissionsSpec?”
optionalpermissionsSpec?:PermissionSpec[]
Defined in: packages/core/src/types/lambda.ts:188
Declarative IAM permissions. The constructs package translates these into PolicyStatements.
Inherited from
Section titled “Inherited from”BaseLambdaConfig.permissionsSpec
runtime?
Section titled “runtime?”
optionalruntime?:LambdaRuntime
Defined in: packages/core/src/types/lambda.ts:124
Lambda runtime. Defaults to nodejs24 (latest LTS).
Examples: “nodejs24” → Node.js 24.x (latest) “nodejs22” → Node.js 22.x (LTS — EOL April 2027) “python312” → Python 3.12 “python311” → Python 3.11 “go” → Go on provided.al2023
Inherited from
Section titled “Inherited from”timeoutSeconds?
Section titled “timeoutSeconds?”
optionaltimeoutSeconds?:number
Defined in: packages/core/src/types/lambda.ts:139
Timeout in seconds. Default: 10
Inherited from
Section titled “Inherited from”BaseLambdaConfig.timeoutSeconds
typeName
Section titled “typeName”typeName:
string
Defined in: packages/core/src/types/lambda.ts:265
AppSync type name, e.g. “Query”, “Mutation”
© 2026 Axis Tech. Powered by axis-tech.co.