CLI Reference¶
Global options¶
pynteracta [OPTIONS] COMMAND [ARGS]...
Options:
--version, -V Print the pynteracta version and exit
--profile TEXT Profile name from config file
--config-file PATH Override config file path
--base-url TEXT Interacta tenant URL
--base-path TEXT URL base path (default: /portal)
--api-version INTEGER API version (default: 2)
--service-account-key PATH Path to service-account key JSON
--token-cache TEXT Token cache backend: file or memory (validated, exit 2 otherwise)
--token-cache-dir PATH Override token cache directory
--timeout FLOAT HTTP timeout in seconds
--output [table|json|yaml] Output format (default: table)
--log-level TEXT DEBUG, INFO, WARNING or ERROR (default: profile/env value, else INFO)
--no-color Disable rich color output
--quiet Suppress non-essential output
--audit-log Enable API call audit logging
--audit-log-file PATH Path for rotating JSON-lines audit log file
--audit-bodies Include request/response bodies in audit log
--audit-raw Bypass redaction (unsafe — never use in production)
--audit-max-bytes INTEGER Max bytes per audit log file before rotation (default: 10000000)
--audit-backups INTEGER Number of rotated audit log files to keep (default: 5)
See Audit Logging for full details on redaction guarantees, file format, and security considerations.
Output format¶
--output controls the rendering format. It can be placed either before the command path
(global position) or after a data-emitting command (per-command position). The short form
-o exists only in the per-command position. When both are supplied the command-level value
wins.
# Global position (before the command path)
pynteracta --output json communities list
# Per-command position (after the command name)
pynteracta communities details 79 --output json
# Short flag works too
pynteracta communities details 79 -o yaml
Every data-emitting command (auth whoami and all sub-commands of users, posts,
communities, catalogs, attachments, tasks, groups, hashtags, admin-manage) accepts
--output / -o directly, together with --full, --fields, --export and --export-format.
Configuration meta-commands (config set, config get, etc.) do not; use the global form if you
need to control their output format.
--full — emit all DTO fields¶
--full is a per-command flag available on all data-emitting commands (written after the
command, like --web-url). It dumps the complete field set of the underlying API DTO using
model_dump(by_alias=True, mode="json", exclude_none=True) — API-native camelCase keys, nested
structure preserved, null/absent fields omitted.
pynteracta users list --full --output json
pynteracta posts get 21269 --full
pynteracta communities list --full --output yaml
With --output table, --full switches to a vertical per-record layout: each record is
printed as its own key/value table (Field | Value), records visually separated. Nested values
are rendered as compact JSON inside the cell.
--fields <csv> — emit selected fields¶
--fields is a per-command flag accepting a comma-separated list of field names in
camelCase (the keys of the full dump). Dotted paths are supported for nested values
(e.g. attachments.0.name, customData.123).
pynteracta users list --fields id,firstName,contactEmail
pynteracta posts get 21269 --output json --fields id,title,communityId
- Null handling: fields requested via
--fieldsare always present in the output, even if their value is null (rendered as empty string in table,nullin JSON/YAML). - Unknown field: if a requested top-level field does not exist in the full dump, the command
exits with code 2 (
EXIT_CONFIG) and prints a message listing valid top-level keys.
Mutual exclusion¶
--full and --fields cannot be used together. Providing both exits with code 2 (EXIT_CONFIG)
and an explanatory message.
Interaction with --output and --web-url¶
--full / --fields compose with --output and --web-url:
| flags | --output table |
--output json/yaml |
|---|---|---|
| neither | curated columns (default) | curated dict/list |
--full |
vertical per-record layout | complete nested dump |
--fields a,b |
narrow table (selected columns) | object(s) with selected keys |
When --web-url is set the computed URL is appended as an extra field in the output regardless
of which mode is active.
--export PATH — write output to a file¶
--export is a per-command flag available on all data-emitting commands. It writes the
resolved data to an external file instead of printing it to the console. A one-line summary is
printed to stdout (Wrote N records to <path> (<format>)), suppressed by --quiet.
pynteracta posts list --community 79 --export posts.json
pynteracta users list --full --export users.csv
pynteracta posts get 21269 --export post.yaml
Format inference — the format is inferred from the file extension:
| Extension | Format |
|---|---|
.csv |
CSV |
.json |
JSON |
.yaml, .yml |
YAML |
.parquet |
Parquet |
If the extension is unknown or absent use --export-format to specify the format explicitly:
Providing an unknown extension without --export-format exits with code 2 (EXIT_CONFIG).
Providing an unknown --export-format value also exits with code 2. --export-format without
--export is silently ignored.
Composition with --full / --fields / --web-url — export honours all three flags with
the same semantics as console output. The file content is always driven by the export format;
--output does not affect the file (it controls console rendering only, and when --export is
set the data is not rendered to the console at all).
Single vs list shape — single-object commands (e.g. posts get, users me) export exactly
one record. For JSON and YAML the file contains a single object (not wrapped in an array). List
commands (e.g. posts list, users list) always export an array.
CSV / Parquet specifics — both formats are always row-oriented (single-object → header + 1
row). Column set = ordered union of all record keys (first-seen order). Nested values (dicts /
lists) are serialised as compact JSON strings in the cell. Missing keys in a given row → empty
cell. None → empty string (CSV) or null (Parquet).
File creation — existing files are overwritten (shell-redirect semantics). Missing parent directories are created automatically.
--export-format {csv,json,yaml,parquet} — explicit format override¶
Optional per-command flag to override the format inferred from the file extension. See
--export above for the full rules.
auth¶
auth login¶
Configures an authentication method for the active profile and validates it by fetching a token. Choose one of the two methods (they are mutually exclusive):
Service account — stores the key path in the profile:
Google OAuth2 — persists only auth_method = "google_oauth2"; the Google access token is
read from --google-token or $PYNTERACTA_GOOGLE_OAUTH2_TOKEN and is never written to
disk:
export PYNTERACTA_GOOGLE_OAUTH2_TOKEN="ya29.<google-access-token>"
pynteracta --base-url https://interacta.example.it auth login --google
# or pass it inline:
pynteracta --base-url https://interacta.example.it auth login --google-token "ya29.<...>"
| Option | Description |
|---|---|
--service-account-key PATH |
Use service-account auth; persists the key path. |
--google |
Use Google OAuth2 auth (token from $PYNTERACTA_GOOGLE_OAUTH2_TOKEN). |
--google-token TOKEN |
Google access token (implies --google). |
--profile NAME |
Profile to update (default: active profile). |
See Authentication → Google OAuth2 for how to obtain a Google access token and its prerequisites.
auth whoami¶
Prints the authenticated user's account data (calls GET /core/auth/current-user-data).
auth logout¶
Purges the token cache for the current profile.
config¶
config set¶
pynteracta config set base_url https://interacta.example.it
pynteracta config set service_account_key ~/keys/sa.json --profile staging
config get¶
config list¶
config use-profile¶
config add-profile¶
config remove-profile¶
users¶
users list¶
Lists system users. Requires admin permissions.
pynteracta users list
pynteracta users list --all # paginate automatically
pynteracta users list --full-text rossi --page-size 20
pynteracta users list --all --web-url # include web URL column
pynteracta users list --output json
# Filter by status, workspace, community (all repeatable)
pynteracta users list --status 1 --status 2
pynteracta users list --workspace 10 --community 20 --community 21
pynteracta users list --role ADMIN
# Date range (ISO-8601, epoch-ms, or datetime all accepted by the Python API)
pynteracta users list --created-from 2025-01-01 --created-to 2025-06-30
# Users who have not logged in since 2026-01-01
pynteracta users list --last-access-to 2026-01-01
# Ordering
pynteracta users list --order-by lastName --desc
pynteracta users list --order-by lastName --asc
# Generic passthrough for long-tail filters (true/false and integers are typed)
pynteracta users list --filter external_id_full_text_filter=EXT-1 --filter reduced_profile=false
# Count matching users (prints just the number), resume from a page token
pynteracta users list --status 2 --count
pynteracta users list --page-size 50 --page-token eyJwYWdlIjoyfQ
--page-token and --count behave exactly as on posts list (see the paging flags table
there): the follow-up token goes to stderr, --count prints only the total, and neither can be
combined with --all.
See Filtering and sorting users for the Python API counterpart of every flag, the passthrough fields, and pagination patterns.
Filter and ordering flags:
| Flag | Description |
|---|---|
--full-text TEXT |
Full-text filter on name, surname, and email (fullTextFilter). |
--status INT |
Filter by user status id (statusFilter). Repeatable. |
--workspace INT |
Filter by workspace id (workspaceIds). Repeatable. |
--community INT |
Filter by community id (communityIds). Repeatable. |
--role TEXT |
Filter by role (role). |
--created-from TEXT |
Creation date lower bound (ISO-8601 string or epoch-ms integer). |
--created-to TEXT |
Creation date upper bound. |
--last-access-from TEXT |
Last-access date lower bound (ISO-8601 string or epoch-ms integer). |
--last-access-to TEXT |
Last-access date upper bound. |
--order-by TEXT |
Sort field id (mapped to orderTypeId, passthrough — no client-side validation). |
--desc / --asc |
Sort direction (orderDesc). Only sent when specified. |
Generic passthrough (--filter KEY=VALUE):
For ListSystemUsersRequestDTO fields not exposed as explicit flags (e.g.
business_unit_ids, area_ids, manager_ids, lang, login_provider_filter, name/email
prefixes), pass KEY=VALUE. The key is converted from snake_case to camelCase. Values are
typed: true/false become booleans, integer literals become integers, everything else stays a
string. List fields are still only reachable via the dedicated repeatable flags above. Repeatable.
users me¶
Returns the account/identity record of the authenticated principal.
Calls GET /core/auth/current-user-data (CurrentUserDataResponseDTO).
Use this when you want account-level data — who is logged in, account status, account ID.
users profile¶
Returns the people-directory profile of the authenticated principal.
Calls GET /core/user-profile/info (UserProfileInfoDTO).
Use this when you want the richer profile fields shown in the Interacta People section — avatar, job title, contact details, profile visibility.
me vs profile
users me and users profile call two different endpoints and return different data shapes.
me is the identity/authentication record; profile is the people-directory record.
users get-for-edit¶
Fetches a user's editable record by user ID. Requires admin permissions on the target user.
posts¶
posts get¶
Fetches a post by ID.
posts list¶
Lists posts in a community. --community is required.
pynteracta posts list --community 79
pynteracta posts list --community 79 --all --web-url
pynteracta posts list --community 79 --page-size 20 --output json
# Ordering
pynteracta posts list --community 79 --order-by postLastModifyAndCommentTimestamp --desc
pynteracta posts list --community 79 --order-by postTitle --asc
pynteracta posts list --community 79 --order-by postCustomField-1954 --desc --pinned-first
# Text and creator filters
pynteracta posts list --community 79 --title "Incident" --contains-text "CVE-2025"
pynteracta posts list --community 79 --created-by 101 --created-by 102
# Date range (ISO-8601, epoch-ms, or datetime all accepted by the Python API)
pynteracta posts list --community 79 --created-from 2025-01-01T00:00:00+00:00
pynteracta posts list --community 79 --created-from 2025-01-01 --created-to 2025-06-30
# Hashtag, post type, workflow filters
pynteracta posts list --community 79 --hashtag 5 --hashtag 12
pynteracta posts list --community 79 --post-type 1
pynteracta posts list --community 79 --workflow-status 3 --workflow-status 4
# Custom-field filters (COLUMN:TYPEID:VAL[,VAL])
pynteracta posts list --community 79 --field-filter 1411:4:226
pynteracta posts list --community 79 --field-filter "1954:2:1780264800000,1780955999999"
pynteracta posts list --community 79 --field-filter 1957:3:firewall
# Multiple custom-field filters
pynteracta posts list --community 79 \
--field-filter 1411:4:226,512 \
--field-filter 1957:3:error
# Workflow screen-field filters (same grammar, targets screenFieldFilters)
pynteracta posts list --community 79 --screen-field-filter 2001:1:7
pynteracta posts list --community 79 \
--field-filter 1411:4:226 \
--screen-field-filter 2001:4:7,9
# Personal and pinned filters
pynteracta posts list --community 79 --followed-by-me --only-pinned
pynteracta posts list --community 79 --to-manage --mentioned
# Description, creator group, modification date range, visibility
pynteracta posts list --community 79 --description "budget" --visibility 1
pynteracta posts list --community 79 --created-by-group 12 --modified-from 2026-01-01
pynteracta posts list --community 79 --hashtag 3 --hashtag 5 --hashtags-and # AND instead of OR
# Generic passthrough (for long-tail communityPostFilters fields)
pynteracta posts list --community 79 --filter draft_type=1
# Count matching posts (prints just the number), resume from a page token
pynteracta posts list --community 79 --mentioned --count
pynteracta posts list --community 79 --page-size 50 --page-token eyJwYWdlIjoyfQ
Paging flags:
| Flag | Description |
|---|---|
--page-size INT |
Items per page. |
--all |
Walk every page. Mutually exclusive with --page-token and --count (exit 2). |
--page-token TEXT |
Fetch one specific page. When the response has a follow-up page, Next page token: <token> is printed on stderr (suppressed by --quiet); stdout stays the plain payload. |
--count |
Print only the total number of matching items (totalItemsCount) and exit 0. All filter flags apply; rendering flags are ignored. Exit 1 if the server returns no total. |
Ordering flags:
| Flag | Description |
|---|---|
--order-by TEXT |
Sort field (see table below). |
--desc / --asc |
Sort direction. Descending is the default; orderBy (default postLastModifyAndCommentTimestamp) and orderDesc are always sent. |
--pinned-first / --no-pinned-first |
Pinned posts appear before others. |
Valid --order-by values: postCustomId, postTitle, postCreatorUser,
postCreationTimestamp, postLastModifyUser, postLastModifyTimestamp,
postLastModifyAndCommentTimestamp, postViewedByMeTimestamp, postModifiedByMeTimestamp,
postCommentedByMeTimestamp, postScheduledPublication, postRecency,
postCustomField-{id}. Invalid values exit with code 6 (EXIT_VALIDATION).
Filter flags:
| Flag | Description |
|---|---|
--title TEXT |
Filter by post title (partial match). |
--contains-text TEXT |
Full-text search across title + body. |
--created-by INT |
Filter by creator user ID. Repeatable. |
--hashtag INT |
Filter by hashtag ID. Repeatable. |
--post-type INT |
Filter by post type (1=CUSTOM, 2=EVENTO, 3=QUESTIONARIO). Repeatable. |
--workflow-status INT |
Filter by workflow status ID. Repeatable. |
--created-from TEXT |
Creation date lower bound (ISO-8601 string or epoch-ms integer). |
--created-to TEXT |
Creation date upper bound. |
--followed-by-me / --no-followed-by-me |
Only posts followed by the current user. |
--to-manage / --no-to-manage |
Only posts the current user needs to manage. |
--only-pinned / --no-only-pinned |
Only pinned posts. |
--description TEXT |
Filter by post description (partial match). |
--created-by-group INT |
Filter by creator group ID. Repeatable. |
--modified-from TEXT |
Last-modification lower bound (ISO-8601 string or epoch-ms integer). |
--modified-to TEXT |
Last-modification upper bound. |
--hashtags-and / --no-hashtags-and |
Combine --hashtag values with AND (default: OR). |
--visibility INT |
Filter by visibility id. |
--mentioned / --no-mentioned |
Only posts where the current user is mentioned. |
Custom-field filter (--field-filter COLUMN:TYPEID:VAL[,VAL]):
Format: COLUMN_ID:TYPE_ID:VALUE[,VALUE] — all three segments are required.
TYPE_ID |
Operator | VALUE |
|---|---|---|
1 |
EQUAL | single value |
2 |
INTERVAL | two epoch-ms integers (from,to) |
3 |
LIKE | substring |
4 |
IN | one or more enum/entity IDs |
5 |
CONTAINS | single value |
6 |
IS_NULL_OR_IN | one or more IDs |
7 |
IS_EMPTY | empty, but the third segment is mandatory: COLUMN:7: (trailing colon) |
Tokens that look like integers are coerced to int; others remain str. The flag is repeatable.
A malformed value (fewer than three segments, or a non-integer COLUMN/TYPE_ID) exits with
code 1 and names the offending flag; the same applies to --screen-field-filter.
Workflow screen-field filter (--screen-field-filter COLUMN:TYPEID:VAL[,VAL]):
Identical grammar, parser and TYPE_ID table as --field-filter, but the entries are sent as
screenFieldFilters (workflow screen fields) instead of postFieldFilters (custom post fields).
The two flags can be combined freely and are both repeatable. Column ids for screen fields are
the workflow screen-field ids defined in the community's post-definition. Values are passed
through without client-side validation, like --field-filter.
Opt-in validation (--validate):
With --validate, the command fetches the community post-definition once and checks every
--field-filter / --screen-field-filter before sending: the column id must exist, the
TYPE_ID must match the field type where the pairing is known, and enum parameters must be
valid enum value ids. A failing check exits with code 6 (EXIT_VALIDATION) and no list call is
made. Without field filters the flag is a no-op (no extra request).
Generic passthrough (--filter KEY=VALUE):
For communityPostFilters fields not exposed as explicit flags, pass KEY=VALUE. The key is
converted from snake_case to camelCase. Values are typed: true/false (any case) become
booleans, integer literals become integers, everything else stays a string. Repeatable.
See Filtering and sorting posts for a complete example-driven guide including the Python API, custom-field discovery, builder API, and opt-in validation.
posts get-by-client-uid¶
Fetches a post by its client UID (the customId field set by the API consumer).
pynteracta posts get-by-client-uid MY-UID-001
pynteracta posts get-by-client-uid MY-UID-001 --web-url --output json
posts capabilities¶
Shows per-post capability flags for the authenticated principal (can view, modify, delete, comment, like, follow, etc.).
Curated table shows the core flags (can_view_detail, can_modify, can_delete,
can_view_comment, can_add_comment, can_edit_like, can_edit_follow). Use --full to
expose all flags including canEditComment, canEditWorkflowScreenData, etc.
posts history¶
Lists edit/event history entries for a post.
pynteracta posts history 21269
pynteracta posts history 21269 --all --page-size 50
pynteracta posts history 21269 --output json
posts global-stream¶
Cross-community home feed stream. Returns posts created/modified/touched/deleted across all communities the principal has access to.
pynteracta posts global-stream
pynteracta posts global-stream --all
pynteracta posts global-stream --sync-token <token>
posts community-list¶
Lists posts in a community using the data/community-list/{communityId} endpoint
(ListCommunityPostsRequestDTO). The CLI command exposes paging only (--page-size,
--all) plus --web-url and the rendering flags: it has no filter or ordering flags. The
endpoint's own filters (title, description, date ranges, workflow status, …) are reachable from
Python via client.posts.community_list(community_id, **filters) or community_list_raw().
Distinction from posts list: posts list calls data/list/community/{communityId} with
ListCommunityPostsFilteredRequestDTO and is the command with the full filter/sort surface
(curated flags, custom-field filters, --validate, --count, --page-token). Use posts list
whenever you need to filter; use posts community-list only to page through a community's posts
as the other endpoint returns them.
pynteracta posts community-list --community 79
pynteracta posts community-list --community 79 --all --page-size 50
pynteracta posts community-list --community 79 --output json
posts check-visibility¶
Checks which of the requested posts are visible to the current principal.
Pass --with-comments to also resolve comment visibility per post.
pynteracta posts check-visibility 21269 21270
pynteracta posts check-visibility 21269 21270 --with-comments
pynteracta posts check-visibility 21269 --output json
posts comments¶
Lists comments for a post.
communities commands¶
Retrieve community configuration settings.
communities list¶
List all communities the authenticated principal can post in.
communities details COMMUNITY_ID¶
Show details for a single community.
communities details-bulk¶
Retrieve details for multiple communities in one call.
communities post-definition COMMUNITY_ID¶
Show the post structure (custom field definitions) for a community. Includes field type names from the FieldType enum.
communities post-definitions¶
Show post definitions for multiple communities.
catalogs commands¶
Retrieve post-definition catalogs and their entries.
catalogs list¶
List all post-definition catalogs (optionally filtered by ID).
pynteracta catalogs list
pynteracta catalogs list --id 5 --id 8
pynteracta catalogs list --load-entries
catalogs entries CATALOG_ID¶
List entries for a catalog. Use --all to paginate through all pages.
pynteracta catalogs entries 5
pynteracta catalogs entries 5 --all --page-size 50
pynteracta catalogs entries 5 --label "Eng" --order-by label --order-asc
pynteracta catalogs entries 5 --output json
attachments commands¶
Retrieve attachment metadata, single attachment detail, and visibility checks.
Resource grouping note (D-v0.3-1): All three attachment endpoints live under the
attachmentsCLI group even thoughattachments getcalls an API path undercommunication/posts/data/attachment-detail-by-id/{id}. The URL prefix is a server-side implementation detail; the resource group isattachments.
--web-urlis intentionally absent (D-v0.3-3b): Bare attachments have no canonical deep-link URL in the Interacta web app.--output,--full,--fields, and--exportall compose as usual.Default table = metadata only (D-v0.3-3a): The default table shows
id,name,content_mime_type,size, andtype(use the camelCasecontentMimeTypewith--fields). Short-livedtemporaryContent*Linkdownload and preview URLs are exposed only via--full,--fields,--export, or--output json.
attachments list¶
List all attachments for a given post.
pynteracta attachments list --post 21269
pynteracta attachments list --post 21269 --all --page-size 50
pynteracta attachments list --post 21269 --output json --full
pynteracta attachments list --post 21269 --type 1 --mime-category multimedia
pynteracta attachments list --post 21269 --order-by name --order-asc
Filter options:
| Flag | Description |
|---|---|
--type INT |
Filter by attachment type (1=STORAGE, 2=DRIVE). Repeatable. |
--entity-type INT |
Filter by entity type (1=POST, 2=TASK, 3=COMMENT, 4=POST_FILE_PICKER, 5=SCREEN_FILE_PICKER). Repeatable. |
--mime-type TEXT |
Filter by MIME type string. Repeatable. |
--mime-category TEXT |
Filter by MIME category: multimedia or other. |
--order-by TEXT |
Sort field: name, mimeType, size, creatorUserId, creationTimestamp, entityType. |
--order-desc / --order-asc |
Sort direction (default: descending). |
Niche filters (aiSupportedFilter, postFilePickerFieldId, wfScreenFilePickerFieldId,
language) are not surfaced as CLI flags; use the Python API list_for_post_raw(req) for
those.
attachments get ATTACHMENT_ID¶
Fetch a single attachment by ID.
The response includes the parent post's basic info (post_id in the curated table).
Temporary content links are accessible via --full or --output json.
attachments check-visibility ATTACHMENT_ID...¶
Check which of the supplied attachment IDs are visible to the current principal.
pynteracta attachments check-visibility 3001 3002
pynteracta attachments check-visibility 3001 --output json
groups commands¶
List groups, their members, and fetch group detail. groups get uses the
admin/manage/groups/{groupId}/edit endpoint (returns members + occToken).
--web-url on groups get deep-links to the admin group page.
groups list¶
pynteracta groups list
pynteracta groups list --filter engineering
pynteracta groups list --order-by name --order-asc --all
pynteracta groups list --status 1 --status 2 --workspace 10 # repeatable filters
pynteracta groups list --web-url # adds the admin group URL
pynteracta groups list --output json
Sort is via order_type_id internally; valid --order-by values: name, email.
--status INT (→ statusFilter) and --workspace INT (→ workspaceIds) are repeatable.
--filter TEXT here is the full-text filter on name and email, not the generic
KEY=VALUE passthrough available on posts list / users list.
groups members GROUP_ID¶
pynteracta groups members 201
pynteracta groups members 201 --all --page-size 50
pynteracta groups members 201 --output json
groups get GROUP_ID¶
pynteracta groups get 201
pynteracta groups get 201 --web-url # includes admin group URL
pynteracta groups get 201 --output json --full
occToken is only accessible via .raw.occToken (propaedeutic edit token for future write use).
creation_timestamp renders as a UTC datetime string in table output and as epoch-ms in
JSON/YAML, consistently with posts get.
hashtags commands¶
List hashtags for a community. Uses the admin endpoint.
hashtags list COMMUNITY_ID¶
pynteracta hashtags list 79
pynteracta hashtags list 79 --name engineering
pynteracta hashtags list 79 --include-deleted --all
pynteracta hashtags list 79 --output json
pynteracta hashtags list 79 --export hashtags.csv
admin-manage commands¶
Admin-only read-form helpers: each fetches the editable state of an entity (the
GET admin/manage/.../edit endpoints) together with an occToken for future write operations
(deferred to v1.0+). These are propaedeutic to the write surface; no write commands exist yet.
occToken is not shown in the default table — it lives on .raw.occToken and is reachable
via --full, --output json, or --export (combined with --full). There is no --web-url
flag on these commands (they are admin forms, not user-facing pages).
admin-manage workspace WORKSPACE_ID¶
pynteracta admin-manage workspace 88
pynteracta admin-manage workspace 88 --output json --full
pynteracta admin-manage workspace 88 --fields id,name
Default table: id, name, admin_users_count, member_users_count, admin_groups_count,
member_groups_count. The editable contentData block (name/description/members) is on .raw.
admin-manage catalog CATALOG_ID¶
Default table: id, name (i18n map), deleted, community_associations_count.
admin-manage catalog-entry CATALOG_ID ENTRY_ID¶
pynteracta admin-manage catalog-entry 5 100
pynteracta admin-manage catalog-entry 5 100 --output json --full
Default table: id, label (i18n map), external_id, deleted, parents_count.
admin-manage user-credentials USER_ID¶
pynteracta admin-manage user-credentials 1042
pynteracta admin-manage user-credentials 1042 --output json
Default table: has_google_credentials, has_microsoft_credentials, has_custom_credentials,
custom_username, custom_active. The full per-provider configuration is on .raw.
tasks commands¶
Fetch task detail. A task belongs to a post (post_id); --web-url deep-links to the parent post, since tasks have no standalone web view (D-v0.4-3).
The default table shows curated fields: id, post_id, title, state, priority,
description (truncated descriptionPlainText), attachments_count, creation_timestamp.
descriptionDelta (Quill rich-text JSON) and survey payloads (surveyData,
surveyDataCommentsInfo) are accessible only via --full or --output json through .raw
(D-v0.4-4).
tasks get TASK_ID¶
Fetch a single task by ID.
pynteracta tasks get 7001
pynteracta tasks get 7001 --output json
pynteracta tasks get 7001 --output json --full
pynteracta tasks get 7001 --web-url # includes parent-post URL
pynteracta tasks get 7001 --fields id,title,state
pynteracta tasks get 7001 --export tasks.csv
creation_timestamp renders as a UTC datetime string in table output and as epoch-ms in
JSON/YAML, consistently with posts get.
state vs currentWorkflowState: state is an integer code representing the task lifecycle
(open/closed/etc.). currentWorkflowState is the post's workflow state DTO and is only reachable
via .raw.currentWorkflowState (D-v0.4-3, Q-v0.4-3).
Exit codes¶
| Code | Meaning |
|---|---|
| 0 | Success |
| 1 | Generic CLI error (bad args, I/O) |
| 2 | Configuration error |
| 3 | Authentication error |
| 4 | Permission denied |
| 5 | Not found |
| 6 | Validation error |
| 7 | Transport error |
| 8 | Server error |
| 10 | Unexpected internal error |