Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion cli/commands/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ kbc help local create row
| [kbc remote table detail](/cli/commands/remote/table/detail/) | Print [table](https://help.keboola.com/storage/tables/) details. |
| [kbc remote table import](/cli/commands/remote/table/import/) | Import data to a [table](https://help.keboola.com/storage/tables/) from a [file](https://help.keboola.com/storage/files/). |
| [kbc remote table unload](/cli/commands/remote/table/unload/) | Unload a [table](https://help.keboola.com/storage/tables/) into a [file](https://help.keboola.com/storage/files/). |
| [kbc remote workspace](/cli/commands/remote/create/) | Manage workspaces in the project. |
| [kbc remote workspace](/cli/commands/remote/workspace/) | Manage workspaces in the project. |
| [kbc remote workspace create](/cli/commands/remote/workspace/create/) | Create a workspace in the project. |
| [kbc remote workspace delete](/cli/commands/remote/workspace/delete/) | Delete a workspace in the project. |
| [kbc remote workspace detail](/cli/commands/remote/workspace/detail/) | Print workspace details and credentials. |
Expand Down
2 changes: 1 addition & 1 deletion cli/commands/local/create/config/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -68,4 +68,4 @@ Created new config "main/extractor/keboola.ex-db-mysql/invoices"

- [All Commands](/cli/commands/)
- [Create Configuration Row](/cli/commands/local/create/row/)
- [Create Branch](/cli/commands/remote/create/brabch/)
- [Create Branch](/cli/commands/remote/create/branch/)
2 changes: 1 addition & 1 deletion cli/commands/local/create/row/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,4 +62,4 @@ Created new config row "main/extractor/keboola.ex-db-mysql/invoices/rows/custome

- [All Commands](/cli/commands/)
- [Create Configuration](/cli/commands/local/create/config/)
- [Create Branch](/cli/commands/remote/create/brabch/)
- [Create Branch](/cli/commands/remote/create/branch/)
2 changes: 1 addition & 1 deletion cli/commands/remote/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ kbc remote [command]
| [kbc remote table detail](/cli/commands/remote/table/detail/) | Print [table](https://help.keboola.com/storage/tables/) details. |
| [kbc remote table import](/cli/commands/remote/table/import/) | Import data to a [table](https://help.keboola.com/storage/tables/) from a [file](https://help.keboola.com/storage/files/). |
| [kbc remote table unload](/cli/commands/remote/table/unload/) | Unload a [table](https://help.keboola.com/storage/tables/) into a [file](https://help.keboola.com/storage/files/). |
| [kbc remote workspace](/cli/commands/remote/create/) | Manage workspaces in the project. |
| [kbc remote workspace](/cli/commands/remote/workspace/) | Manage workspaces in the project. |
| [kbc remote workspace create](/cli/commands/remote/workspace/create/) | Create a workspace in the project. |
| [kbc remote workspace delete](/cli/commands/remote/workspace/delete/) | Delete a workspace in the project. |
| [kbc remote workspace detail](/cli/commands/remote/workspace/detail/) | Print workspace details and credentials. |
Expand Down
2 changes: 1 addition & 1 deletion cli/commands/sync/diff/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ kbc d [flags]
## Examples

When you change a configuration option of one component (e.g., an output table for a sheet
in the [Google Drive extractor](/components/extractors/storage/google-drive/)), the output will look like this:
in the [Google Drive extractor](https://help.keboola.com/components/extractors/storage/google-drive/)), the output will look like this:

```
➜ kbc diff
Expand Down
6 changes: 3 additions & 3 deletions cli/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ Keboola CLI can be used, for example, to:
- Apply all changes back to the project in a moment. See the [push](/cli/commands/sync/push/) command.
- Manage project history in a git repository.
- Automate the whole process in a CI/CD pipeline. See [GitHub Integration](/cli/github-integration/). Use the `--skip-workflows` flag during initialization to avoid interactive prompts in automated environments.
- Merge and rebase Keboola Branches via Git. Learn more in the [Example Use Cases]() section.
- Distribute a single project definition into multiple projects. See the [Example Use Cases]() section.
- Multi-stage (and multi-project) environment management via Git. See the [Example Use Cases]() section.
- Merge and rebase Keboola Branches via Git. Learn more in the [Example Use Cases](/cli/devops-use-cases/) section.
- Distribute a single project definition into multiple projects. See the [Example Use Cases](/cli/devops-use-cases/) section.
- Multi-stage (and multi-project) environment management via Git. See the [Example Use Cases](/cli/devops-use-cases/) section.
- Locally develop and test your dbt transformation code.

## Subsystems
Expand Down
2 changes: 1 addition & 1 deletion cli/structure/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ For example, transformations are represented by native files. A more detailed de

## Branches

The tool works with [development branches](/components/branches/) by default. You can specify which branches from the project
The tool works with [development branches](https://help.keboola.com/components/branches/) by default. You can specify which branches from the project
you want to work with locally during the [init](/cli/commands/sync/init/) command. Alternatively, you can ignore the development branches concept and work exclusively
with the main branch. However, note that all configurations will then be stored in the `main` directory.

Expand Down
4 changes: 2 additions & 2 deletions extend/common-interface/config-file.md
Original file line number Diff line number Diff line change
Expand Up @@ -250,15 +250,15 @@ A sample configuration file might look like this:
"source": "destination.csv",
"destination": "out.c-main.test",
"incremental": false,
"colummns": [],
"columns": [],
"primary_key": [],
"delete_where": [],
"delimiter": ",",
"enclosure": "\""
},
{
"source": "write-alwayss.csv",
"destination": "out.c-main.output-even-on-error"
"destination": "out.c-main.output-even-on-error",
"write_always": true
}
],
Expand Down
2 changes: 1 addition & 1 deletion extend/common-interface/development-branches.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ components that modify external resources (e.g., database writers) and those tha

### Is a Component Executed in a Branch Context?

When the [Job Queue](/extend/job-queue/) executes a job in a branch, it sets the [`KBC_BRANCHID` environment variable](/extend/common-interface/environment/#environment-variables) to the current branch ID, which is unique accross the stack.
When the [Job Queue](/extend/job-queue/) executes a job in a branch, it sets the [`KBC_BRANCHID` environment variable](/extend/common-interface/environment/#environment-variables) to the current branch ID, which is unique across the stack.

Typically, the fact that a component is executed in a branch is not very important to the component itself. It behaves the same way, and the Keboola job runner does all the heavy lifting.

Expand Down
15 changes: 7 additions & 8 deletions extend/common-interface/folders.md
Original file line number Diff line number Diff line change
Expand Up @@ -156,8 +156,7 @@ will contain only manifest files, extended with an additional

*Note: this is a preview feature and may change considerably in the future.*

The component may also exchange data with Storage [using Workspaces](https://keboola.docs.apiary.
io/#reference/workspaces).
The component may also exchange data with Storage [using Workspaces](https://keboola.docs.apiary.io/#reference/workspaces).
This mode of operation can be enabled by setting the **Staging storage input** or **Staging storage output** option
to **Workspace Snowflake**, **Workspace Redshift**, or **Workspace Synapse**. A workspace is an isolated database to
which data are loaded before the component job is run and unloaded when the job finishes. The workspace is created just before the job starts and is
Expand Down Expand Up @@ -197,7 +196,7 @@ Notice that some of the values might be empty for different workspace backends (
They will be always present, though.

When exchanging data via workspace, there are couple of differences to loading data into files:
- Loading to workspaces supports only [storage tables](/storage/tables/), [storage files](/storage/file-uploads/)
- Loading to workspaces supports only [storage tables](https://help.keboola.com/storage/tables/), [storage files](https://help.keboola.com/storage/files/)
are always saved to the directory structure.
- The `days` attribute is not supported for filtering table, use `changed_since` instead.
- [Automatic Incremental Processing](https://help.keboola.com/storage/tables/#automatic-incremental-processing) (also known as Adaptive Input Mapping) is not supported.
Expand All @@ -217,7 +216,7 @@ and unloaded from when the job finishes (when staging storage output is set).
The workspace is created just before the job starts and is deleted when the job is terminated.

If this option is enabled, the data and the manifests will be loaded to the azure storage blob container under the
data folder similarly to how it does when using the default [local filesystem](extend/common-interface/folders/#root-folder-data).
data folder similarly to how it does when using the default [local filesystem](/extend/common-interface/folders/#root-folder-data).

### Files
Files are loaded into the workspace as `[file name]/[file ID]`. For example, if a file 'test.txt' with ID '12345' is in
Expand All @@ -229,17 +228,17 @@ the input mapping then the file will appear in the storage blob container with U
Synapse only exports tables as sliced files.
So for example, if you set as table input mapping the table `in.c-main.my-input` as source and `my-input.csv` as
destination then in the ABS workspace you will find it with the following structure:
- [containerName]/data/in/tables/my-inpupt.csv/[random identifier1].txt
- [containerName]/data/in/tables/my-inpupt.csv/[random identifier2].txt
- [containerName]/data/in/tables/my-inpupt.csv/[random identifier3].txt
- [containerName]/data/in/tables/my-input.csv/[random identifier1].txt
- [containerName]/data/in/tables/my-input.csv/[random identifier2].txt
- [containerName]/data/in/tables/my-input.csv/[random identifier3].txt

### Mappings

To sum up, below is a sample storage configuration and where the files are written from and to:

| Direction | Source | Destination |
| --- | --- | --- |
| input | in.c-main.my-table-from-abs-workspace | Many slices like `[abs-workspace-root]/data/in/tables/my-inpupt-table.csv/[random identifier].txt` |
| input | in.c-main.my-table-from-abs-workspace | Many slices like `[abs-workspace-root]/data/in/tables/my-input-table.csv/[random identifier].txt` |
| input | file with tag `my-input-files` named `input-file.txt` | `[abs-workspace-root]/data/in/files/test.txt/12345` |
| output | `[abs-workspace-root]/data/out/tables/my-output-table.csv` | out.c-main.my-table-from-abs-workspace |
| output | `[abs-workspace-root]/data/out/files/my-file.txt` | file `my-file.txt` with tag `uploaded-from-abs-workspace` |
Expand Down
6 changes: 3 additions & 3 deletions extend/component/running/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ In this guide, we will use `/user/johndoe/data/` as the **host path** containing
[data folder](/extend/common-interface/folders/).

You can also run your component in your own environment. In that case, set the `KBC_DATADIR` environment
variable to point to the data folder. With this approach, you loose the advantage of the properly defined
variable to point to the data folder. With this approach, you lose the advantage of the properly defined
environment, but in some cases, it may be a nice shortcut.

For more details on how to develop a component, see the corresponding [tutorial](/extend/component/tutorial/),
Expand Down Expand Up @@ -93,7 +93,7 @@ This means you can test your unreleased image on real configurations in real pro
any users using that component. See the [tutorial](/extend/component/tutorial/debugging/#running-specific-tags)
for instructions.

## Preparing Data folder
## Preparing the Data folder
In order to run and debug a Keboola component (including [R](https://help.keboola.com/transformations/r/) and [Python](https://help.keboola.com/transformations/python/) Transformations)
on your own computer, you need to manually supply the component with
a [data folder and configuration file](/extend/common-interface/). The above mentioned
Expand Down Expand Up @@ -199,7 +199,7 @@ the component locally. You should now be able to run the component with it:
docker run --volume=/user/johndoe/data/:/data --memory=4000m --net=bridge -e KBC_RUNID=123456789 -e KBC_PROJECTID=123 -e KBC_DATADIR=/data/ -e KBC_CONFIGID=test-123 -i -t --entrypoint=/bin/bash quay.io/keboola/keboola-test.ex-docs-tutorial


## Running Component
## Running a Component
If you want to run a component during development, it is the easiest to build it locally and
[run the built version](/extend/component/tutorial/debugging/). If you want to run a production code component, you
need to do a couple of things. Let's assume you want to run the `keboola-test.ex-docs-tutorial` component and you have
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ situations can arise:

- Most common --- API returns an **empty page**; scrolling with
[`pagenum`](/extend/generic-extractor/configuration/api/pagination/pagenum/) and
[`offset` methods](/extend/generic-extractor/configuration/api/pagination/pagenum/) will stop, and other methods will probably stop
[`offset` methods](/extend/generic-extractor/configuration/api/pagination/offset/) will stop, and other methods will probably stop
too (depends on how empty the response is).
- Less common --- API returns an **error** --- in this case a different stopping condition such as [`nextFlag`](#next-page-flag) or
[`forceStop`](#force-stop) has to be used.
Expand Down
2 changes: 1 addition & 1 deletion extend/generic-extractor/configuration/config/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ the extractor is [published](/extend/generic-extractor/publish/) as a standalone
[Default Bucket](/extend/common-interface/folders/#default-bucket) option.

The following configuration will make Generic Extractor put all extracted tables in the `ge-tutorial` bucket
(the names of the tables are defined by the [`dataType`](/extend/generic-extractor/configuration/config/jobs/#dataType) setting):
(the names of the tables are defined by the [`dataType`](/extend/generic-extractor/configuration/config/jobs/#data-type) setting):

{% highlight json %}
{
Expand Down
2 changes: 1 addition & 1 deletion extend/generic-extractor/functions.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ a configuration value in three possible ways:
{% highlight json %}
{
...,
"baseUrl": "http://example.com/
"baseUrl": "http://example.com/"
}
{% endhighlight %}

Expand Down
4 changes: 2 additions & 2 deletions extend/generic-extractor/tutorial/basic.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ have its documentation at hand. You also need the

## Configuration
Generic Extractor configuration is written in [JSON format](/extend/generic-extractor/tutorial/json/)
and comprises [several sections](/extend/generic-extractor/configuration/#configuration-sections) (a
and comprises [several sections](/extend/generic-extractor/configuration/#json-configuration-sections) (a
[configuration map](/extend/generic-extractor/map/) for navigation is available).

A [user interface](/extend/generic-extractor/configuration/#user-interface) is available that can help you with the configuration
Expand Down Expand Up @@ -192,7 +192,7 @@ The resulting JSON configuration will look like this:
"authentication": {
"type": "basic"
}
}
},
"config": {
"username": "dummy",
"#password": "c40xxxxxxxxxxxxxxxxxxxxxxxxxxxxx-us13",
Expand Down
2 changes: 1 addition & 1 deletion extend/generic-writer/configuration/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ The data can be sent in two ways:
contexts, e.g. passwords. Supports dynamic functions.
- [**request_parameters**](/extend/generic-writer/configuration/#request-parameters) --- [REQUIRED] HTTP parameters of the request
- [**method**](/extend/generic-writer/configuration/#method) --- [REQUIRED] defines the HTTP method of the requests.
- [**endpoint_path**](/extend/generic-writer/configuration/#enpoint-path) --- [REQUIRED] relative path of the endpoint.
- [**endpoint_path**](/extend/generic-writer/configuration/#endpoint-path) --- [REQUIRED] relative path of the endpoint.
- [**query_parameters**](/extend/generic-writer/configuration/#query-parameters) --- query parameters sent with each
request
- [**headers**](/extend/generic-writer/configuration/#headers) --- headers sent with each request
Expand Down
2 changes: 1 addition & 1 deletion extend/generic-writer/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ Or sending data with different user parameters that are present in the input tab

There are variety of use-cases for the generic writer. You may create, update or even delete objects via RESTful API or just trigger
simple webhooks by sending GET requests to specified endpoints or send notifications to slack. The setup is quite straightforward and it
allows you to leverage secure [encripted parameters](overview/encryption/) and dynamic functions.
allows you to leverage secure [encrypted parameters](/overview/encryption/) and dynamic functions.

**The typical use cases are:**

Expand Down
2 changes: 1 addition & 1 deletion integrate/jobs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@ Jobs may be nested without limits. The parent-child relationship itself is a wea
special outside of UI grouping and the function that terminating a parent job issues a termination request to all its children.
Running a job as a child of another job does not by itself cause the parent to wait for child
completion or any other added functionality.
Such functionality is implemented in specific components (e.g. Orchestrator) or for specific [job types](todo).
Such functionality is implemented in specific components (e.g. Orchestrator) or for specific [job types](/integrate/jobs/#job-type).

### Job Configuration
To create a job, you must provide the [configuration](https://help.keboola.com/components/) to run. A configuration is always tied to a specific
Expand Down
4 changes: 2 additions & 2 deletions integrate/mcp.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ The Keboola MCP Server supports several core concepts of the Model Context Proto

## Tool Authorization and Access Control

When connecting to the [Keboola MCP Server](/ai/mcp-server/) via the Streamable HTTP transport, you can control which tools are available to clients using HTTP headers. This is useful for restricting AI agent capabilities, enforcing compliance policies, or providing customer-specific access controls.
When connecting to the [Keboola MCP Server](https://help.keboola.com/ai/mcp-server/) via the Streamable HTTP transport, you can control which tools are available to clients using HTTP headers. This is useful for restricting AI agent capabilities, enforcing compliance policies, or providing customer-specific access controls.

<div class="clearfix"></div><div class="alert alert-info">
<b>Note:</b> Tool authorization headers only apply to HTTP-based transports. They are not available when using the <code>stdio</code> transport for local execution.
Expand Down Expand Up @@ -279,7 +279,7 @@ you can connect to Keboola's MCP Server by following these steps:
At this moment, <b>if you wish to control permissions more granularly</b>, it is recommended to use the local deployment and specify your own <b>Storage Token</b> and <b>Workspace Schema.</b>
</div>
1. Obtain the remote server URL of the stack `https://mcp.<YOUR_REGION>.keboola.com/mcp`.
- You can find the URL in your Keboola [project settings](/management/project/), e.g. navigate to `Users & Settings` > `MCP Server`
- You can find the URL in your Keboola [project settings](https://help.keboola.com/management/project/), e.g. navigate to `Users & Settings` > `MCP Server`
- In there you can also find specific instructions for various clients.
2. Copy the server URL and paste it into your AI assistant's settings.
3. Once you save the settings and refresh your AI assistant, you will be prompted to authenticate with your Keboola account and select the project you want to connect to.
Expand Down
Loading
Loading