The planning_analytics service has 10 resource kinds, each listed below with its endpoints, fields, and dependencies. Values resolve late, so you reference another resource with ${kind.ref_name}. For defaults, validation rules, and examples, run wxctl explain <kind>.
  • Envelope: A config is one or more YAML documents separated by ---. Each has top-level kind and ref_name, then the fields below at the top level (not nested under spec).
  • ref_name: Unique handle for this resource within the config. Used to reference it from other resources, then stripped before the API call (not a schema field).
  • References: Reference another resource by its ref_name: ${<kind>.<ref_name>} resolves to its id, ${<kind>.<ref_name>.<field>} to a specific field. Values resolve late, at plan/apply time.

pa_chore

A Planning Analytics (TM1 Database 12) chore, a schedule that runs an ordered list of tasks (each executing a process) at a start time and frequency. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Chores
ReadGET/Chores('{name}')
ListGET/Chores
UpdatePATCH/Chores('{name}')
DeleteDELETE/Chores('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredChore name, the OData entity key. Immutable identity.
start_timestringOptionalFirst-run timestamp, ISO 8601 date-time (e.g. 2026-01-01T00:00:00Z).
dst_sensitivebooleanOptionalWhether the schedule shifts with daylight-saving transitions.
activebooleanOptionalWhether the chore is scheduled to run. Reconciled by the ChoreHandler via the tm1.Activate/tm1.Deactivate actions (not a writable body property), and compared against the server’s Active on discovery.
execution_modestringOptionalWhether tasks commit together (SingleCommit) or independently (MultipleCommit).
frequencystringOptionalRun interval as an ISO 8601 duration (e.g. P1DT0H0M0S for daily).
tasksarray<object>RequiredOrdered list of tasks, each running one process with optional parameters.
Depends on
  • tasks.processpa_process (required)

pa_cube

A Planning Analytics (TM1 Database 12) cube, an N-dimensional data store defined over an ordered list of dimensions, with optional TM1 rules. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Cubes
ReadGET/Cubes('{name}')
ListGET/Cubes
UpdatePATCH/Cubes('{name}')
DeleteDELETE/Cubes('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredCube name, the OData entity key. Immutable identity.
dimensionsarray<string>RequiredOrdered list of dimension names composing the cube. Immutable (recreate on change).
rulesstringOptionalTM1 rules text (calculations/feeders). PATCHable.
drillthrough_rulesstringOptionalDrillthrough rules text. PATCHable.
Depends on
  • dimensionspa_dimension (required)
Consumers
  • pa_view.cube (required)

pa_dimension

A Planning Analytics (TM1 Database 12) dimension, a named set of members organized into one or more hierarchies. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Dimensions
ReadGET/Dimensions('{name}')
ListGET/Dimensions
UpdatePATCH/Dimensions('{name}')
DeleteDELETE/Dimensions('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredDimension name, the OData entity key. Immutable identity.
hierarchiesarray<object>OptionalInline hierarchies, each carrying its own members (elements) and parent/child relationships (edges). TM1 auto-creates a hierarchy named after the dimension when none is supplied.
Consumers
  • pa_cube.dimensions (required)
  • pa_hierarchy.dimension (required)
  • pa_subset.dimension (required)

pa_group

A Planning Analytics (TM1 Database 12) security group, a named role that users belong to and that cube/dimension security is granted against. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Groups
ReadGET/Groups('{name}')
ListGET/Groups
UpdatePATCH/Groups('{name}')
DeleteDELETE/Groups('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredGroup name, the OData entity key. Immutable identity.
Consumers
  • pa_user.groups (optional)

pa_hierarchy

A hierarchy within a Planning Analytics (TM1 Database 12) dimension, a named tree of members (elements) and parent/child consolidations (edges). Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Dimensions('{dimension}')/Hierarchies
ReadGET/Dimensions('{dimension}')/Hierarchies('{name}')
ListGET/Dimensions('{dimension}')/Hierarchies
UpdatePATCH/Dimensions('{dimension}')/Hierarchies('{name}')
DeleteDELETE/Dimensions('{dimension}')/Hierarchies('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredHierarchy name, the OData entity key within the dimension. Immutable identity.
dimensionstringRequiredParent dimension name. Interpolated into every endpoint’s {dimension} segment (location: Path, never rides the body). Its references block yields the DAG edge pa_dimension -> pa_hierarchy.
elementsarray<object>OptionalMembers of the hierarchy.
edgesarray<object>OptionalParent/child consolidation relationships.
Depends on
  • dimensionpa_dimension (required)

pa_process

A Planning Analytics (TM1 Database 12) TurboIntegrator process, the scripting unit (four procedure stages, a data source, typed parameters and source variables) created via the TM1 REST OData API (/Processes) and identified by its name (the OData entity key). Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Processes
ReadGET/Processes('{name}')
ListGET/Processes
UpdatePATCH/Processes('{name}')
DeleteDELETE/Processes('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredProcess name, the OData entity key. Immutable identity.
has_security_accessbooleanOptionalWhether the process runs with elevated security access.
prolog_procedurestringOptionalTurboIntegrator Prolog-stage script.
metadata_procedurestringOptionalTurboIntegrator Metadata-stage script.
data_procedurestringOptionalTurboIntegrator Data-stage script.
epilog_procedurestringOptionalTurboIntegrator Epilog-stage script.
parametersarray<object>OptionalDeclared process parameters (prompted at execution).
variablesarray<object>OptionalSource-record variables bound by the Data stage.
data_sourceobjectOptionalProcess data source. The TM1 REST OpenAPI models this loosely (only Type is enumerated), so this schema declares the common fields only; Phase 4 live testing may widen it (e.g. ODBC credential fields, which would need sensitive_paths).
Consumers
  • pa_chore.tasks.process (required)

pa_sql_data_source

A Planning Analytics (TM1 Database 12) named SQL data source, a reusable ODBC/SQL connection definition that TurboIntegrator processes read from. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/SQLDataSources
ReadGET/SQLDataSources('{name}')
ListGET/SQLDataSources
UpdatePATCH/SQLDataSources('{name}')
DeleteDELETE/SQLDataSources('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredSQL data source name, the OData entity key. Immutable identity.
descriptionstringOptionalHuman-readable description of the data source. PATCHable.

pa_subset

A named subset of a Planning Analytics (TM1 Database 12) hierarchy, either a static list of members (elements) or a dynamic MDX expression. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Dimensions('{dimension}')/Hierarchies('{hierarchy}')/Subsets
ReadGET/Dimensions('{dimension}')/Hierarchies('{hierarchy}')/Subsets('{name}')
ListGET/Dimensions('{dimension}')/Hierarchies('{hierarchy}')/Subsets
UpdatePATCH/Dimensions('{dimension}')/Hierarchies('{hierarchy}')/Subsets('{name}')
DeleteDELETE/Dimensions('{dimension}')/Hierarchies('{hierarchy}')/Subsets('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredSubset name, the OData entity key within the hierarchy. Immutable identity.
dimensionstringRequiredParent dimension name. Interpolated into every endpoint’s {dimension} segment (location: Path, never rides the body). Its references block yields the DAG edge pa_dimension -> pa_subset.
hierarchystringRequiredParent hierarchy name, interpolated into every endpoint’s {hierarchy} segment (location: Path). No references block: a subset commonly targets the auto-created same-named hierarchy TM1 makes for every dimension, which is NOT a pa_hierarchy resource, so hierarchy is a plain path string that may point at an auto-created (unmanaged) hierarchy. Apply-ordering when it does name a pa_hierarchy is a Phase-4 live concern; no build-time edge is asserted here.
elementsarray<string>OptionalStatic member list. When present (non-empty), the subset is static and SubsetHandler binds each name as Dimensions(‘{dimension}’)/Hierarchies(‘{hierarchy}’)/Elements(‘{e}’).
expressionstringOptionalMDX set expression defining a dynamic subset. When present (and elements absent), the SubsetHandler falls through (HookOutcome::Continue) and the default materializer POSTs Name + Expression. Mutually exclusive with elements.
Depends on
  • dimensionpa_dimension (required)

pa_user

A Planning Analytics (TM1 Database 12) user, a security principal with a password and a set of group memberships. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Users
ReadGET/Users('{name}')
ListGET/Users
UpdatePATCH/Users('{name}')
DeleteDELETE/Users('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredUser name, the OData entity key. Immutable identity.
passwordstringOptionalWrite-only password set at create time. Never returned by the server.
friendly_namestringOptionalDisplay name for the user. PATCHable.
typestringOptionalTM1 user type (UserType enum). Sent at create; excluded from state comparison (server defaulting).
enabledbooleanOptionalWhether the user is enabled. PATCHable.
groupsarray<string>OptionalGroup names this user belongs to. Bound as Groups@odata.bind at create.
Depends on
  • groupspa_group (optional)

pa_view

A Planning Analytics (TM1 Database 12) cube view, a saved query over a cube, either a native axis layout (columns/rows/titles) or an MDX view. Runs on SaaS + Software · ID field name Endpoints
OperationMethodPath
CreatePOST/Cubes('{cube}')/Views
ReadGET/Cubes('{cube}')/Views('{name}')
ListGET/Cubes('{cube}')/Views
UpdatePATCH/Cubes('{cube}')/Views('{name}')
DeleteDELETE/Cubes('{cube}')/Views('{name}')
Fields
FieldTypeRequiredDescription
namestringRequiredView name, the OData entity key within the cube. Immutable identity.
cubestringRequiredParent cube name. Interpolated into every endpoint’s {cube} segment (location: Path, never rides the body). Its references block yields the DAG edge pa_cube -> pa_view.
view_typestringRequiredDiscriminator selecting a native axis view or an MDX view.
mdxstringOptionalMDX query text (mdx views only). Passed through by the handler as MDX.
columnsarray<object>OptionalColumn-axis dimension selections (native views only). Passed through verbatim.
rowsarray<object>OptionalRow-axis dimension selections (native views only). Passed through verbatim as Rows.
titlesarray<object>OptionalTitle (context) dimension selections (native views only). Passed through verbatim as Titles.
Depends on
  • cubepa_cube (required)