> For the complete documentation index, see [llms.txt](https://codemash.gitbook.io/codemash/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://codemash.gitbook.io/codemash/cloud/code.md).

# Code

Connect serverless code providers and ready-made marketplace functions to a project — the Code module.

The **Code** module is where a project keeps its custom code: the serverless providers your own functions run on (AWS Lambda, Azure Functions, Google Cloud Functions) and the **Code Marketplace**, a catalog of ready-made functions from vendors such as Slack or Salesforce and from Norbix itself (Database, Web, MCP). You turn it on per project.

{% hint style="warning" %}
**What works today (checked on 2026-10-06).** You can turn the module on and off, connect, test, disable and delete the three providers, browse the marketplace and configure an installed connection. Norbix cannot run code yet: the providers answer *Provider '…' is not wired up yet*, standalone functions were removed from the server, and calling a marketplace function fails with an internal error. Each page below says what is missing and shows the code way where there is one.
{% endhint %}

## Enable the module

Open a project and choose **Code** in the left menu. While the module is off — the normal state of a new project — Cloud shows the **Norbix Code** page; press **ENABLE**. You need a project role that can manage modules (for example **Owner** or **Administrator**).

<figure><img src="https://712692422-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHy372bqsaex2cqS3ikhL%2Fuploads%2Fgit-blob-a80563083318e485d281c78ffa10769fe610bf23%2Fenable-1.png?alt=media" alt="The Norbix Code enable page: Integrate custom code in your backend, three benefits and the ENABLE button"><figcaption><p>Code → enable page, shown while the module is off.</p></figcaption></figure>

After **ENABLE**, Cloud opens **Code Functions** and shows the Code menu: **Functions**, **Integrations** and **Settings**. The **Code Marketplace** has no menu item; open it with **Find in Marketplace** on the Functions page.

<figure><img src="https://712692422-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHy372bqsaex2cqS3ikhL%2Fuploads%2Fgit-blob-234f1d0569c5491c92dbd91e09c6a20c9b578dd8%2Fenable-2.png?alt=media" alt="The Code Functions page right after ENABLE, with the buttons Reload, Find in Marketplace and Add New and the Code menu"><figcaption><p>After ENABLE: Code Functions and the Code menu.</p></figcaption></figure>

The **Learn more →** link on the enable page points at an old address that does not open; this page is the documentation. To turn the module off, see [Settings](/codemash/cloud/code/settings.md).

## Module map

| Screen                                               | What it is for                                                                                                                                                                                                                                                                                                  |
| ---------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Functions](/codemash/cloud/code/functions.md)       | The old list of your own functions. It is always empty: [create](/codemash/cloud/code/functions/new.md), [edit](/codemash/cloud/code/functions/edit.md) and [delete](/codemash/cloud/code/functions/delete.md) have no working screen.                                                                          |
| [Marketplace](/codemash/cloud/code/marketplace.md)   | Ready-made functions to install: [enable and configure a connection](/codemash/cloud/code/marketplace/connection.md), [add and call a function](/codemash/cloud/code/marketplace/function.md).                                                                                                                  |
| [Integrations](/codemash/cloud/code/integrations.md) | The serverless providers your functions run on: [connect a provider](/codemash/cloud/code/integrations/providers.md), [test](/codemash/cloud/code/integrations/test.md), [set as default](/codemash/cloud/code/integrations/set-default.md), [disable or delete](/codemash/cloud/code/integrations/disable.md). |
| [Settings](/codemash/cloud/code/settings.md)         | Turn the module off for the project.                                                                                                                                                                                                                                                                            |

## Your first function

1. [Enable the module](#enable-the-module) — **Code → ENABLE**.
2. [Pick a marketplace listing](/codemash/cloud/code/marketplace.md) — for example **Norbix Database**, which needs no keys.
3. [Install the connection](/codemash/cloud/code/marketplace/connection.md) — Cloud refuses this today; the page shows the code way.
4. [Add a function and make a test call](/codemash/cloud/code/marketplace/function.md) — for example **Find records** as `Find books`; the test call fails today with an internal error.

To run your own code on AWS, Azure or Google instead, [connect a provider](/codemash/cloud/code/integrations/providers.md) first.

## Use it from code

Every **Do it from code** block in the Code pages uses this client. Install `@norbix.ai/ts` (see [SDK install](/codemash/sdks/install.md)) and set `NORBIX_API_KEY` to a project API key.

```ts
import { Norbix } from '@norbix.ai/ts';

const projectId = 'pr_34LHsiO8bArRioS07hHLf5';
const norbix = new Norbix({ projectId }); // the key comes from NORBIX_API_KEY

await norbix.hub.code.enableCode();
const { list } = await norbix.hub.code.getCodeIntegrations();
console.log(list.items.map((i) => `${i.viewId} ${i.integrationName} ${i.provider} enabled=${i.isEnabled}`));
```

The CLI lines use the generic `norbix hub …` commands of `@norbix.ai/cli` (signed in with `norbix login`, project id in `NORBIX_PROJECT_ID`):

```sh
norbix hub code enable
```

{% hint style="info" %}
The client sends the project id with every call (the `norbix-project-id` header), so the requests do not repeat it. The CLI does the same with the project of `norbix login --project …`, `norbix config set projectId …` or `NORBIX_PROJECT_ID`.
{% endhint %}

## Related

[Integrations concept](/codemash/cloud/concepts/integrations.md) · [Modules](/codemash/cloud/concepts/modules.md) · [Permissions](/codemash/cloud/concepts/permissions.md) · [SDK](/codemash/sdks/code.md) · [CLI](/codemash/cli/reference/any-endpoint.md) · [API](/codemash/api-reference/code.md)
