Glossary¶
Organization (org) : The tenant boundary in terranode. Every user belongs to exactly one organization. All catalog, project, and survey data is scoped to an organization, both at the application level and, as a defense-in-depth layer, via PostgreSQL Row-Level Security.
terranode (the perennial org) : A built-in, always-present organization owned by the terranode team itself, used to publish a shared base catalog (base maps, reference layers) that other organizations can use without owning.
Role
: What a member is within an organization: owner, editor or field, shown
in the web app as Gestor, Editor and Coletor. A person has one role in each
organization they belong to, and an API key is minted with one. The role
decides which permissions the member holds.
Permission
: One thing a role may do, named resource:action, such as catalog:write or
project:update. The API enforces permissions on every request and reports
the ones a credential holds, so the app and the tn CLI offer only what
will work. Editing a particular project needs the project:update
permission and a part in that project: its creator, or one of its managers.
Catalog : The set of reusable GIS resources — layers, styles, raster and vector sources — that an organization curates. Catalog data is imported and exported, not hand-edited feature-by-feature, in the initial release.
Layer : A single named GIS dataset (vector or raster) in a catalog, with an assigned style and metadata/tags. Layers are owned by exactly one catalog but may be referenced by many projects.
Integration : An organization's connection to an external GIS platform — today ArcGIS Online or ArcGIS Enterprise. Data flows one way, into terranode: the user picks layers on the external side and they are pulled into catalogs. A catalog filled this way belongs to exactly one integration and does not accept manual uploads.
Feature Service : The ArcGIS container that a terranode catalog maps to. Note that "feature dataset" and "feature class" are geodatabase concepts that publishing flattens away — the ArcGIS REST API exposes a portal item (the Feature Service) and the layers and tables inside it, nothing between them.
Sync target : One remote layer or table an organization has subscribed to. It records where the data comes from on the external side and which catalog it lands in.
Project : A configured field data collection effort: a boundary, a set of participating catalog layers, and a set of surveys. Projects use catalog data — they never own or duplicate it.
Survey : A configurable form (similar in spirit to SurveyMonkey) that field users fill out on mobile devices while collecting GIS data — points, lines, polygons, and attached media (photos, video, audio). A survey can be created directly or from a survey template.
Survey template : An organization-scoped reusable form definition. Creating a survey from a template copies the template schema into the survey.
System survey template : A global template configured by terranode administrators and listed alongside organization-scoped templates.
Bundle : The offline package a mobile client downloads before a field visit: the project's boundary, participating layers, and survey definitions, packaged so the field app can work with no network connectivity.
Registered installation (device) : An app installation that has enrolled against a field seat, recorded so an organization can see which installations are exercising its seats and revoke one if needed. It is a record of a seat being exercised, not an inventory of hardware — one physical tablet shared by three crew members with their own accounts produces three registrations, since each is a separate person's seat.
Row-Level Security (RLS) : A native PostgreSQL feature enforcing tenant isolation at the database layer, independent of application-level query filtering. Used here as a second, fail-closed layer beneath terranode's org-scoping.