Connector hosts, secrets and data access

An ANY API connector built with the AI assistant reaches outside in three ways: it calls the API's hosts, it signs in with secrets you provide, and a data access grant can let it read rows from a Lake or Warehouse object. People decide all three boundaries, and the assistant works within them. This page covers how each boundary behaves; the building itself is on Build an ANY API connector, and the wizard that creates the connector is on Connect any API.

Approve the hosts a connector may call

Enter secrets in the connection form

Grant access to table rows

A data access grant lets the recipe read the rows of one Lake or Warehouse object, so the API can be asked about data that the connector could not otherwise see.

Questions, answered

Can the assistant call my API before I approve a host?

Partly. Until the first host has ever been approved, it can research the API with read-only GET requests. That window closes for good at the first approval; from then on, every request goes to an approved host.

Why does a host need approval again after I change the connection settings?

Because approvals match exact entries. Changing the settings recomputes the host list, and a host that changed is treated as new: approve it again. Entries are lower case, without a scheme or path, and carry the port only when it is not the default, like api.example.com:8443.

Who approves a host?

A person, through the product; the assistant never approves one on its own. When the connector has data access grants, the decision is a card that only an administrator can confirm, and it waits in every mode, because the new host will also receive the granted columns.

Why can an address that works on my network not be approved?

Addresses like loopback, link-local and cloud-metadata ones, and anything internal to the platform, are refused by design. The refusal is final: the assistant does not look for another route, another encoding or another tool to reach them.

Where do I enter the secrets the connector needs?

In the connection form, under Connection, in the field the assistant names. It continues once the field shows as set, and it can see which fields are set, never the values themselves.

Can I give the assistant my API key in the chat instead?

No. The assistant never asks for a secret value in the chat, and it will not repeat or use one you paste; enter it in the connection form. If it warns you that a credential reached it anyway, treat that value as exposed and replace it.

Will a value like REPLACE_ME do for now?

No. Placeholders such as REPLACE_ME, TODO, xxx and test are never accepted as a secret, and a missing credential is never filled with one.

What do the granted rows look like to the recipe?

They arrive as a stream named grant_<name>, which the recipe uses to drive its requests. Only an Active grant feeds a load; a broken grant stops its loads until it resolves again, and the grant stream is never loaded into the Lake on its own.

How expensive is a grant-driven run?

It depends on the rows and the batch: the requests per run are the row count divided by the batch. The assistant estimates this and warns you above 10,000 requests or about an hour per run. Rows are read in batches or row by row, never both.

What happens if a granted table is bigger than its row cap?

The run fails before it sends anything, so nothing is requested from the API.

Does a grant send personal data to my API?

Columns marked as personal data are sent as platform tokens, never as raw values. Every other granted column is sent as it is, so grant only the columns the API needs; the full rules are on Personal data in AI work.