What AI assistants can do
An AI assistant connected to a Spatibase project can look through your content, find gaps, prepare draft entries and, only if you allow it, publish and delete. This page explains what each role and each key lets an assistant do, how you stay in control, what to ask it, and what to do when something does not work. To connect one first, see Connect an AI assistant.
What decides what an assistant can do?
What an assistant can do depends only on how it connected: with your account, with a key, or without anything. The assistant only sees the tools its connection allows, so a read-only assistant does not even see the tools for changing content.
There are five permission tiers:
| Tier | What it allows |
|---|---|
| Read | Look through published content: entries, groups, types and map data, exactly what the Content Delivery API shows. Also get the project’s typed API description (OpenAPI), so a coding assistant writes code that matches your types and fields. |
| Edit drafts | See and change drafts, create draft entries, import rows as drafts, import a public dataset into this project as drafts (whole or for one country or region; it adds the dataset’s types and fields if they’re missing, never changes yours), upload images and files to the media library. Nothing goes live until a draft that uses them is published. |
| Publish | Mark drafts Ready to publish, publish the project, unpublish entries, go back to an earlier version, import rows and publish them in the same step (publish: true), and change which entries are in a group and in what order. Nothing but going back is live at once: marking ready, unpublishing and group changes wait for the next publish. Every connection that can edit can also list the versions and see what each one changed. |
| Delete | Delete entries and files, and restore them from the trash (an entry comes back as a draft). A live entry is deleted at the next publish; anything else goes to the trash, where it waits 30 days, at once. |
| Change the content model | Create types and elements (fields), assign elements to types, create and edit groups, and change project settings. Always previewed first. |
What can a signed-in assistant do for each role?
An assistant signed in with your account acts for you, so it can never do more than your role allows. On the consent screen you choose which of those tiers it gets.
| Role | Tiers it can get | Selected at first |
|---|---|---|
| Owner | Read, Edit drafts, Publish, Delete, Change the content model | Read, Edit drafts |
| Editor | Read, Edit drafts, Publish, Delete (never the content model, settings, keys or members) | Read, Edit drafts |
| Developer | Read only | Read |
If your role changes, your assistants change with it straight away: an owner who becomes an editor loses the content-model tier on every connected assistant. Roles are explained in Members and roles.
What can an assistant with a key do?
Keys are created by owners on the project’s API page (see Access and API keys). A key gives the same access to whoever uses it, not to one person.
| Credential | Tiers |
|---|---|
| No key, public project | Read |
| No key, private project | Nothing: the assistant must sign in or use a key |
Key For a website or app (sb_live_…) |
Read |
Key For an AI assistant (sb_edit_…) |
Read, Edit drafts |
| AI assistant key with Allow publishing | + Publish |
| AI assistant key with Allow deleting | + Delete |
Allow publishing and Allow deleting are off by default. Owners switch them on when creating the key or later with Change next to the key; turning one on asks for confirmation. Turning one off is immediate, and developers can do that too. A key never gets the content-model tier: only a signed-in owner can allow that.
How do I stay in control?
You stay in charge of what goes live. Spatibase gives you these safeguards:
- Drafts first. Unless you allowed publishing, nothing an assistant does reaches your website, app or map. It works on drafts that a person marks ready and publishes. Edit drafts alone cannot even mark an entry ready: that takes the Publish tier.
- Previews before big changes. Bulk updates, imports, marking ready, publishing, unpublishing, going back to a version and deleting first run as a dry run that shows what would happen. Nothing is written until the assistant confirms. Content-model changes always return a preview first.
- Conflict checks. When the assistant updates an entry, only the fields it sends change, and it can refuse to write if someone saved the entry in between.
- Everything in Activity. Every change appears in Activity with a robot icon, named after the key (“AI assistant (key name)”) or after you and the app (“your name via app name”). Tick AI changes in Activity to see only those.
- A review list in Entries. In Entries, the Changed by AI switch in the Status filter shows only entries an assistant last changed. Review them before you mark them ready; saving your own change clears the mark. The Publish dialog also says how many drafts an assistant changed. Every publish is a numbered version, so a bad publish can be undone in one click.
- Trash. Deleted entries and files wait 30 days in Trash and can be restored.
- Disconnect at any time. Owners and Developers can choose Disconnect next to any signed-in assistant in the AI assistants list on the Members page; it loses access straight away.
- Some things stay with people. An assistant can never manage API keys, switch the project between public and private, manage the webhook or members, duplicate or delete the project, create a project from a public dataset (it imports one into its own project instead) or empty the trash.
Important: Text inside your entries is just data to the assistant, but someone could write instructions aimed at an assistant into an entry or an imported file. Give an assistant only the tiers the job needs, keep publishing and deleting off unless you need them, and review the entries marked Changed by AI.
See Activity and trash for how to review and undo changes.
Things to ask
Copy one of these into your assistant. The AI agents page of each project has the same prompts with a copy button, under Ask it something.
- Get oriented: “Summarize this Spatibase project: what types it has, how many entries there are, and anything that looks incomplete.”
- Find gaps: “Which entries are missing a description or a photo? List them with their type.”
- Prepare drafts: “Create draft entries for these five places and fill in the description from the notes I give you. Do not publish anything.”
- Clean up in bulk: “Show me which store entries have an empty opening hours field, then propose a change for each one. Show the plan first.”
- Import data: “Import the rows of this CSV as draft entries of the type Store. Map the columns to the fields first and show me the preview.”
- Start from a public dataset: “Which public datasets are there? Import the airports in Germany into this project as drafts. Show me the counts first.”
- Translate: “Find the entries that are missing a German translation, translate their title and texts, and save them as drafts. Do not publish.” (In the app, the Missing filter has a button that copies this prompt for you.)
- Check before going live: “Which draft entries would fail to publish, and why? Do not publish them.”
Prompts that change content need the Edit drafts tier (the page shows developers only the two read-only ones). Saying “do not publish” or “show the plan first” in the prompt is a good habit, even when the assistant cannot publish.
Starting from code
A coding agent can also create a project for you, with no account: it makes a temporary project, imports and publishes your places, and asks for your email at the end so you can keep it. See Start from your code.
Translating your content
If your project has languages, an assistant with the Edit drafts tier is the way to translate many entries at once. It learns the project’s languages from the project description, lists the entries that are missing one language, reads each entry in the default language, and saves the translated title and texts as drafts. It translates only titles, text and rich text fields; everything else is the same in all languages. You review the drafts (they show Unpublished changes) and publish them yourself, or allow publishing if you trust the result.
An assistant can also turn languages on or off, but only with the Change the content model tier. With a key, it can translate but not change the languages. Translations an assistant writes are marked like its other draft changes: use Changed by AI in the Status filter to review them.
What are the limits?
Each key or signed-in connection has these limits:
| Limit | Value |
|---|---|
| Calls | 120 a minute |
| Calls that change something | 30 a minute |
| Entries changed (created, updated, published, unpublished, deleted, restored or moved between groups) | 2,000 a day (UTC) |
| Rows per import call | 1,000 |
| File size per upload | 3.5 MB |
| Entries per bulk update | 50 |
| Entries per mark-ready or unpublish call | 500 |
| Entries or files per delete call | 100 |
| Entries per search | 100 (20 by default) |
| Map features returned at once | 200 |
When an assistant hits a limit, it gets a message to wait. Wait a minute and try again, or split the work into smaller parts. An assistant can upload images and files of up to 3.5 MB each; for bigger ones use the web app.
If something does not work
| Problem | What to do |
|---|---|
| “401” or “invalid key” | The key is wrong, revoked, expired or from another project. Create a new key on the API page and use it with this project’s address. |
| A private project says “sign in” | A private project needs a key or a sign-in even to read. Use a key, or sign in through the assistant’s connector. |
| The assistant can’t change anything | Its key is a website or app key, or the connection you approved does not allow editing. Owners create an AI assistant key; editors connect again and tick Edit drafts. Developers’ assistants are read-only by design. |
| It only reads, and does not see drafts | On a public project, it may have connected without signing in. Sign in from the assistant’s connector settings. |
| It asks for a key (editors and developers) | You do not need one. Sign in with your account instead; only owners make keys. |
| A tool is missing | The assistant only sees the tools its connection allows. Marking ready, publishing and deleting appear after you allow them on the key or the consent screen. |
| Too many requests | You hit a limit. Wait a minute and try again, or split the work. |
Related
Updated