Reference
Extensions
Reference for all webiny/extensions exports — React components used in webiny.config.tsx to wire extensions into the project.
- What extension components are available in
webiny/extensions? - What parameters does each extension accept?
- How to use each extension in your
webiny.config.tsx?
Overview
The webiny/extensions package exports React components used inside webiny.config.tsx to wire extensions into your Webiny project. Each component corresponds to a defineExtension() call in the Webiny source and accepts typed props defined by its Zod schema.
Api
Admin
Cli
Infra
Project
Api
Extension
Add any API extension.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
exportName | string | no | — |
BuildParam
Add build-time parameter to API app.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
paramName | string | yes | — |
value | union | yes | — |
Admin
Extension
Extend the Admin application with custom functionality.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
exportName | string | no | — |
BuildParam
Add build-time parameter to Admin app.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
paramName | string | yes | — |
value | union | yes | — |
Cli
Command
An extension for defining CLI commands.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Infra
Vpc
Apply VPC settings to AWS resources during deployment.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
enabled | boolean | no | Whether to enable VPC. |
useVpcEndpoints | boolean | no | — |
useExistingVpc | object | no | — |
useExistingVpc
| Field | Type | Required | Description |
|---|---|---|---|
openSearchDomainVpcConfig | object | no | — |
lambdaFunctionsVpcConfig | object | yes | VPC configuration for Lambda functions. |
openSearchDomainVpcConfig
| Field | Type | Required | Description |
|---|---|---|---|
securityGroupIds | string[] | yes | The security group IDs for the OpenSearch domain. |
subnetIds | string[] | yes | The subnet IDs for the OpenSearch domain. |
lambdaFunctionsVpcConfig
| Field | Type | Required | Description |
|---|---|---|---|
securityGroupIds | string[] | yes | The security group IDs for the Lambda functions. |
subnetIds | string[] | yes | The subnet IDs for the Lambda functions. |
BlueGreenDeployments
Enable blue/green deployments for your Webiny project.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
enabled | boolean | no | — |
domains | object | yes | — |
deployments | tuple | yes | — |
domains
| Field | Type | Required | Description | |
|---|---|---|---|---|
acmCertificateArn | string | yes | — | |
sslSupportMethod | `“sni-only” | “vip”` | yes | — |
domains | object | yes | — |
domains
| Field | Type | Required | Description |
|---|---|---|---|
api | string[] | yes | — |
admin | string[] | yes | — |
website | string[] | yes | — |
preview | string[] | yes | — |
deployments
A tuple: [object, object]
OpenSearch
Enable and configure Opensearch integration with project-level setup.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
enabled | boolean | no | Whether to enable OpenSearch. |
domainName | string | no | The name of the Opensearch domain. |
indexPrefix | string | no | A prefix to be added to all Opensearch indexes. |
sharedIndexes | boolean | no | Whether to use shared indexes across all environments (true) or separate indexes per environment (false). |
PulumiResourceNamePrefix
Adjust the prefix for Pulumi resource names (default: “wby-”).
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
prefix | string | yes | — |
ProductionEnvironments
Provide names for environments that are considered production environments.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
environments | array | yes | — |
Aws.DefaultRegion
Set the default AWS region for the project.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
name | string | yes | The AWS region name. |
Aws.Tags
Apply tags to AWS resources during deployment.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
tags | record | yes | — |
Admin.BeforeBuild
Add custom logic to be executed before the ADMIN build process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Admin.BeforeDeploy
Add custom logic to be executed before the ADMIN deployment process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Admin.BeforeWatch
Add custom logic to be executed before the Admin watch process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Admin.AfterBuild
Add custom logic to be executed after the ADMIN build process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Admin.AfterDeploy
Add custom logic to be executed after the ADMIN deployment process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Admin.Pulumi
Modify Admin app’s cloud infrastructure using Pulumi.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Admin.CustomDomains
Configure custom domains for the Admin app.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
domains | array | yes | List of custom domains. |
sslMethod | enum | no | The method to use for SSL/TLS certificate validation. |
certificateArn | string | yes | The ARN of the SSL/TLS certificate to use for the custom domains. |
Admin.StackOutputValue
Add custom output values to the Admin stack.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
key | string | yes | The key for the output value |
value | any | no | The value to output |
Api.BeforeBuild
Add custom logic to be executed before the API build process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Api.BeforeDeploy
Add custom logic to be executed before the API deployment process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Api.BeforeWatch
Add custom logic to be executed before the API watch process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Api.AfterBuild
Add custom logic to be executed after the API build process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Api.AfterDeploy
Add custom logic to be executed after the API deployment process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Api.Pulumi
Modify Api app’s cloud infrastructure using Pulumi.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Api.StackOutputValue
Add custom output values to the Api stack.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
key | string | yes | The key for the output value |
value | any | no | The value to output |
Api.LambdaFunction
Add a custom Lambda function to the API app.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
functionSrc | string | yes | — |
pulumiSrc | string | yes | — |
Core.BeforeBuild
Add custom logic to be executed before the CORE build process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Core.BeforeDeploy
Add custom logic to be executed before the CORE deployment process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Core.BeforeWatch
Add custom logic to be executed before the CORE watch process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Core.AfterBuild
Add custom logic to be executed after the CORE build process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Core.AfterDeploy
Add custom logic to be executed after the CORE deployment process.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Core.Pulumi
Modify Core app’s cloud infrastructure using Pulumi.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
src | string | yes | — |
Core.StackOutputValue
Add custom output values to the Core stack.
Can be used multiple times.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
key | string | yes | The key for the output value |
value | any | no | The value to output |
Project
Id
An extension for defining the project ID.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
id | string | yes | — |
Telemetry
This extension allows you to enable or disable telemetry for the project.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
enabled | boolean | no | — |
AutoInstall
Auto-install Webiny with admin user credentials on first deploy.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
adminUser | object | yes | Admin user credentials for installation |
adminUser
| Field | Type | Required | Description |
|---|---|---|---|
firstName | string | yes | Admin user first name |
lastName | string | yes | Admin user last name |
email | string | yes | Admin user email |
password | string | yes | Admin user password (minimum 8 characters) |
FeatureFlags
Enable or disable WCP features.
Can only be used once.
Props
| Prop | Type | Required | Description |
|---|---|---|---|
features | object | yes | — |
features
| Field | Type | Required | Description |
|---|---|---|---|
multiTenancy | boolean | no | — |
advancedPublishingWorkflow | boolean | no | — |
advancedAccessControlLayer | boolean | object | no | — |
auditLogs | boolean | no | — |
recordLocking | boolean | no | — |
fileManager | object | no | — |
advancedAccessControlLayer
Accepts one of:
boolean- object
advancedAccessControlLayer (option 2)
| Field | Type | Required | Description |
|---|---|---|---|
teams | boolean | no | — |
privateFiles | boolean | no | — |
folderLevelPermissions | boolean | no | — |
hcmsFieldPermissions | boolean | no | — |
fileManager
| Field | Type | Required | Description |
|---|---|---|---|
threatDetection | boolean | no | — |