Admin Manage API¶
The AdminManageAPI client exposes four admin-only read-form endpoints added in v0.6.0.
Resource grouping¶
All four endpoints are grouped under client.admin_manage (D-v0.6-1), separate from the
posts, users, or catalogs resource clients. They are admin-only and propaedeutic to the
future write surface (deferred to v1.0+).
Endpoint scope¶
Each endpoint returns the full editable state of an entity plus an occToken (optimistic
concurrency token) for use by future write operations. The occToken is carried through each
facade's .raw escape hatch — it is never surfaced as a narrow property (D-v0.6-2).
| Method | Path | Facade |
|---|---|---|
workspace_for_edit |
admin/manage/workspaces/{workspaceId}/edit |
WorkspaceForEdit |
catalog_for_edit |
admin/manage/catalogs/{catalogId}/edit |
CatalogForEdit |
catalog_entry_for_edit |
admin/manage/catalogs/{catalogId}/entries/{entryId}/edit |
CatalogEntryForEdit |
user_credentials_for_edit |
admin/manage/users/{userId}/credentials/edit |
UserCredentialsForEdit |
Usage¶
from pynteracta.client import InteractaClient
with InteractaClient(base_url="https://tenant.example.com", credentials=...) as client:
# Workspace edit form
ws = client.admin_manage.workspace_for_edit(88)
print(ws.id, ws.name, ws.member_users_count)
print(ws.raw.occToken) # occToken only on .raw — for future write use
# Catalog edit form
catalog = client.admin_manage.catalog_for_edit(5)
print(catalog.id, catalog.name, catalog.community_associations_count)
# Catalog entry edit form
entry = client.admin_manage.catalog_entry_for_edit(5, 100)
print(entry.id, entry.label, entry.external_id, entry.parents_count)
# User credentials edit form
creds = client.admin_manage.user_credentials_for_edit(1042)
print(creds.has_google_credentials, creds.has_custom_credentials, creds.custom_username)
Field curation (Q-v0.6-1)¶
Narrow facade properties surface the directly-typed scalar fields of each response DTO, plus
light convenience accessors that dig one level into the nested editable-content blocks (which the
code generator emits as RootModel[Any] stubs) for the human-facing name/label/credential flags.
Complex nested structures (the full contentData, communityAssociations, parents, per-provider
credential configs) and occToken stay on .raw.
API Reference¶
pynteracta.api.admin_manage.AdminManageAPI
¶
Bases: ResourceClient
Client for the admin/manage edit (read-form) endpoints.
These are admin-only read helpers, propaedeutic to the future write surface. Each returns the
entity's editable state and an occToken (only on the facade .raw).
workspace_for_edit(workspace_id)
¶
GET /admin/manage/workspaces/{workspaceId}/edit.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
workspace_id
|
int
|
The workspace ID to fetch. |
required |
catalog_for_edit(catalog_id)
¶
GET /admin/manage/catalogs/{catalogId}/edit.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
catalog_id
|
int
|
The catalog ID to fetch. |
required |
catalog_entry_for_edit(catalog_id, entry_id)
¶
GET /admin/manage/catalogs/{catalogId}/entries/{entryId}/edit.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
catalog_id
|
int
|
The catalog ID owning the entry. |
required |
entry_id
|
int
|
The catalog entry ID to fetch. |
required |
user_credentials_for_edit(user_id)
¶
GET /admin/manage/users/{userId}/credentials/edit.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
user_id
|
int
|
The user ID whose credentials to fetch. |
required |
Facade Reference¶
pynteracta.models.facade.admin_manage.WorkspaceForEdit
¶
Narrow facade over :class:~generated.GetWorkspaceForEditResponseDTO.
The editable payload (name, description, members, …) lives in contentData, which
the generator emits as a RootModel[Any] stub; :attr:name and :attr:description
re-validate it into the typed sibling for convenience. occToken is only on .raw — it is
the propaedeutic edit token for the future write surface.
Attributes:
| Name | Type | Description |
|---|---|---|
raw |
The underlying generated DTO; access additional fields via this escape hatch. |
Source code in src/pynteracta/models/facade/admin_manage.py
pynteracta.models.facade.admin_manage.CatalogForEdit
¶
Narrow facade over :class:~generated.GetCatalogForEditResponseDTO.
The editable payload (name map, parentCatalog, deleted) lives in contentData,
a RootModel[Any] stub re-validated into its typed sibling for :attr:name and
:attr:deleted. communityAssociations (the communities using this catalog) is summarized
by :attr:community_associations_count; the full list stays on .raw. occToken is only
on .raw.
Attributes:
| Name | Type | Description |
|---|---|---|
raw |
The underlying generated DTO; access additional fields via this escape hatch. |
Source code in src/pynteracta/models/facade/admin_manage.py
community_associations_count
property
¶
Number of communities that use this catalog.
deleted
property
¶
Whether the catalog is logically deleted (from contentData).
name
property
¶
Internationalized catalog name map (from contentData).
from_dict(data)
classmethod
¶
Parse from a raw API response dict.
pynteracta.models.facade.admin_manage.CatalogEntryForEdit
¶
Narrow facade over :class:~generated.GetCatalogEntryForEditResponseDTO.
All surfaced fields are directly typed on the response DTO. label is an internationalized
map; parents (the hierarchical parent chain) is summarized by :attr:parents_count, with
the full list available on .raw. occToken is only on .raw.
Attributes:
| Name | Type | Description |
|---|---|---|
raw |
The underlying generated DTO; access additional fields via this escape hatch. |
Source code in src/pynteracta/models/facade/admin_manage.py
pynteracta.models.facade.admin_manage.UserCredentialsForEdit
¶
Narrow facade over :class:~generated.GetUserCredentialsForEditResponseDTO.
The response has no entity id (the user id is the path parameter). The credentials payload
lives in userCredentialsConfiguration, a RootModel[Any] stub re-validated into its
typed sibling. Narrow properties expose which credential kinds are configured plus the custom
username/active flags; the full per-provider configuration stays on .raw. occToken is
only on .raw.
Attributes:
| Name | Type | Description |
|---|---|---|
raw |
The underlying generated DTO; access additional fields via this escape hatch. |