recon_gen.common.models
Dataclass models mapping to AWS QuickSight API JSON structures.
Each top-level model (Theme, DataSet, Analysis) has a to_aws_json() method that returns the exact dict shape expected by the corresponding AWS CLI command (create-theme, create-data-set, create-analysis).
Classes
|
|
|
|
|
|
|
The QS AxisDisplayOptions shape — we only populate |
|
Label override for a single axis field. |
|
Bind an |
|
|
|
|
|
Discriminated union — set exactly one variant. |
|
|
|
|
|
|
|
|
|
|
|
UI-level cascade wiring: tells QS to refresh THIS control's options when any of the listed source controls change. |
|
One source control in a CascadingControlConfiguration. |
|
|
|
|
|
|
|
|
|
Axis label options — list of per-field overrides plus visibility. |
|
References a column on a specific dataset by identifier. |
|
|
|
Currency-format wire shape. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Discriminated union — set exactly one variant. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Wire shape for the per-field decimal-places setting. |
|
|
|
|
|
|
|
Union type — set exactly one. |
|
|
|
Union type — set exactly one. |
|
|
|
Union type — set exactly one. |
|
Union type — set exactly one. |
|
|
|
|
|
|
|
|
|
Union type — set exactly one. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
KPI display options. |
|
|
|
|
|
Union type — set exactly one. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Bridges an analysis-level parameter to a dataset-level parameter. |
|
|
|
Union type — set exactly one. |
|
Wrapper carrying the actual format inside its |
|
|
|
Discriminated union — exactly one of the three sub-format configurations is set. |
|
|
|
Set exactly one — a literal bound or a parameter binding. |
|
|
|
|
|
|
|
QuickSight OracleParameters shape (boto3 quicksight create-data-source). |
|
Union type — set exactly one. |
|
Union type — set exactly one. |
|
|
|
|
Free-text input bound to a string parameter. |
|
|
Union type — set exactly one. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Per-column header override for a Table visual (v8.5.0). |
|
Container for per-column table header overrides (v8.5.0). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Union type — set exactly one. |
|
|
|
Union type — set exactly one. |
|
|
|
- class recon_gen.common.models.Analysis(AwsAccountId, AnalysisId, Name, Definition, ThemeArn=None, Permissions=None, Tags=None)[source]
Bases:
object- Parameters:
AwsAccountId (str)
AnalysisId (str)
Name (str)
Definition (AnalysisDefinition)
ThemeArn (str | None)
Permissions (list[ResourcePermission] | None)
Tags (list[Tag] | None)
- AnalysisId: str
- AwsAccountId: str
- Definition: AnalysisDefinition
- Name: str
- Permissions: list[ResourcePermission] | None = None
- ThemeArn: str | None = None
- class recon_gen.common.models.AnalysisDefinition(DataSetIdentifierDeclarations, Sheets=None, FilterGroups=None, ParameterDeclarations=None, CalculatedFields=None, Options=None, AnalysisDefaults=None, QueryExecutionOptions=None)[source]
Bases:
object- Parameters:
DataSetIdentifierDeclarations (list[DataSetIdentifierDeclaration])
Sheets (list[SheetDefinition] | None)
FilterGroups (list[FilterGroup] | None)
ParameterDeclarations (list[ParameterDeclaration] | None)
CalculatedFields (list[dict[str, Any]] | None)
Options (dict[str, Any] | None)
AnalysisDefaults (dict[str, Any] | None)
QueryExecutionOptions (dict[str, Any] | None)
- AnalysisDefaults: dict[str, Any] | None = None
- CalculatedFields: list[dict[str, Any]] | None = None
- DataSetIdentifierDeclarations: list[DataSetIdentifierDeclaration]
- FilterGroups: list[FilterGroup] | None = None
- Options: dict[str, Any] | None = None
- ParameterDeclarations: list[ParameterDeclaration] | None = None
- QueryExecutionOptions: dict[str, Any] | None = None
- Sheets: list[SheetDefinition] | None = None
- class recon_gen.common.models.AxisDataOptions(NumericAxisOptions=None)[source]
Bases:
object- Parameters:
NumericAxisOptions (NumericAxisOptions | None)
- NumericAxisOptions: NumericAxisOptions | None = None
- class recon_gen.common.models.AxisDisplayOptions(DataOptions=None)[source]
Bases:
objectThe QS AxisDisplayOptions shape — we only populate
DataOptionsfor the log-scale path. The other AxisDisplayOptions sub-fields (TickLabelOptions/AxisLineVisibility/GridLineVisibility/ScrollbarOptions/AxisOffset) stay None so QS defaults take over (we want default tick + grid styling on every axis we touch).- Parameters:
DataOptions (AxisDataOptions | None)
- DataOptions: AxisDataOptions | None = None
- class recon_gen.common.models.AxisLabelOptions(CustomLabel=None, ApplyTo=None)[source]
Bases:
objectLabel override for a single axis field.
ApplyTois the binding to a specificFieldId+ dataset column. AWS QuickSight requires it forCustomLabelto render — a label withoutApplyTois parsed cleanly but produces a chart that still shows the raw column name on the axis (silent no-op). v8.6.1 made the field required at the type level after v8.5.5’s auto-derive-but-no-render bug.- Parameters:
CustomLabel (str | None)
ApplyTo (AxisLabelReferenceOptions | None)
- ApplyTo: AxisLabelReferenceOptions | None = None
- CustomLabel: str | None = None
- class recon_gen.common.models.AxisLabelReferenceOptions(FieldId, Column)[source]
Bases:
objectBind an
AxisLabelOptions.CustomLabelto a specific field-well leaf. AWS QuickSight requires theApplyToreference for the custom label to render on the axis — without it,CustomLabelis silently ignored (chart axis renders the raw column name).See quicksight-quirks.md entry on chart axis labels.
- Parameters:
FieldId (str)
Column (ColumnIdentifier)
- Column: ColumnIdentifier
- FieldId: str
- class recon_gen.common.models.AxisLinearScale(StepCount=None, StepSize=None)[source]
Bases:
object- Parameters:
StepCount (float | None)
StepSize (float | None)
- StepCount: float | None = None
- StepSize: float | None = None
- class recon_gen.common.models.AxisLogarithmicScale(Base=None)[source]
Bases:
object- Parameters:
Base (float | None)
- Base: float | None = None
- class recon_gen.common.models.AxisScale(Linear=None, Logarithmic=None)[source]
Bases:
objectDiscriminated union — set exactly one variant. QS rejects the payload if both Linear AND Logarithmic are non-null.
- Parameters:
Linear (AxisLinearScale | None)
Logarithmic (AxisLogarithmicScale | None)
- Linear: AxisLinearScale | None = None
- Logarithmic: AxisLogarithmicScale | None = None
- class recon_gen.common.models.BarChartAggregatedFieldWells(Category=None, Values=None, Colors=None)[source]
Bases:
object- Parameters:
Category (list[DimensionField] | None)
Values (list[MeasureField] | None)
Colors (list[DimensionField] | None)
- Category: list[DimensionField] | None = None
- Colors: list[DimensionField] | None = None
- Values: list[MeasureField] | None = None
- class recon_gen.common.models.BarChartConfiguration(FieldWells=None, Orientation=None, BarsArrangement=None, SortConfiguration=None, CategoryLabelOptions=None, ValueLabelOptions=None, ColorLabelOptions=None, ValueAxis=None)[source]
Bases:
object- Parameters:
FieldWells (BarChartFieldWells | None)
Orientation (str | None)
BarsArrangement (str | None)
SortConfiguration (BarChartSortConfiguration | None)
CategoryLabelOptions (ChartAxisLabelOptions | None)
ValueLabelOptions (ChartAxisLabelOptions | None)
ColorLabelOptions (ChartAxisLabelOptions | None)
ValueAxis (AxisDisplayOptions | None)
- BarsArrangement: str | None = None
- CategoryLabelOptions: ChartAxisLabelOptions | None = None
- ColorLabelOptions: ChartAxisLabelOptions | None = None
- FieldWells: BarChartFieldWells | None = None
- Orientation: str | None = None
- SortConfiguration: BarChartSortConfiguration | None = None
- ValueAxis: AxisDisplayOptions | None = None
- ValueLabelOptions: ChartAxisLabelOptions | None = None
- class recon_gen.common.models.BarChartFieldWells(BarChartAggregatedFieldWells=None)[source]
Bases:
object- Parameters:
BarChartAggregatedFieldWells (BarChartAggregatedFieldWells | None)
- BarChartAggregatedFieldWells: BarChartAggregatedFieldWells | None = None
- class recon_gen.common.models.BarChartSortConfiguration(CategorySort=None)[source]
Bases:
object- Parameters:
CategorySort (list[dict[str, Any]] | None)
- CategorySort: list[dict[str, Any]] | None = None
- class recon_gen.common.models.BarChartVisual(VisualId, Title=None, Subtitle=None, ChartConfiguration=None, Actions=None)[source]
Bases:
object- Parameters:
VisualId (str)
Title (VisualTitleLabelOptions | None)
Subtitle (VisualSubtitleLabelOptions | None)
ChartConfiguration (BarChartConfiguration | None)
Actions (list[VisualCustomAction] | None)
- Actions: list[VisualCustomAction] | None = None
- ChartConfiguration: BarChartConfiguration | None = None
- Subtitle: VisualSubtitleLabelOptions | None = None
- Title: VisualTitleLabelOptions | None = None
- VisualId: str
- class recon_gen.common.models.CascadingControlConfiguration(SourceControls=None)[source]
Bases:
objectUI-level cascade wiring: tells QS to refresh THIS control’s options when any of the listed source controls change.
Required for the M.3.10c metadata cascade — without this, even with MappedDataSetParameters correctly bridging analysis params to dataset params, QS won’t refresh the dependent dropdown’s options when the source dropdown changes (the dataset query substitution stays “pending” until something else triggers a refresh, like a sheet reload).
- Parameters:
SourceControls (list[CascadingControlSource] | None)
- SourceControls: list[CascadingControlSource] | None = None
- class recon_gen.common.models.CascadingControlSource(SourceSheetControlId=None, ColumnToMatch=None)[source]
Bases:
objectOne source control in a CascadingControlConfiguration.
SourceSheetControlIdis the upstream control’s ID; QS refreshes THIS control whenever that source control’s value changes.ColumnToMatchis the documented value-match hint (used by column-on-column cascades); for parameter-bridged cascades it can be the dependent control’s own source column — it doubles as a “this column is the one that varies with the source” marker.- Parameters:
SourceSheetControlId (str | None)
ColumnToMatch (ColumnIdentifier | None)
- ColumnToMatch: ColumnIdentifier | None = None
- SourceSheetControlId: str | None = None
- class recon_gen.common.models.CategoricalDimensionField(FieldId, Column, HierarchyId=None)[source]
Bases:
object- Parameters:
FieldId (str)
Column (ColumnIdentifier)
HierarchyId (str | None)
- Column: ColumnIdentifier
- FieldId: str
- HierarchyId: str | None = None
- class recon_gen.common.models.CategoricalMeasureField(FieldId, Column, AggregationFunction=None)[source]
Bases:
object- Parameters:
FieldId (str)
Column (ColumnIdentifier)
AggregationFunction (str | None)
- AggregationFunction: str | None = None
- Column: ColumnIdentifier
- FieldId: str
- class recon_gen.common.models.CategoryFilter(FilterId, Column, Configuration, DefaultFilterControlConfiguration=None)[source]
Bases:
object- Parameters:
FilterId (str)
Column (ColumnIdentifier)
Configuration (CategoryFilterConfiguration)
DefaultFilterControlConfiguration (DefaultFilterControlConfiguration | None)
- Column: ColumnIdentifier
- Configuration: CategoryFilterConfiguration
- DefaultFilterControlConfiguration: DefaultFilterControlConfiguration | None = None
- FilterId: str
- class recon_gen.common.models.CategoryFilterConfiguration(FilterListConfiguration=None, CustomFilterListConfiguration=None, CustomFilterConfiguration=None)[source]
Bases:
object- Parameters:
FilterListConfiguration (dict[str, Any] | None)
CustomFilterListConfiguration (dict[str, Any] | None)
CustomFilterConfiguration (dict[str, Any] | None)
- CustomFilterConfiguration: dict[str, Any] | None = None
- CustomFilterListConfiguration: dict[str, Any] | None = None
- FilterListConfiguration: dict[str, Any] | None = None
- class recon_gen.common.models.ChartAxisLabelOptions(Visibility='VISIBLE', AxisLabelOptions=None)[source]
Bases:
objectAxis label options — list of per-field overrides plus visibility.
- Parameters:
Visibility (str)
AxisLabelOptions (list[AxisLabelOptions] | None)
- AxisLabelOptions: list[AxisLabelOptions] | None = None
- Visibility: str = 'VISIBLE'
- class recon_gen.common.models.ColumnIdentifier(DataSetIdentifier, ColumnName)[source]
Bases:
objectReferences a column on a specific dataset by identifier.
Reused across many AWS QuickSight shapes — every typed field-well leaf (CategoricalDimensionField, DateDimensionField, etc.) and cascading control source carries one.
- Parameters:
DataSetIdentifier (str)
ColumnName (str)
- ColumnName: str
- DataSetIdentifier: str
- class recon_gen.common.models.CredentialPair(Username, Password)[source]
Bases:
object- Parameters:
Username (str)
Password (str)
- Password: str
- Username: str
- class recon_gen.common.models.CurrencyDisplayFormatConfiguration(Symbol=None, DecimalPlacesConfiguration=None, SeparatorConfiguration=None)[source]
Bases:
objectCurrency-format wire shape.
Symbolis an ISO 4217 code ("USD"); QuickSight renders the appropriate symbol prefix ($for USD, etc.) automatically.- Parameters:
Symbol (str | None)
DecimalPlacesConfiguration (DecimalPlacesConfiguration | None)
SeparatorConfiguration (SeparatorConfiguration | None)
- DecimalPlacesConfiguration: DecimalPlacesConfiguration | None = None
- SeparatorConfiguration: SeparatorConfiguration | None = None
- Symbol: str | None = None
- class recon_gen.common.models.CustomActionFilterOperation(SelectedFieldsConfiguration, TargetVisualsConfiguration)[source]
Bases:
object- Parameters:
SelectedFieldsConfiguration (FilterOperationSelectedFieldsConfiguration)
TargetVisualsConfiguration (FilterOperationTargetVisualsConfiguration)
- SelectedFieldsConfiguration: FilterOperationSelectedFieldsConfiguration
- TargetVisualsConfiguration: FilterOperationTargetVisualsConfiguration
Bases:
object- Parameters:
LocalNavigationConfiguration (LocalNavigationConfiguration)
- class recon_gen.common.models.CustomActionSetParametersOperation(ParameterValueConfigurations)[source]
Bases:
object- Parameters:
ParameterValueConfigurations (list[dict[str, Any]])
- ParameterValueConfigurations: list[dict[str, Any]]
- class recon_gen.common.models.CustomSql(Name, DataSourceArn, SqlQuery, Columns)[source]
Bases:
object- Parameters:
Name (str)
DataSourceArn (str)
SqlQuery (str)
Columns (list[InputColumn])
- Columns: list[InputColumn]
- DataSourceArn: str
- Name: str
- SqlQuery: str
- class recon_gen.common.models.Dashboard(AwsAccountId, DashboardId, Name, Definition, ThemeArn=None, Permissions=None, Tags=None, VersionDescription=None, DashboardPublishOptions=None, LinkSharingConfiguration=None)[source]
Bases:
object- Parameters:
AwsAccountId (str)
DashboardId (str)
Name (str)
Definition (AnalysisDefinition)
ThemeArn (str | None)
Permissions (list[ResourcePermission] | None)
Tags (list[Tag] | None)
VersionDescription (str | None)
DashboardPublishOptions (DashboardPublishOptions | None)
LinkSharingConfiguration (LinkSharingConfiguration | None)
- AwsAccountId: str
- DashboardId: str
- DashboardPublishOptions: DashboardPublishOptions | None = None
- Definition: AnalysisDefinition
- LinkSharingConfiguration: LinkSharingConfiguration | None = None
- Name: str
- Permissions: list[ResourcePermission] | None = None
- ThemeArn: str | None = None
- VersionDescription: str | None = None
- class recon_gen.common.models.DashboardPublishOptions(AdHocFilteringOption=None, ExportToCSVOption=None, SheetControlsOption=None)[source]
Bases:
object- Parameters:
AdHocFilteringOption (dict[str, str] | None)
ExportToCSVOption (dict[str, str] | None)
SheetControlsOption (dict[str, str] | None)
- AdHocFilteringOption: dict[str, str] | None = None
- ExportToCSVOption: dict[str, str] | None = None
- SheetControlsOption: dict[str, str] | None = None
- class recon_gen.common.models.DataColorPalette(Colors=None, EmptyFillColor=None, MinMaxGradient=None)[source]
Bases:
object- Parameters:
Colors (list[str] | None)
EmptyFillColor (str | None)
MinMaxGradient (list[str] | None)
- Colors: list[str] | None = None
- EmptyFillColor: str | None = None
- MinMaxGradient: list[str] | None = None
- class recon_gen.common.models.DataSet(AwsAccountId, DataSetId, Name, PhysicalTableMap, ImportMode='DIRECT_QUERY', LogicalTableMap=None, DataSetUsageConfiguration=None, Permissions=None, Tags=None, DatasetParameters=None)[source]
Bases:
object- Parameters:
AwsAccountId (str)
DataSetId (str)
Name (str)
PhysicalTableMap (dict[str, PhysicalTable])
ImportMode (str)
LogicalTableMap (dict[str, LogicalTable] | None)
DataSetUsageConfiguration (DataSetUsageConfiguration | None)
Permissions (list[ResourcePermission] | None)
Tags (list[Tag] | None)
DatasetParameters (list[DatasetParameter] | None)
- AwsAccountId: str
- DataSetId: str
- DataSetUsageConfiguration: DataSetUsageConfiguration | None = None
- DatasetParameters: list[DatasetParameter] | None = None
- ImportMode: str = 'DIRECT_QUERY'
- LogicalTableMap: dict[str, LogicalTable] | None = None
- Name: str
- Permissions: list[ResourcePermission] | None = None
- PhysicalTableMap: dict[str, PhysicalTable]
- class recon_gen.common.models.DataSetIdentifierDeclaration(Identifier, DataSetArn)[source]
Bases:
object- Parameters:
Identifier (str)
DataSetArn (str)
- DataSetArn: str
- Identifier: str
- class recon_gen.common.models.DataSetUsageConfiguration(DisableUseAsDirectQuerySource=False, DisableUseAsImportedSource=False)[source]
Bases:
object- Parameters:
DisableUseAsDirectQuerySource (bool)
DisableUseAsImportedSource (bool)
- DisableUseAsDirectQuerySource: bool = False
- DisableUseAsImportedSource: bool = False
- class recon_gen.common.models.DataSource(AwsAccountId, DataSourceId, Name, Type, DataSourceParameters, Credentials=None, SslProperties=None, Permissions=None, Tags=None)[source]
Bases:
object- Parameters:
AwsAccountId (str)
DataSourceId (str)
Name (str)
Type (str)
DataSourceParameters (DataSourceParameters)
Credentials (DataSourceCredentials | None)
SslProperties (SslProperties | None)
Permissions (list[ResourcePermission] | None)
Tags (list[Tag] | None)
- AwsAccountId: str
- Credentials: DataSourceCredentials | None = None
- DataSourceId: str
- DataSourceParameters: DataSourceParameters
- Name: str
- Permissions: list[ResourcePermission] | None = None
- SslProperties: SslProperties | None = None
- Type: str
- class recon_gen.common.models.DataSourceCredentials(CredentialPair=None)[source]
Bases:
object- Parameters:
CredentialPair (CredentialPair | None)
- CredentialPair: CredentialPair | None = None
- class recon_gen.common.models.DataSourceParameters(PostgreSqlParameters=None, OracleParameters=None)[source]
Bases:
object- Parameters:
PostgreSqlParameters (PostgreSqlParameters | None)
OracleParameters (OracleParameters | None)
- OracleParameters: OracleParameters | None = None
- PostgreSqlParameters: PostgreSqlParameters | None = None
- class recon_gen.common.models.DatasetParameter(StringDatasetParameter=None, IntegerDatasetParameter=None, DecimalDatasetParameter=None, DateTimeDatasetParameter=None)[source]
Bases:
objectDiscriminated union — set exactly one variant.
- Parameters:
StringDatasetParameter (StringDatasetParameter | None)
IntegerDatasetParameter (IntegerDatasetParameter | None)
DecimalDatasetParameter (DecimalDatasetParameter | None)
DateTimeDatasetParameter (DateTimeDatasetParameter | None)
- DateTimeDatasetParameter: DateTimeDatasetParameter | None = None
- DecimalDatasetParameter: DecimalDatasetParameter | None = None
- IntegerDatasetParameter: IntegerDatasetParameter | None = None
- StringDatasetParameter: StringDatasetParameter | None = None
- class recon_gen.common.models.DateDimensionField(FieldId, Column, DateGranularity=None, HierarchyId=None)[source]
Bases:
object- Parameters:
FieldId (str)
Column (ColumnIdentifier)
DateGranularity (str | None)
HierarchyId (str | None)
- Column: ColumnIdentifier
- DateGranularity: str | None = None
- FieldId: str
- HierarchyId: str | None = None
- class recon_gen.common.models.DateMeasureField(FieldId, Column, AggregationFunction=None)[source]
Bases:
object- Parameters:
FieldId (str)
Column (ColumnIdentifier)
AggregationFunction (str | None)
- AggregationFunction: str | None = None
- Column: ColumnIdentifier
- FieldId: str
- class recon_gen.common.models.DateTimeDatasetParameter(*, Id='', Name, ValueType, TimeGranularity=None, DefaultValues=None)[source]
Bases:
object- Parameters:
Id (str)
Name (str)
ValueType (str)
TimeGranularity (str | None)
DefaultValues (DateTimeDatasetParameterDefaultValues | None)
- DefaultValues: DateTimeDatasetParameterDefaultValues | None = None
- Id: str = ''
- Name: str
- TimeGranularity: str | None = None
- ValueType: str
- class recon_gen.common.models.DateTimeDatasetParameterDefaultValues(StaticValues=None)[source]
Bases:
object- Parameters:
StaticValues (list[str] | None)
- StaticValues: list[str] | None = None
- class recon_gen.common.models.DateTimeDefaultValues(StaticValues=None, DynamicValue=None, RollingDate=None)[source]
Bases:
object- Parameters:
StaticValues (list[str] | None)
DynamicValue (dict[str, Any] | None)
RollingDate (dict[str, Any] | None)
- DynamicValue: dict[str, Any] | None = None
- RollingDate: dict[str, Any] | None = None
- StaticValues: list[str] | None = None
- class recon_gen.common.models.DateTimeParameterDeclaration(Name, TimeGranularity=None, DefaultValues=None, ValueWhenUnset=None, MappedDataSetParameters=None)[source]
Bases:
object- Parameters:
Name (str)
TimeGranularity (str | None)
DefaultValues (DateTimeDefaultValues | None)
ValueWhenUnset (dict[str, Any] | None)
MappedDataSetParameters (list[MappedDataSetParameter] | None)
- DefaultValues: DateTimeDefaultValues | None = None
- MappedDataSetParameters: list[MappedDataSetParameter] | None = None
- Name: str
- TimeGranularity: str | None = None
- ValueWhenUnset: dict[str, Any] | None = None
- class recon_gen.common.models.DecimalDatasetParameter(*, Id='', Name, ValueType, DefaultValues=None)[source]
Bases:
object- Parameters:
Id (str)
Name (str)
ValueType (str)
DefaultValues (DecimalDatasetParameterDefaultValues | None)
- DefaultValues: DecimalDatasetParameterDefaultValues | None = None
- Id: str = ''
- Name: str
- ValueType: str
- class recon_gen.common.models.DecimalDatasetParameterDefaultValues(StaticValues=None)[source]
Bases:
object- Parameters:
StaticValues (list[float] | None)
- StaticValues: list[float] | None = None
- class recon_gen.common.models.DecimalPlacesConfiguration(DecimalPlaces)[source]
Bases:
objectWire shape for the per-field decimal-places setting.
- Parameters:
DecimalPlaces (int)
- DecimalPlaces: int
- class recon_gen.common.models.DefaultDateTimePickerControlOptions(Type='DATE_RANGE', CommitMode=None)[source]
Bases:
object- Parameters:
Type (str)
CommitMode (str | None)
- CommitMode: str | None = None
- Type: str = 'DATE_RANGE'
- class recon_gen.common.models.DefaultDropdownControlOptions(Type='MULTI_SELECT', CommitMode=None)[source]
Bases:
object- Parameters:
Type (str)
CommitMode (str | None)
- CommitMode: str | None = None
- Type: str = 'MULTI_SELECT'
- class recon_gen.common.models.DefaultFilterControlConfiguration(Title, ControlOptions)[source]
Bases:
object- Parameters:
Title (str)
ControlOptions (DefaultFilterControlOptions)
- ControlOptions: DefaultFilterControlOptions
- Title: str
- class recon_gen.common.models.DefaultFilterControlOptions(DefaultDateTimePickerOptions=None, DefaultDropdownOptions=None, DefaultSliderOptions=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
DefaultDateTimePickerOptions (DefaultDateTimePickerControlOptions | None)
DefaultDropdownOptions (DefaultDropdownControlOptions | None)
DefaultSliderOptions (DefaultSliderControlOptions | None)
- DefaultDateTimePickerOptions: DefaultDateTimePickerControlOptions | None = None
- DefaultDropdownOptions: DefaultDropdownControlOptions | None = None
- DefaultSliderOptions: DefaultSliderControlOptions | None = None
- class recon_gen.common.models.DefaultSliderControlOptions(MaximumValue, MinimumValue, StepSize, Type='SINGLE_POINT')[source]
Bases:
object- Parameters:
MaximumValue (float)
MinimumValue (float)
StepSize (float)
Type (str)
- MaximumValue: float
- MinimumValue: float
- StepSize: float
- Type: str = 'SINGLE_POINT'
- class recon_gen.common.models.DimensionField(CategoricalDimensionField=None, DateDimensionField=None, NumericalDimensionField=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
CategoricalDimensionField (CategoricalDimensionField | None)
DateDimensionField (DateDimensionField | None)
NumericalDimensionField (NumericalDimensionField | None)
- CategoricalDimensionField: CategoricalDimensionField | None = None
- DateDimensionField: DateDimensionField | None = None
- NumericalDimensionField: NumericalDimensionField | None = None
- class recon_gen.common.models.DonutOptions(ArcOptions=None)[source]
Bases:
object- Parameters:
ArcOptions (dict[str, str] | None)
- ArcOptions: dict[str, str] | None = None
- class recon_gen.common.models.Filter(CategoryFilter=None, TimeRangeFilter=None, TimeEqualityFilter=None, NumericRangeFilter=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
CategoryFilter (CategoryFilter | None)
TimeRangeFilter (TimeRangeFilter | None)
TimeEqualityFilter (TimeEqualityFilter | None)
NumericRangeFilter (NumericRangeFilter | None)
- CategoryFilter: CategoryFilter | None = None
- NumericRangeFilter: NumericRangeFilter | None = None
- TimeEqualityFilter: TimeEqualityFilter | None = None
- TimeRangeFilter: TimeRangeFilter | None = None
- class recon_gen.common.models.FilterControl(Dropdown=None, DateTimePicker=None, Slider=None, CrossSheet=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
Dropdown (FilterDropDownControl | None)
DateTimePicker (FilterDateTimePickerControl | None)
Slider (FilterSliderControl | None)
CrossSheet (FilterCrossSheetControl | None)
- CrossSheet: FilterCrossSheetControl | None = None
- DateTimePicker: FilterDateTimePickerControl | None = None
- Dropdown: FilterDropDownControl | None = None
- Slider: FilterSliderControl | None = None
- class recon_gen.common.models.FilterCrossSheetControl(FilterControlId, SourceFilterId)[source]
Bases:
object- Parameters:
FilterControlId (str)
SourceFilterId (str)
- FilterControlId: str
- SourceFilterId: str
- class recon_gen.common.models.FilterDateTimePickerControl(FilterControlId, Title, SourceFilterId, Type=None)[source]
Bases:
object- Parameters:
FilterControlId (str)
Title (str)
SourceFilterId (str)
Type (str | None)
- FilterControlId: str
- SourceFilterId: str
- Title: str
- Type: str | None = None
- class recon_gen.common.models.FilterDropDownControl(FilterControlId, Title, SourceFilterId, Type=None, SelectableValues=None)[source]
Bases:
object- Parameters:
FilterControlId (str)
Title (str)
SourceFilterId (str)
Type (str | None)
SelectableValues (dict[str, Any] | None)
- FilterControlId: str
- SelectableValues: dict[str, Any] | None = None
- SourceFilterId: str
- Title: str
- Type: str | None = None
- class recon_gen.common.models.FilterGroup(FilterGroupId, Filters, ScopeConfiguration, CrossDataset='SINGLE_DATASET', Status=None)[source]
Bases:
object- Parameters:
FilterGroupId (str)
Filters (list[Filter])
ScopeConfiguration (FilterScopeConfiguration)
CrossDataset (Literal['SINGLE_DATASET', 'ALL_DATASETS'])
Status (Literal['ENABLED', 'DISABLED'] | None)
- ALL_DATASETS: ClassVar[Literal['ALL_DATASETS']] = 'ALL_DATASETS'
- CrossDataset: Literal['SINGLE_DATASET', 'ALL_DATASETS'] = 'SINGLE_DATASET'
- DISABLED: ClassVar[Literal['DISABLED']] = 'DISABLED'
- ENABLED: ClassVar[Literal['ENABLED']] = 'ENABLED'
- FilterGroupId: str
- SINGLE_DATASET: ClassVar[Literal['SINGLE_DATASET']] = 'SINGLE_DATASET'
- ScopeConfiguration: FilterScopeConfiguration
- Status: Literal['ENABLED', 'DISABLED'] | None = None
- class recon_gen.common.models.FilterOperationSelectedFieldsConfiguration(SelectedFieldOptions=None, SelectedFields=None, SelectedColumns=None)[source]
Bases:
object- Parameters:
SelectedFieldOptions (str | None)
SelectedFields (list[str] | None)
SelectedColumns (list[ColumnIdentifier] | None)
- SelectedColumns: list[ColumnIdentifier] | None = None
- SelectedFieldOptions: str | None = None
- SelectedFields: list[str] | None = None
- class recon_gen.common.models.FilterOperationTargetVisualsConfiguration(SameSheetTargetVisualConfiguration=None)[source]
Bases:
object- Parameters:
SameSheetTargetVisualConfiguration (SameSheetTargetVisualConfiguration | None)
- SameSheetTargetVisualConfiguration: SameSheetTargetVisualConfiguration | None = None
- class recon_gen.common.models.FilterScopeConfiguration(AllSheets=None, SelectedSheets=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
AllSheets (AllSheetsFilterScopeConfiguration | None)
SelectedSheets (SelectedSheetsFilterScopeConfiguration | None)
- AllSheets: AllSheetsFilterScopeConfiguration | None = None
- SelectedSheets: SelectedSheetsFilterScopeConfiguration | None = None
- class recon_gen.common.models.FilterSliderControl(FilterControlId, Title, SourceFilterId, MaximumValue, MinimumValue, StepSize, Type=None)[source]
Bases:
object- Parameters:
FilterControlId (str)
Title (str)
SourceFilterId (str)
MaximumValue (float)
MinimumValue (float)
StepSize (float)
Type (str | None)
- FilterControlId: str
- MaximumValue: float
- MinimumValue: float
- SourceFilterId: str
- StepSize: float
- Title: str
- Type: str | None = None
- class recon_gen.common.models.FontFamily(FontFamily)[source]
Bases:
object- Parameters:
FontFamily (str)
- FontFamily: str
- class recon_gen.common.models.FreeFormLayoutConfiguration(Elements)[source]
Bases:
object- Parameters:
Elements (list[FreeFormLayoutElement])
- Elements: list[FreeFormLayoutElement]
- class recon_gen.common.models.FreeFormLayoutElement(ElementId, ElementType, XAxisLocation, YAxisLocation, Width, Height, Visibility='VISIBLE')[source]
Bases:
object- Parameters:
ElementId (str)
ElementType (Literal['VISUAL', 'FILTER_CONTROL', 'PARAMETER_CONTROL', 'TEXT_BOX', 'IMAGE'])
XAxisLocation (str)
YAxisLocation (str)
Width (str)
Height (str)
Visibility (str)
- ElementId: str
- ElementType: Literal['VISUAL', 'FILTER_CONTROL', 'PARAMETER_CONTROL', 'TEXT_BOX', 'IMAGE']
- FILTER_CONTROL: ClassVar[Literal['FILTER_CONTROL']] = 'FILTER_CONTROL'
- Height: str
- IMAGE: ClassVar[Literal['IMAGE']] = 'IMAGE'
- PARAMETER_CONTROL: ClassVar[Literal['PARAMETER_CONTROL']] = 'PARAMETER_CONTROL'
- TEXT_BOX: ClassVar[Literal['TEXT_BOX']] = 'TEXT_BOX'
- VISUAL: ClassVar[Literal['VISUAL']] = 'VISUAL'
- Visibility: str = 'VISIBLE'
- Width: str
- XAxisLocation: str
- YAxisLocation: str
- class recon_gen.common.models.GridLayoutConfiguration(Elements, CanvasSizeOptions=None)[source]
Bases:
object- Parameters:
Elements (list[GridLayoutElement])
CanvasSizeOptions (dict[str, Any] | None)
- CanvasSizeOptions: dict[str, Any] | None = None
- Elements: list[GridLayoutElement]
- class recon_gen.common.models.GridLayoutElement(ElementId, ElementType, ColumnSpan, RowSpan, ColumnIndex=None, RowIndex=None, Padding=None)[source]
Bases:
object- Parameters:
ElementId (str)
ElementType (Literal['VISUAL', 'FILTER_CONTROL', 'PARAMETER_CONTROL', 'TEXT_BOX', 'IMAGE'])
ColumnSpan (int)
RowSpan (int)
ColumnIndex (int | None)
RowIndex (int | None)
Padding (str | None)
- ColumnIndex: int | None = None
- ColumnSpan: int
- ElementId: str
- ElementType: Literal['VISUAL', 'FILTER_CONTROL', 'PARAMETER_CONTROL', 'TEXT_BOX', 'IMAGE']
- FILTER_CONTROL: ClassVar[Literal['FILTER_CONTROL']] = 'FILTER_CONTROL'
- IMAGE: ClassVar[Literal['IMAGE']] = 'IMAGE'
- PARAMETER_CONTROL: ClassVar[Literal['PARAMETER_CONTROL']] = 'PARAMETER_CONTROL'
- Padding: str | None = None
- RowIndex: int | None = None
- RowSpan: int
- TEXT_BOX: ClassVar[Literal['TEXT_BOX']] = 'TEXT_BOX'
- VISUAL: ClassVar[Literal['VISUAL']] = 'VISUAL'
- class recon_gen.common.models.Gutter(Show=None)[source]
Bases:
object- Parameters:
Show (bool | None)
- Show: bool | None = None
- class recon_gen.common.models.InputColumn(Name, Type, SubType=None)[source]
Bases:
object- Parameters:
Name (str)
Type (str)
SubType (str | None)
- Name: str
- SubType: str | None = None
- Type: str
- class recon_gen.common.models.IntegerDatasetParameter(*, Id='', Name, ValueType, DefaultValues=None)[source]
Bases:
object- Parameters:
Id (str)
Name (str)
ValueType (str)
DefaultValues (IntegerDatasetParameterDefaultValues | None)
- DefaultValues: IntegerDatasetParameterDefaultValues | None = None
- Id: str = ''
- Name: str
- ValueType: str
- class recon_gen.common.models.IntegerDatasetParameterDefaultValues(StaticValues=None)[source]
Bases:
object- Parameters:
StaticValues (list[int] | None)
- StaticValues: list[int] | None = None
- class recon_gen.common.models.IntegerParameterDeclaration(ParameterValueType, Name, DefaultValues, MappedDataSetParameters=None, ValueWhenUnset=None)[source]
Bases:
object- Parameters:
ParameterValueType (str)
Name (str)
DefaultValues (dict[str, Any])
MappedDataSetParameters (list[MappedDataSetParameter] | None)
ValueWhenUnset (dict[str, Any] | None)
- DefaultValues: dict[str, Any]
- MappedDataSetParameters: list[MappedDataSetParameter] | None = None
- Name: str
- ParameterValueType: str
- ValueWhenUnset: dict[str, Any] | None = None
- class recon_gen.common.models.KPIConfiguration(FieldWells=None, KPIOptions=None)[source]
Bases:
object- Parameters:
FieldWells (KPIFieldWells | None)
KPIOptions (KPIOptions | None)
- FieldWells: KPIFieldWells | None = None
- KPIOptions: KPIOptions | None = None
- class recon_gen.common.models.KPIFieldWells(Values=None, TargetValues=None, TrendGroups=None)[source]
Bases:
object- Parameters:
Values (list[MeasureField] | None)
TargetValues (list[MeasureField] | None)
TrendGroups (list[DimensionField] | None)
- TargetValues: list[MeasureField] | None = None
- TrendGroups: list[DimensionField] | None = None
- Values: list[MeasureField] | None = None
- class recon_gen.common.models.KPIOptions(Comparison=None, PrimaryValueDisplayType=None, SecondaryValueFontConfiguration=None, Sparkline=None, VisualLayoutOptions=None)[source]
Bases:
objectKPI display options.
QS rejects partial KPIOptions when the field-well has no TargetValue/TrendGroup (verified against hand-built control KPI on 2026-04-29 — KPIOptions(PrimaryValueDisplayType=”ACTUAL”) alone got rejected with “Only PrimaryValueFontSize display property can be defined…”). The hand-built shape — Comparison + PrimaryValueDisplayType + SecondaryValueFontConfiguration + Sparkline + VisualLayoutOptions — is the smallest set QS UI produces and accepts. Tree’s KPI.emit() defaults to that shape.
- Parameters:
Comparison (dict[str, Any] | None)
PrimaryValueDisplayType (str | None)
SecondaryValueFontConfiguration (dict[str, Any] | None)
Sparkline (dict[str, Any] | None)
VisualLayoutOptions (dict[str, Any] | None)
- Comparison: dict[str, Any] | None = None
- PrimaryValueDisplayType: str | None = None
- SecondaryValueFontConfiguration: dict[str, Any] | None = None
- Sparkline: dict[str, Any] | None = None
- VisualLayoutOptions: dict[str, Any] | None = None
- class recon_gen.common.models.KPIVisual(VisualId, Title=None, Subtitle=None, ChartConfiguration=None, ConditionalFormatting=None)[source]
Bases:
object- Parameters:
VisualId (str)
Title (VisualTitleLabelOptions | None)
Subtitle (VisualSubtitleLabelOptions | None)
ChartConfiguration (KPIConfiguration | None)
ConditionalFormatting (dict[str, Any] | None)
- ChartConfiguration: KPIConfiguration | None = None
- ConditionalFormatting: dict[str, Any] | None = None
- Subtitle: VisualSubtitleLabelOptions | None = None
- Title: VisualTitleLabelOptions | None = None
- VisualId: str
- class recon_gen.common.models.Layout(Configuration)[source]
Bases:
object- Parameters:
Configuration (LayoutConfiguration)
- Configuration: LayoutConfiguration
- class recon_gen.common.models.LayoutConfiguration(GridLayout=None, FreeFormLayout=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
GridLayout (GridLayoutConfiguration | None)
FreeFormLayout (FreeFormLayoutConfiguration | None)
- FreeFormLayout: FreeFormLayoutConfiguration | None = None
- GridLayout: GridLayoutConfiguration | None = None
- class recon_gen.common.models.LineChartAggregatedFieldWells(Category=None, Values=None, Colors=None)[source]
Bases:
object- Parameters:
Category (list[DimensionField] | None)
Values (list[MeasureField] | None)
Colors (list[DimensionField] | None)
- Category: list[DimensionField] | None = None
- Colors: list[DimensionField] | None = None
- Values: list[MeasureField] | None = None
- class recon_gen.common.models.LineChartConfiguration(FieldWells=None, Type=None, SortConfiguration=None, XAxisLabelOptions=None, PrimaryYAxisLabelOptions=None)[source]
Bases:
object- Parameters:
FieldWells (LineChartFieldWells | None)
Type (str | None)
SortConfiguration (LineChartSortConfiguration | None)
XAxisLabelOptions (ChartAxisLabelOptions | None)
PrimaryYAxisLabelOptions (ChartAxisLabelOptions | None)
- FieldWells: LineChartFieldWells | None = None
- PrimaryYAxisLabelOptions: ChartAxisLabelOptions | None = None
- SortConfiguration: LineChartSortConfiguration | None = None
- Type: str | None = None
- XAxisLabelOptions: ChartAxisLabelOptions | None = None
- class recon_gen.common.models.LineChartFieldWells(LineChartAggregatedFieldWells=None)[source]
Bases:
object- Parameters:
LineChartAggregatedFieldWells (LineChartAggregatedFieldWells | None)
- LineChartAggregatedFieldWells: LineChartAggregatedFieldWells | None = None
- class recon_gen.common.models.LineChartSortConfiguration(CategorySort=None)[source]
Bases:
object- Parameters:
CategorySort (list[dict[str, Any]] | None)
- CategorySort: list[dict[str, Any]] | None = None
- class recon_gen.common.models.LineChartVisual(VisualId, Title=None, Subtitle=None, ChartConfiguration=None, Actions=None)[source]
Bases:
object- Parameters:
VisualId (str)
Title (VisualTitleLabelOptions | None)
Subtitle (VisualSubtitleLabelOptions | None)
ChartConfiguration (LineChartConfiguration | None)
Actions (list[VisualCustomAction] | None)
- Actions: list[VisualCustomAction] | None = None
- ChartConfiguration: LineChartConfiguration | None = None
- Subtitle: VisualSubtitleLabelOptions | None = None
- Title: VisualTitleLabelOptions | None = None
- VisualId: str
- class recon_gen.common.models.LinkSharingConfiguration(Permissions=None)[source]
Bases:
object- Parameters:
Permissions (list[ResourcePermission] | None)
- Permissions: list[ResourcePermission] | None = None
Bases:
object- Parameters:
TargetSheetId (str)
- class recon_gen.common.models.LogicalTable(Alias, Source, DataTransforms=None)[source]
Bases:
object- Parameters:
Alias (str)
Source (LogicalTableSource)
DataTransforms (list[dict[str, Any]] | None)
- Alias: str
- DataTransforms: list[dict[str, Any]] | None = None
- Source: LogicalTableSource
- class recon_gen.common.models.LogicalTableSource(PhysicalTableId=None, DataSetArn=None)[source]
Bases:
object- Parameters:
PhysicalTableId (str | None)
DataSetArn (str | None)
- DataSetArn: str | None = None
- PhysicalTableId: str | None = None
- class recon_gen.common.models.MappedDataSetParameter(DataSetIdentifier, DataSetParameterName)[source]
Bases:
objectBridges an analysis-level parameter to a dataset-level parameter.
When the analysis parameter changes, QuickSight pushes the value into the named dataset parameter — which then substitutes into the dataset’s CustomSql via
<<$paramName>>at query time. The mapping list lives on the analysis ParameterDeclaration variant (StringParameterDeclaration, etc.).- Parameters:
DataSetIdentifier (str)
DataSetParameterName (str)
- DataSetIdentifier: str
- DataSetParameterName: str
- class recon_gen.common.models.Margin(Show=None)[source]
Bases:
object- Parameters:
Show (bool | None)
- Show: bool | None = None
- class recon_gen.common.models.MeasureField(NumericalMeasureField=None, CategoricalMeasureField=None, DateMeasureField=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
NumericalMeasureField (NumericalMeasureField | None)
CategoricalMeasureField (CategoricalMeasureField | None)
DateMeasureField (DateMeasureField | None)
- CategoricalMeasureField: CategoricalMeasureField | None = None
- DateMeasureField: DateMeasureField | None = None
- NumericalMeasureField: NumericalMeasureField | None = None
- class recon_gen.common.models.NumberFormatConfiguration(FormatConfiguration=None)[source]
Bases:
objectWrapper carrying the actual format inside its
FormatConfigurationslot — this two-level nesting matches the AWS QuickSight wire schema.- Parameters:
FormatConfiguration (NumericFormatConfiguration | None)
- FormatConfiguration: NumericFormatConfiguration | None = None
- class recon_gen.common.models.NumericAxisOptions(Scale=None)[source]
Bases:
object- Parameters:
Scale (AxisScale | None)
- class recon_gen.common.models.NumericFormatConfiguration(NumberDisplayFormatConfiguration=None, CurrencyDisplayFormatConfiguration=None, PercentageDisplayFormatConfiguration=None)[source]
Bases:
objectDiscriminated union — exactly one of the three sub-format configurations is set.
- Parameters:
NumberDisplayFormatConfiguration (dict[str, Any] | None)
CurrencyDisplayFormatConfiguration (CurrencyDisplayFormatConfiguration | None)
PercentageDisplayFormatConfiguration (dict[str, Any] | None)
- CurrencyDisplayFormatConfiguration: CurrencyDisplayFormatConfiguration | None = None
- NumberDisplayFormatConfiguration: dict[str, Any] | None = None
- PercentageDisplayFormatConfiguration: dict[str, Any] | None = None
- class recon_gen.common.models.NumericRangeFilter(FilterId, Column, NullOption='NON_NULLS_ONLY', RangeMinimum=None, RangeMaximum=None, IncludeMinimum=None, IncludeMaximum=None, DefaultFilterControlConfiguration=None)[source]
Bases:
object- Parameters:
FilterId (str)
Column (ColumnIdentifier)
NullOption (str)
RangeMinimum (NumericRangeFilterValue | None)
RangeMaximum (NumericRangeFilterValue | None)
IncludeMinimum (bool | None)
IncludeMaximum (bool | None)
DefaultFilterControlConfiguration (DefaultFilterControlConfiguration | None)
- Column: ColumnIdentifier
- DefaultFilterControlConfiguration: DefaultFilterControlConfiguration | None = None
- FilterId: str
- IncludeMaximum: bool | None = None
- IncludeMinimum: bool | None = None
- NullOption: str = 'NON_NULLS_ONLY'
- RangeMaximum: NumericRangeFilterValue | None = None
- RangeMinimum: NumericRangeFilterValue | None = None
- class recon_gen.common.models.NumericRangeFilterValue(StaticValue=None, Parameter=None)[source]
Bases:
objectSet exactly one — a literal bound or a parameter binding.
- Parameters:
StaticValue (float | None)
Parameter (str | None)
- Parameter: str | None = None
- StaticValue: float | None = None
- class recon_gen.common.models.NumericalAggregationFunction(SimpleNumericalAggregation=None)[source]
Bases:
object- Parameters:
SimpleNumericalAggregation (str | None)
- SimpleNumericalAggregation: str | None = None
- class recon_gen.common.models.NumericalDimensionField(FieldId, Column, HierarchyId=None, FormatConfiguration=None)[source]
Bases:
object- Parameters:
FieldId (str)
Column (ColumnIdentifier)
HierarchyId (str | None)
FormatConfiguration (NumberFormatConfiguration | None)
- Column: ColumnIdentifier
- FieldId: str
- FormatConfiguration: NumberFormatConfiguration | None = None
- HierarchyId: str | None = None
- class recon_gen.common.models.NumericalMeasureField(FieldId, Column, AggregationFunction=None, FormatConfiguration=None)[source]
Bases:
object- Parameters:
FieldId (str)
Column (ColumnIdentifier)
AggregationFunction (NumericalAggregationFunction | None)
FormatConfiguration (NumberFormatConfiguration | None)
- AggregationFunction: NumericalAggregationFunction | None = None
- Column: ColumnIdentifier
- FieldId: str
- FormatConfiguration: NumberFormatConfiguration | None = None
- class recon_gen.common.models.OracleParameters(Host, Port, Database, UseServiceName=True)[source]
Bases:
objectQuickSight OracleParameters shape (boto3 quicksight create-data-source).
Per the AWS QuickSight API: -
Host— RDS Oracle endpoint hostname. -Port— listener port (defaults 1521). -Database— SID or service name (e.g.ORCL). -UseServiceName— when True,Databaseis treated as aservice name; when False (AWS default), as a SID.
UseServiceNamedefaults True on this dataclass because RDS Oracle endpoints (and Aurora Oracle) connect via service name — the SID-style interpretation only matches older self-managed Oracle installs. Override at construction if needed.- Parameters:
Host (str)
Port (int)
Database (str)
UseServiceName (bool)
- Database: str
- Host: str
- Port: int
- UseServiceName: bool = True
- class recon_gen.common.models.ParameterControl(Dropdown=None, DateTimePicker=None, Slider=None, TextField=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
Dropdown (ParameterDropDownControl | None)
DateTimePicker (ParameterDateTimePickerControl | None)
Slider (ParameterSliderControl | None)
TextField (ParameterTextFieldControl | None)
- DateTimePicker: ParameterDateTimePickerControl | None = None
- Dropdown: ParameterDropDownControl | None = None
- Slider: ParameterSliderControl | None = None
- TextField: ParameterTextFieldControl | None = None
- class recon_gen.common.models.ParameterDateTimePickerControl(ParameterControlId, Title, SourceParameterName)[source]
Bases:
object- Parameters:
ParameterControlId (str)
Title (str)
SourceParameterName (str)
- ParameterControlId: str
- SourceParameterName: str
- Title: str
- class recon_gen.common.models.ParameterDeclaration(StringParameterDeclaration=None, IntegerParameterDeclaration=None, DateTimeParameterDeclaration=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
StringParameterDeclaration (StringParameterDeclaration | None)
IntegerParameterDeclaration (IntegerParameterDeclaration | None)
DateTimeParameterDeclaration (DateTimeParameterDeclaration | None)
- DateTimeParameterDeclaration: DateTimeParameterDeclaration | None = None
- IntegerParameterDeclaration: IntegerParameterDeclaration | None = None
- StringParameterDeclaration: StringParameterDeclaration | None = None
- class recon_gen.common.models.ParameterDropDownControl(ParameterControlId, Title, SourceParameterName, Type=None, SelectableValues=None, DisplayOptions=None, CascadingControlConfiguration=None)[source]
Bases:
object- Parameters:
ParameterControlId (str)
Title (str)
SourceParameterName (str)
Type (str | None)
SelectableValues (dict[str, Any] | None)
DisplayOptions (dict[str, Any] | None)
CascadingControlConfiguration (CascadingControlConfiguration | None)
- CascadingControlConfiguration: CascadingControlConfiguration | None = None
- DisplayOptions: dict[str, Any] | None = None
- ParameterControlId: str
- SelectableValues: dict[str, Any] | None = None
- SourceParameterName: str
- Title: str
- Type: str | None = None
- class recon_gen.common.models.ParameterSliderControl(ParameterControlId, Title, SourceParameterName, MinimumValue, MaximumValue, StepSize)[source]
Bases:
object- Parameters:
ParameterControlId (str)
Title (str)
SourceParameterName (str)
MinimumValue (float)
MaximumValue (float)
StepSize (float)
- MaximumValue: float
- MinimumValue: float
- ParameterControlId: str
- SourceParameterName: str
- StepSize: float
- Title: str
- class recon_gen.common.models.ParameterTextFieldControl(ParameterControlId, Title, SourceParameterName)[source]
Bases:
objectFree-text input bound to a string parameter. The analyst types a value; QS sets the bound parameter to that value (no enumeration).
Right shape for parameters whose option universe is unbounded / unknown at deploy time, or where the LinkedValues / StaticValues sample-fetch path is misbehaving (the X.1.b L2FT cascade Value dropdown ran into
Sample values not foundfrom QS’s lazy sample-values fetch on cold per-CI-run dashboards; text input has no equivalent fetch path).- Parameters:
ParameterControlId (str)
Title (str)
SourceParameterName (str)
- ParameterControlId: str
- SourceParameterName: str
- Title: str
- class recon_gen.common.models.PhysicalTable(CustomSql=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
CustomSql (CustomSql | None)
- class recon_gen.common.models.PieChartAggregatedFieldWells(Category=None, Values=None)[source]
Bases:
object- Parameters:
Category (list[DimensionField] | None)
Values (list[MeasureField] | None)
- Category: list[DimensionField] | None = None
- Values: list[MeasureField] | None = None
- class recon_gen.common.models.PieChartConfiguration(FieldWells=None, DonutOptions=None, CategoryLabelOptions=None, ValueLabelOptions=None)[source]
Bases:
object- Parameters:
FieldWells (PieChartFieldWells | None)
DonutOptions (DonutOptions | None)
CategoryLabelOptions (ChartAxisLabelOptions | None)
ValueLabelOptions (ChartAxisLabelOptions | None)
- CategoryLabelOptions: ChartAxisLabelOptions | None = None
- DonutOptions: DonutOptions | None = None
- FieldWells: PieChartFieldWells | None = None
- ValueLabelOptions: ChartAxisLabelOptions | None = None
- class recon_gen.common.models.PieChartFieldWells(PieChartAggregatedFieldWells=None)[source]
Bases:
object- Parameters:
PieChartAggregatedFieldWells (PieChartAggregatedFieldWells | None)
- PieChartAggregatedFieldWells: PieChartAggregatedFieldWells | None = None
- class recon_gen.common.models.PieChartVisual(VisualId, Title=None, Subtitle=None, ChartConfiguration=None, Actions=None)[source]
Bases:
object- Parameters:
VisualId (str)
Title (VisualTitleLabelOptions | None)
Subtitle (VisualSubtitleLabelOptions | None)
ChartConfiguration (PieChartConfiguration | None)
Actions (list[VisualCustomAction] | None)
- Actions: list[VisualCustomAction] | None = None
- ChartConfiguration: PieChartConfiguration | None = None
- Subtitle: VisualSubtitleLabelOptions | None = None
- Title: VisualTitleLabelOptions | None = None
- VisualId: str
- class recon_gen.common.models.PostgreSqlParameters(Host, Port, Database)[source]
Bases:
object- Parameters:
Host (str)
Port (int)
Database (str)
- Database: str
- Host: str
- Port: int
- class recon_gen.common.models.ResourcePermission(Principal, Actions)[source]
Bases:
object- Parameters:
Principal (str)
Actions (list[str])
- Actions: list[str]
- Principal: str
- class recon_gen.common.models.SameSheetTargetVisualConfiguration(TargetVisualOptions=None, TargetVisuals=None)[source]
Bases:
object- Parameters:
TargetVisualOptions (str | None)
TargetVisuals (list[str] | None)
- TargetVisualOptions: str | None = None
- TargetVisuals: list[str] | None = None
- class recon_gen.common.models.SankeyDiagramAggregatedFieldWells(Source=None, Destination=None, Weight=None)[source]
Bases:
object- Parameters:
Source (list[DimensionField] | None)
Destination (list[DimensionField] | None)
Weight (list[MeasureField] | None)
- Destination: list[DimensionField] | None = None
- Source: list[DimensionField] | None = None
- Weight: list[MeasureField] | None = None
- class recon_gen.common.models.SankeyDiagramChartConfiguration(FieldWells=None, SortConfiguration=None, DataLabels=None)[source]
Bases:
object- Parameters:
FieldWells (SankeyDiagramFieldWells | None)
SortConfiguration (SankeyDiagramSortConfiguration | None)
DataLabels (dict[str, Any] | None)
- DataLabels: dict[str, Any] | None = None
- FieldWells: SankeyDiagramFieldWells | None = None
- SortConfiguration: SankeyDiagramSortConfiguration | None = None
- class recon_gen.common.models.SankeyDiagramFieldWells(SankeyDiagramAggregatedFieldWells=None)[source]
Bases:
object- Parameters:
SankeyDiagramAggregatedFieldWells (SankeyDiagramAggregatedFieldWells | None)
- SankeyDiagramAggregatedFieldWells: SankeyDiagramAggregatedFieldWells | None = None
- class recon_gen.common.models.SankeyDiagramSortConfiguration(WeightSort=None, SourceItemsLimit=None, DestinationItemsLimit=None)[source]
Bases:
object- Parameters:
WeightSort (list[dict[str, Any]] | None)
SourceItemsLimit (dict[str, Any] | None)
DestinationItemsLimit (dict[str, Any] | None)
- DestinationItemsLimit: dict[str, Any] | None = None
- SourceItemsLimit: dict[str, Any] | None = None
- WeightSort: list[dict[str, Any]] | None = None
- class recon_gen.common.models.SankeyDiagramVisual(VisualId, Title=None, Subtitle=None, ChartConfiguration=None, Actions=None)[source]
Bases:
object- Parameters:
VisualId (str)
Title (VisualTitleLabelOptions | None)
Subtitle (VisualSubtitleLabelOptions | None)
ChartConfiguration (SankeyDiagramChartConfiguration | None)
Actions (list[VisualCustomAction] | None)
- Actions: list[VisualCustomAction] | None = None
- ChartConfiguration: SankeyDiagramChartConfiguration | None = None
- Subtitle: VisualSubtitleLabelOptions | None = None
- Title: VisualTitleLabelOptions | None = None
- VisualId: str
- class recon_gen.common.models.SelectedSheetsFilterScopeConfiguration(SheetVisualScopingConfigurations=None)[source]
Bases:
object- Parameters:
SheetVisualScopingConfigurations (list[SheetVisualScopingConfiguration] | None)
- SheetVisualScopingConfigurations: list[SheetVisualScopingConfiguration] | None = None
- class recon_gen.common.models.SeparatorConfiguration(DecimalSeparator=None, ThousandsSeparator=None)[source]
Bases:
object- Parameters:
DecimalSeparator (str | None)
ThousandsSeparator (ThousandSeparatorOptions | None)
- DecimalSeparator: str | None = None
- ThousandsSeparator: ThousandSeparatorOptions | None = None
- class recon_gen.common.models.SheetDefinition(SheetId, Name=None, Title=None, Description=None, ContentType='INTERACTIVE', Visuals=None, FilterControls=None, ParameterControls=None, Layouts=None, TextBoxes=None)[source]
Bases:
object- Parameters:
SheetId (str)
Name (str | None)
Title (str | None)
Description (str | None)
ContentType (str)
Visuals (list[Visual] | None)
FilterControls (list[FilterControl] | None)
ParameterControls (list[ParameterControl] | None)
Layouts (list[Layout] | None)
TextBoxes (list[SheetTextBox] | None)
- ContentType: str = 'INTERACTIVE'
- Description: str | None = None
- FilterControls: list[FilterControl] | None = None
- Name: str | None = None
- ParameterControls: list[ParameterControl] | None = None
- SheetId: str
- TextBoxes: list[SheetTextBox] | None = None
- Title: str | None = None
- class recon_gen.common.models.SheetStyle(Tile=None, TileLayout=None)[source]
Bases:
object- Parameters:
Tile (Tile | None)
TileLayout (TileLayout | None)
- TileLayout: TileLayout | None = None
- class recon_gen.common.models.SheetTextBox(SheetTextBoxId, Content)[source]
Bases:
object- Parameters:
SheetTextBoxId (str)
Content (str)
- Content: str
- SheetTextBoxId: str
- class recon_gen.common.models.SheetVisualScopingConfiguration(SheetId, Scope, VisualIds=None)[source]
Bases:
object- Parameters:
SheetId (str)
Scope (Literal['ALL_VISUALS', 'SELECTED_VISUALS'])
VisualIds (list[str] | None)
- ALL_VISUALS: ClassVar[Literal['ALL_VISUALS']] = 'ALL_VISUALS'
- SELECTED_VISUALS: ClassVar[Literal['SELECTED_VISUALS']] = 'SELECTED_VISUALS'
- Scope: Literal['ALL_VISUALS', 'SELECTED_VISUALS']
- SheetId: str
- VisualIds: list[str] | None = None
- class recon_gen.common.models.SslProperties(DisableSsl=False)[source]
Bases:
object- Parameters:
DisableSsl (bool)
- DisableSsl: bool = False
- class recon_gen.common.models.StringDatasetParameter(*, Id='', Name, ValueType, DefaultValues=None)[source]
Bases:
object- Parameters:
Id (str)
Name (str)
ValueType (str)
DefaultValues (StringDatasetParameterDefaultValues | None)
- DefaultValues: StringDatasetParameterDefaultValues | None = None
- Id: str = ''
- Name: str
- ValueType: str
- class recon_gen.common.models.StringDatasetParameterDefaultValues(StaticValues=None)[source]
Bases:
object- Parameters:
StaticValues (list[str] | None)
- StaticValues: list[str] | None = None
- class recon_gen.common.models.StringParameterDeclaration(ParameterValueType, Name, DefaultValues, MappedDataSetParameters=None, ValueWhenUnset=None)[source]
Bases:
object- Parameters:
ParameterValueType (str)
Name (str)
DefaultValues (dict[str, Any])
MappedDataSetParameters (list[MappedDataSetParameter] | None)
ValueWhenUnset (dict[str, Any] | None)
- DefaultValues: dict[str, Any]
- MappedDataSetParameters: list[MappedDataSetParameter] | None = None
- Name: str
- ParameterValueType: str
- ValueWhenUnset: dict[str, Any] | None = None
- class recon_gen.common.models.TableAggregatedFieldWells(GroupBy=None, Values=None)[source]
Bases:
object- Parameters:
GroupBy (list[DimensionField] | None)
Values (list[MeasureField] | None)
- GroupBy: list[DimensionField] | None = None
- Values: list[MeasureField] | None = None
- class recon_gen.common.models.TableConfiguration(FieldWells=None, SortConfiguration=None, TableOptions=None, FieldOptions=None)[source]
Bases:
object- Parameters:
FieldWells (TableFieldWells | None)
SortConfiguration (dict[str, Any] | None)
TableOptions (TableOptions | None)
FieldOptions (TableFieldOptions | None)
- FieldOptions: TableFieldOptions | None = None
- FieldWells: TableFieldWells | None = None
- SortConfiguration: dict[str, Any] | None = None
- TableOptions: TableOptions | None = None
- class recon_gen.common.models.TableFieldOption(FieldId, CustomLabel=None, Visibility='VISIBLE')[source]
Bases:
objectPer-column header override for a Table visual (v8.5.0).
FieldIdreferences one of the Table’s field-well leaves (Dim or Measure).CustomLabeloverrides the header text QuickSight would otherwise auto-derive from the column name.Visibilitydefaults to"VISIBLE".- Parameters:
FieldId (str)
CustomLabel (str | None)
Visibility (str)
- CustomLabel: str | None = None
- FieldId: str
- Visibility: str = 'VISIBLE'
- class recon_gen.common.models.TableFieldOptions(SelectedFieldOptions=None)[source]
Bases:
objectContainer for per-column table header overrides (v8.5.0).
- Parameters:
SelectedFieldOptions (list[TableFieldOption] | None)
- SelectedFieldOptions: list[TableFieldOption] | None = None
- class recon_gen.common.models.TableFieldWells(TableAggregatedFieldWells=None, TableUnaggregatedFieldWells=None)[source]
Bases:
object- Parameters:
TableAggregatedFieldWells (TableAggregatedFieldWells | None)
TableUnaggregatedFieldWells (TableUnaggregatedFieldWells | None)
- TableAggregatedFieldWells: TableAggregatedFieldWells | None = None
- TableUnaggregatedFieldWells: TableUnaggregatedFieldWells | None = None
- class recon_gen.common.models.TableOptions(HeaderStyle=None, CellStyle=None)[source]
Bases:
object- Parameters:
HeaderStyle (dict[str, Any] | None)
CellStyle (dict[str, Any] | None)
- CellStyle: dict[str, Any] | None = None
- HeaderStyle: dict[str, Any] | None = None
- class recon_gen.common.models.TableUnaggregatedFieldWells(Values=None)[source]
Bases:
object- Parameters:
Values (list[dict[str, Any]] | None)
- Values: list[dict[str, Any]] | None = None
- class recon_gen.common.models.TableVisual(VisualId, Title=None, Subtitle=None, ChartConfiguration=None, Actions=None, ConditionalFormatting=None)[source]
Bases:
object- Parameters:
VisualId (str)
Title (VisualTitleLabelOptions | None)
Subtitle (VisualSubtitleLabelOptions | None)
ChartConfiguration (TableConfiguration | None)
Actions (list[VisualCustomAction] | None)
ConditionalFormatting (dict[str, Any] | None)
- Actions: list[VisualCustomAction] | None = None
- ChartConfiguration: TableConfiguration | None = None
- ConditionalFormatting: dict[str, Any] | None = None
- Subtitle: VisualSubtitleLabelOptions | None = None
- Title: VisualTitleLabelOptions | None = None
- VisualId: str
- class recon_gen.common.models.Tag(Key, Value)[source]
Bases:
object- Parameters:
Key (str)
Value (str)
- Key: str
- Value: str
- class recon_gen.common.models.Theme(AwsAccountId, ThemeId, Name, BaseThemeId, Configuration, Permissions=None, Tags=None, VersionDescription=None)[source]
Bases:
object- Parameters:
AwsAccountId (str)
ThemeId (str)
Name (str)
BaseThemeId (str)
Configuration (ThemeConfiguration)
Permissions (list[ResourcePermission] | None)
Tags (list[Tag] | None)
VersionDescription (str | None)
- AwsAccountId: str
- BaseThemeId: str
- Configuration: ThemeConfiguration
- Name: str
- Permissions: list[ResourcePermission] | None = None
- ThemeId: str
- VersionDescription: str | None = None
- class recon_gen.common.models.ThemeConfiguration(DataColorPalette=None, UIColorPalette=None, Sheet=None, Typography=None)[source]
Bases:
object- Parameters:
DataColorPalette (DataColorPalette | None)
UIColorPalette (UIColorPalette | None)
Sheet (SheetStyle | None)
Typography (Typography | None)
- DataColorPalette: DataColorPalette | None = None
- Sheet: SheetStyle | None = None
- Typography: Typography | None = None
- UIColorPalette: UIColorPalette | None = None
- class recon_gen.common.models.ThousandSeparatorOptions(Symbol, Visibility)[source]
Bases:
object- Parameters:
Symbol (str)
Visibility (str)
- Symbol: str
- Visibility: str
- class recon_gen.common.models.Tile(Border=None)[source]
Bases:
object- Parameters:
Border (TileBorder | None)
- Border: TileBorder | None = None
- class recon_gen.common.models.TileBorder(Show=None)[source]
Bases:
object- Parameters:
Show (bool | None)
- Show: bool | None = None
- class recon_gen.common.models.TimeEqualityFilter(FilterId, Column, Value=None, ParameterName=None, TimeGranularity=None, RollingDate=None, DefaultFilterControlConfiguration=None)[source]
Bases:
object- Parameters:
FilterId (str)
Column (ColumnIdentifier)
Value (str | None)
ParameterName (str | None)
TimeGranularity (str | None)
RollingDate (dict[str, Any] | None)
DefaultFilterControlConfiguration (DefaultFilterControlConfiguration | None)
- Column: ColumnIdentifier
- DefaultFilterControlConfiguration: DefaultFilterControlConfiguration | None = None
- FilterId: str
- ParameterName: str | None = None
- RollingDate: dict[str, Any] | None = None
- TimeGranularity: str | None = None
- Value: str | None = None
- class recon_gen.common.models.TimeRangeFilter(FilterId, Column, NullOption='NON_NULLS_ONLY', TimeGranularity=None, RangeMinimumValue=None, RangeMaximumValue=None, IncludeMinimum=None, IncludeMaximum=None, DefaultFilterControlConfiguration=None)[source]
Bases:
object- Parameters:
FilterId (str)
Column (ColumnIdentifier)
NullOption (str)
TimeGranularity (str | None)
RangeMinimumValue (dict[str, Any] | None)
RangeMaximumValue (dict[str, Any] | None)
IncludeMinimum (bool | None)
IncludeMaximum (bool | None)
DefaultFilterControlConfiguration (DefaultFilterControlConfiguration | None)
- Column: ColumnIdentifier
- DefaultFilterControlConfiguration: DefaultFilterControlConfiguration | None = None
- FilterId: str
- IncludeMaximum: bool | None = None
- IncludeMinimum: bool | None = None
- NullOption: str = 'NON_NULLS_ONLY'
- RangeMaximumValue: dict[str, Any] | None = None
- RangeMinimumValue: dict[str, Any] | None = None
- TimeGranularity: str | None = None
- class recon_gen.common.models.Typography(FontFamilies=None)[source]
Bases:
object- Parameters:
FontFamilies (list[FontFamily] | None)
- FontFamilies: list[FontFamily] | None = None
- class recon_gen.common.models.UIColorPalette(PrimaryBackground=None, PrimaryForeground=None, SecondaryBackground=None, SecondaryForeground=None, Accent=None, AccentForeground=None, Danger=None, DangerForeground=None, Warning=None, WarningForeground=None, Success=None, SuccessForeground=None, Dimension=None, DimensionForeground=None, Measure=None, MeasureForeground=None)[source]
Bases:
object- Parameters:
PrimaryBackground (str | None)
PrimaryForeground (str | None)
SecondaryBackground (str | None)
SecondaryForeground (str | None)
Accent (str | None)
AccentForeground (str | None)
Danger (str | None)
DangerForeground (str | None)
Warning (str | None)
WarningForeground (str | None)
Success (str | None)
SuccessForeground (str | None)
Dimension (str | None)
DimensionForeground (str | None)
Measure (str | None)
MeasureForeground (str | None)
- Accent: str | None = None
- AccentForeground: str | None = None
- Danger: str | None = None
- DangerForeground: str | None = None
- Dimension: str | None = None
- DimensionForeground: str | None = None
- Measure: str | None = None
- MeasureForeground: str | None = None
- PrimaryBackground: str | None = None
- PrimaryForeground: str | None = None
- SecondaryBackground: str | None = None
- SecondaryForeground: str | None = None
- Success: str | None = None
- SuccessForeground: str | None = None
- Warning: str | None = None
- WarningForeground: str | None = None
- class recon_gen.common.models.Visual(BarChartVisual=None, LineChartVisual=None, PieChartVisual=None, KPIVisual=None, TableVisual=None, SankeyDiagramVisual=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
BarChartVisual (BarChartVisual | None)
LineChartVisual (LineChartVisual | None)
PieChartVisual (PieChartVisual | None)
KPIVisual (KPIVisual | None)
TableVisual (TableVisual | None)
SankeyDiagramVisual (SankeyDiagramVisual | None)
- BarChartVisual: BarChartVisual | None = None
- LineChartVisual: LineChartVisual | None = None
- PieChartVisual: PieChartVisual | None = None
- SankeyDiagramVisual: SankeyDiagramVisual | None = None
- TableVisual: TableVisual | None = None
- class recon_gen.common.models.VisualCustomAction(CustomActionId, Name, Trigger, ActionOperations, Status='ENABLED')[source]
Bases:
object- Parameters:
CustomActionId (str)
Name (str)
Trigger (Literal['DATA_POINT_CLICK', 'DATA_POINT_MENU'])
ActionOperations (list[VisualCustomActionOperation])
Status (Literal['ENABLED', 'DISABLED'])
- ActionOperations: list[VisualCustomActionOperation]
- CustomActionId: str
- DATA_POINT_CLICK: ClassVar[Literal['DATA_POINT_CLICK']] = 'DATA_POINT_CLICK'
- DATA_POINT_MENU: ClassVar[Literal['DATA_POINT_MENU']] = 'DATA_POINT_MENU'
- DISABLED: ClassVar[Literal['DISABLED']] = 'DISABLED'
- ENABLED: ClassVar[Literal['ENABLED']] = 'ENABLED'
- Name: str
- Status: Literal['ENABLED', 'DISABLED'] = 'ENABLED'
- Trigger: Literal['DATA_POINT_CLICK', 'DATA_POINT_MENU']
- class recon_gen.common.models.VisualCustomActionOperation(NavigationOperation=None, SetParametersOperation=None, FilterOperation=None)[source]
Bases:
objectUnion type — set exactly one.
- Parameters:
NavigationOperation (CustomActionNavigationOperation | None)
SetParametersOperation (CustomActionSetParametersOperation | None)
FilterOperation (CustomActionFilterOperation | None)
- FilterOperation: CustomActionFilterOperation | None = None
- SetParametersOperation: CustomActionSetParametersOperation | None = None