Skip to content

Commit 75b8dd4

Browse files
feat: Add API Proxy documentation and update overview and permissions
1 parent 1e6fe5e commit 75b8dd4

4 files changed

Lines changed: 70 additions & 14 deletions

File tree

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
---
2-
title: API Proxies
2+
title: API Proxy
33
hide_title: true
4-
sidebar_position: 7
4+
sidebar_position: 6
55
---
66

7-
# API Proxies
7+
# API Proxy
88

9-
API Proxies let your app call external APIs without exposing credentials to the browser. The proxy runs server-side — API keys, OAuth tokens, and secrets never reach the client.
9+
API Proxy components let your app call external APIs without exposing credentials to the browser. The proxy runs server-side — API keys, OAuth tokens, and secrets never reach the client.
1010

1111
This is especially useful for **client-facing components** like journey blocks, portal blocks, and capabilities that need to call external APIs.
1212

@@ -29,9 +29,9 @@ External API (https://api.example.com/products)
2929

3030
## Quick start
3131

32-
### 1. Configure a proxy in the App Builder
32+
### 1. Add an API Proxy component to your app
3333

34-
Go to your app's **Proxies** section and add a target:
34+
In the App Builder, add a new **API Proxy** component and configure:
3535

3636
- **Name** — a unique identifier (e.g. `products-api`)
3737
- **Target URL** — the base URL of the external API (must be HTTPS)

docs/apps/components/overview.md

Lines changed: 59 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -51,13 +51,25 @@ External Product Catalog components integrate third-party product catalogs into
5151
Use cases: Custom product catalogs, journey products, journey product recommendations
5252
```
5353

54-
## On the Horizon
54+
### [Custom Workflow Task](/docs/apps/components/custom-action)
5555

56-
The epilot platform continues to evolve, with new component types planned for future releases:
56+
Custom Workflow Tasks extend epilot's automation engine with your own logic. You can either call an external endpoint (webhook-style) or run TypeScript code in a sandboxed environment directly within a workflow task.
57+
58+
```
59+
Use cases: Third-party integrations, data syncing, custom processing steps in workflows
60+
```
61+
62+
### [API Proxy](/docs/apps/components/api-proxy)
63+
64+
API Proxy components let your app call external APIs without exposing credentials to the browser. The proxy runs server-side, injecting authentication and signing requests so secrets never reach the client.
65+
66+
```
67+
Use cases: Secure external API calls, OAuth integrations, credential-protected endpoints
68+
```
5769

58-
### Custom Automation Tasks
70+
## On the Horizon
5971

60-
These will allow you to define specialized tasks that can be triggered within epilot's automation workflows, enabling custom processing or integration steps in automated sequences.
72+
The epilot platform continues to evolve, with new component types planned for future releases:
6173

6274
### Custom Journey Design Elements
6375

@@ -71,7 +83,7 @@ Have an idea for a new component type? We welcome feedback from the developer co
7183
1. **Evaluate Your Need**: Consider if existing component types could address your use case
7284
2. **Define the Integration Point**: Identify where in epilot your component would integrate
7385
3. **Describe the Value**: Outline the problems it would solve for epilot users
74-
4. **Submit a Request**: [Contact us](https://developers.epilot.cloud/contact) with your proposal
86+
4. **Submit a Request**: [Contact us](mailto:support@epilot.cloud) with your proposal
7587

7688
Our product team regularly reviews component requests and prioritizes them based on community interest and platform direction.
7789

@@ -83,7 +95,28 @@ Learn more about [App Surfaces](/docs/apps/app-surfaces) to understand how your
8395

8496
## Building Your First Component
8597

86-
Ready to create your own component? Each component type has specific requirements and capabilities, but they all follow similar development patterns.
98+
Ready to create your own component? The fastest way to get started is with the **epilot CLI**:
99+
100+
```bash
101+
npx epilot app init my-app
102+
npx epilot app add-component my-block --type CUSTOM_JOURNEY_BLOCK
103+
```
104+
105+
The CLI manages the full app lifecycle — from scaffolding and validation to deployment and version management. Key commands:
106+
107+
| Command | Description |
108+
| --- | --- |
109+
| `epilot app init` | Scaffold a new app project with `manifest.json` |
110+
| `epilot app add-component` | Add a component from a starter template |
111+
| `epilot app validate` | Validate your manifest before deploying |
112+
| `epilot app deploy` | Deploy your app to epilot |
113+
| `epilot app versions` | List all versions of your app |
114+
| `epilot app review` | Submit a version for public review |
115+
| `epilot app export` | Export an existing app as `manifest.json` |
116+
117+
See the [CLI documentation](/docs/cli/commands/app) for the full command reference.
118+
119+
Each component type also has a ready-to-use starter template available in the [app-templates](https://github.com/epilot-dev/app-templates) repository.
87120

88121
<div className="container">
89122
<div className="row">
@@ -116,6 +149,26 @@ Ready to create your own component? Each component type has specific requirement
116149
</div>
117150
</div>
118151
</div>
152+
<div className="col col--6">
153+
<div className="card" style={{height: '100%'}}>
154+
<div className="card__body">
155+
<h3>Custom Workflow Task</h3>
156+
<p>Run custom logic in epilot's automation workflows</p>
157+
<a href="/docs/apps/components/custom-action" className="button button--secondary button--block">Start Building</a>
158+
</div>
159+
</div>
160+
</div>
161+
</div>
162+
<div className="row" style={{marginTop: '1.5rem'}}>
163+
<div className="col col--6">
164+
<div className="card" style={{height: '100%'}}>
165+
<div className="card__body">
166+
<h3>API Proxy</h3>
167+
<p>Call external APIs securely without exposing credentials</p>
168+
<a href="/docs/apps/components/api-proxy" className="button button--secondary button--block">Start Building</a>
169+
</div>
170+
</div>
171+
</div>
119172
</div>
120173
</div>
121174

docs/apps/configure-permissions.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,5 @@ Check the specific component documentation for details on how to access permissi
4444
|---------------------------|-----------------------|
4545
| Custom Journey Block | No |
4646
| Portal Extension | No |
47-
| Custom Action | Yes |
47+
| Custom Action | Yes |
48+
| API Proxy | No |

docs/apps/overview.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,9 @@ See the [App Components](/docs/apps/components/overview) section for detailed in
3434

3535
**External Product Catalog**: Components that integrate third-party product catalogs into epilot.
3636

37-
**Custom Workflow Task**: Either call an external endpoint or run your own code in a sandboxed workflow task
37+
**Custom Workflow Task**: Either call an external endpoint or run your own TypeScript code in a sandboxed workflow task.
38+
39+
**API Proxy**: Call external APIs server-side without exposing credentials to the browser. Supports custom headers, bearer tokens, and OAuth 2.0.
3840

3941
### Coming Soon
4042

0 commit comments

Comments
 (0)