Infolobby skill
Use when the user wants to read, query, or modify their InfoLobby workspace data — list spaces and tables, get a table schema, create/update/delete/query records, post comments, or upload/download record attachments. Requires the user's InfoLobby API key, which the skill prompts for once and caches at ~/.infolobby/key.From its SKILL.md
npx -y skills add andreas-globi/infolobby-skillAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its file declares
Copied from the file, not written here
The file declares its own license as MIT. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
5.7 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it
InfoLobby
Access an InfoLobby account from any agent using plain curl. No SDK.
Setup
The API key lives at ~/.infolobby/key (one line, the raw token).
On every invocation, first try to read it:
INFOLOBBY_KEY="$(cat ~/.infolobby/key 2>/dev/null)"
INFOLOBBY_API="https://infolobby.com/api"
If ~/.infolobby/key does not exist, ask the user once for their InfoLobby API key (il_live_… or il_user_…), then write it. Do not log or echo the key back.
- macOS / Linux:
mkdir -p ~/.infolobby ( umask 077 && printf '%s' "<KEY>" > ~/.infolobby/key ) - Windows (PowerShell):
New-Item -ItemType Directory -Force "$HOME\.infolobby" | Out-Null Set-Content -NoNewline "$HOME\.infolobby\key" '<KEY>'
Where the user gets a key:
- Account key (
il_live_…): InfoLobby → Account → API Keys. Account-owner only. Acts as the owner across all in-scope workspaces. - Personal key (
il_user_…): InfoLobby → Profile → Personal API Keys. Acts as that user; cannot manage workspaces or table schemas.
Send the key on every request as Authorization: Bearer $INFOLOBBY_KEY.
Scope
This skill covers data work only:
- discover: list spaces, list tables, fetch a table schema
- records: create, get, update, delete, batch-delete, query with filters / saved views
- comments: list, post, attach files
- files: upload, download, delete record attachments (base64 in JSON, 50 MB cap)
This skill does not create/modify workspaces, create/modify table schemas, manage members, run flows, or touch billing. Point the user at https://infolobby.com/api-docs for those.
Workflow
Always discover before mutating:
GET /spaces/list→ pick a space.GET /space/<space_id>/tables/list→ pick a table.GET /table/<table_id>/get→ read fieldidslugs from the schema. Record payloads use these slugs, not display names — a wrong key returnsUnauthorized - no field edit permissions for field: X.
Cheat sheet
| Action | Verb | Path |
|---|---|---|
| List spaces | GET | /spaces/list |
| List tables | GET | /space/<sid>/tables/list |
| Get table schema | GET | /table/<tid>/get |
| List views | GET | /table/<tid>/views/list |
| Query records | POST | /table/<tid>/records/query |
| Get record | GET | /table/<tid>/record/<rid>/get |
| Create record | POST | /table/<tid>/records/create |
| Update record | POST | /table/<tid>/record/<rid>/update |
| Delete record | POST | /table/<tid>/record/<rid>/delete |
| List comments | GET | /table/<tid>/record/<rid>/comments/get?limit=20 |
| Add comment | POST | /table/<tid>/record/<rid>/comments/create |
| Upload attachment | POST | /table/<tid>/record/<rid>/files/create |
| Download attachment | POST | /table/<tid>/record/<rid>/files/get |
| Delete attachment | POST | /table/<tid>/record/<rid>/files/delete |
Query example
curl -s "$INFOLOBBY_API/table/101/records/query" \
-H "Authorization: Bearer $INFOLOBBY_KEY" \
-H "Content-Type: application/json" \
-d '{
"fields": ["company_name","email","status"],
"filters": [{"column":"status","compare":"=","value":"Active"}],
"order_by": "company_name",
"order_dir": "A",
"limit": 50
}'
Pass "view_id": N to query through a saved view; the view's filters and sort replace the request's.
Create / update record example
curl -s -X POST "$INFOLOBBY_API/table/101/records/create" \
-H "Authorization: Bearer $INFOLOBBY_KEY" \
-H "Content-Type: application/json" \
-d '{"data":{"company_name":"Acme","email":"[email protected]","status":"Active"}}'
data keys must be field id slugs from GET /table/<tid>/get. Update bodies are partial — include only fields to change.
Files (base64)
B64=$(base64 -w0 invoice.pdf)
curl -s -X POST "$INFOLOBBY_API/table/101/record/5/files/create" \
-H "Authorization: Bearer $INFOLOBBY_KEY" \
-H "Content-Type: application/json" \
-d "{\"field_id\":\"attachments\",\"name\":\"invoice.pdf\",\"type\":\"application/pdf\",\"data\":\"$B64\"}"
Decoded payload must be ≤ 50 MB. Download returns base64 in data. Attachment object shape on the record is {name,path,type,size,host}. files/delete strips by (field_id, path).
Error handling
- Non-2xx → plain text body.
401→ key missing/invalid/revoked; reprompt and rewrite~/.infolobby/key.403→ read-only key on a write call, or endpoint not in scope for the key type.429→ respectRetry-After.X-RateLimit-*headers describe the bucket.500withUnauthorized - no field edit permissions for field: X→ field slug is wrong; refetch schema.
References
- references/endpoints.md — full endpoint list and request bodies for the in-scope surface.
- references/fields.md — field-type quirks that surprise first-time callers (lookup, select, user, number, date).
Tips
- Base URL:
https://infolobby.com/api. - Responses are JSON for data endpoints; errors are plain text with non-2xx status.
- Use
curl -iwhen debugging auth or scoping issues. - Personal keys (
il_user_…) cannot CRUD workspaces or table schemas — that is by design. - Never write the user's key into chat output, command history echoes, or logs.
What ships with it: 4 files
11.4 KB alongside SKILL.md
references/
- endpoints.md4.8 KB
- fields.md3.3 KB