Install Jentic One Beta
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the CollectiveAccess API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
Two steps, two machines. Install the instance in a safe environment, then register your agent from wherever it runs.
Step 1: Jentic One Host machine
# On the machine that will host your Jentic One instance:
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcollectiveaccess.org%2Fcollectiveaccess" | shStep 2: Agent machine
# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL "https://jentic.com/install.sh?src=apis&api=%2Fapis%2Fcollectiveaccess.org%2Fcollectiveaccess" | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with CollectiveAccess API.
Search any catalog table with structured criteria via GET /find/{table}
Browse a table by facet or hierarchy via GET /browse/{table}
Retrieve a single item with all attributes via GET /item/{table}/id/{item_id}
Create a new catalog record via PUT /item/{table}
Update or delete an existing record via PUT or DELETE /item/{table}/id/{item_id}
GET STARTED
List media representations attached to an item via /item/{table}/id/{item_id}/media/{representation_id}/representations
Introspect a table's data model via GET /model/{table}
Patterns agents use CollectiveAccess API for, with concrete tasks.
★ Programmatic Collection Cataloging
Bulk-import catalog records into a CollectiveAccess Providence instance by calling PUT /item/{table} for each new accession. Tables are vendor-defined (objects, entities, occurrences, places) and the same endpoint handles any of them; the table name is a path parameter. This pattern fits museum digitisation projects that need to seed a fresh collection from a spreadsheet or external CMS.
For each row in a spreadsheet, call PUT /item/objects with the parsed metadata payload to create the accession record
Public Search Front-End
Expose a public collection search by proxying GET /find/{table} from a custom front-end. CollectiveAccess returns structured results with attributes ready to render in a card list. A library or archive can build a custom Vue or React UI on top of Providence without exposing the back-office UI.
Call GET /find/objects with a query parameter for the user's keyword, then render the returned items in a search results page
Asset Reconciliation
Reconcile a digital asset library with the catalog by listing media representations on each object via /item/{table}/id/{item_id}/media/{representation_id}/representations. An audit script can flag objects with missing or duplicate representations so curators can correct them. This supports preservation workflows that require complete media coverage.
For each catalog object, call GET /item/objects/id/{item_id}/media/{representation_id}/representations and report any object with zero attached media
AI Agent Cataloging via Jentic
Drive cataloging from an LLM by searching Jentic for the operation needed (find items, create record, update description) and executing it. CollectiveAccess Basic credentials live in your Jentic One instance and are injected at execution so the agent never sees the username and password. Useful for AI-assisted metadata enrichment and triage.
Use Jentic to search 'create a catalog item', load the PUT /item/{table} schema, and execute it with the generated metadata for the objects table
8 endpoints — collectiveaccess (providence) is open-source collections management software used by museums, archives, and libraries.
METHOD
PATH
DESCRIPTION
/item/{table}
Create a new catalog item
/item/{table}/id/{item_id}
Update a catalog item
/item/{table}/id/{item_id}
Delete a catalog item
/item/{table}/id/{item_id}
Get a catalog item by ID
/find/{table}
Search items in a table
/browse/{table}
Browse items in a table
/model/{table}
Get a table's data model
/item/{table}
Create a new catalog item
/item/{table}/id/{item_id}
Update a catalog item
/item/{table}/id/{item_id}
Delete a catalog item
/item/{table}/id/{item_id}
Get a catalog item by ID
/find/{table}
Search items in a table
/browse/{table}
Browse items in a table
/model/{table}
Get a table's data model
What agents get from Jentic-routed access to this vendor.
Setup
Wiring CollectiveAccess by hand means setting HTTP Basic auth against your own Providence server URL that fills the service.php base and handling the item, find, and browse endpoints yourself. Through Jentic you install once, import CollectiveAccess from the API Directory, store the credentials once, and your agent calls it.
Permission scoping
CollectiveAccess addresses records through the request path and body, so you scope by operations: limit the agent to the calls it needs, such as finding or reading a catalog item, so write actions like editing or deleting an item are not included unless you add them.
Credential isolation
Your CollectiveAccess Basic auth credentials are stored once, encrypted, by your own Jentic One instance and injected into the Authorization header at execution time. They never enter the agent's prompt, logs, or context.
Intent-based discovery
Agents search Jentic by intent such as 'create a catalog item' or 'search the collection', and Jentic returns the matching CollectiveAccess operation with its input schema so the agent calls the right endpoint without browsing the reference docs.
Alternatives and complements available in the Jentic catalogue.
Specific to using CollectiveAccess API through Jentic.
What authentication does the CollectiveAccess API use?
The API uses HTTP Basic authentication with the credentials of a CollectiveAccess Providence user. Through Jentic the username and password are stored encrypted in the vault and injected at execution so they never enter the agent's prompt.
Which tables can I query with the CollectiveAccess API?
All cataloging tables defined in your Providence installation are addressable through the {table} path parameter - objects, entities, occurrences, places, collections, and any custom tables. Use GET /model/{table} to introspect a table's fields before constructing queries.
Can I attach media files via the CollectiveAccess API?
Media representations attached to an item are listed via GET /item/{table}/id/{item_id}/media/{representation_id}/representations. The OpenAPI surface focuses on metadata CRUD and read access to existing media; uploading new media files is typically done through the Providence back-office.
Is CollectiveAccess hosted or self-hosted?
CollectiveAccess Providence is self-hosted. The base URL is {server_url}/service.php where {server_url} is your own Providence installation. There is no public multi-tenant endpoint - every deployment is independent.
What are the rate limits for the CollectiveAccess API?
Because each Providence install is self-hosted there are no central rate limits; throughput is bounded only by your server resources. Add caching in front of GET /find/{table} for high-traffic public search front-ends.
How do I create a catalog item with the CollectiveAccess API through Jentic?
Search Jentic for 'create a catalog item', load the PUT /item/{table} schema, and execute it with the table name (e.g. objects) and the metadata payload. Jentic injects the Basic auth header from the vault.
Can I limit what my agent is allowed to do with the CollectiveAccess API?
Yes. Because Jentic One is self-hosted, you set the rules that decide which CollectiveAccess operations and credentials your agent may use. Since the API addresses records through the request path and body, you scope by operation: grant the agent only the calls it needs, such as GET /find/{table} and GET /item/{table}/id/{item_id} to search and read catalog items. Write actions like PUT /item/{table} and DELETE /item/{table}/id/{item_id} stay out of reach unless you explicitly allow them.
For Agents
Search, browse, create, update, and delete catalog items in a CollectiveAccess Providence collection through 8 table-aware endpoints, including media-representation lookups.
Use for: Search a collection for items matching specific metadata, Retrieve a catalog record by ID, Create a new accession record in a museum collection, Update the description of an existing object
Not supported: Does not handle e-commerce, ticketing, or end-user accounts - use for collection cataloging, search, and media metadata only.
CollectiveAccess (Providence) is open-source collections management software used by museums, archives, and libraries. Its web service API provides JSON access to catalog items, search, browse, and metadata management on a self-hosted Providence installation. The API exposes 8 endpoints covering item CRUD, find and browse queries against any cataloging table, table model introspection, and media representation lookups, all authenticated with HTTP Basic credentials of a CollectiveAccess user.