zuplo 6.67.32 → 6.68.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -0
- package/docs/_index.md +44 -0
- package/docs/ai-gateway/apps.mdx +28 -0
- package/docs/ai-gateway/custom-providers.mdx +54 -0
- package/docs/ai-gateway/getting-started.mdx +224 -0
- package/docs/ai-gateway/guardrails.mdx +65 -0
- package/docs/ai-gateway/integrations/ai-sdk.mdx +109 -0
- package/docs/ai-gateway/integrations/claude-code.mdx +49 -0
- package/docs/ai-gateway/integrations/codex.mdx +78 -0
- package/docs/ai-gateway/integrations/goose.mdx +104 -0
- package/docs/ai-gateway/integrations/langchain.mdx +66 -0
- package/docs/ai-gateway/integrations/openai.mdx +99 -0
- package/docs/ai-gateway/introduction.mdx +85 -0
- package/docs/ai-gateway/managing-apps.mdx +46 -0
- package/docs/ai-gateway/managing-providers.mdx +66 -0
- package/docs/ai-gateway/managing-teams.mdx +63 -0
- package/docs/ai-gateway/policies/akamai-ai-firewall.mdx +125 -0
- package/docs/ai-gateway/policies/comet-opik-tracing.mdx +139 -0
- package/docs/ai-gateway/policies/galileo-tracing.mdx +147 -0
- package/docs/ai-gateway/providers.mdx +32 -0
- package/docs/ai-gateway/teams.mdx +38 -0
- package/docs/ai-gateway/universal-api.mdx +43 -0
- package/docs/ai-gateway/usage-limits.mdx +89 -0
- package/docs/api-management/introduction.md +127 -0
- package/docs/articles/accounts/audit-logs.mdx +227 -0
- package/docs/articles/accounts/billing.mdx +25 -0
- package/docs/articles/accounts/default-api-key.mdx +30 -0
- package/docs/articles/accounts/delete-account.mdx +36 -0
- package/docs/articles/accounts/enterprise-sso.mdx +116 -0
- package/docs/articles/accounts/managing-account-members.mdx +45 -0
- package/docs/articles/accounts/managing-project-members.mdx +37 -0
- package/docs/articles/accounts/members-and-roles.mdx +21 -0
- package/docs/articles/accounts/roles-and-permissions.mdx +115 -0
- package/docs/articles/accounts/zuplo-api-keys.mdx +94 -0
- package/docs/articles/add-api-to-backstage.mdx +216 -0
- package/docs/articles/advanced-path-matching.mdx +139 -0
- package/docs/articles/api-key-administration.mdx +47 -0
- package/docs/articles/api-key-api.mdx +220 -0
- package/docs/articles/api-key-authentication.mdx +195 -0
- package/docs/articles/api-key-buckets.mdx +61 -0
- package/docs/articles/api-key-end-users.mdx +52 -0
- package/docs/articles/api-key-leak-detection.mdx +75 -0
- package/docs/articles/api-key-management.mdx +100 -0
- package/docs/articles/api-key-react-component.mdx +90 -0
- package/docs/articles/api-key-service-limits.mdx +14 -0
- package/docs/articles/archiving-requests-to-storage.mdx +119 -0
- package/docs/articles/branch-based-deployments.mdx +184 -0
- package/docs/articles/bypass-policy-for-testing.mdx +117 -0
- package/docs/articles/check-ip-address.mdx +17 -0
- package/docs/articles/ci-cd-azure/basic-deployment.mdx +49 -0
- package/docs/articles/ci-cd-azure/deploy-and-test.mdx +47 -0
- package/docs/articles/ci-cd-azure/local-testing.mdx +59 -0
- package/docs/articles/ci-cd-azure/multi-stage-deployment.mdx +88 -0
- package/docs/articles/ci-cd-azure/pr-preview-environments.mdx +50 -0
- package/docs/articles/ci-cd-azure/tag-based-releases.mdx +37 -0
- package/docs/articles/ci-cd-bitbucket/basic-deployment.mdx +27 -0
- package/docs/articles/ci-cd-bitbucket/deploy-and-test.mdx +41 -0
- package/docs/articles/ci-cd-bitbucket/local-testing.mdx +34 -0
- package/docs/articles/ci-cd-bitbucket/multi-stage-deployment.mdx +52 -0
- package/docs/articles/ci-cd-bitbucket/pr-preview-environments.mdx +46 -0
- package/docs/articles/ci-cd-bitbucket/tag-based-releases.mdx +27 -0
- package/docs/articles/ci-cd-circleci/basic-deployment.mdx +34 -0
- package/docs/articles/ci-cd-circleci/deploy-and-test.mdx +44 -0
- package/docs/articles/ci-cd-circleci/local-testing.mdx +50 -0
- package/docs/articles/ci-cd-circleci/multi-stage-deployment.mdx +82 -0
- package/docs/articles/ci-cd-circleci/pr-preview-environments.mdx +47 -0
- package/docs/articles/ci-cd-circleci/tag-based-releases.mdx +38 -0
- package/docs/articles/ci-cd-github/basic-deployment.mdx +48 -0
- package/docs/articles/ci-cd-github/cleanup-on-branch-delete.mdx +123 -0
- package/docs/articles/ci-cd-github/deploy-and-test.mdx +82 -0
- package/docs/articles/ci-cd-github/local-testing.mdx +102 -0
- package/docs/articles/ci-cd-github/multi-stage-deployment.mdx +136 -0
- package/docs/articles/ci-cd-github/pr-preview-environments.mdx +106 -0
- package/docs/articles/ci-cd-github/tag-based-releases.mdx +99 -0
- package/docs/articles/ci-cd-gitlab/basic-deployment.mdx +28 -0
- package/docs/articles/ci-cd-gitlab/deploy-and-test.mdx +44 -0
- package/docs/articles/ci-cd-gitlab/local-testing.mdx +39 -0
- package/docs/articles/ci-cd-gitlab/mr-preview-environments.mdx +52 -0
- package/docs/articles/ci-cd-gitlab/multi-stage-deployment.mdx +64 -0
- package/docs/articles/ci-cd-gitlab/tag-based-releases.mdx +28 -0
- package/docs/articles/composite-policy-reference.mdx +284 -0
- package/docs/articles/configuring-auth0-for-mcp-auth.mdx +186 -0
- package/docs/articles/configuring-okta-for-mcp-auth.mdx +208 -0
- package/docs/articles/convert-urls-to-openapi.mdx +62 -0
- package/docs/articles/cors.mdx +447 -0
- package/docs/articles/custom-audit-log-policy.mdx +95 -0
- package/docs/articles/custom-ci-cd-azure.mdx +81 -0
- package/docs/articles/custom-ci-cd-bitbucket.mdx +80 -0
- package/docs/articles/custom-ci-cd-circleci.mdx +78 -0
- package/docs/articles/custom-ci-cd-github.mdx +99 -0
- package/docs/articles/custom-ci-cd-gitlab.mdx +79 -0
- package/docs/articles/custom-ci-cd.mdx +82 -0
- package/docs/articles/custom-code-patterns.md +418 -0
- package/docs/articles/custom-domains.mdx +258 -0
- package/docs/articles/custom-logging-example.mdx +139 -0
- package/docs/articles/ddos-protection.mdx +138 -0
- package/docs/articles/development-options.mdx +49 -0
- package/docs/articles/environment-variables.mdx +134 -0
- package/docs/articles/environments.mdx +143 -0
- package/docs/articles/fastly-zuplo-host-setup.mdx +41 -0
- package/docs/articles/github-deployment-testing.mdx +101 -0
- package/docs/articles/gke-with-upstream-auth-policy.mdx +192 -0
- package/docs/articles/graphql-security.mdx +180 -0
- package/docs/articles/handling-form-data.mdx +61 -0
- package/docs/articles/health-checks.mdx +109 -0
- package/docs/articles/hosting-options.mdx +70 -0
- package/docs/articles/lazy-load-configuration-into-cache.mdx +92 -0
- package/docs/articles/limits.mdx +98 -0
- package/docs/articles/local-development-debugging.mdx +44 -0
- package/docs/articles/local-development-env-variables.mdx +23 -0
- package/docs/articles/local-development-installing-packages.mdx +23 -0
- package/docs/articles/local-development-routes-designer.mdx +27 -0
- package/docs/articles/local-development-services.mdx +40 -0
- package/docs/articles/local-development-troubleshooting.mdx +56 -0
- package/docs/articles/local-development.mdx +81 -0
- package/docs/articles/log-plugin-aws-cloudwatch.mdx +83 -0
- package/docs/articles/log-plugin-datadog.mdx +84 -0
- package/docs/articles/log-plugin-dynatrace.mdx +75 -0
- package/docs/articles/log-plugin-gcp.mdx +75 -0
- package/docs/articles/log-plugin-loki.mdx +136 -0
- package/docs/articles/log-plugin-new-relic.mdx +84 -0
- package/docs/articles/log-plugin-splunk.mdx +104 -0
- package/docs/articles/log-plugin-sumo.mdx +73 -0
- package/docs/articles/log-plugin-vmware-log-insight.mdx +154 -0
- package/docs/articles/log-request-response-data.mdx +398 -0
- package/docs/articles/logging.mdx +115 -0
- package/docs/articles/manual-mcp-oauth-testing.mdx +193 -0
- package/docs/articles/mcp-quickstart.mdx +135 -0
- package/docs/articles/metrics-plugins.mdx +371 -0
- package/docs/articles/migrate-from-apigee.md +408 -0
- package/docs/articles/migrate-from-aws-api-gateway.md +248 -0
- package/docs/articles/migrate-from-azure-apim.md +292 -0
- package/docs/articles/migrate-from-kong.md +300 -0
- package/docs/articles/migration-overview.md +81 -0
- package/docs/articles/monetization/api-access.mdx +69 -0
- package/docs/articles/monetization/billing-models.md +520 -0
- package/docs/articles/monetization/developer-portal.md +167 -0
- package/docs/articles/monetization/features.mdx +98 -0
- package/docs/articles/monetization/index.mdx +113 -0
- package/docs/articles/monetization/meters.mdx +135 -0
- package/docs/articles/monetization/monetization-policy.md +314 -0
- package/docs/articles/monetization/plan-examples.mdx +366 -0
- package/docs/articles/monetization/plans.mdx +266 -0
- package/docs/articles/monetization/pricing-models.mdx +225 -0
- package/docs/articles/monetization/private-plans.md +154 -0
- package/docs/articles/monetization/quickstart.md +355 -0
- package/docs/articles/monetization/rate-cards.mdx +171 -0
- package/docs/articles/monetization/stripe-integration.md +195 -0
- package/docs/articles/monetization/subscription-lifecycle.md +298 -0
- package/docs/articles/monetization/tax-collection.md +166 -0
- package/docs/articles/monetization/troubleshooting.md +272 -0
- package/docs/articles/monetization-custom.mdx +71 -0
- package/docs/articles/monetization-integrations.mdx +104 -0
- package/docs/articles/monitoring-your-gateway.mdx +53 -0
- package/docs/articles/monorepo-deployment.mdx +350 -0
- package/docs/articles/multiple-auth-policies.mdx +81 -0
- package/docs/articles/non-standard-ports.mdx +30 -0
- package/docs/articles/oauth-authentication.mdx +54 -0
- package/docs/articles/openapi-server-urls.mdx +60 -0
- package/docs/articles/openapi.mdx +130 -0
- package/docs/articles/opentelemetry.mdx +250 -0
- package/docs/articles/per-user-rate-limits-using-db.mdx +112 -0
- package/docs/articles/performance-testing.mdx +304 -0
- package/docs/articles/plugin-akamai-api-security.mdx +76 -0
- package/docs/articles/plugin-azure-blob.mdx +73 -0
- package/docs/articles/plugin-azure-event-hubs.mdx +64 -0
- package/docs/articles/plugin-hydrolix-traffic-peak.mdx +147 -0
- package/docs/articles/policies.mdx +33 -0
- package/docs/articles/rename-or-move-project.mdx +39 -0
- package/docs/articles/rick-and-morty-api-developer-portal-example.mdx +23 -0
- package/docs/articles/routing.mdx +193 -0
- package/docs/articles/s3-signed-url-uploads.mdx +521 -0
- package/docs/articles/secure-tunnel.mdx +84 -0
- package/docs/articles/securing-backend-mtls.mdx +268 -0
- package/docs/articles/securing-your-backend.mdx +148 -0
- package/docs/articles/security.mdx +105 -0
- package/docs/articles/sharing-code-across-projects.mdx +412 -0
- package/docs/articles/source-control-setup-azure.mdx +13 -0
- package/docs/articles/source-control-setup-bitbucket.mdx +43 -0
- package/docs/articles/source-control-setup-github.mdx +172 -0
- package/docs/articles/source-control-setup-gitlab.mdx +12 -0
- package/docs/articles/source-control.mdx +80 -0
- package/docs/articles/step-1-setup-basic-gateway-local.mdx +136 -0
- package/docs/articles/step-1-setup-basic-gateway.mdx +118 -0
- package/docs/articles/step-2-add-rate-limiting-local.mdx +126 -0
- package/docs/articles/step-2-add-rate-limiting.mdx +82 -0
- package/docs/articles/step-3-add-api-key-auth-local.mdx +199 -0
- package/docs/articles/step-3-add-api-key-auth.mdx +166 -0
- package/docs/articles/step-4-deploying-to-the-edge.mdx +220 -0
- package/docs/articles/step-5-dynamic-rate-limiting.mdx +167 -0
- package/docs/articles/support.mdx +144 -0
- package/docs/articles/terraform.mdx +114 -0
- package/docs/articles/testing-graphql.mdx +34 -0
- package/docs/articles/testing.mdx +522 -0
- package/docs/articles/troubleshooting-slow-responses.mdx +301 -0
- package/docs/articles/troubleshooting.md +302 -0
- package/docs/articles/tsconfig.mdx +105 -0
- package/docs/articles/tunnel-setup.mdx +195 -0
- package/docs/articles/tunnel-troubleshooting.mdx +50 -0
- package/docs/articles/update-zup-in-github-action.mdx +110 -0
- package/docs/articles/use-openapi-extension-data.mdx +79 -0
- package/docs/articles/users/multifactor-authentication.mdx +64 -0
- package/docs/articles/users/profile.mdx +13 -0
- package/docs/articles/versioning-on-zuplo.mdx +89 -0
- package/docs/articles/waf-ddos-akamai.md +133 -0
- package/docs/articles/waf-ddos-aws-waf-shield.mdx +85 -0
- package/docs/articles/waf-ddos-fastly.mdx +251 -0
- package/docs/articles/waf-ddos.mdx +140 -0
- package/docs/articles/zuplo-waf.mdx +156 -0
- package/docs/ask.mdx +3 -0
- package/docs/cli/authentication.mdx +56 -0
- package/docs/cli/connectivity.mdx +38 -0
- package/docs/cli/create-zuplo-api.mdx +80 -0
- package/docs/cli/delete.mdx +79 -0
- package/docs/cli/deploy.mdx +156 -0
- package/docs/cli/deploy.partial.mdx +46 -0
- package/docs/cli/dev.mdx +115 -0
- package/docs/cli/docs.mdx +66 -0
- package/docs/cli/editor.mdx +50 -0
- package/docs/cli/global-options.mdx +19 -0
- package/docs/cli/init.mdx +74 -0
- package/docs/cli/link.mdx +74 -0
- package/docs/cli/list.mdx +55 -0
- package/docs/cli/mtls-certificate-create.mdx +94 -0
- package/docs/cli/mtls-certificate-delete.mdx +55 -0
- package/docs/cli/mtls-certificate-describe.mdx +55 -0
- package/docs/cli/mtls-certificate-disable.mdx +55 -0
- package/docs/cli/mtls-certificate-list.mdx +47 -0
- package/docs/cli/mtls-certificate-update.mdx +72 -0
- package/docs/cli/openapi-convert.mdx +111 -0
- package/docs/cli/openapi-merge.mdx +138 -0
- package/docs/cli/openapi-merge.partial.mdx +29 -0
- package/docs/cli/openapi-overlay.mdx +123 -0
- package/docs/cli/overview.mdx +78 -0
- package/docs/cli/project-create.mdx +43 -0
- package/docs/cli/source-migrate.mdx +18 -0
- package/docs/cli/source-upgrade.mdx +41 -0
- package/docs/cli/test.mdx +70 -0
- package/docs/cli/test.partial.mdx +7 -0
- package/docs/cli/tunnel-create.mdx +53 -0
- package/docs/cli/tunnel-create.partial.mdx +9 -0
- package/docs/cli/tunnel-delete.mdx +35 -0
- package/docs/cli/tunnel-delete.partial.mdx +9 -0
- package/docs/cli/tunnel-describe.mdx +45 -0
- package/docs/cli/tunnel-describe.partial.mdx +5 -0
- package/docs/cli/tunnel-list.mdx +35 -0
- package/docs/cli/tunnel-list.partial.mdx +9 -0
- package/docs/cli/tunnel-rate-token.partial.mdx +9 -0
- package/docs/cli/tunnel-rotate-token.mdx +39 -0
- package/docs/cli/tunnel-services-describe.mdx +45 -0
- package/docs/cli/tunnel-services-describe.partial.mdx +9 -0
- package/docs/cli/tunnel-services-update.mdx +48 -0
- package/docs/cli/variable-create.mdx +91 -0
- package/docs/cli/variable-create.partial.mdx +5 -0
- package/docs/cli/variable-update.mdx +75 -0
- package/docs/cli/variable-update.partial.mdx +5 -0
- package/docs/concepts/api-keys.md +146 -0
- package/docs/concepts/authentication.mdx +109 -0
- package/docs/concepts/how-zuplo-works.mdx +120 -0
- package/docs/concepts/project-structure.mdx +174 -0
- package/docs/concepts/rate-limiting.md +246 -0
- package/docs/concepts/request-lifecycle.mdx +56 -0
- package/docs/concepts/source-control-and-deployment.mdx +229 -0
- package/docs/conferences/conference-prize-terms.mdx +80 -0
- package/docs/dedicated/akamai/ai-powered-applications.mdx +223 -0
- package/docs/dedicated/akamai/architecture.mdx +280 -0
- package/docs/dedicated/akamai/caching.mdx +212 -0
- package/docs/dedicated/akamai/cdn.mdx +156 -0
- package/docs/dedicated/architecture.mdx +208 -0
- package/docs/dedicated/custom-domains.mdx +31 -0
- package/docs/dedicated/federated-gateways.mdx +80 -0
- package/docs/dedicated/networking.mdx +69 -0
- package/docs/dedicated/overview.mdx +80 -0
- package/docs/dedicated/source-control.mdx +63 -0
- package/docs/dev-portal/dev-portal-create-consumer-on-auth.mdx +134 -0
- package/docs/dev-portal/introduction.mdx +65 -0
- package/docs/dev-portal/local-development.mdx +72 -0
- package/docs/dev-portal/migration.mdx +526 -0
- package/docs/dev-portal/node-modules.mdx +45 -0
- package/docs/dev-portal/updating.mdx +28 -0
- package/docs/dev-portal/zudoku/components/alert.mdx +130 -0
- package/docs/dev-portal/zudoku/components/badge.mdx +70 -0
- package/docs/dev-portal/zudoku/components/button.mdx +132 -0
- package/docs/dev-portal/zudoku/components/callout.mdx +112 -0
- package/docs/dev-portal/zudoku/components/card.mdx +104 -0
- package/docs/dev-portal/zudoku/components/checkbox.mdx +72 -0
- package/docs/dev-portal/zudoku/components/client-only.mdx +79 -0
- package/docs/dev-portal/zudoku/components/code-tabs.mdx +179 -0
- package/docs/dev-portal/zudoku/components/dialog.mdx +167 -0
- package/docs/dev-portal/zudoku/components/head.mdx +199 -0
- package/docs/dev-portal/zudoku/components/icons.mdx +27 -0
- package/docs/dev-portal/zudoku/components/input.mdx +96 -0
- package/docs/dev-portal/zudoku/components/label.mdx +86 -0
- package/docs/dev-portal/zudoku/components/link.mdx +242 -0
- package/docs/dev-portal/zudoku/components/markdown.mdx +151 -0
- package/docs/dev-portal/zudoku/components/mermaid.mdx +81 -0
- package/docs/dev-portal/zudoku/components/playground.mdx +87 -0
- package/docs/dev-portal/zudoku/components/secret.mdx +78 -0
- package/docs/dev-portal/zudoku/components/select.mdx +176 -0
- package/docs/dev-portal/zudoku/components/shadcn.mdx +73 -0
- package/docs/dev-portal/zudoku/components/slider.mdx +108 -0
- package/docs/dev-portal/zudoku/components/slot.mdx +119 -0
- package/docs/dev-portal/zudoku/components/stepper.mdx +138 -0
- package/docs/dev-portal/zudoku/components/switch.mdx +96 -0
- package/docs/dev-portal/zudoku/components/syntax-highlight.mdx +602 -0
- package/docs/dev-portal/zudoku/components/textarea.mdx +78 -0
- package/docs/dev-portal/zudoku/components/tooltip.mdx +195 -0
- package/docs/dev-portal/zudoku/components/typography.mdx +61 -0
- package/docs/dev-portal/zudoku/configuration/ai-assistants.md +64 -0
- package/docs/dev-portal/zudoku/configuration/api-catalog.md +108 -0
- package/docs/dev-portal/zudoku/configuration/api-reference.md +397 -0
- package/docs/dev-portal/zudoku/configuration/authentication-auth0.md +173 -0
- package/docs/dev-portal/zudoku/configuration/authentication-azure-ad.md +238 -0
- package/docs/dev-portal/zudoku/configuration/authentication-clerk.md +110 -0
- package/docs/dev-portal/zudoku/configuration/authentication-firebase.md +61 -0
- package/docs/dev-portal/zudoku/configuration/authentication-pingfederate.md +136 -0
- package/docs/dev-portal/zudoku/configuration/authentication-supabase.md +225 -0
- package/docs/dev-portal/zudoku/configuration/authentication.md +199 -0
- package/docs/dev-portal/zudoku/configuration/build-configuration.mdx +147 -0
- package/docs/dev-portal/zudoku/configuration/docs.md +282 -0
- package/docs/dev-portal/zudoku/configuration/footer.mdx +214 -0
- package/docs/dev-portal/zudoku/configuration/llms.md +89 -0
- package/docs/dev-portal/zudoku/configuration/navigation.mdx +408 -0
- package/docs/dev-portal/zudoku/configuration/overview.md +380 -0
- package/docs/dev-portal/zudoku/configuration/protected-routes.md +149 -0
- package/docs/dev-portal/zudoku/configuration/search.md +169 -0
- package/docs/dev-portal/zudoku/configuration/sentry.mdx +44 -0
- package/docs/dev-portal/zudoku/configuration/site.md +124 -0
- package/docs/dev-portal/zudoku/configuration/slots.mdx +124 -0
- package/docs/dev-portal/zudoku/configuration/vite-config.md +18 -0
- package/docs/dev-portal/zudoku/custom-plugins.md +287 -0
- package/docs/dev-portal/zudoku/customization/colors-theme.mdx +275 -0
- package/docs/dev-portal/zudoku/customization/fonts.md +110 -0
- package/docs/dev-portal/zudoku/extending/events.md +124 -0
- package/docs/dev-portal/zudoku/guides/custom-pages.md +106 -0
- package/docs/dev-portal/zudoku/guides/environment-variables.md +99 -0
- package/docs/dev-portal/zudoku/guides/mermaid.mdx +70 -0
- package/docs/dev-portal/zudoku/guides/navigation-migration.md +87 -0
- package/docs/dev-portal/zudoku/guides/navigation-rules.mdx +197 -0
- package/docs/dev-portal/zudoku/guides/processors.mdx +234 -0
- package/docs/dev-portal/zudoku/guides/static-files.md +55 -0
- package/docs/dev-portal/zudoku/guides/transforming-examples.md +156 -0
- package/docs/dev-portal/zudoku/guides/using-multiple-apis.md +87 -0
- package/docs/dev-portal/zudoku/markdown/admonitions.md +128 -0
- package/docs/dev-portal/zudoku/markdown/code-blocks.md +196 -0
- package/docs/dev-portal/zudoku/markdown/frontmatter.md +172 -0
- package/docs/dev-portal/zudoku/markdown/mdx.md +68 -0
- package/docs/dev-portal/zudoku/markdown/overview.md +275 -0
- package/docs/dev-portal/zudoku/plugins.md +5 -0
- package/docs/dev-portal/zudoku/writing.mdx +72 -0
- package/docs/errors/bad-request.mdx +39 -0
- package/docs/errors/build-error.mdx +45 -0
- package/docs/errors/fatal-project-error.mdx +39 -0
- package/docs/errors/gateway-timeout.mdx +33 -0
- package/docs/errors/get-head-body-error.mdx +41 -0
- package/docs/errors/main-mod-error.mdx +40 -0
- package/docs/errors/no-project-set.mdx +41 -0
- package/docs/errors/not-found.mdx +43 -0
- package/docs/errors/rate-limit-exceeded.mdx +31 -0
- package/docs/errors/schema-validation-failed.mdx +51 -0
- package/docs/errors/system-configuration-error.mdx +44 -0
- package/docs/errors/unauthorized.mdx +50 -0
- package/docs/errors/unknown-error.mdx +42 -0
- package/docs/errors.mdx +14 -0
- package/docs/guides/canary-routing-for-employees.mdx +385 -0
- package/docs/guides/geolocation-backend-routing.mdx +404 -0
- package/docs/guides/modify-openapi-paths.mdx +371 -0
- package/docs/guides/openapi-overlays.mdx +492 -0
- package/docs/guides/overview.mdx +12 -0
- package/docs/guides/user-based-backend-routing.mdx +437 -0
- package/docs/handlers/aws-lambda.mdx +201 -0
- package/docs/handlers/custom-handler.mdx +112 -0
- package/docs/handlers/legacy-dev-portal-handler.mdx +135 -0
- package/docs/handlers/mcp-server.mdx +730 -0
- package/docs/handlers/openapi.mdx +78 -0
- package/docs/handlers/redirect.mdx +115 -0
- package/docs/handlers/system-handlers.mdx +41 -0
- package/docs/handlers/url-forward.mdx +204 -0
- package/docs/handlers/url-rewrite.mdx +224 -0
- package/docs/handlers/websocket-handler.mdx +154 -0
- package/docs/home.mdx +6 -0
- package/docs/managed-edge/overview.md +78 -0
- package/docs/mcp-server/configuration-migration-guide.mdx +344 -0
- package/docs/mcp-server/custom-tools.mdx +487 -0
- package/docs/mcp-server/graphql.mdx +241 -0
- package/docs/mcp-server/introduction.mdx +122 -0
- package/docs/mcp-server/openai-apps-sdk.mdx +160 -0
- package/docs/mcp-server/prompts.mdx +283 -0
- package/docs/mcp-server/resources.mdx +288 -0
- package/docs/mcp-server/testing.mdx +53 -0
- package/docs/mcp-server/tools.mdx +306 -0
- package/docs/policies/_index.md +92 -0
- package/docs/policies/ab-test-inbound/intro.md +8 -0
- package/docs/policies/ab-test-inbound/policy.ts +14 -0
- package/docs/policies/ab-test-inbound/schema.json +27 -0
- package/docs/policies/ab-test-outbound/intro.md +8 -0
- package/docs/policies/ab-test-outbound/policy.ts +26 -0
- package/docs/policies/ab-test-outbound/schema.json +27 -0
- package/docs/policies/acl-policy-inbound/intro.md +5 -0
- package/docs/policies/acl-policy-inbound/policy.ts +32 -0
- package/docs/policies/acl-policy-inbound/schema.json +52 -0
- package/docs/policies/akamai-ai-firewall/schema.json +98 -0
- package/docs/policies/amberflo-metering-inbound/doc.md +183 -0
- package/docs/policies/amberflo-metering-inbound/intro.md +20 -0
- package/docs/policies/amberflo-metering-inbound/schema.json +108 -0
- package/docs/policies/api-key-inbound/doc.md +77 -0
- package/docs/policies/api-key-inbound/intro.md +30 -0
- package/docs/policies/api-key-inbound/schema.json +84 -0
- package/docs/policies/archive-request-aws-s3-inbound/intro.md +4 -0
- package/docs/policies/archive-request-aws-s3-inbound/policy.ts +58 -0
- package/docs/policies/archive-request-aws-s3-inbound/schema.json +68 -0
- package/docs/policies/archive-request-azure-storage-inbound/doc.md +31 -0
- package/docs/policies/archive-request-azure-storage-inbound/intro.md +4 -0
- package/docs/policies/archive-request-azure-storage-inbound/policy.ts +54 -0
- package/docs/policies/archive-request-azure-storage-inbound/schema.json +53 -0
- package/docs/policies/archive-request-gcp-storage-inbound/doc.md +63 -0
- package/docs/policies/archive-request-gcp-storage-inbound/intro.md +4 -0
- package/docs/policies/archive-request-gcp-storage-inbound/policy.ts +68 -0
- package/docs/policies/archive-request-gcp-storage-inbound/schema.json +47 -0
- package/docs/policies/archive-response-aws-s3-outbound/intro.md +2 -0
- package/docs/policies/archive-response-aws-s3-outbound/policy.ts +59 -0
- package/docs/policies/archive-response-aws-s3-outbound/schema.json +68 -0
- package/docs/policies/archive-response-azure-storage-outbound/doc.md +31 -0
- package/docs/policies/archive-response-azure-storage-outbound/intro.md +3 -0
- package/docs/policies/archive-response-azure-storage-outbound/policy.ts +54 -0
- package/docs/policies/archive-response-azure-storage-outbound/schema.json +53 -0
- package/docs/policies/audit-log-inbound/doc.md +78 -0
- package/docs/policies/audit-log-inbound/intro.md +10 -0
- package/docs/policies/audit-log-inbound/schema.json +81 -0
- package/docs/policies/auth0-jwt-auth-inbound/doc.md +125 -0
- package/docs/policies/auth0-jwt-auth-inbound/intro.md +17 -0
- package/docs/policies/auth0-jwt-auth-inbound/schema.json +74 -0
- package/docs/policies/authzen-inbound/doc.md +24 -0
- package/docs/policies/authzen-inbound/intro.md +31 -0
- package/docs/policies/authzen-inbound/schema.json +126 -0
- package/docs/policies/axiomatics-authz-inbound/doc.md +144 -0
- package/docs/policies/axiomatics-authz-inbound/intro.md +11 -0
- package/docs/policies/axiomatics-authz-inbound/schema.json +161 -0
- package/docs/policies/basic-auth-inbound/intro.md +9 -0
- package/docs/policies/basic-auth-inbound/schema.json +99 -0
- package/docs/policies/bot-detection-inbound/intro.md +4 -0
- package/docs/policies/bot-detection-inbound/schema.json +56 -0
- package/docs/policies/brownout-inbound/doc.md +55 -0
- package/docs/policies/brownout-inbound/intro.md +12 -0
- package/docs/policies/brownout-inbound/schema.json +115 -0
- package/docs/policies/caching-inbound/doc.md +209 -0
- package/docs/policies/caching-inbound/intro.md +23 -0
- package/docs/policies/caching-inbound/schema.json +98 -0
- package/docs/policies/change-method-inbound/schema.json +56 -0
- package/docs/policies/clear-headers-inbound/schema.json +59 -0
- package/docs/policies/clear-headers-outbound/schema.json +59 -0
- package/docs/policies/clerk-jwt-auth-inbound/doc.md +85 -0
- package/docs/policies/clerk-jwt-auth-inbound/intro.md +4 -0
- package/docs/policies/clerk-jwt-auth-inbound/schema.json +68 -0
- package/docs/policies/cognito-jwt-auth-inbound/intro.md +7 -0
- package/docs/policies/cognito-jwt-auth-inbound/schema.json +74 -0
- package/docs/policies/comet-opik-tracing-inbound/schema.json +65 -0
- package/docs/policies/complex-rate-limit-inbound/doc.md +20 -0
- package/docs/policies/complex-rate-limit-inbound/intro.md +23 -0
- package/docs/policies/complex-rate-limit-inbound/schema.json +142 -0
- package/docs/policies/composite-inbound/doc.md +69 -0
- package/docs/policies/composite-inbound/intro.md +15 -0
- package/docs/policies/composite-inbound/schema.json +59 -0
- package/docs/policies/composite-outbound/intro.md +6 -0
- package/docs/policies/composite-outbound/schema.json +59 -0
- package/docs/policies/curity-phantom-token-inbound/doc.md +109 -0
- package/docs/policies/curity-phantom-token-inbound/intro.md +3 -0
- package/docs/policies/curity-phantom-token-inbound/schema.json +68 -0
- package/docs/policies/custom-code-inbound/doc.md +267 -0
- package/docs/policies/custom-code-inbound/intro.md +2 -0
- package/docs/policies/custom-code-inbound/schema.json +48 -0
- package/docs/policies/custom-code-outbound/doc.md +235 -0
- package/docs/policies/custom-code-outbound/intro.md +2 -0
- package/docs/policies/custom-code-outbound/schema.json +43 -0
- package/docs/policies/firebase-jwt-inbound/intro.md +6 -0
- package/docs/policies/firebase-jwt-inbound/schema.json +68 -0
- package/docs/policies/formdata-to-json-inbound/schema.json +60 -0
- package/docs/policies/galileo-tracing-inbound/schema.json +65 -0
- package/docs/policies/geo-filter-inbound/doc.md +33 -0
- package/docs/policies/geo-filter-inbound/schema.json +108 -0
- package/docs/policies/graphql-complexity-limit-inbound/doc.md +48 -0
- package/docs/policies/graphql-complexity-limit-inbound/intro.md +2 -0
- package/docs/policies/graphql-complexity-limit-inbound/schema.json +90 -0
- package/docs/policies/graphql-disable-introspection-inbound/doc.md +66 -0
- package/docs/policies/graphql-disable-introspection-inbound/intro.md +15 -0
- package/docs/policies/graphql-disable-introspection-inbound/schema.json +48 -0
- package/docs/policies/graphql-introspection-filter-outbound/doc.md +148 -0
- package/docs/policies/graphql-introspection-filter-outbound/schema.json +79 -0
- package/docs/policies/hmac-auth-inbound/doc.md +30 -0
- package/docs/policies/hmac-auth-inbound/intro.md +10 -0
- package/docs/policies/hmac-auth-inbound/policy.ts +70 -0
- package/docs/policies/hmac-auth-inbound/schema.json +53 -0
- package/docs/policies/http-deprecation-outbound/doc.md +73 -0
- package/docs/policies/http-deprecation-outbound/schema.json +83 -0
- package/docs/policies/ip-restriction-inbound/intro.md +8 -0
- package/docs/policies/ip-restriction-inbound/policy.ts +40 -0
- package/docs/policies/ip-restriction-inbound/schema.json +58 -0
- package/docs/policies/jwt-scopes-inbound/schema.json +59 -0
- package/docs/policies/ldap-auth-inbound/schema.json +56 -0
- package/docs/policies/mock-api-inbound/schema.json +72 -0
- package/docs/policies/moesif-inbound/doc.md +44 -0
- package/docs/policies/moesif-inbound/intro.md +6 -0
- package/docs/policies/moesif-inbound/schema.json +68 -0
- package/docs/policies/monetization-inbound/doc.md +87 -0
- package/docs/policies/monetization-inbound/intro.md +6 -0
- package/docs/policies/monetization-inbound/schema.json +102 -0
- package/docs/policies/mtls-auth-inbound/intro.md +6 -0
- package/docs/policies/mtls-auth-inbound/schema.json +68 -0
- package/docs/policies/okta-fga-authz-inbound/doc.md +181 -0
- package/docs/policies/okta-fga-authz-inbound/intro.md +20 -0
- package/docs/policies/okta-fga-authz-inbound/schema.json +104 -0
- package/docs/policies/okta-jwt-auth-inbound/intro.md +7 -0
- package/docs/policies/okta-jwt-auth-inbound/schema.json +74 -0
- package/docs/policies/open-id-jwt-auth-inbound/doc.md +58 -0
- package/docs/policies/open-id-jwt-auth-inbound/intro.md +30 -0
- package/docs/policies/open-id-jwt-auth-inbound/schema.json +128 -0
- package/docs/policies/openfga-authz-inbound/doc.md +207 -0
- package/docs/policies/openfga-authz-inbound/intro.md +17 -0
- package/docs/policies/openfga-authz-inbound/schema.json +191 -0
- package/docs/policies/openmeter-inbound/doc.md +163 -0
- package/docs/policies/openmeter-inbound/intro.md +18 -0
- package/docs/policies/openmeter-inbound/schema.json +183 -0
- package/docs/policies/prompt-injection-outbound/doc.md +106 -0
- package/docs/policies/prompt-injection-outbound/intro.md +4 -0
- package/docs/policies/prompt-injection-outbound/schema.json +74 -0
- package/docs/policies/propel-auth-jwt-inbound/doc.md +88 -0
- package/docs/policies/propel-auth-jwt-inbound/intro.md +4 -0
- package/docs/policies/propel-auth-jwt-inbound/schema.json +74 -0
- package/docs/policies/query-param-to-header-inbound/doc.md +70 -0
- package/docs/policies/query-param-to-header-inbound/intro.md +5 -0
- package/docs/policies/query-param-to-header-inbound/schema.json +74 -0
- package/docs/policies/quota-inbound/doc.md +235 -0
- package/docs/policies/quota-inbound/intro.md +7 -0
- package/docs/policies/quota-inbound/schema.json +133 -0
- package/docs/policies/rate-limit-inbound/doc.md +78 -0
- package/docs/policies/rate-limit-inbound/intro.md +30 -0
- package/docs/policies/rate-limit-inbound/schema.json +134 -0
- package/docs/policies/rbac-policy-inbound/intro.md +3 -0
- package/docs/policies/rbac-policy-inbound/policy.ts +42 -0
- package/docs/policies/rbac-policy-inbound/schema.json +52 -0
- package/docs/policies/readme-metrics-inbound/doc.md +1 -0
- package/docs/policies/readme-metrics-inbound/intro.md +3 -0
- package/docs/policies/readme-metrics-inbound/schema.json +84 -0
- package/docs/policies/remove-headers-inbound/schema.json +59 -0
- package/docs/policies/remove-headers-outbound/schema.json +59 -0
- package/docs/policies/remove-query-params-inbound/schema.json +59 -0
- package/docs/policies/replace-string-outbound/schema.json +69 -0
- package/docs/policies/request-size-limit-inbound/schema.json +60 -0
- package/docs/policies/request-validation-inbound/doc.md +72 -0
- package/docs/policies/request-validation-inbound/intro.md +24 -0
- package/docs/policies/request-validation-inbound/schema.json +98 -0
- package/docs/policies/require-origin-inbound/intro.md +12 -0
- package/docs/policies/require-origin-inbound/schema.json +65 -0
- package/docs/policies/secret-masking-outbound/doc.md +41 -0
- package/docs/policies/secret-masking-outbound/intro.md +13 -0
- package/docs/policies/secret-masking-outbound/schema.json +65 -0
- package/docs/policies/semantic-cache-inbound/doc.md +63 -0
- package/docs/policies/semantic-cache-inbound/intro.md +4 -0
- package/docs/policies/semantic-cache-inbound/schema.json +179 -0
- package/docs/policies/set-body-inbound/intro.md +7 -0
- package/docs/policies/set-body-inbound/schema.json +56 -0
- package/docs/policies/set-headers-inbound/doc.md +41 -0
- package/docs/policies/set-headers-inbound/intro.md +2 -0
- package/docs/policies/set-headers-inbound/schema.json +83 -0
- package/docs/policies/set-headers-outbound/schema.json +83 -0
- package/docs/policies/set-query-params-inbound/schema.json +83 -0
- package/docs/policies/set-status-outbound/schema.json +62 -0
- package/docs/policies/sleep-inbound/schema.json +56 -0
- package/docs/policies/stripe-webhook-verification-inbound/intro.md +2 -0
- package/docs/policies/stripe-webhook-verification-inbound/schema.json +60 -0
- package/docs/policies/supabase-jwt-auth-inbound/doc.md +29 -0
- package/docs/policies/supabase-jwt-auth-inbound/intro.md +12 -0
- package/docs/policies/supabase-jwt-auth-inbound/schema.json +86 -0
- package/docs/policies/transform-body-inbound/intro.md +8 -0
- package/docs/policies/transform-body-inbound/policy.ts +16 -0
- package/docs/policies/transform-body-inbound/schema.json +27 -0
- package/docs/policies/transform-body-outbound/intro.md +8 -0
- package/docs/policies/transform-body-outbound/policy.ts +19 -0
- package/docs/policies/transform-body-outbound/schema.json +27 -0
- package/docs/policies/upstream-azure-ad-service-auth-inbound/doc.md +82 -0
- package/docs/policies/upstream-azure-ad-service-auth-inbound/intro.md +20 -0
- package/docs/policies/upstream-azure-ad-service-auth-inbound/schema.json +84 -0
- package/docs/policies/upstream-firebase-admin-auth-inbound/intro.md +10 -0
- package/docs/policies/upstream-firebase-admin-auth-inbound/schema.json +68 -0
- package/docs/policies/upstream-firebase-user-auth-inbound/intro.md +2 -0
- package/docs/policies/upstream-firebase-user-auth-inbound/schema.json +113 -0
- package/docs/policies/upstream-gcp-federated-auth-inbound/doc.md +139 -0
- package/docs/policies/upstream-gcp-federated-auth-inbound/intro.md +21 -0
- package/docs/policies/upstream-gcp-federated-auth-inbound/schema.json +96 -0
- package/docs/policies/upstream-gcp-jwt-inbound/intro.md +10 -0
- package/docs/policies/upstream-gcp-jwt-inbound/schema.json +62 -0
- package/docs/policies/upstream-gcp-service-auth-inbound/doc.md +132 -0
- package/docs/policies/upstream-gcp-service-auth-inbound/intro.md +25 -0
- package/docs/policies/upstream-gcp-service-auth-inbound/schema.json +95 -0
- package/docs/policies/upstream-zuplo-jwt-auth-inbound/doc.md +213 -0
- package/docs/policies/upstream-zuplo-jwt-auth-inbound/intro.md +16 -0
- package/docs/policies/upstream-zuplo-jwt-auth-inbound/schema.json +101 -0
- package/docs/policies/validate-json-schema-inbound/doc.md +129 -0
- package/docs/policies/validate-json-schema-inbound/intro.md +7 -0
- package/docs/policies/validate-json-schema-inbound/schema.json +56 -0
- package/docs/policies/web-bot-auth-inbound/doc.md +104 -0
- package/docs/policies/web-bot-auth-inbound/intro.md +16 -0
- package/docs/policies/web-bot-auth-inbound/schema.json +76 -0
- package/docs/policies/xml-to-json-outbound/doc.md +71 -0
- package/docs/policies/xml-to-json-outbound/intro.md +4 -0
- package/docs/policies/xml-to-json-outbound/schema.json +117 -0
- package/docs/programmable-api/audit-log.mdx +74 -0
- package/docs/programmable-api/background-dispatcher.mdx +124 -0
- package/docs/programmable-api/background-loader.mdx +104 -0
- package/docs/programmable-api/cache.mdx +186 -0
- package/docs/programmable-api/compatibility-dates.mdx +201 -0
- package/docs/programmable-api/console-logging.mdx +48 -0
- package/docs/programmable-api/context-data.mdx +127 -0
- package/docs/programmable-api/custom-cors-policy.mdx +64 -0
- package/docs/programmable-api/environment.mdx +328 -0
- package/docs/programmable-api/hooks.mdx +569 -0
- package/docs/programmable-api/http-problems.mdx +385 -0
- package/docs/programmable-api/jwt-service-plugin.mdx +420 -0
- package/docs/programmable-api/logger.mdx +223 -0
- package/docs/programmable-api/memory-zone-read-through-cache.mdx +96 -0
- package/docs/programmable-api/node-modules.mdx +67 -0
- package/docs/programmable-api/not-found-handler.mdx +47 -0
- package/docs/programmable-api/oauth-protected-resource-plugin.mdx +46 -0
- package/docs/programmable-api/overview.mdx +213 -0
- package/docs/programmable-api/problem-response-formatter.mdx +183 -0
- package/docs/programmable-api/request-user.mdx +289 -0
- package/docs/programmable-api/reusing-code.mdx +26 -0
- package/docs/programmable-api/route-raw.mdx +55 -0
- package/docs/programmable-api/runtime-behaviors.mdx +25 -0
- package/docs/programmable-api/runtime-errors.mdx +246 -0
- package/docs/programmable-api/runtime-extensions.mdx +340 -0
- package/docs/programmable-api/safely-clone-a-request-or-response.mdx +57 -0
- package/docs/programmable-api/streaming-zone-cache.mdx +155 -0
- package/docs/programmable-api/web-crypto-apis.mdx +219 -0
- package/docs/programmable-api/web-standard-apis.mdx +109 -0
- package/docs/programmable-api/zone-cache.mdx +131 -0
- package/docs/programmable-api/zp-body-removed.mdx +32 -0
- package/docs/programmable-api/zuplo-context.mdx +414 -0
- package/docs/programmable-api/zuplo-id-token.mdx +90 -0
- package/docs/programmable-api/zuplo-json.mdx +91 -0
- package/docs/programmable-api/zuplo-request.mdx +200 -0
- package/docs/sample-apis.mdx +78 -0
- package/docs/self-hosted/overview.md +60 -0
- package/package.json +6 -5
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Zuplo Managed WAF
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
Zuplo's Managed WAF provides enterprise customers using our **managed edge
|
|
6
|
+
deployment** with comprehensive security protection purpose-built for API
|
|
7
|
+
Gateways. This service offers multiple layers of protection against common
|
|
8
|
+
threats, attacks, and malicious traffic without requiring you to manage complex
|
|
9
|
+
security configurations.
|
|
10
|
+
|
|
11
|
+
<EnterpriseFeature name="Zuplo Managed WAF" />
|
|
12
|
+
|
|
13
|
+
:::note
|
|
14
|
+
|
|
15
|
+
Zuplo Managed WAF is only available for customers using Zuplo's managed edge
|
|
16
|
+
deployment model. Customers using managed dedicated deployments should refer to
|
|
17
|
+
the [Managed Dedicated WAF Options](#managed-dedicated-waf-options) section
|
|
18
|
+
below.
|
|
19
|
+
|
|
20
|
+
:::
|
|
21
|
+
|
|
22
|
+
## Available Protection Rules
|
|
23
|
+
|
|
24
|
+
### OWASP Core Ruleset
|
|
25
|
+
|
|
26
|
+
Zuplo's Managed WAF includes protection based on the
|
|
27
|
+
[OWASP Core Ruleset](https://owasp.org/www-project-top-ten/), which defends
|
|
28
|
+
against the most critical web application security risks. This includes
|
|
29
|
+
protection against:
|
|
30
|
+
|
|
31
|
+
- **SQL Injection** - Prevents attackers from inserting malicious SQL code
|
|
32
|
+
- **Cross-Site Scripting (XSS)** - Blocks malicious scripts from being injected
|
|
33
|
+
into your API responses
|
|
34
|
+
- **Remote Code Execution** - Prevents attackers from executing arbitrary code
|
|
35
|
+
- **Local File Inclusion** - Blocks attempts to access local server files
|
|
36
|
+
- **Remote File Inclusion** - Prevents loading of remote malicious files
|
|
37
|
+
- **PHP Code Injection** - Blocks malicious PHP code execution attempts
|
|
38
|
+
- **HTTP Protocol Violations** - Detects and blocks malformed HTTP requests
|
|
39
|
+
- **Session Fixation** - Prevents session hijacking attempts
|
|
40
|
+
- **Scanner Detection** - Identifies and blocks automated vulnerability scanners
|
|
41
|
+
- **Metadata/Error Leakages** - Prevents exposure of sensitive system
|
|
42
|
+
information
|
|
43
|
+
|
|
44
|
+
### OFAC Sanctioned Country Blocking
|
|
45
|
+
|
|
46
|
+
Zuplo's Managed WAF includes automatic blocking of traffic from countries on the
|
|
47
|
+
[OFAC Sanctions Programs list](https://ofac.treasury.gov/sanctions-programs-and-country-information).
|
|
48
|
+
This helps ensure compliance with U.S. Treasury regulations by preventing API
|
|
49
|
+
access from sanctioned regions.
|
|
50
|
+
|
|
51
|
+
The blocked country list is automatically updated as OFAC sanctions change,
|
|
52
|
+
ensuring your API remains compliant without manual intervention.
|
|
53
|
+
|
|
54
|
+
### DDoS Protection
|
|
55
|
+
|
|
56
|
+
All Zuplo API Gateways include automatic DDoS protection that defends against:
|
|
57
|
+
|
|
58
|
+
- **Layer 3/4 Attacks** - Network and transport layer flood attacks
|
|
59
|
+
- **Layer 7 Attacks** - Application layer attacks targeting your API endpoints
|
|
60
|
+
- **Amplification Attacks** - DNS, NTP, and other amplification-based attacks
|
|
61
|
+
- **SYN Floods** - TCP connection exhaustion attempts
|
|
62
|
+
- **HTTP Floods** - High-volume HTTP request attacks
|
|
63
|
+
|
|
64
|
+
DDoS protection is always-on and automatically scales to handle attacks of any
|
|
65
|
+
size without impacting legitimate traffic.
|
|
66
|
+
|
|
67
|
+
### Zero-Day Vulnerability Protection
|
|
68
|
+
|
|
69
|
+
Zuplo's Managed WAF includes rapid response protection against emerging threats
|
|
70
|
+
and zero-day vulnerabilities. When critical vulnerabilities are discovered,
|
|
71
|
+
protection rules are automatically deployed across all protected gateways
|
|
72
|
+
without requiring any action from your team.
|
|
73
|
+
|
|
74
|
+
## Custom WAF Rules
|
|
75
|
+
|
|
76
|
+
Enterprise customers can work with Zuplo to create and enable custom WAF rules
|
|
77
|
+
tailored to their specific security requirements. Custom rules can be configured
|
|
78
|
+
to:
|
|
79
|
+
|
|
80
|
+
- Block or allow traffic based on specific patterns
|
|
81
|
+
- Create IP allowlists or blocklists
|
|
82
|
+
- Implement rate limiting for specific endpoints
|
|
83
|
+
- Add custom request validation
|
|
84
|
+
- Create geography-based access controls beyond OFAC requirements
|
|
85
|
+
- Implement custom bot detection and mitigation
|
|
86
|
+
|
|
87
|
+
To discuss custom WAF rule requirements, contact your Zuplo account team.
|
|
88
|
+
|
|
89
|
+
## Enabling Zuplo Managed WAF
|
|
90
|
+
|
|
91
|
+
Zuplo's Managed WAF is available to enterprise customers. The service can be
|
|
92
|
+
enabled with different protection levels based on your security requirements:
|
|
93
|
+
|
|
94
|
+
- **Standard Protection** - OWASP Core Rules and DDoS protection
|
|
95
|
+
- **Enhanced Protection** - Includes OFAC blocking and zero-day protection
|
|
96
|
+
- **Custom Protection** - All features plus custom rules tailored to your needs
|
|
97
|
+
|
|
98
|
+
To enable Zuplo's Managed WAF on your API Gateway, contact our
|
|
99
|
+
[sales team](mailto:sales@zuplo.com).
|
|
100
|
+
|
|
101
|
+
## Benefits
|
|
102
|
+
|
|
103
|
+
- **Edge-deployed protection** - Security rules run at the same edge locations
|
|
104
|
+
as your API, ensuring no additional latency
|
|
105
|
+
- **Automatic updates** - Protection rules are continuously updated without
|
|
106
|
+
requiring deployments
|
|
107
|
+
- **No configuration complexity** - Pre-configured rulesets based on security
|
|
108
|
+
best practices
|
|
109
|
+
- **Compliance support** - Automatic OFAC sanctions compliance
|
|
110
|
+
- **24/7 protection** - Always-on security monitoring and threat mitigation
|
|
111
|
+
|
|
112
|
+
## Complementary Zuplo Policies
|
|
113
|
+
|
|
114
|
+
In addition to Zuplo Managed WAF, you can implement many security features
|
|
115
|
+
directly using Zuplo's built-in policies:
|
|
116
|
+
|
|
117
|
+
- **IP Restriction** - Block or allow specific IP addresses with the
|
|
118
|
+
[IP Restriction policy](../policies/ip-restriction-inbound)
|
|
119
|
+
- **Geolocation Controls** - Route or block requests based on geographic
|
|
120
|
+
location using [custom policies](../guides/geolocation-backend-routing)
|
|
121
|
+
- **Rate Limiting** - Implement granular rate limits with
|
|
122
|
+
[rate limiting policies](../policies/rate-limit-inbound)
|
|
123
|
+
- **Custom Security Rules** - Create any custom security logic with
|
|
124
|
+
[custom code policies](../policies/custom-code-inbound)
|
|
125
|
+
|
|
126
|
+
These policies can be used alongside Zuplo Managed WAF for defense-in-depth
|
|
127
|
+
security or independently for specific security requirements.
|
|
128
|
+
|
|
129
|
+
## Managed Dedicated WAF Options
|
|
130
|
+
|
|
131
|
+
For customers using Zuplo's managed dedicated deployment model, WAF and DDoS
|
|
132
|
+
protection options depend on your chosen cloud provider. Unlike the standardized
|
|
133
|
+
Zuplo Managed WAF available for edge deployments, managed dedicated customers
|
|
134
|
+
can leverage the full range of security services offered by their cloud
|
|
135
|
+
platform.
|
|
136
|
+
|
|
137
|
+
For managed dedicated deployments, our team will:
|
|
138
|
+
|
|
139
|
+
1. Assess your security requirements during the deployment planning phase
|
|
140
|
+
2. Configure the appropriate WAF and DDoS services based on your cloud provider
|
|
141
|
+
3. Implement custom rules and policies specific to your use case
|
|
142
|
+
4. Provide ongoing support for security configuration updates
|
|
143
|
+
|
|
144
|
+
Contact our [sales team](mailto:sales@zuplo.com) to discuss security options for
|
|
145
|
+
your managed dedicated deployment.
|
|
146
|
+
|
|
147
|
+
## Next Steps
|
|
148
|
+
|
|
149
|
+
If you're interested in Zuplo's Managed WAF services for edge deployments or
|
|
150
|
+
need custom security configurations for managed dedicated deployments, contact
|
|
151
|
+
our [sales team](mailto:sales@zuplo.com) to discuss your requirements.
|
|
152
|
+
|
|
153
|
+
For customers requiring full control over WAF configurations, see our guides for
|
|
154
|
+
integrating with [Cloudflare WAF](./waf-ddos.mdx#cloudflare-waf--ddos),
|
|
155
|
+
[Fastly Next-Gen WAF](./waf-ddos-fastly.mdx), or
|
|
156
|
+
[AWS WAF + Shield](./waf-ddos-aws-waf-shield.mdx).
|
package/docs/ask.mdx
ADDED
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Authentication
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
There are two ways to authenticate with the Zuplo Command Line Interface (CLI):
|
|
6
|
+
using an API Key or via OAuth.
|
|
7
|
+
|
|
8
|
+
## Using OAuth
|
|
9
|
+
|
|
10
|
+
The Zuplo CLI supports OAuth authentication. To authenticate using OAuth, run
|
|
11
|
+
the following command:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
zuplo login
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Your browser will open and prompt you to log in to your Zuplo account. After
|
|
18
|
+
logging in, you will be redirected to a page that confirms your authentication.
|
|
19
|
+
You can then return to your terminal, which will now be authenticated.
|
|
20
|
+
|
|
21
|
+
## Using an API key
|
|
22
|
+
|
|
23
|
+
API key authentication is useful for CI/CD pipelines or other automated
|
|
24
|
+
workflows where interactive login isn't feasible. See the following instructions
|
|
25
|
+
to obtain and use an API key with the Zuplo CLI.
|
|
26
|
+
|
|
27
|
+
:::tip
|
|
28
|
+
|
|
29
|
+
The API key is scoped to your account. So you can use the same one for all
|
|
30
|
+
projects under the same account. If you are a member of multiple accounts, be
|
|
31
|
+
sure to select the right one.
|
|
32
|
+
|
|
33
|
+
:::
|
|
34
|
+
|
|
35
|
+
The Zuplo CLI uses API Keys to authenticate. You can find your API Key by
|
|
36
|
+
following these steps:
|
|
37
|
+
|
|
38
|
+
1. Navigate to [portal.zuplo.com](https://portal.zuplo.com) and log in.
|
|
39
|
+
2. Select the account that you want to work on.
|
|
40
|
+
3. Click the **Settings** tab and navigate to the "API Keys" section. Select an
|
|
41
|
+
existing API Key or create a new one to use with the CLI.
|
|
42
|
+
|
|
43
|
+
Most commands take an `--api-key` argument. For example, to list your available
|
|
44
|
+
Zuplo API Gateways, run:
|
|
45
|
+
|
|
46
|
+
```bash
|
|
47
|
+
zuplo list --api-key zpka_d67b7e241bb948758f415b79aa8exxxx_2efbxxxx
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
If you don't want to pass your API Key to every command, you can set it as an
|
|
51
|
+
environment variable:
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
export ZUPLO_API_KEY=zpka_d67b7e241bb948758f415b79aa8exxxx_2efbxxxx
|
|
55
|
+
zuplo list
|
|
56
|
+
```
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Zuplo CLI Network Connectivity
|
|
3
|
+
sidebar_label: Network Connectivity
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
The Zuplo CLI is used for local development as well as performing various
|
|
7
|
+
lifecycle operations with your Zuplo Project. This document describes the
|
|
8
|
+
various domain names that the CLI uses.
|
|
9
|
+
|
|
10
|
+
In order to use local development and manage your Zuplo project, you must ensure
|
|
11
|
+
that your network allows access to the following domains:
|
|
12
|
+
|
|
13
|
+
- `dev.zuplo.com` - This is Zuplo's public API. It's used for various
|
|
14
|
+
operations, such as creating a new project, deploying a project, etc.
|
|
15
|
+
- `storage.zuploedge.com` - This domain is used when uploading your project
|
|
16
|
+
assets when deploying your project.
|
|
17
|
+
|
|
18
|
+
In addition to the above, the following domains are used for local development:
|
|
19
|
+
|
|
20
|
+
- `*.zuploedge.com` - There are multiple services running on this domain that
|
|
21
|
+
are used by local development. In order to use features like API Key
|
|
22
|
+
management, rate limiting, etc. this domain must be accessible. If you must
|
|
23
|
+
allow specific domains, you can use the following list. Do note, the list
|
|
24
|
+
isn't exhaustive and may change over time:
|
|
25
|
+
- `api.zuploedge.com`
|
|
26
|
+
- `rate-limiter.zuploedge.com`
|
|
27
|
+
- `redis-proxy.zuploedge.com`
|
|
28
|
+
- `ellie.zuploedge.com`
|
|
29
|
+
- `metrics.zuploedge.com`
|
|
30
|
+
- `apikey.zuploedge.com`
|
|
31
|
+
|
|
32
|
+
## Analytics
|
|
33
|
+
|
|
34
|
+
To help improve the CLI, Zuplo collects usage and error analytics from the CLI.
|
|
35
|
+
|
|
36
|
+
If you don't wish to send analytics to Zuplo, you can set the
|
|
37
|
+
`ZUPLO_DO_NOT_TRACK` environment variable on your machine before invoking the
|
|
38
|
+
Zuplo CLI.
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Create Zuplo API
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
The `create-zuplo-api` CLI makes it easy to create a new Zuplo API using the
|
|
6
|
+
default template or an
|
|
7
|
+
[example](https://github.com/zuplo/zuplo/tree/main/examples) from a public
|
|
8
|
+
GitHub repository. It's the fastest way to get started with Zuplo.
|
|
9
|
+
|
|
10
|
+
```bash
|
|
11
|
+
npx create-zuplo-api@latest
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Options
|
|
15
|
+
|
|
16
|
+
`create-zuplo-api` comes with the following options:
|
|
17
|
+
|
|
18
|
+
- `-v, --version` - Output the current version of create-zuplo-api
|
|
19
|
+
- `--eslint` - Initialize with ESLint configuration
|
|
20
|
+
- `--prettier` - Initialize with Prettier configuration
|
|
21
|
+
- `--empty` - Initialize an empty project
|
|
22
|
+
- `--use-npm` - Explicitly tell the CLI to bootstrap the application using npm
|
|
23
|
+
- `--use-pnpm` - Explicitly tell the CLI to bootstrap the application using pnpm
|
|
24
|
+
- `--use-yarn` - Explicitly tell the CLI to bootstrap the application using Yarn
|
|
25
|
+
- `--use-bun` - Explicitly tell the CLI to bootstrap the application using Bun
|
|
26
|
+
- `--reset, --reset-preferences` - Reset the preferences saved for
|
|
27
|
+
create-zuplo-api
|
|
28
|
+
- `--git` - Whether or not to initialize the project as a git repository
|
|
29
|
+
- `--version-check` - Whether or not to check for an outdated version
|
|
30
|
+
- `--install` - Whether or not to install packages
|
|
31
|
+
- `--yes` - Use saved preferences or defaults for unprovided options
|
|
32
|
+
- `-e, --example <example-name|github-url>` - An example to bootstrap the API
|
|
33
|
+
with. You can use an example name from the official Zuplo repository or a
|
|
34
|
+
public GitHub URL. The URL can use any branch and/or subdirectory
|
|
35
|
+
- `--example-path <path-to-example>` - In a rare case, your GitHub URL might
|
|
36
|
+
contain a branch name with a slash (for example, bug/fix-1) and the path to
|
|
37
|
+
the example (for example, foo/bar). In this case, you must specify the path to
|
|
38
|
+
the example separately: `--example-path foo/bar`
|
|
39
|
+
- `-h, --help` - Display the help message
|
|
40
|
+
|
|
41
|
+
### Examples
|
|
42
|
+
|
|
43
|
+
The following examples show different ways to use `create-zuplo-api`:
|
|
44
|
+
|
|
45
|
+
#### With Default Template
|
|
46
|
+
|
|
47
|
+
```bash
|
|
48
|
+
npx create-zuplo-api@latest my-api
|
|
49
|
+
cd my-api
|
|
50
|
+
npm run dev
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
You will then be asked the following prompts:
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
What's your project named? my-api
|
|
57
|
+
Would you like to use ESLint? No / Yes
|
|
58
|
+
Would you like to use Prettier? No / Yes
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
#### With an Official Example from GitHub
|
|
62
|
+
|
|
63
|
+
To create a new Zuplo API using an official example from the Zuplo GitHub
|
|
64
|
+
repository, you specify the example name using the `--example` option.
|
|
65
|
+
|
|
66
|
+
```bash
|
|
67
|
+
npx create-zuplo-api@latest my-api --example my-example
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
You can find the list of available examples in the
|
|
71
|
+
[Zuplo examples repository](https://github.com/zuplo/zuplo/tree/main/examples).
|
|
72
|
+
|
|
73
|
+
#### With any Public GitHub Repository
|
|
74
|
+
|
|
75
|
+
To create a new Zuplo API using any public GitHub repository, you can specify
|
|
76
|
+
the repository URL using the `--example` option.
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
npx create-zuplo-api@latest my-api --example https://github.com/username/repo
|
|
80
|
+
```
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Zuplo CLI: Delete"
|
|
3
|
+
sidebar_label: delete
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<CliCommand
|
|
7
|
+
command="delete"
|
|
8
|
+
description="Deletes the Zuplo API by URL"
|
|
9
|
+
options={[
|
|
10
|
+
{
|
|
11
|
+
"name": "url",
|
|
12
|
+
"type": "string",
|
|
13
|
+
"description": "The URL of the Zuplo API to delete",
|
|
14
|
+
"required": false,
|
|
15
|
+
"deprecated": false,
|
|
16
|
+
"hidden": false
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "branch",
|
|
20
|
+
"type": "string",
|
|
21
|
+
"description": "The branch name to delete deployments for",
|
|
22
|
+
"required": false,
|
|
23
|
+
"deprecated": false,
|
|
24
|
+
"hidden": true
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "project",
|
|
28
|
+
"type": "string",
|
|
29
|
+
"description": "The project name",
|
|
30
|
+
"required": false,
|
|
31
|
+
"deprecated": false,
|
|
32
|
+
"hidden": false
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"name": "account",
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "The account name",
|
|
38
|
+
"required": false,
|
|
39
|
+
"deprecated": false,
|
|
40
|
+
"hidden": false
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"name": "self-hosted-endpoint",
|
|
44
|
+
"type": "string",
|
|
45
|
+
"description": "The endpoint of your self-hosted service to deploy to",
|
|
46
|
+
"required": false,
|
|
47
|
+
"deprecated": false,
|
|
48
|
+
"hidden": false
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"name": "wait",
|
|
52
|
+
"type": "boolean",
|
|
53
|
+
"description": "Should the CLI wait until the Zuplo API is deleted",
|
|
54
|
+
"required": false,
|
|
55
|
+
"deprecated": false,
|
|
56
|
+
"hidden": false
|
|
57
|
+
}
|
|
58
|
+
]}
|
|
59
|
+
examples={[
|
|
60
|
+
[
|
|
61
|
+
"$0 delete --url https://my-api-dev-123abc.zuplo.app",
|
|
62
|
+
"Delete a deployed environment by its URL"
|
|
63
|
+
],
|
|
64
|
+
[
|
|
65
|
+
"$0 delete --url https://my-api-dev-123abc.zuplo.app --wait",
|
|
66
|
+
"Delete an environment and wait until the deletion is complete"
|
|
67
|
+
]
|
|
68
|
+
]}
|
|
69
|
+
usage="$0 delete --url <url> [options]"
|
|
70
|
+
>
|
|
71
|
+
|
|
72
|
+
</CliCommand>
|
|
73
|
+
|
|
74
|
+
## Global options
|
|
75
|
+
|
|
76
|
+
The following global options are available for all commands:
|
|
77
|
+
|
|
78
|
+
- [`--help`](./global-options.mdx#help)
|
|
79
|
+
- [`--api-key`](./global-options.mdx#api-key)
|
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: "Zuplo CLI: Deploy"
|
|
3
|
+
sidebar_label: deploy
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
<CliCommand
|
|
7
|
+
command="deploy"
|
|
8
|
+
description="Deploys current Git branch of the current directory"
|
|
9
|
+
options={[
|
|
10
|
+
{
|
|
11
|
+
"name": "project",
|
|
12
|
+
"type": "string",
|
|
13
|
+
"description": "The project name",
|
|
14
|
+
"required": false,
|
|
15
|
+
"deprecated": false,
|
|
16
|
+
"hidden": true
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"name": "account",
|
|
20
|
+
"type": "string",
|
|
21
|
+
"description": "The account name",
|
|
22
|
+
"required": false,
|
|
23
|
+
"deprecated": false,
|
|
24
|
+
"hidden": false
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"name": "dir",
|
|
28
|
+
"type": "string",
|
|
29
|
+
"description": "The directory containing your Zuplo API",
|
|
30
|
+
"default": ".",
|
|
31
|
+
"required": false,
|
|
32
|
+
"deprecated": false,
|
|
33
|
+
"hidden": true,
|
|
34
|
+
"normalize": true
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"name": "environment",
|
|
38
|
+
"type": "string",
|
|
39
|
+
"description": "The value to use for environment name, instead of the current branch name",
|
|
40
|
+
"required": false,
|
|
41
|
+
"deprecated": false,
|
|
42
|
+
"hidden": false
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"name": "self-hosted-endpoint",
|
|
46
|
+
"type": "string",
|
|
47
|
+
"description": "The endpoint of your self-hosted service to deploy to",
|
|
48
|
+
"required": false,
|
|
49
|
+
"deprecated": false,
|
|
50
|
+
"hidden": false
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "override-repo-url",
|
|
54
|
+
"type": "string",
|
|
55
|
+
"description": "Override the repo url reference",
|
|
56
|
+
"required": false,
|
|
57
|
+
"deprecated": false,
|
|
58
|
+
"hidden": true
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"name": "mtls-certificates-dir",
|
|
62
|
+
"type": "string",
|
|
63
|
+
"description": "Directory containing mtls certificates to use for the deployment, in the hierarchy that you want them to appear in the runtime. Ex: <cert-name>/tls.crt and <cert-name>/tls.keyAll certificates must be in pem format. Only for use for self-hosted deployments.",
|
|
64
|
+
"required": false,
|
|
65
|
+
"deprecated": false,
|
|
66
|
+
"hidden": true
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
"name": "verify-remote",
|
|
70
|
+
"type": "boolean",
|
|
71
|
+
"description": "Verify that this Git repository matches the one configured on Zuplo. Use --no-verify-remote to disable.",
|
|
72
|
+
"default": false,
|
|
73
|
+
"required": false,
|
|
74
|
+
"deprecated": true,
|
|
75
|
+
"hidden": false
|
|
76
|
+
},
|
|
77
|
+
{
|
|
78
|
+
"name": "fetch-environments",
|
|
79
|
+
"type": "boolean",
|
|
80
|
+
"description": "Fetch the environments for your project from Zuplo. If this is false, then the environment will automatically be detected from the git branch.",
|
|
81
|
+
"default": false,
|
|
82
|
+
"required": false,
|
|
83
|
+
"deprecated": false,
|
|
84
|
+
"hidden": false
|
|
85
|
+
}
|
|
86
|
+
]}
|
|
87
|
+
examples={[
|
|
88
|
+
[
|
|
89
|
+
"$0 deploy",
|
|
90
|
+
"Deploy the current Git branch using the branch name as the environment name"
|
|
91
|
+
],
|
|
92
|
+
[
|
|
93
|
+
"$0 deploy --environment my-env",
|
|
94
|
+
"Override the environment name instead of using the Git branch name"
|
|
95
|
+
],
|
|
96
|
+
[
|
|
97
|
+
"$0 deploy --account my-account --project my-project --environment my-env",
|
|
98
|
+
"Explicitly specify the account, project, and environment"
|
|
99
|
+
]
|
|
100
|
+
]}
|
|
101
|
+
usage="$0 deploy [options]"
|
|
102
|
+
>
|
|
103
|
+
|
|
104
|
+
## Common use cases
|
|
105
|
+
|
|
106
|
+
The following examples assume that you are passing in your `--api-key` either as
|
|
107
|
+
an argument or through the `ZUPLO_API_KEY` environment variable.
|
|
108
|
+
|
|
109
|
+
### Deploying your gateway
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
# The following will use the current Git branch as the name of the environment
|
|
113
|
+
|
|
114
|
+
git checkout -b my-new-branch
|
|
115
|
+
zuplo deploy --project my-project
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
# If you don't wish to use the current Git branch as the name of the
|
|
120
|
+
# environment, you can specify one using --environment
|
|
121
|
+
|
|
122
|
+
zuplo deploy --project my-project --environment my-env-name
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## Polling timeout
|
|
126
|
+
|
|
127
|
+
By default, the deploy command will poll the status of the deployment every
|
|
128
|
+
second for 150 seconds. For most deployments this is enough time for the build
|
|
129
|
+
and deploy process to complete. However, if you have a large project, this may
|
|
130
|
+
not be enough time. You can increase the timeout by setting the following
|
|
131
|
+
environment variables.
|
|
132
|
+
|
|
133
|
+
- `POLL_INTERVAL` - The interval in seconds between each poll. Default is 1
|
|
134
|
+
second.
|
|
135
|
+
- `MAX_POLL_RETRIES` - The maximum number of retries before the command times
|
|
136
|
+
out. Default is 150.
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
POLL_INTERVAL=5000 MAX_POLL_RETRIES=300 zuplo deploy
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
Note, that even if the CLI times out, the deployment will continue. You can
|
|
143
|
+
check the status of the deployment in the Zuplo portal.
|
|
144
|
+
|
|
145
|
+
</CliCommand>
|
|
146
|
+
|
|
147
|
+
## Global options
|
|
148
|
+
|
|
149
|
+
The following global options are available for all commands:
|
|
150
|
+
|
|
151
|
+
- [`--help`](./global-options.mdx#help)
|
|
152
|
+
- [`--api-key`](./global-options.mdx#api-key)
|
|
153
|
+
|
|
154
|
+
## Additional resources
|
|
155
|
+
|
|
156
|
+
- [Custom CI/CD](../articles/custom-ci-cd.mdx)
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
additional-resources:
|
|
3
|
+
- name: Custom CI/CD
|
|
4
|
+
href: ../articles/custom-ci-cd.mdx
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Common use cases
|
|
8
|
+
|
|
9
|
+
The following examples assume that you are passing in your `--api-key` either as
|
|
10
|
+
an argument or through the `ZUPLO_API_KEY` environment variable.
|
|
11
|
+
|
|
12
|
+
### Deploying your gateway
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
# The following will use the current Git branch as the name of the environment
|
|
16
|
+
|
|
17
|
+
git checkout -b my-new-branch
|
|
18
|
+
zuplo deploy --project my-project
|
|
19
|
+
```
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
# If you don't wish to use the current Git branch as the name of the
|
|
23
|
+
# environment, you can specify one using --environment
|
|
24
|
+
|
|
25
|
+
zuplo deploy --project my-project --environment my-env-name
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
## Polling timeout
|
|
29
|
+
|
|
30
|
+
By default, the deploy command will poll the status of the deployment every
|
|
31
|
+
second for 150 seconds. For most deployments this is enough time for the build
|
|
32
|
+
and deploy process to complete. However, if you have a large project, this may
|
|
33
|
+
not be enough time. You can increase the timeout by setting the following
|
|
34
|
+
environment variables.
|
|
35
|
+
|
|
36
|
+
- `POLL_INTERVAL` - The interval in seconds between each poll. Default is 1
|
|
37
|
+
second.
|
|
38
|
+
- `MAX_POLL_RETRIES` - The maximum number of retries before the command times
|
|
39
|
+
out. Default is 150.
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
POLL_INTERVAL=5000 MAX_POLL_RETRIES=300 zuplo deploy
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Note, that even if the CLI times out, the deployment will continue. You can
|
|
46
|
+
check the status of the deployment in the Zuplo portal.
|