nisystemlink.clients.dataframe
- class nisystemlink.clients.dataframe.DataFrameClient(configuration=None)[source]
- __init__(configuration=None)[source]
Initialize an instance.
- Parameters
configuration (
Optional
[nisystemlink.clients.core.HttpConfiguration
]) – Defines the web server to connect to and information about how to connect. If not provided, theHttpConfigurationManager
is used to obtain the configuration.- Raises
ApiException – if unable to communicate with the DataFrame Service.
- api_info()[source]
Get information about available API operations.
- Return type
- Returns
Information about available API operations.
- Raises
ApiException – if unable to communicate with the DataFrame Service.
- list_tables(take=None, id=None, order_by=None, order_by_descending=None, continuation_token=None, workspace=None)[source]
Lists available tables on the SystemLink DataFrame service.
- Parameters
take (
Optional
[int
]) – Limits the returned list to the specified number of results. Defaults to 1000.id (
Optional
[List
[str
]]) – List of table IDs to filter by.order_by (
Optional
[Literal
['CREATED_AT'
,'METADATA_MODIFIED_AT'
,'NAME'
,'NUMBER_OF_ROWS'
,'ROWS_MODIFIED_AT'
]]) – The sort order of the returned list of tables.order_by_descending (
Optional
[bool
]) – Whether to sort descending instead of ascending. Defaults to false.continuation_token (
Optional
[str
]) – The token used to paginate results.workspace (
Optional
[List
[str
]]) – List of workspace IDs to filter by.
- Return type
- Returns
The list of tables with a continuation token.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- create_table(table)[source]
Create a new table with the provided metadata and column definitions.
- Parameters
table (
nisystemlink.clients.dataframe.models.CreateTableRequest
) – The request to create the table.- Return type
str
- Returns
The ID of the newly created table.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- query_tables(query)[source]
Queries available tables on the SystemLink DataFrame service and returns their metadata.
- Parameters
query (
nisystemlink.clients.dataframe.models.QueryTablesRequest
) – The request to query tables.- Return type
- Returns
The list of tables with a continuation token.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- get_table_metadata(id)[source]
Retrieves the metadata and column information for a single table identified by its ID.
- Parameters
id (str) – Unique ID of a data table.
- Return type
- Returns
The metadata for the table.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- modify_table(id, update)[source]
Modify properties of a table or its columns.
- Parameters
id (
str
) – Unique ID of a data table.update (
nisystemlink.clients.dataframe.models.ModifyTableRequest
) – The metadata to update.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- Return type
None
- delete_table(id)[source]
Deletes a table.
- Parameters
id (str) – Unique ID of a data table.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- Return type
None
- delete_tables(ids)[source]
Deletes multiple tables.
- Parameters
ids (List[str]) – List of unique IDs of data tables.
- Return type
Optional
[nisystemlink.clients.dataframe.models.DeleteTablesPartialSuccess
]- Returns
A partial success if any tables failed to delete, or None if all tables were deleted successfully.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- modify_tables(updates)[source]
Modify the properties associated with the tables identified by their IDs.
- Parameters
updates (
nisystemlink.clients.dataframe.models.ModifyTablesRequest
) – The table modifications to apply.- Return type
Optional
[nisystemlink.clients.dataframe.models.ModifyTablesPartialSuccess
]- Returns
A partial success if any tables failed to be modified, or None if all tables were modified successfully.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- get_table_data(id, columns=None, order_by=None, order_by_descending=None, take=None, continuation_token=None)[source]
Reads raw data from the table identified by its ID.
- Parameters
id (
str
) – Unique ID of a data table.columns (
Optional
[List
[str
]]) – Columns to include in the response. Data will be returned in the same order as the columns. If not specified, all columns are returned.order_by (
Optional
[List
[str
]]) – List of columns to sort by. Multiple columns may be specified to order rows that have the same value for prior columns. The columns used for ordering do not need to be included in the columns list, in which case they are not returned. If not specified, then the order in which results are returned is undefined.order_by_descending (
Optional
[bool
]) – Whether to sort descending instead of ascending. Defaults to false.take (
Optional
[int
]) – Limits the returned list to the specified number of results. Defaults to 500.continuation_token (
Optional
[str
]) – The token used to paginate results.
- Return type
- Returns
The table data and total number of rows with a continuation token.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- append_table_data(id, data)[source]
Appends one or more rows of data to the table identified by its ID.
- Parameters
id (
str
) – Unique ID of a data table.data (
nisystemlink.clients.dataframe.models.AppendTableDataRequest
) – The rows of data to append and any additional options.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- Return type
None
- query_table_data(id, query)[source]
Reads rows of data that match a filter from the table identified by its ID.
- Parameters
id (
str
) – Unique ID of a data table.query (
nisystemlink.clients.dataframe.models.QueryTableDataRequest
) – The filtering and sorting to apply when reading data.
- Return type
- Returns
The table data and total number of rows with a continuation token.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- export_table_data(id, query)[source]
Exports rows of data that match a filter from the table identified by its ID.
- Parameters
id (
str
) – Unique ID of a data table.query (
nisystemlink.clients.dataframe.models.ExportTableDataRequest
) – The filtering, sorting, and export format to apply when exporting data.
- Return type
- Returns
A file-like object for reading the exported data.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- query_decimated_data(id, query)[source]
Reads decimated rows of data from the table identified by its ID.
- Parameters
id (
str
) – Unique ID of a data table.query (
nisystemlink.clients.dataframe.models.QueryDecimatedDataRequest
) – The filtering and decimation options to apply when reading data.
- Return type
- Returns
The decimated table data.
- Raises
ApiException – if unable to communicate with the DataFrame Service or provided an invalid argument.
- pydantic model nisystemlink.clients.dataframe.models.ApiInfo[source]
Information about the available API operations.
Show JSON schema
{ "title": "ApiInfo", "description": "Information about the available API operations.", "type": "object", "properties": { "operations": { "$ref": "#/definitions/OperationsV1" } }, "required": [ "operations" ], "definitions": { "Operation": { "title": "Operation", "description": "Represents an operation that can be performed on a data frame.", "type": "object", "properties": { "available": { "title": "Available", "type": "boolean" }, "version": { "title": "Version", "type": "integer" } }, "required": [ "available", "version" ] }, "OperationsV1": { "title": "OperationsV1", "description": "The operations available in the routes provided by the v1 HTTP API.", "type": "object", "properties": { "createTables": { "$ref": "#/definitions/Operation" }, "deleteTables": { "$ref": "#/definitions/Operation" }, "modifyMetadata": { "$ref": "#/definitions/Operation" }, "listTables": { "$ref": "#/definitions/Operation" }, "readData": { "$ref": "#/definitions/Operation" }, "writeData": { "$ref": "#/definitions/Operation" } }, "required": [ "createTables", "deleteTables", "modifyMetadata", "listTables", "readData", "writeData" ] } } }
- Fields
-
field operations:
OperationsV1
[Required]
- pydantic model nisystemlink.clients.dataframe.models.AppendTableDataRequest[source]
Contains the rows to append and optional flags. The
frame
field is required unlessendOfData
is true.Show JSON schema
{ "title": "AppendTableDataRequest", "description": "Contains the rows to append and optional flags. The ``frame`` field is\nrequired unless ``endOfData`` is true.", "type": "object", "properties": { "frame": { "$ref": "#/definitions/DataFrame" }, "endOfData": { "title": "Endofdata", "type": "boolean" } }, "definitions": { "DataFrame": { "title": "DataFrame", "description": "Data read from or to be written to a table.\n\nValues may be ``None`` (if the column is of type ``NULLABLE``) or encoded as\na string in a format according to each column's datatype:\n\n* BOOL: One of ``\"true\"`` or ``\"false\"``, case-insensitive.\n* INT32: Any integer number in the range [-2147483648, 2147483647],\n surrounded by quotes.\n* INT64: Any integer number in the range [-9223372036854775808,\n 9223372036854775807], surrounded by quotes.\n* FLOAT32: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-3.40282347E+38, 3.40282347E+38],\n surrounded by quotes. Not all values within the range can be represented\n with 32 bits. To preserve the exact binary encoding of the value when\n converting to a string, clients should serialize 9 digits after the\n decimal. Instead of a number, the value may be ``\"NaN\"`` (not a number),\n ``\"Infinity\"`` (positive infinity), or ``\"-Infinity\"`` (negative\n infinity), case-sensitive.\n* FLOAT64: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-1.7976931348623157E+308,\n 1.7976931348623157E+308], surrounded by quotes. Not all values within the\n range can be represented with 64 bits. To preserve the exact binary\n encoding of the value when converting to a string, clients should\n serialize 17 digits after the decimal. Instead of a number, the value may\n be ``\"NaN\"`` (not a number), ``\"Infinity\"`` (positive infinity), or\n ``\"-Infinity\"`` (negative infinity), case-sensitive.\n* STRING: Any quoted string.\n* TIMESTAMP: A date and time with millisecond precision in ISO-8601 format\n and time zone. For example: ``\"2022-08-19T16:17:30.123Z\"``. If a time zone\n is not provided, UTC is assumed. If a time zone other than UTC is\n provided, the value will be converted to UTC. If more than three digits of\n fractional seconds are provided, the time will be truncated to three\n digits (i.e. milliseconds).\n\nThe format is the same as a serialized Pandas DataFrame with orient=\"split\"\nand index=False. See\nhttps://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_json.html.\n\nWhen providing a DataFrame for appending rows, any of the table's columns\nnot specified will receive a value of ``None``. If any such columns aren't\nnullable, an error will be returned. If the entire columns property is left\nout, each row is assumed to contain all columns in the order specified when\nthe table was created.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "data": { "title": "Data", "type": "array", "items": { "type": "array", "items": { "type": "string" } } } }, "required": [ "data" ] } } }
- Fields
-
field end_of_data:
Optional
[bool
] = None Whether the table should expect any additional rows to be appended in future requests.
- pydantic model nisystemlink.clients.dataframe.models.Column[source]
Defines a single column in a table.
Show JSON schema
{ "title": "Column", "description": "Defines a single column in a table.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "dataType": { "$ref": "#/definitions/DataType" }, "columnType": { "default": "NORMAL", "allOf": [ { "$ref": "#/definitions/ColumnType" } ] }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "name", "dataType" ], "definitions": { "DataType": { "title": "DataType", "description": "Represents the different data types for a table column.", "enum": [ "BOOL", "FLOAT32", "FLOAT64", "INT32", "INT64", "STRING", "TIMESTAMP" ], "type": "string" }, "ColumnType": { "title": "ColumnType", "description": "Represents the different column types for a table column.", "enum": [ "NORMAL", "INDEX", "NULLABLE" ], "type": "string" } } }
- Fields
-
field column_type:
ColumnType
= ColumnType.Normal The column type. Defaults to ColumnType.Normal.
-
field name:
str
[Required] The column name, which must be unique across all columns in the table.
-
field properties:
Optional
[Dict
[str
,str
]] = None User-defined properties associated with the column.
- pydantic model nisystemlink.clients.dataframe.models.ColumnFilter[source]
A filter to apply to the table data.
Show JSON schema
{ "title": "ColumnFilter", "description": "A filter to apply to the table data.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "operation": { "$ref": "#/definitions/FilterOperation" }, "value": { "title": "Value", "type": "string" } }, "required": [ "column", "operation" ], "definitions": { "FilterOperation": { "title": "FilterOperation", "description": "Represents the different operations that can be used in a filter.", "enum": [ "EQUALS", "NOT_EQUALS", "LESS_THAN", "LESS_THAN_EQUALS", "GREATER_THAN", "GREATER_THAN_EQUALS", "CONTAINS", "NOT_CONTAINS" ], "type": "string" } } }
-
field column:
str
[Required] The name of the column to use for filtering.
-
field operation:
FilterOperation
[Required] How to compare the column’s value with the specified value.
An error is returned if the column’s data type does not support the specified operation: * String columns only support
EQUALS
,NOT_EQUALS
,CONTAINS
, andNOT_CONTAINS
. * Non-string columns do not supportCONTAINS
orNOT_CONTAINS
. * Whenvalue
isNone
, the operation must beEQUALS
orNOT_EQUALS
. * Whenvalue
isNaN
for a floating-point column, the operation must beNOT_EQUALS
.
-
field value:
Optional
[str
] = None The comparison value to use for filtering. An error will be returned if the value cannot be converted to the column’s data type.
-
field column:
- pydantic model nisystemlink.clients.dataframe.models.ColumnMetadataPatch[source]
Specifies column properties to add, modify, or delete when editing table metadata.
Show JSON schema
{ "title": "ColumnMetadataPatch", "description": "Specifies column properties to add, modify, or delete when editing table metadata.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "name", "properties" ] }
- Fields
-
field name:
str
[Required] The name of the column to modify.
-
field properties:
Dict
[str
,Optional
[str
]] [Required] The properties to modify. A map of key value properties containing the metadata to be added or modified. Setting a property value to
None
will delete the property.
- pydantic model nisystemlink.clients.dataframe.models.ColumnOrderBy[source]
Specifies a column to order by and the ordering direction.
Show JSON schema
{ "title": "ColumnOrderBy", "description": "Specifies a column to order by and the ordering direction.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "descending": { "title": "Descending", "type": "boolean" } }, "required": [ "column" ] }
- Fields
-
field column:
str
[Required] The name of the column to order by.
-
field descending:
Optional
[bool
] = None Whether the ordering should be in descending order.
- class nisystemlink.clients.dataframe.models.ColumnType(value)[source]
Represents the different column types for a table column.
- Index = 'INDEX'
The column provides a unique value per row. Each table must provide exactly one INDEX column. The column’s
DataType
must be INT32, INT64, or TIMESTAMP.
- Normal = 'NORMAL'
The column has no special properties. This is the default.
- Nullable = 'NULLABLE'
Rows may contain null values for this column. When appending rows, NULLABLE columns may be left out entirely, in which case all rows being appended will use null values for that column.
- pydantic model nisystemlink.clients.dataframe.models.CreateTableRequest[source]
Contains information needed to create a table, including its properties and column definitions.
Show JSON schema
{ "title": "CreateTableRequest", "description": "Contains information needed to create a table, including its properties and column definitions.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "$ref": "#/definitions/Column" } }, "name": { "title": "Name", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } }, "workspace": { "title": "Workspace", "type": "string" } }, "required": [ "columns" ], "definitions": { "DataType": { "title": "DataType", "description": "Represents the different data types for a table column.", "enum": [ "BOOL", "FLOAT32", "FLOAT64", "INT32", "INT64", "STRING", "TIMESTAMP" ], "type": "string" }, "ColumnType": { "title": "ColumnType", "description": "Represents the different column types for a table column.", "enum": [ "NORMAL", "INDEX", "NULLABLE" ], "type": "string" }, "Column": { "title": "Column", "description": "Defines a single column in a table.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "dataType": { "$ref": "#/definitions/DataType" }, "columnType": { "default": "NORMAL", "allOf": [ { "$ref": "#/definitions/ColumnType" } ] }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "name", "dataType" ] } } }
- Fields
-
field columns:
List
[Column
] [Required] The list of columns in the table. Exactly one column must have a
ColumnType
of INDEX.
-
field name:
Optional
[str
] = None The name to associate with the table. When not specified, a name will be assigned from the table’s ID.
-
field properties:
Optional
[Dict
[str
,str
]] = None User-defined properties to associate with the table.
-
field workspace:
Optional
[str
] = None The workspace to create the table in. Uses the default workspace when not specified.
- pydantic model nisystemlink.clients.dataframe.models.DataFrame[source]
Data read from or to be written to a table.
Values may be
None
(if the column is of typeNULLABLE
) or encoded as a string in a format according to each column’s datatype:BOOL: One of
"true"
or"false"
, case-insensitive.INT32: Any integer number in the range [-2147483648, 2147483647], surrounded by quotes.
INT64: Any integer number in the range [-9223372036854775808, 9223372036854775807], surrounded by quotes.
FLOAT32: A decimal number using a period for the decimal point, optionally in scientific notation, in the range [-3.40282347E+38, 3.40282347E+38], surrounded by quotes. Not all values within the range can be represented with 32 bits. To preserve the exact binary encoding of the value when converting to a string, clients should serialize 9 digits after the decimal. Instead of a number, the value may be
"NaN"
(not a number),"Infinity"
(positive infinity), or"-Infinity"
(negative infinity), case-sensitive.FLOAT64: A decimal number using a period for the decimal point, optionally in scientific notation, in the range [-1.7976931348623157E+308, 1.7976931348623157E+308], surrounded by quotes. Not all values within the range can be represented with 64 bits. To preserve the exact binary encoding of the value when converting to a string, clients should serialize 17 digits after the decimal. Instead of a number, the value may be
"NaN"
(not a number),"Infinity"
(positive infinity), or"-Infinity"
(negative infinity), case-sensitive.STRING: Any quoted string.
TIMESTAMP: A date and time with millisecond precision in ISO-8601 format and time zone. For example:
"2022-08-19T16:17:30.123Z"
. If a time zone is not provided, UTC is assumed. If a time zone other than UTC is provided, the value will be converted to UTC. If more than three digits of fractional seconds are provided, the time will be truncated to three digits (i.e. milliseconds).
The format is the same as a serialized Pandas DataFrame with orient=”split” and index=False. See https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_json.html.
When providing a DataFrame for appending rows, any of the table’s columns not specified will receive a value of
None
. If any such columns aren’t nullable, an error will be returned. If the entire columns property is left out, each row is assumed to contain all columns in the order specified when the table was created.Show JSON schema
{ "title": "DataFrame", "description": "Data read from or to be written to a table.\n\nValues may be ``None`` (if the column is of type ``NULLABLE``) or encoded as\na string in a format according to each column's datatype:\n\n* BOOL: One of ``\"true\"`` or ``\"false\"``, case-insensitive.\n* INT32: Any integer number in the range [-2147483648, 2147483647],\n surrounded by quotes.\n* INT64: Any integer number in the range [-9223372036854775808,\n 9223372036854775807], surrounded by quotes.\n* FLOAT32: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-3.40282347E+38, 3.40282347E+38],\n surrounded by quotes. Not all values within the range can be represented\n with 32 bits. To preserve the exact binary encoding of the value when\n converting to a string, clients should serialize 9 digits after the\n decimal. Instead of a number, the value may be ``\"NaN\"`` (not a number),\n ``\"Infinity\"`` (positive infinity), or ``\"-Infinity\"`` (negative\n infinity), case-sensitive.\n* FLOAT64: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-1.7976931348623157E+308,\n 1.7976931348623157E+308], surrounded by quotes. Not all values within the\n range can be represented with 64 bits. To preserve the exact binary\n encoding of the value when converting to a string, clients should\n serialize 17 digits after the decimal. Instead of a number, the value may\n be ``\"NaN\"`` (not a number), ``\"Infinity\"`` (positive infinity), or\n ``\"-Infinity\"`` (negative infinity), case-sensitive.\n* STRING: Any quoted string.\n* TIMESTAMP: A date and time with millisecond precision in ISO-8601 format\n and time zone. For example: ``\"2022-08-19T16:17:30.123Z\"``. If a time zone\n is not provided, UTC is assumed. If a time zone other than UTC is\n provided, the value will be converted to UTC. If more than three digits of\n fractional seconds are provided, the time will be truncated to three\n digits (i.e. milliseconds).\n\nThe format is the same as a serialized Pandas DataFrame with orient=\"split\"\nand index=False. See\nhttps://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_json.html.\n\nWhen providing a DataFrame for appending rows, any of the table's columns\nnot specified will receive a value of ``None``. If any such columns aren't\nnullable, an error will be returned. If the entire columns property is left\nout, each row is assumed to contain all columns in the order specified when\nthe table was created.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "data": { "title": "Data", "type": "array", "items": { "type": "array", "items": { "type": "string" } } } }, "required": [ "data" ] }
-
field columns:
Optional
[List
[str
]] = None The names and order of the columns included in the data frame.
-
field data:
List
[List
[Optional
[str
]]] [Required] The data for each row with the order specified in the columns property. Must contain a value for each column in the columns property.
- class nisystemlink.clients.dataframe.models.DataType(value)[source]
Represents the different data types for a table column.
- Bool = 'BOOL'
32-bit IEEE 754 floating-point number.
- Float32 = 'FLOAT32'
32-bit IEEE 754 floating-point number.
- Float64 = 'FLOAT64'
64-bit IEEE 754 floating-point number.
- Int32 = 'INT32'
32-bit signed integers.
- Int64 = 'INT64'
64-bit signed integers.
- String = 'STRING'
Arbitrary string data.
- Timestamp = 'TIMESTAMP'
Date and time represented in UTC with millisecond precision.
- class nisystemlink.clients.dataframe.models.DecimationMethod(value)[source]
Represents the different methods that can be used to decimate data.
- EntryExit = 'ENTRY_EXIT'
Creates an
x_column
ordered set which will be divided in the number ofintervals
specified. For each of the intervals, the first and last row within the interval will be returned in addition to the maximum and minimum values for all the columns specified iny_columns
.
- Lossy = 'LOSSY'
Creates an
x_column
ordered set and returns an uniformly distributed sample of rows with as many rows as the number specified asintervals.
- MaxMin = 'MAX_MIN'
Creates an
x_column
ordered set which will be divided in the number ofintervals
specified. For each of the intervals, the maximum and minimum values for all the columns specified iny_columns
will be returned.
- pydantic model nisystemlink.clients.dataframe.models.DecimationOptions[source]
Contains the parameters to use for data decimation.
Show JSON schema
{ "title": "DecimationOptions", "description": "Contains the parameters to use for data decimation.", "type": "object", "properties": { "xColumn": { "title": "Xcolumn", "type": "string" }, "yColumns": { "title": "Ycolumns", "type": "array", "items": { "type": "string" } }, "intervals": { "title": "Intervals", "type": "integer" }, "method": { "$ref": "#/definitions/DecimationMethod" } }, "definitions": { "DecimationMethod": { "title": "DecimationMethod", "description": "Represents the different methods that can be used to decimate data.", "enum": [ "LOSSY", "MAX_MIN", "ENTRY_EXIT" ], "type": "string" } } }
-
field intervals:
Optional
[int
] = None Number of intervals to use for decimation. Defaults to 1000.
-
field method:
Optional
[DecimationMethod
] = None Specifies the method used to decimate the data. Defaults to
DecimationMethod.Lossy
-
field x_column:
Optional
[str
] = None The name of the column that will be used as the x-axis for decimating the data. The column in the table that was specified as Index will be used if this field is excluded. Only numeric columns are supported. i.e.
INT32
,INT64
,FLOAT32
,FLOAT64
andTIMESTAMP
.
-
field y_columns:
Optional
[List
[str
]] = None A list of columns to decimate by. This property is only needed when the specified method is
MAX_MIN
orENTRY_EXIT
. Only numeric columns are supported. i.e.INT32
,INT64
,FLOAT32
,FLOAT64
andTIMESTAMP
.
-
field intervals:
- pydantic model nisystemlink.clients.dataframe.models.DeleteTablesPartialSuccess[source]
The result of deleting multiple tables when one or more tables could not be deleted.
Show JSON schema
{ "title": "DeleteTablesPartialSuccess", "description": "The result of deleting multiple tables when one or more tables could not be deleted.", "type": "object", "properties": { "deletedTableIds": { "title": "Deletedtableids", "type": "array", "items": { "type": "string" } }, "failedTableIds": { "title": "Failedtableids", "type": "array", "items": { "type": "string" } }, "error": { "$ref": "#/definitions/ApiError" } }, "required": [ "deletedTableIds", "failedTableIds", "error" ], "definitions": { "ApiError": { "title": "ApiError", "description": "Represents the standard error structure for SystemLink API responses.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "code": { "title": "Code", "type": "integer" }, "message": { "title": "Message", "type": "string" }, "args": { "title": "Args", "default": [], "type": "array", "items": { "type": "string" } }, "resourceType": { "title": "Resourcetype", "type": "string" }, "resourceId": { "title": "Resourceid", "type": "string" }, "innerErrors": { "title": "Innererrors", "default": [], "type": "array", "items": { "$ref": "#/definitions/ApiError" } } } } } }
-
field deleted_table_ids:
List
[str
] [Required] The IDs of the tables that were successfully deleted.
-
field failed_table_ids:
List
[str
] [Required] The IDs of the tables that could not be deleted.
-
field deleted_table_ids:
- class nisystemlink.clients.dataframe.models.ExportFormat(value)[source]
The format of the exported data.
- CSV = 'CSV'
Comma-separated values.
- pydantic model nisystemlink.clients.dataframe.models.ExportTableDataRequest[source]
Specifies the parameters for a data export with ordering and filtering.
Show JSON schema
{ "title": "ExportTableDataRequest", "description": "Specifies the parameters for a data export with ordering and filtering.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "orderBy": { "title": "Orderby", "type": "array", "items": { "$ref": "#/definitions/ColumnOrderBy" } }, "filters": { "title": "Filters", "type": "array", "items": { "$ref": "#/definitions/ColumnFilter" } }, "responseFormat": { "$ref": "#/definitions/ExportFormat" } }, "required": [ "responseFormat" ], "definitions": { "ColumnOrderBy": { "title": "ColumnOrderBy", "description": "Specifies a column to order by and the ordering direction.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "descending": { "title": "Descending", "type": "boolean" } }, "required": [ "column" ] }, "FilterOperation": { "title": "FilterOperation", "description": "Represents the different operations that can be used in a filter.", "enum": [ "EQUALS", "NOT_EQUALS", "LESS_THAN", "LESS_THAN_EQUALS", "GREATER_THAN", "GREATER_THAN_EQUALS", "CONTAINS", "NOT_CONTAINS" ], "type": "string" }, "ColumnFilter": { "title": "ColumnFilter", "description": "A filter to apply to the table data.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "operation": { "$ref": "#/definitions/FilterOperation" }, "value": { "title": "Value", "type": "string" } }, "required": [ "column", "operation" ] }, "ExportFormat": { "title": "ExportFormat", "description": "The format of the exported data.", "enum": [ "CSV" ], "type": "string" } } }
- Fields
-
field columns:
Optional
[List
[str
]] = None The names of columns to include in the export. The export will include the columns in the same order specified in this parameter. All columns are included in the order specified at table creation if this property is excluded.
-
field filters:
Optional
[List
[ColumnFilter
]] = None A list of columns to filter by. Only rows whose columns contain values matching all of the specified filters are returned. The columns used for filtering do not need to be included in the columns list, in which case they are not included in the export.
-
field order_by:
Optional
[List
[ColumnOrderBy
]] = None A list of columns to order the results by. Multiple columns may be specified to order rows that have the same value for prior columns. The columns used for sorting do not need to be included in the columns list, in which case they are not included in the export.
-
field response_format:
ExportFormat
[Required] The format of the exported data. The only response format currently supported is
CSV
.
- class nisystemlink.clients.dataframe.models.FilterOperation(value)[source]
Represents the different operations that can be used in a filter.
- pydantic model nisystemlink.clients.dataframe.models.ModifyTableRequest[source]
Contains the metadata properties to modify. Values not included will remain unchanged.
Show JSON schema
{ "title": "ModifyTableRequest", "description": "Contains the metadata properties to modify. Values not included will remain unchanged.", "type": "object", "properties": { "metadataRevision": { "title": "Metadatarevision", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "workspace": { "title": "Workspace", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } }, "columns": { "title": "Columns", "type": "array", "items": { "$ref": "#/definitions/ColumnMetadataPatch" } } }, "definitions": { "ColumnMetadataPatch": { "title": "ColumnMetadataPatch", "description": "Specifies column properties to add, modify, or delete when editing table metadata.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "name", "properties" ] } } }
-
field columns:
Optional
[List
[ColumnMetadataPatch
]] = None Updates to the column properties. Cannot add or remove columns, or change the name of a column.
-
field metadata_revision:
Optional
[int
] = None When specified, this is an integer that must match the last known revision number of the table, incremented by one. If it doesn’t match the current
metadataRevision
incremented by one at the time of execution, the modify request will be rejected with a 409 Conflict. This is used to ensure that changes to this table’s metadata are based on a known, previous state.
-
field name:
Optional
[str
] = None The new name of the table. Setting to
None
will reset the name to the table’s ID.
-
field properties:
Optional
[Dict
[str
,Optional
[str
]]] = None The properties to modify. A map of key value properties containing the metadata to be added or modified. Setting a property value to
None
will delete the property.
-
field workspace:
Optional
[str
] = None The new workspace for the table. Setting to
None
will reset to the default workspace. Changing the workspace requires permission to delete the table in its current workspace and permission to create the table in its new workspace.
-
field columns:
- pydantic model nisystemlink.clients.dataframe.models.ModifyTablesPartialSuccess[source]
The result of modifying multiple tables when one or more tables could not be modified.
Show JSON schema
{ "title": "ModifyTablesPartialSuccess", "description": "The result of modifying multiple tables when one or more tables could not be modified.", "type": "object", "properties": { "modifiedTableIds": { "title": "Modifiedtableids", "type": "array", "items": { "type": "string" } }, "failedModifications": { "title": "Failedmodifications", "type": "array", "items": { "$ref": "#/definitions/TableMetadataModification" } }, "error": { "$ref": "#/definitions/ApiError" } }, "required": [ "modifiedTableIds", "failedModifications", "error" ], "definitions": { "TableMetadataModification": { "title": "TableMetadataModification", "description": "Contains the metadata properties to modify. Values not included in the\nrequest or included with a ``None`` value will remain unchanged.", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "metadataRevision": { "title": "Metadatarevision", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "workspace": { "title": "Workspace", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "id" ] }, "ApiError": { "title": "ApiError", "description": "Represents the standard error structure for SystemLink API responses.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "code": { "title": "Code", "type": "integer" }, "message": { "title": "Message", "type": "string" }, "args": { "title": "Args", "default": [], "type": "array", "items": { "type": "string" } }, "resourceType": { "title": "Resourcetype", "type": "string" }, "resourceId": { "title": "Resourceid", "type": "string" }, "innerErrors": { "title": "Innererrors", "default": [], "type": "array", "items": { "$ref": "#/definitions/ApiError" } } } } } }
-
field failed_modifications:
List
[TableMetadataModification
] [Required] The requested modifications that could not be applied.
-
field modified_table_ids:
List
[str
] [Required] The IDs of the tables that were successfully modified.
-
field failed_modifications:
- pydantic model nisystemlink.clients.dataframe.models.ModifyTablesRequest[source]
Contains one or more table modifications to apply.
Show JSON schema
{ "title": "ModifyTablesRequest", "description": "Contains one or more table modifications to apply.", "type": "object", "properties": { "tables": { "title": "Tables", "type": "array", "items": { "$ref": "#/definitions/TableMetadataModification" } }, "replace": { "title": "Replace", "type": "boolean" } }, "required": [ "tables" ], "definitions": { "TableMetadataModification": { "title": "TableMetadataModification", "description": "Contains the metadata properties to modify. Values not included in the\nrequest or included with a ``None`` value will remain unchanged.", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "metadataRevision": { "title": "Metadatarevision", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "workspace": { "title": "Workspace", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "id" ] } } }
-
field replace:
Optional
[bool
] = None When true, existing properties are replaced instead of merged.
-
field tables:
List
[TableMetadataModification
] [Required] The table modifications to apply. Each table may only appear once in the list.
-
field replace:
- pydantic model nisystemlink.clients.dataframe.models.Operation[source]
Represents an operation that can be performed on a data frame.
Show JSON schema
{ "title": "Operation", "description": "Represents an operation that can be performed on a data frame.", "type": "object", "properties": { "available": { "title": "Available", "type": "boolean" }, "version": { "title": "Version", "type": "integer" } }, "required": [ "available", "version" ] }
-
field available:
bool
[Required] Whether or not the operation is available to the caller (e.g. due to permissions).
-
field version:
int
[Required] The version of the available operation.
-
field available:
- pydantic model nisystemlink.clients.dataframe.models.OperationsV1[source]
The operations available in the routes provided by the v1 HTTP API.
Show JSON schema
{ "title": "OperationsV1", "description": "The operations available in the routes provided by the v1 HTTP API.", "type": "object", "properties": { "createTables": { "$ref": "#/definitions/Operation" }, "deleteTables": { "$ref": "#/definitions/Operation" }, "modifyMetadata": { "$ref": "#/definitions/Operation" }, "listTables": { "$ref": "#/definitions/Operation" }, "readData": { "$ref": "#/definitions/Operation" }, "writeData": { "$ref": "#/definitions/Operation" } }, "required": [ "createTables", "deleteTables", "modifyMetadata", "listTables", "readData", "writeData" ], "definitions": { "Operation": { "title": "Operation", "description": "Represents an operation that can be performed on a data frame.", "type": "object", "properties": { "available": { "title": "Available", "type": "boolean" }, "version": { "title": "Version", "type": "integer" } }, "required": [ "available", "version" ] } } }
- pydantic model nisystemlink.clients.dataframe.models.PagedTableRows[source]
Contains the result of a query for rows of data.
Show JSON schema
{ "title": "PagedTableRows", "description": "Contains the result of a query for rows of data.", "type": "object", "properties": { "continuationToken": { "title": "Continuationtoken", "type": "string" }, "frame": { "$ref": "#/definitions/DataFrame" }, "totalRowCount": { "title": "Totalrowcount", "type": "integer" } }, "required": [ "frame", "totalRowCount" ], "definitions": { "DataFrame": { "title": "DataFrame", "description": "Data read from or to be written to a table.\n\nValues may be ``None`` (if the column is of type ``NULLABLE``) or encoded as\na string in a format according to each column's datatype:\n\n* BOOL: One of ``\"true\"`` or ``\"false\"``, case-insensitive.\n* INT32: Any integer number in the range [-2147483648, 2147483647],\n surrounded by quotes.\n* INT64: Any integer number in the range [-9223372036854775808,\n 9223372036854775807], surrounded by quotes.\n* FLOAT32: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-3.40282347E+38, 3.40282347E+38],\n surrounded by quotes. Not all values within the range can be represented\n with 32 bits. To preserve the exact binary encoding of the value when\n converting to a string, clients should serialize 9 digits after the\n decimal. Instead of a number, the value may be ``\"NaN\"`` (not a number),\n ``\"Infinity\"`` (positive infinity), or ``\"-Infinity\"`` (negative\n infinity), case-sensitive.\n* FLOAT64: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-1.7976931348623157E+308,\n 1.7976931348623157E+308], surrounded by quotes. Not all values within the\n range can be represented with 64 bits. To preserve the exact binary\n encoding of the value when converting to a string, clients should\n serialize 17 digits after the decimal. Instead of a number, the value may\n be ``\"NaN\"`` (not a number), ``\"Infinity\"`` (positive infinity), or\n ``\"-Infinity\"`` (negative infinity), case-sensitive.\n* STRING: Any quoted string.\n* TIMESTAMP: A date and time with millisecond precision in ISO-8601 format\n and time zone. For example: ``\"2022-08-19T16:17:30.123Z\"``. If a time zone\n is not provided, UTC is assumed. If a time zone other than UTC is\n provided, the value will be converted to UTC. If more than three digits of\n fractional seconds are provided, the time will be truncated to three\n digits (i.e. milliseconds).\n\nThe format is the same as a serialized Pandas DataFrame with orient=\"split\"\nand index=False. See\nhttps://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_json.html.\n\nWhen providing a DataFrame for appending rows, any of the table's columns\nnot specified will receive a value of ``None``. If any such columns aren't\nnullable, an error will be returned. If the entire columns property is left\nout, each row is assumed to contain all columns in the order specified when\nthe table was created.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "data": { "title": "Data", "type": "array", "items": { "type": "array", "items": { "type": "string" } } } }, "required": [ "data" ] } } }
- Fields
-
field total_row_count:
int
[Required] The total number of rows matched by the query across all pages of results.
- pydantic model nisystemlink.clients.dataframe.models.PagedTables[source]
The response for a table query containing the matched tables.
Show JSON schema
{ "title": "PagedTables", "description": "The response for a table query containing the matched tables.", "type": "object", "properties": { "continuationToken": { "title": "Continuationtoken", "type": "string" }, "tables": { "title": "Tables", "type": "array", "items": { "$ref": "#/definitions/TableMetadata" } } }, "required": [ "tables" ], "definitions": { "DataType": { "title": "DataType", "description": "Represents the different data types for a table column.", "enum": [ "BOOL", "FLOAT32", "FLOAT64", "INT32", "INT64", "STRING", "TIMESTAMP" ], "type": "string" }, "ColumnType": { "title": "ColumnType", "description": "Represents the different column types for a table column.", "enum": [ "NORMAL", "INDEX", "NULLABLE" ], "type": "string" }, "Column": { "title": "Column", "description": "Defines a single column in a table.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "dataType": { "$ref": "#/definitions/DataType" }, "columnType": { "default": "NORMAL", "allOf": [ { "$ref": "#/definitions/ColumnType" } ] }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "name", "dataType" ] }, "TableMetadata": { "title": "TableMetadata", "description": "Contains information about a table, including its properties and column definitions.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "$ref": "#/definitions/Column" } }, "createdAt": { "title": "Createdat", "type": "string", "format": "date-time" }, "id": { "title": "Id", "type": "string" }, "metadataModifiedAt": { "title": "Metadatamodifiedat", "type": "string", "format": "date-time" }, "metadataRevision": { "title": "Metadatarevision", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } }, "rowCount": { "title": "Rowcount", "type": "integer" }, "rowsModifiedAt": { "title": "Rowsmodifiedat", "type": "string", "format": "date-time" }, "supportsAppend": { "title": "Supportsappend", "type": "boolean" }, "workspace": { "title": "Workspace", "type": "string" } }, "required": [ "columns", "createdAt", "id", "metadataModifiedAt", "metadataRevision", "name", "properties", "rowCount", "rowsModifiedAt", "supportsAppend", "workspace" ] } } }
- Fields
-
field tables:
List
[TableMetadata
] [Required] The list of tables returned by the query.
- pydantic model nisystemlink.clients.dataframe.models.QueryDecimatedDataRequest[source]
Specifies the columns, filters and decimation parameters for a query.
Show JSON schema
{ "title": "QueryDecimatedDataRequest", "description": "Specifies the columns, filters and decimation parameters for a query.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "filters": { "title": "Filters", "type": "array", "items": { "$ref": "#/definitions/ColumnFilter" } }, "decimation": { "$ref": "#/definitions/DecimationOptions" } }, "definitions": { "FilterOperation": { "title": "FilterOperation", "description": "Represents the different operations that can be used in a filter.", "enum": [ "EQUALS", "NOT_EQUALS", "LESS_THAN", "LESS_THAN_EQUALS", "GREATER_THAN", "GREATER_THAN_EQUALS", "CONTAINS", "NOT_CONTAINS" ], "type": "string" }, "ColumnFilter": { "title": "ColumnFilter", "description": "A filter to apply to the table data.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "operation": { "$ref": "#/definitions/FilterOperation" }, "value": { "title": "Value", "type": "string" } }, "required": [ "column", "operation" ] }, "DecimationMethod": { "title": "DecimationMethod", "description": "Represents the different methods that can be used to decimate data.", "enum": [ "LOSSY", "MAX_MIN", "ENTRY_EXIT" ], "type": "string" }, "DecimationOptions": { "title": "DecimationOptions", "description": "Contains the parameters to use for data decimation.", "type": "object", "properties": { "xColumn": { "title": "Xcolumn", "type": "string" }, "yColumns": { "title": "Ycolumns", "type": "array", "items": { "type": "string" } }, "intervals": { "title": "Intervals", "type": "integer" }, "method": { "$ref": "#/definitions/DecimationMethod" } } } } }
- Fields
-
field decimation:
Optional
[DecimationOptions
] = None The decimation options to use when querying data. If not specified, the default is to use
DecimationMethod.Lossy
with 1000 intervals over the table’s index column.
- pydantic model nisystemlink.clients.dataframe.models.QueryTableDataRequest[source]
Contains the filtering and sorting options to use when querying table data.
Show JSON schema
{ "title": "QueryTableDataRequest", "description": "Contains the filtering and sorting options to use when querying table data.", "type": "object", "properties": { "continuationToken": { "title": "Continuationtoken", "type": "string" }, "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "filters": { "title": "Filters", "type": "array", "items": { "$ref": "#/definitions/ColumnFilter" } }, "orderBy": { "title": "Orderby", "type": "array", "items": { "$ref": "#/definitions/ColumnOrderBy" } }, "take": { "title": "Take", "type": "integer" } }, "definitions": { "FilterOperation": { "title": "FilterOperation", "description": "Represents the different operations that can be used in a filter.", "enum": [ "EQUALS", "NOT_EQUALS", "LESS_THAN", "LESS_THAN_EQUALS", "GREATER_THAN", "GREATER_THAN_EQUALS", "CONTAINS", "NOT_CONTAINS" ], "type": "string" }, "ColumnFilter": { "title": "ColumnFilter", "description": "A filter to apply to the table data.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "operation": { "$ref": "#/definitions/FilterOperation" }, "value": { "title": "Value", "type": "string" } }, "required": [ "column", "operation" ] }, "ColumnOrderBy": { "title": "ColumnOrderBy", "description": "Specifies a column to order by and the ordering direction.", "type": "object", "properties": { "column": { "title": "Column", "type": "string" }, "descending": { "title": "Descending", "type": "boolean" } }, "required": [ "column" ] } } }
-
field order_by:
Optional
[List
[ColumnOrderBy
]] = None A list of columns to order the results by. Multiple columns may be specified to order rows that have the same value for prior columns. The columns used for sorting do not need to be included in the columns list, in which case they are not returned. If
order_by
is not specified, then the order in which results are returned is undefined.
-
field take:
Optional
[int
] = None Limits the returned list to the specified number of results.
-
field order_by:
- pydantic model nisystemlink.clients.dataframe.models.QueryTablesRequest[source]
Request parameters for querying tables.
Show JSON schema
{ "title": "QueryTablesRequest", "description": "Request parameters for querying tables.", "type": "object", "properties": { "continuationToken": { "title": "Continuationtoken", "type": "string" }, "filter": { "title": "Filter", "type": "string" }, "substitutions": { "title": "Substitutions", "type": "array", "items": { "anyOf": [ { "type": "integer" }, { "type": "boolean" }, { "type": "string" } ] } }, "referenceTime": { "title": "Referencetime", "type": "string", "format": "date-time" }, "take": { "title": "Take", "type": "integer" }, "orderBy": { "title": "Orderby", "enum": [ "CREATED_AT", "METADATA_MODIFIED_AT", "NAME", "NUMBER_OF_ROWS", "ROWS_MODIFIED_AT" ], "type": "string" }, "orderByDescending": { "title": "Orderbydescending", "type": "boolean" } }, "required": [ "filter" ] }
-
field filter:
str
[Required] The table query filter in Dynamic LINQ format.
Allowed properties in the filter are:
createdAt
: DateTime the table was createdcreatedWithin
: TimeSpan in which the table was createdid
: String value uniquely identifying the tablename
: String name for the tablemetadataModifiedAt
: DateTime the table’s metadata was last modifiedmetadataModifiedWithin
: TimeSpan in which the table’s metadata was last modifiedproperties
: Dictionary with string keys and values representing table metadatarowsModifiedAt
: DateTime rows were last appended to the tablerowsModifiedWithin
: TimeSpan within rows were last appended to the tablerowCount
: Int32 number of rows in the tablesupportsAppend
: Boolean indicating whether or not the table supports appending additional rows of dataworkspace
: String value ID of the workspace the table belongs toworkspaceName
: String value name of the workspace the table belongs to
Allowed constants in the filter are:
RelativeTime.CurrentDay
: TimeSpan representing the elapsed time between now and the start of the current dayRelativeTime.CurrentWeek
: TimeSpan representing the elapsed time between now and the start of the current weekRelativeTime.CurrentMonth
: TimeSpan representing the elapsed time between now and the start of the current monthRelativeTime.CurrentYear
: TimeSpan representing the elapsed time between now and the start of the current year
-
field order_by:
Optional
[Literal
['CREATED_AT'
,'METADATA_MODIFIED_AT'
,'NAME'
,'NUMBER_OF_ROWS'
,'ROWS_MODIFIED_AT'
]] = None The sort order of the returned list of tables.
-
field order_by_descending:
Optional
[bool
] = None Whether to sort descending instead of ascending.
The elements in the list are sorted ascending by default. If the orderByDescending parameter is specified, the elements in the list are sorted based on it’s value. The orderByDescending value must be a boolean string. The elements in the list are sorted ascending if false and descending if true.
-
field reference_time:
Optional
[datetime
] = None The date and time to use as the reference point for RelativeTime filters, including time zone information. Defaults to the time on the server in UTC.
-
field substitutions:
Optional
[List
[Union
[StrictInt
,StrictBool
,str
,None
]]] = None Make substitutions in the query filter expression.
Substitutions for the query expression are indicated by non-negative integers that are prefixed with the
@
symbol. Each substitution in the given expression will be replaced by the element at the corresponding index (zero-based) in this list. For example,@0
in the filter expression will be replaced with the element at the zeroth index of the substitutions list.
-
field take:
Optional
[int
] = None Limits the returned list to the specified number of results.
-
field filter:
- pydantic model nisystemlink.clients.dataframe.models.TableMetadata[source]
Contains information about a table, including its properties and column definitions.
Show JSON schema
{ "title": "TableMetadata", "description": "Contains information about a table, including its properties and column definitions.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "$ref": "#/definitions/Column" } }, "createdAt": { "title": "Createdat", "type": "string", "format": "date-time" }, "id": { "title": "Id", "type": "string" }, "metadataModifiedAt": { "title": "Metadatamodifiedat", "type": "string", "format": "date-time" }, "metadataRevision": { "title": "Metadatarevision", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } }, "rowCount": { "title": "Rowcount", "type": "integer" }, "rowsModifiedAt": { "title": "Rowsmodifiedat", "type": "string", "format": "date-time" }, "supportsAppend": { "title": "Supportsappend", "type": "boolean" }, "workspace": { "title": "Workspace", "type": "string" } }, "required": [ "columns", "createdAt", "id", "metadataModifiedAt", "metadataRevision", "name", "properties", "rowCount", "rowsModifiedAt", "supportsAppend", "workspace" ], "definitions": { "DataType": { "title": "DataType", "description": "Represents the different data types for a table column.", "enum": [ "BOOL", "FLOAT32", "FLOAT64", "INT32", "INT64", "STRING", "TIMESTAMP" ], "type": "string" }, "ColumnType": { "title": "ColumnType", "description": "Represents the different column types for a table column.", "enum": [ "NORMAL", "INDEX", "NULLABLE" ], "type": "string" }, "Column": { "title": "Column", "description": "Defines a single column in a table.", "type": "object", "properties": { "name": { "title": "Name", "type": "string" }, "dataType": { "$ref": "#/definitions/DataType" }, "columnType": { "default": "NORMAL", "allOf": [ { "$ref": "#/definitions/ColumnType" } ] }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "name", "dataType" ] } } }
- Fields
-
field created_at:
datetime
[Required] The date and time the table was created.
-
field id:
str
[Required] The table’s unique identifier.
-
field metadata_modified_at:
datetime
[Required] The date and time the table’s metadata was last modified.
-
field metadata_revision:
int
[Required] The table’s metadata revision number, incremented each time the metadata is modified.
-
field name:
str
[Required] The name associated with the table.
-
field properties:
Dict
[str
,str
] [Required] User-defined properties associated with the table.
-
field row_count:
int
[Required] The number of rows in the table.
-
field rows_modified_at:
datetime
[Required] The date and time the table’s data was last modified.
-
field supports_append:
bool
[Required] Whether the table supports appending additional rows of data.
-
field workspace:
str
[Required] The workspace the table belongs to.
- pydantic model nisystemlink.clients.dataframe.models.TableMetadataModification[source]
Contains the metadata properties to modify. Values not included in the request or included with a
None
value will remain unchanged.Show JSON schema
{ "title": "TableMetadataModification", "description": "Contains the metadata properties to modify. Values not included in the\nrequest or included with a ``None`` value will remain unchanged.", "type": "object", "properties": { "id": { "title": "Id", "type": "string" }, "metadataRevision": { "title": "Metadatarevision", "type": "integer" }, "name": { "title": "Name", "type": "string" }, "workspace": { "title": "Workspace", "type": "string" }, "properties": { "title": "Properties", "type": "object", "additionalProperties": { "type": "string" } } }, "required": [ "id" ] }
- Fields
-
field id:
str
[Required] The ID of the table to modify.
-
field metadata_revision:
Optional
[int
] = None When specified, this is an integer that must match the last known revision number of the table, incremented by one. If it doesn’t match the current
metadataRevision
incremented by one at the time of execution, the modify request will be rejected with a conflict error. This is used to ensure that changes to this table’s metadata are based on a known, previous state.
-
field name:
Optional
[str
] = None The new name of the table.
-
field properties:
Optional
[Dict
[str
,Optional
[str
]]] = None The properties to modify. A map of key value properties containing the metadata to be added or modified. Setting a property value to
None
will delete the property. Existing properties not included in the map are unaffected unless replace is true in the top-level request object.
-
field workspace:
Optional
[str
] = None The new workspace for the table. Changing the workspace requires permission to delete the table in its current workspace and permission to create the table in its new workspace.
- nisystemlink.clients.dataframe.models.TableMetdataModification
alias of
TableMetadataModification
- pydantic model nisystemlink.clients.dataframe.models.TableRows[source]
Contains the result of a query for rows of decimated data.
Show JSON schema
{ "title": "TableRows", "description": "Contains the result of a query for rows of decimated data.", "type": "object", "properties": { "frame": { "$ref": "#/definitions/DataFrame" } }, "required": [ "frame" ], "definitions": { "DataFrame": { "title": "DataFrame", "description": "Data read from or to be written to a table.\n\nValues may be ``None`` (if the column is of type ``NULLABLE``) or encoded as\na string in a format according to each column's datatype:\n\n* BOOL: One of ``\"true\"`` or ``\"false\"``, case-insensitive.\n* INT32: Any integer number in the range [-2147483648, 2147483647],\n surrounded by quotes.\n* INT64: Any integer number in the range [-9223372036854775808,\n 9223372036854775807], surrounded by quotes.\n* FLOAT32: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-3.40282347E+38, 3.40282347E+38],\n surrounded by quotes. Not all values within the range can be represented\n with 32 bits. To preserve the exact binary encoding of the value when\n converting to a string, clients should serialize 9 digits after the\n decimal. Instead of a number, the value may be ``\"NaN\"`` (not a number),\n ``\"Infinity\"`` (positive infinity), or ``\"-Infinity\"`` (negative\n infinity), case-sensitive.\n* FLOAT64: A decimal number using a period for the decimal point, optionally\n in scientific notation, in the range [-1.7976931348623157E+308,\n 1.7976931348623157E+308], surrounded by quotes. Not all values within the\n range can be represented with 64 bits. To preserve the exact binary\n encoding of the value when converting to a string, clients should\n serialize 17 digits after the decimal. Instead of a number, the value may\n be ``\"NaN\"`` (not a number), ``\"Infinity\"`` (positive infinity), or\n ``\"-Infinity\"`` (negative infinity), case-sensitive.\n* STRING: Any quoted string.\n* TIMESTAMP: A date and time with millisecond precision in ISO-8601 format\n and time zone. For example: ``\"2022-08-19T16:17:30.123Z\"``. If a time zone\n is not provided, UTC is assumed. If a time zone other than UTC is\n provided, the value will be converted to UTC. If more than three digits of\n fractional seconds are provided, the time will be truncated to three\n digits (i.e. milliseconds).\n\nThe format is the same as a serialized Pandas DataFrame with orient=\"split\"\nand index=False. See\nhttps://pandas.pydata.org/docs/reference/api/pandas.DataFrame.to_json.html.\n\nWhen providing a DataFrame for appending rows, any of the table's columns\nnot specified will receive a value of ``None``. If any such columns aren't\nnullable, an error will be returned. If the entire columns property is left\nout, each row is assumed to contain all columns in the order specified when\nthe table was created.", "type": "object", "properties": { "columns": { "title": "Columns", "type": "array", "items": { "type": "string" } }, "data": { "title": "Data", "type": "array", "items": { "type": "array", "items": { "type": "string" } } } }, "required": [ "data" ] } } }
- Fields