# Building connected applications · One by Lughlabs

> Start with a bounded interface and a concrete job for the user.

URL: https://onedev.jobrella.ai/docs/connected-apps/

Developers

## Building connected applications

Start with a bounded interface and a concrete job for the user.

### [Choose the smallest useful integration](https://onedev.jobrella.ai/docs/connected-apps/#choose)

Expose a supported HTTPS MCP server or an OpenAPI tool source for actions a bot should call. Use a bot webhook when an external event should start supported work inside One.

Describe the user’s goal, input data, required permissions, side effects, and failure behavior. Separate read actions from write actions, and avoid asking for broader access than the task needs.

### [Design for real operation](https://onedev.jobrella.ai/docs/connected-apps/#lifecycle)

Make write actions retry-safe where possible. Validate requests, scope access to the right user and workspace, bound response sizes, and define how credentials can be rotated or revoked.

Use fictional data and offline tests during development. An integration should fail clearly when a required provider or permission is missing.

### [Apply to the ecosystem program](https://onedev.jobrella.ai/docs/connected-apps/#program)

The integration program is application-based. There is no already-operational public marketplace or automatic listing flow. Approved contributors may receive the project access needed for an agreed contribution.

Commercial terms, review criteria, maintenance responsibilities, and distribution are agreed with Lughlabs before release.

[Propose an integration ↗](https://onedev.jobrella.ai/contribute#apply) [Webhook API ↗](https://onedev.jobrella.ai/docs/api)

[Next guide **APIs & authentication ↗**](https://onedev.jobrella.ai/docs/api)

Adapted for One from the project’s current implementation and self-hosting documentation. One builds on Rakazo; the license and attribution notices are on the [Licenses](https://onedev.jobrella.ai/licenses) page. [Upstream reference ↗](https://github.com/elie222/rakazo/blob/main/docs/self-host.md)

On this page [Choose the smallest useful integration](https://onedev.jobrella.ai/docs/connected-apps/#choose) [Design for real operation](https://onedev.jobrella.ai/docs/connected-apps/#lifecycle) [Apply to the ecosystem program](https://onedev.jobrella.ai/docs/connected-apps/#program)
