tarcisio.pacheco
10/19/2026, 1:46 PMPOST [<https://dev-airbyte.ellabs.net/api/v1/connector_builder_projects/create](https://dev-airbyte.ellabs.net/api/v1/connector_builder_projects/create)> 403 (Forbidden)kapa.ai
10/19/2026, 1:46 PM/api/v1/connector_builder to airbyte-airbyte-connector-builder-server-svc and everything else (/) to airbyte-airbyte-server-svc. Port 8001 is the server port, not 8000. [Ingress change]
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: airbyte-ingress
namespace: airbyte
spec:
ingressClassName: nginx
rules:
- host: localhost
http:
paths:
- backend:
service:
name: airbyte-airbyte-connector-builder-server-svc
port:
number: 80
path: /api/v1/connector_builder
pathType: Prefix
- backend:
service:
name: airbyte-airbyte-server-svc
port:
number: 8001
path: /
pathType: Prefix
Adjust the host and service names to match your release name. Some users found they needed a trailing slash (/api/v1/connector_builder/), so that /api/v1/connector_builder_projects/... isn't wrongly routed to the builder service. [Trailing slash]
Other things to check
• If you use abctl, it handles ingress itself, so this doesn't apply. Older abctl versions had a similar 403, fixed in abctl 0.28. [abctl fix]
• If you run in low-resource mode, the connector builder service may be disabled even though the UI is still accessible. [Low-resource mode]
Please share how you deployed 2.3.0 (abctl or Helm) and which ingress or proxy you use, so I can narrow it down. Note that your request goes to connector_builder_projects/create, which in the examples above is served by the server and not the builder service, so a general 403 from the proxy or auth layer is also possible. The knowledge sources don't confirm this. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.tarcisio.pacheco
10/19/2026, 1:49 PMkapa.ai
10/19/2026, 1:49 PMPOST /api/v1/connector_builder_projects/create is an HTTP-level rejection, so it is returned before Airbyte reads or validates your YAML. The knowledge sources don't show a manifest-version problem producing a 403. In the sources I have, 403s on the Connector Builder come from ingress or proxy configuration after upgrading to 1.7 or later. [Ingress 1.7+]
Your YAML may still need attention, but that's a separate issue
• The manifest version field is the low-code CDK version the connector was built with. Airbyte now sets it automatically to the platform's current CDK version when you test or publish a connector in the Builder. [Builder version consistency]
• The platform also runs syncs using the CDK version declared in the manifest. [Builder version consistency]
• The sources don't say whether a manifest from 0.59.1 imports cleanly into 2.3.0, or whether you need to edit it. So I can't confirm whether manual changes are required. If the import succeeds but tests fail, you may need to adjust the YAML.
Suggested next steps
1. Fix the 403 first by checking your ingress or proxy routing, as described earlier.
2. If you deploy with Helm, note that in 2.1 the connector-builder-server was replaced by the manifest server. Config keys moved from connectorBuilderServer.* to server.connectorBuilder.* in values.yaml. Your ingress may still point to the old connector-builder-server service, which no longer exists. [Manifest server change]
3. Once the 403 is gone, retry the import. If you then see manifest or validation errors, we can look at adapting the YAML. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.tarcisio.pacheco
10/19/2026, 1:55 PMkapa.ai
10/19/2026, 1:55 PMconnector_builder_projects/create).
1. Ingress routing (Helm deployments)
If you use Helm, you must configure ingress yourself, either through the chart's values.yaml or with your own ingress resource. [Ingress overview]
Option A is the chart's ingress configuration. The documented example routes / to server and /connector-builder to `connector-builder-server`:
ingress:
enabled: true
className: "nginx"
hosts:
- host: airbyte.example.com
paths:
- path: /
pathType: Prefix
backend: server
- path: /connector-builder
pathType: Prefix
backend: connector-builder-server
[Helm ingress option]
Be careful with this example. Release 2.1 removed connector-builder-server from the chart and replaced it with the manifest server. [Manifest server change] The ingress documentation I have still references connector-builder-server, so I can't confirm the correct backend for 2.3.0. Check which services exist in your cluster (kubectl get svc -n <namespace>).
Option B is your own ingress. The documented examples send / to airbyte-airbyte-server-svc on port 8001, and send the builder path to airbyte-airbyte-connector-builder-server-svc. [Manual ingress examples] If that builder service no longer exists in 2.3.0, remove or update that rule.
2. Other settings
• Set global.airbyteUrl in values.yaml to match your ingress URL. [Airbyte URL]
• Set backend timeouts on the server ingress that aren't too short. [Ingress overview]
• Since 2.1, authentication is enabled by default in new deployments. [Airbyte 2.1] The sources don't link this to your 403, but a proxy or auth layer in front of Airbyte is worth checking.
• If you installed with abctl in low-resource mode, the Connector Builder isn't accessible. Redeploy without --low-resource-mode. [Low-resource mode]
If you tell me how you deployed (abctl or Helm) and share your ingress or values configuration, I can help narrow it down. 👍 0 button 👎 0 button ℹ️ Tip: Mention @kapa.ai in the thread for follow-ups or DM the app for 1-to-1 help.tarcisio.pacheco
10/19/2026, 5:46 PMkapa.ai
10/19/2026, 5:47 PM