Skip to main content

Inputs

AverageMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

  • measure required DimensionInput

    The column to be averaged.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

CountDistinctMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

  • dimension required DimensionInput

    The column to count distinct values from.

    The fields for creating or modifying a Dimension.

    • dimension.columnName required String

      The name of the column to create the Dimension from.

CountMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

CounterInput

The fields for querying a Metric in counter format.

A Metric's counter query returns a single value over a given time range.

Fields

  • metric optional MetricInput

    The Metric to query. You can query a pre-configured Metric by ID or name, or you can query an ad hoc Metric that you define inline.

  • timeRange optional TimeRangeInput

    The time range for calculating the counter.

    The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

    If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

    If both relative and absolute time ranges are provided, the relative time range will take precedence.

    If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

    • timeRange.timestamp optional String

      The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

    • timeRange.relative optional RelativeTimeRange

      The relative time period.

      The Relative time ranges are based on the current date and time.

      THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

      PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

      NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

      LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

      • THIS_HOUR

        Starts at the zeroth minute of the current hour and continues for 60 minutes.

      • TODAY

        Starts at 12:00:00 AM of the current day and continues for 24 hours.

      • THIS_WEEK

        Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

      • THIS_MONTH

        Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

      • THIS_QUARTER

        Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

      • THIS_YEAR

        Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

      • PREVIOUS_HOUR

        Starts at the zeroth minute of the previous hour and continues for 60 minutes.

      • YESTERDAY

        Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

      • PREVIOUS_WEEK

        Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

      • PREVIOUS_MONTH

        Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

      • PREVIOUS_QUARTER

        Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

      • PREVIOUS_YEAR

        Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

      • NEXT_HOUR

        Starts at the zeroth minute of the next hour and continues for 60 minutes.

      • TOMORROW

        " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

      • NEXT_WEEK

        Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

      • NEXT_MONTH

        Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

      • NEXT_QUARTER

        Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

      • NEXT_YEAR

        Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

      • LAST_N_MINUTES

        Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

      • LAST_N_HOURS

        Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

      • LAST_N_DAYS

        Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

      • LAST_N_WEEKS

        Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

      • LAST_N_MONTHS

        Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

      • LAST_N_QUARTERS

        Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

      • LAST_N_YEARS

        Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

    • timeRange.n optional Int

      The number of time units for the LAST_N relative periods.

    • timeRange.start optional DateTime

      The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

    • timeRange.stop optional DateTime

      The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

  • timeZone optional String

    The time zone to use. Dates and times are always returned in UTC, but setting the time zone influences relative time ranges and granularities.

    You can set this to "America/Los_Angeles", "Europe/Berlin", or any other value in the IANA time zone database. Defaults to "UTC".

  • filters optional array of FilterInput

    The Query Filters to apply before retrieving the counter data. If no Query Filters are provided, all data is included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

CreateAddColumnToDataPoolJobInput

The fields for creating an Add Column Job.

Fields

  • dataPool required ID

    The Data Pool to which the column will be added.

  • columnName required String

    Name of the new column.

  • columnType required ColumnType

    Type of the new column.

    The Propel data types.

    • BOOLEAN

      True or false.

    • STRING

      A variable-length string.

    • FLOAT

      A 32-bit signed double-precision floating point number.

    • DOUBLE

      A 64-bit signed double-precision floating point number.

    • INT8

      An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

    • INT16

      A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

    • INT32

      A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

    • INT64

      A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

    • DATE

      A date without a timestamp. For example, "YYYY-MM-DD".

    • TIMESTAMP

      A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

    • JSON

      A JavaScript Object Notation (JSON) document.

  • jsonProperty optional String

    JSON property to which the new column corresponds.

CreateAverageMetricInput

The fields for creating a new Average Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • measure required DimensionInput

    The column to be averaged.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

CreateBoosterInput

The fields for creating a new Booster.

Boosters can be understood as an aggregating index. The index is formed from left to right as follows:

  1. The Data Pool's Tenant ID column (if present)
  2. Metric Filter columns (if present)
  3. Query Filter Dimensions (see dimensions)
  4. The Data Pool's timestamp column

Fields

  • metric required ID

    The Booster's Metric.

  • dimensions required array of DimensionInput

    Dimensions to include in the Booster.

    Follow these guidelines when specifying Dimensions:

    1. Specify Dimensions in descending order of importance for filtering and in ascending order of cardinality.
    2. Take into consideration hierarchical relationships as well (for example, a "country" Dimension should appear before a "state" Dimension).

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

CreateCountDistinctMetricInput

The fields for creating a new Count Distinct Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • dimension required DimensionInput

    The Dimension over which the count distinct operation is going to be performed.

    The fields for creating or modifying a Dimension.

    • dimension.columnName required String

      The name of the column to create the Dimension from.

CreateCountMetricInput

The fields for creating a new Count Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

CreateCustomMetricInput

The fields for creating a new Custom Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • expression required String

    The expression that defines the aggregation function for this Metric.

CreateDataPoolAccessPolicyInput

Fields

  • uniqueName optional String

    The Data Pool Access Policy's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Data Pool Access Policy's description.

  • dataPool required ID

    The Data Pool to which the Access Policy belongs.

  • columns required array of String

    Columns that the Access Policy makes available for querying.

    If set to ["*"], all columns will be available for querying.

  • rows optional array of FilterInput

    Row-level filters that the Access Policy applies before executing queries.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • rows.column required String

      The name of the column to filter on.

    • rows.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • rows.value optional String

      The value to compare the column to.

    • rows.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • rows.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

CreateDataPoolInputV2

The fields for creating a Data Pool.

Fields

  • dataSource optional ID

    The Data Source that will be used to create the Data Pool.

  • table optional String

    The table that the Data Pool will sync from.

  • timestamp optional TimestampInput

    The table's primary timestamp column.

    Propel uses the primary timestamp to order and partition your data in Data Pools. It's part of what makes Propel fast for larger data sets. It will also serve as the time dimension for your Metrics.

    If you do not provide a primary timestamp column, you will need to supply an alternate timestamp when querying your Data Pool or its Metrics using the TimeRangeInput.

    The fields to specify the Data Pool's primary timestamp column. Propel uses the primary timestamp to order and partition your data in Data Pools. It will serve as the time dimension for your Metrics.

    • timestamp.columnName required String

      The name of the column that represents the primary timestamp.

  • uniqueName optional String

    The Data Pool's unique name. If not specified, Propel will set the ID as the unique name.

  • description optional String

    The Data Pool's description.

  • columns required array of DataPoolColumnInput

    The list of columns.

    • columns.columnName required String

      The name of the Data Source column that this Data Pool column derives from.

    • columns.type required ColumnType

      The Data Pool column's type. This may differ from the corresponding Data Source column's type.

      The Propel data types.

      • BOOLEAN

        True or false.

      • STRING

        A variable-length string.

      • FLOAT

        A 32-bit signed double-precision floating point number.

      • DOUBLE

        A 64-bit signed double-precision floating point number.

      • INT8

        An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

      • INT16

        A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

      • INT32

        A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

      • INT64

        A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

      • DATE

        A date without a timestamp. For example, "YYYY-MM-DD".

      • TIMESTAMP

        A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

      • JSON

        A JavaScript Object Notation (JSON) document.

    • columns.isNullable required Boolean

      Whether the column is nullable, meaning whether it accepts a null value.

  • uniqueId optional UniqueIdInput

    The Data Pool's unique ID column. Propel uses the primary timestamp and a unique ID to compose a primary key for determining whether records should be inserted, deleted, or updated within the Data Pool.

    The fields to specify the Data Pool's unique ID column. Propel uses the primary timestamp and a unique ID to compose a primary key for determining whether records should be inserted, deleted, or updated within the Data Pool.

    • uniqueId.columnName required String

      The name of the column that represents the unique ID.

  • syncing optional DataPoolSyncingInput

    The Data Pool's syncing settings.

    The fields for modifying the Data Pool syncing.

    • syncing.interval required DataPoolSyncInterval

      The available Data Pool sync intervals. Specify unit of time between attempts to sync data from your data warehouse.

      Note that the syncing interval is approximate. For example, setting the syncing interval to EVERY_1_HOUR does not mean that syncing will occur exactly on the hour. Instead, the syncing interval starts relative to when the Data Pool goes LIVE, and Propel will attempt to sync approximately every hour. Additionally, if you pause or resume syncing, this too can shift the syncing interval around.

      • EVERY_1_MINUTE

      • EVERY_5_MINUTES

      • EVERY_15_MINUTES

      • EVERY_30_MINUTES

      • EVERY_1_HOUR

      • EVERY_4_HOURS

      • EVERY_12_HOURS

      • EVERY_24_HOURS

  • accessControlEnabled optional Boolean

    Enables or disables access control for the Data Pool.

    If the Data Pool has access control enabled, Applications must be assigned Data Pool Access Policies in order to query the Data Pool and its Metrics.

  • tableSettings optional TableSettingsInput

    Override the Data Pool's table settings. These describe how the Data Pool's table is created in ClickHouse, and a default will be chosen based on the Data Pool's timestamp and uniqueId values, if any. You can override these defaults in order to specify a custom table engine, custom ORDER BY, etc.

    A Data Pool's table settings.

    These describe how the Data Pool's table is created in ClickHouse.

    • tableSettings.engine optional TableEngineInput

      The ClickHouse table engine for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    • tableSettings.partitionBy optional array of String

      The PARTITION BY clause for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    • tableSettings.primaryKey optional array of String

      The PRIMARY KEY clause for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    • tableSettings.orderBy optional array of String

      The ORDER BY clause for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

CreateDeletionJobInput

The fields for creating a Deletion Job.

Fields

  • dataPool required ID

    The Data Pool that is going to get the data deleted

  • filters required array of FilterInput

    The list of filters that will be used for deleting data. Data matching these filters will be deleted.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

CreateHttpDataSourceInput

Fields

  • connectionSettings required HttpConnectionSettingsInput

    The HTTP Data Source's connection settings

    The HTTP Data Source connection settings.

    • connectionSettings.basicAuth optional HttpBasicAuthInput

      The HTTP Basic authentication settings for uploading new data.

      If this parameter is not provided, anyone with the URL to your tables will be able to upload data. While it's OK to test without HTTP Basic authentication, we recommend enabling it.

    • connectionSettings.tables required array of HttpDataSourceTableInput

      The HTTP Data Source's tables.

  • description optional String

    The HTTP Data Source's description.

  • uniqueName optional String

    The HTTP Data Source's unique name. If not specified, Propel will set the ID as unique name.

CreateKafkaDataSourceInput

Fields

  • connectionSettings required KafkaConnectionSettingsInput

    The Kafka Data Source's connection settings

    The Kafka Data Source connection settings.

  • description optional String

    The Kafka Data Source's description.

  • uniqueName optional String

    The Kafka Data Source's unique name. If not specified, Propel will set the ID as unique name.

CreateMaxMetricInput

The fields for creating a new Maximum (Max) Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • measure required DimensionInput

    The column to calculate the maximum from.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

CreateMinMetricInput

The fields for creating a new Minimum (Min) Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • measure required DimensionInput

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

CreatePolicyInput

The fields for creating a Policy.

Fields

  • metric required ID

    The Metric to which the Policy will be applied.

  • type required PolicyType

    The type of Policy to create.

    The types of Policies that can be applied to a Metric.

    • ALL_ACCESS

      Grants access to all Metric data.

    • TENANT_ACCESS

      Grants access to a specified tenant's Metric data.

  • application required ID

    The Application that will be granted access to the Metric.

CreateS3DataSourceInput

Fields

  • connectionSettings required S3ConnectionSettingsInput

    The S3 Data Source's connection settings

    The connection settings for an S3 Data Source. These include the S3 bucket name, the AWS access key ID, and the tables (along with their paths). We do not allow fetching the AWS secret access key after it has been set.

  • description optional String

    The S3 Data Source's description.

  • uniqueName optional String

    The S3 Data Source's unique name. If not specified, Propel will set the ID as unique name.

CreateSumMetricInput

The fields for creating a new Sum Metric.

Fields

  • dataPool required ID

    The Data Pool that powers this Metric.

  • uniqueName optional String

    The Metric's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Metric's description.

  • filters optional array of FilterInput

    The Metric's Filters. Metric Filters allow defining a Metric with a subset of records from the given Data Pool. If no Filters are present, all records will be included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • dimensions optional array of DimensionInput

    The Metric's Dimensions. Dimensions define the columns that will be available to filter the Metric at query time.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • measure required DimensionInput

    The column to be summed.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

CreateUpdateDataPoolRecordsJobInput

The fields for creating an Update Data Pool Records Job.

Fields

  • dataPool required ID

    The Data Pool that is going to get its records updated.

  • filters required array of FilterInput

    The list of filters that will be used for updating records. Records matching these filters will be updated.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • set required array of UpdateDataPoolRecordsJobSetColumnInput

    Describes how the job will update the records.

    The fields for creating an Update Data Pool Records Job.

    {
    "column": "status",
    "expression": "'completed'"
    }
    
    {
    "column": "counter",
    "expression": "counter + 1"
    }
    
    {
    "column": "full_name",
    "expression": "concat(first_name, ' ', last_name)"
    }
    
    • set.column required String

      The name of the column to update.

    • set.expression required String

      The value to which the column will be updated. Once evaluated, it should be of the same data type as the column.

CreateWebhookDataSourceInput

Fields

  • connectionSettings required WebhookConnectionSettingsInput

    The Webhook Data Source's connection settings

    The Webhook Data Source connection settings.

    • connectionSettings.basicAuth optional HttpBasicAuthInput

      The HTTP basic authentication settings for the Webhook Data Source URL. If this parameter is not provided, anyone with the webhook URL will be able to send events. While it's OK to test without HTTP Basic authentication, we recommend enabling it.

    • connectionSettings.columns optional array of WebhookDataSourceColumnInput

      The additional columns for the Webhook Data Source table.

    • connectionSettings.tableSettings optional TableSettingsInput

      Override the Data Pool's table settings. These describe how the Data Pool's table is created in ClickHouse, and a default will be chosen based on the Data Pool's timestamp and uniqueId values, if any. You can override these defaults in order to specify a custom table engine, custom ORDER BY, etc.

    • connectionSettings.tenant optional String

      The tenant ID column, if any.

    • connectionSettings.timestamp optional String

      The primary timestamp column, if any.

    • connectionSettings.uniqueId optional String

      The unique ID column, if any. Propel uses the primary timestamp and a unique ID to compose a primary key for determining whether records should be inserted, deleted, or updated.

  • description optional String

    The Webhook Data Source's description.

  • uniqueName optional String

    The Webhook Data Source's unique name. If not specified, Propel will set the ID as unique name.

CustomMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

  • expression required String

    Custom expression for defining the Metric.

DataGridInput

The fields for querying Data Grid records.

Fields

  • dataPool required DataPoolInput

    The Data Pool to be queried.

  • timeRange optional TimeRangeInput

    The time range for retrieving the records.

    The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

    If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

    If both relative and absolute time ranges are provided, the relative time range will take precedence.

    If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

    • timeRange.timestamp optional String

      The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

    • timeRange.relative optional RelativeTimeRange

      The relative time period.

      The Relative time ranges are based on the current date and time.

      THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

      PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

      NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

      LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

      • THIS_HOUR

        Starts at the zeroth minute of the current hour and continues for 60 minutes.

      • TODAY

        Starts at 12:00:00 AM of the current day and continues for 24 hours.

      • THIS_WEEK

        Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

      • THIS_MONTH

        Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

      • THIS_QUARTER

        Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

      • THIS_YEAR

        Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

      • PREVIOUS_HOUR

        Starts at the zeroth minute of the previous hour and continues for 60 minutes.

      • YESTERDAY

        Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

      • PREVIOUS_WEEK

        Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

      • PREVIOUS_MONTH

        Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

      • PREVIOUS_QUARTER

        Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

      • PREVIOUS_YEAR

        Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

      • NEXT_HOUR

        Starts at the zeroth minute of the next hour and continues for 60 minutes.

      • TOMORROW

        " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

      • NEXT_WEEK

        Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

      • NEXT_MONTH

        Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

      • NEXT_QUARTER

        Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

      • NEXT_YEAR

        Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

      • LAST_N_MINUTES

        Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

      • LAST_N_HOURS

        Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

      • LAST_N_DAYS

        Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

      • LAST_N_WEEKS

        Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

      • LAST_N_MONTHS

        Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

      • LAST_N_QUARTERS

        Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

      • LAST_N_YEARS

        Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

    • timeRange.n optional Int

      The number of time units for the LAST_N relative periods.

    • timeRange.start optional DateTime

      The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

    • timeRange.stop optional DateTime

      The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

  • timeZone optional String

    The time zone to use. Dates and times are always returned in UTC, but setting the time zone influences relative time ranges and granularities.

    You can set this to "America/Los_Angeles", "Europe/Berlin", or any other value in the IANA time zone database. Defaults to "UTC".

  • columns required array of String

    The columns to retrieve.

  • orderByColumn optional Int

    The index of the column to order the table by. The index is 1-based. If not provided, records will be ordered by their timestamp by default.

  • sort optional Sort

    The sort order of the rows. It can be ascending (ASC) or descending (DESC) order. Defaults to descending (DESC) order when not provided.

    The available sort orders.

    • ASC

      Sort in ascending order.

    • DESC

      Sort in descending order.

  • filters optional array of FilterInput

    The filters to apply to the records. You may only filter on columns included in the columns array input.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • first optional Int

    The number of rows to be returned when paging forward. It can be a number between 1 and 1,000.

  • after optional String

    The cursor to use when paging forward.

  • last optional Int

    The number of rows to be returned when paging forward. It can be a number between 1 and 1,000.

  • before optional String

    The cursor to use when paging backward.

DataPoolColumnInput

Fields

  • columnName required String

    The name of the Data Source column that this Data Pool column derives from.

  • type required ColumnType

    The Data Pool column's type. This may differ from the corresponding Data Source column's type.

    The Propel data types.

    • BOOLEAN

      True or false.

    • STRING

      A variable-length string.

    • FLOAT

      A 32-bit signed double-precision floating point number.

    • DOUBLE

      A 64-bit signed double-precision floating point number.

    • INT8

      An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

    • INT16

      A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

    • INT32

      A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

    • INT64

      A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

    • DATE

      A date without a timestamp. For example, "YYYY-MM-DD".

    • TIMESTAMP

      A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

    • JSON

      A JavaScript Object Notation (JSON) document.

  • isNullable required Boolean

    Whether the column is nullable, meaning whether it accepts a null value.

DataPoolInput

Fields

  • id optional ID

    The ID of the Data Pool.

  • name optional String

    The name of the Data Pool.

DataPoolSyncingInput

The fields for modifying the Data Pool syncing.

Fields

  • interval required DataPoolSyncInterval

    The available Data Pool sync intervals. Specify unit of time between attempts to sync data from your data warehouse.

    Note that the syncing interval is approximate. For example, setting the syncing interval to EVERY_1_HOUR does not mean that syncing will occur exactly on the hour. Instead, the syncing interval starts relative to when the Data Pool goes LIVE, and Propel will attempt to sync approximately every hour. Additionally, if you pause or resume syncing, this too can shift the syncing interval around.

    • EVERY_1_MINUTE

    • EVERY_5_MINUTES

    • EVERY_15_MINUTES

    • EVERY_30_MINUTES

    • EVERY_1_HOUR

    • EVERY_4_HOURS

    • EVERY_12_HOURS

    • EVERY_24_HOURS

DeletionRequestInput

The fields for creating a Deletion Job.

Fields

  • dataPool required ID

    The Data Pool that is going to get the data deleted

  • filters required array of FilterInput

    The list of filters that will be used for deleting data. Data matching these filters will be deleted.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

DimensionInput

The fields for creating or modifying a Dimension.

Fields

  • columnName required String

    The name of the column to create the Dimension from.

FilterInput

The fields of a filter.

You can construct more complex filters using and and or. For example, to construct a filter equivalent to

(value > 0 AND value <= 100) OR status = "confirmed"

you could write

{
  "column": "value",
  "operator": "GREATER_THAN",
  "value": "0",
  "and": [{
    "column": "value",
    "operator": "LESS_THAN_OR_EQUAL_TO",
    "value": "0"
  }],
  "or": [{
    "column": "status",
    "operator": "EQUALS",
    "value": "confirmed"
  }]
}

Note that and takes precedence over or.

Fields

  • column required String

    The name of the column to filter on.

  • operator required FilterOperator

    The operation to perform when comparing the column and filter values.

    The available Filter operators.

    • EQUALS

      Selects values that are equal to the specified value.

    • NOT_EQUALS

      Selects values that are not equal to the specified value.

    • GREATER_THAN

      Selects values that are greater than the specified value.

    • GREATER_THAN_OR_EQUAL_TO

      Selects values that are greater or equal to the specified value.

    • LESS_THAN

      Selects values that are less than the specified value.

    • LESS_THAN_OR_EQUAL_TO

      Selects values that are less or equal to the specified value.

    • IS_NULL

      Selects values that are null. This operator does not accept a value.

    • IS_NOT_NULL

      Selects values that are not null. This operator does not accept a value.

    • LIKE

      Selects values that match the specified pattern.

    • NOT_LIKE

      "Selects values that do not match the specified pattern.

  • value optional String

    The value to compare the column to.

  • and optional array of FilterInput

    Additional filters to AND with this one. AND takes precedence over OR.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • and.column required String

      The name of the column to filter on.

    • and.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • and.value optional String

      The value to compare the column to.

    • and.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • and.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • or optional array of FilterInput

    Additional filters to OR with this one. AND takes precedence over OR.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • or.column required String

      The name of the column to filter on.

    • or.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • or.value optional String

      The value to compare the column to.

    • or.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • or.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

HttpBasicAuthInput

The fields for specifying an HTTP Data Source's Basic authentication settings.

Fields

  • username required String

    The username for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

  • password required String

    The password for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

HttpConnectionSettingsInput

The HTTP Data Source connection settings.

Fields

  • basicAuth optional HttpBasicAuthInput

    The HTTP Basic authentication settings for uploading new data.

    If this parameter is not provided, anyone with the URL to your tables will be able to upload data. While it's OK to test without HTTP Basic authentication, we recommend enabling it.

    The fields for specifying an HTTP Data Source's Basic authentication settings.

    • basicAuth.username required String

      The username for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

    • basicAuth.password required String

      The password for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

  • tables required array of HttpDataSourceTableInput

    The HTTP Data Source's tables.

    The fields for specifying an HTTP Data Source's table.

HttpDataSourceColumnInput

The fields for specifying a column in an HTTP Data Source's table.

Fields

  • name required String

    The column name. It has to be unique within a Table.

  • type required ColumnType

    The column type.

    The Propel data types.

    • BOOLEAN

      True or false.

    • STRING

      A variable-length string.

    • FLOAT

      A 32-bit signed double-precision floating point number.

    • DOUBLE

      A 64-bit signed double-precision floating point number.

    • INT8

      An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

    • INT16

      A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

    • INT32

      A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

    • INT64

      A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

    • DATE

      A date without a timestamp. For example, "YYYY-MM-DD".

    • TIMESTAMP

      A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

    • JSON

      A JavaScript Object Notation (JSON) document.

  • nullable required Boolean

    Whether the column's type is nullable or not.

HttpDataSourceTableInput

The fields for specifying an HTTP Data Source's table.

Fields

  • name required String

    The name of the table

  • columns required array of HttpDataSourceColumnInput

    All the columns present in the table

    The fields for specifying a column in an HTTP Data Source's table.

    • columns.name required String

      The column name. It has to be unique within a Table.

    • columns.type required ColumnType

      The column type.

      The Propel data types.

      • BOOLEAN

        True or false.

      • STRING

        A variable-length string.

      • FLOAT

        A 32-bit signed double-precision floating point number.

      • DOUBLE

        A 64-bit signed double-precision floating point number.

      • INT8

        An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

      • INT16

        A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

      • INT32

        A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

      • INT64

        A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

      • DATE

        A date without a timestamp. For example, "YYYY-MM-DD".

      • TIMESTAMP

        A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

      • JSON

        A JavaScript Object Notation (JSON) document.

    • columns.nullable required Boolean

      Whether the column's type is nullable or not.

KafkaConnectionSettingsInput

The Kafka Data Source connection settings.

Fields

  • auth required String

    The type of authentication to use. Can be SCRAM-SHA-256, SCRAM-SHA-512, PLAIN or NONE

  • bootstrapServers required array of String

    The bootstrap server(s) to connect to

  • password required String

    The password for the provided user

  • tls optional Boolean

    Whether the the connection to the Kafka servers is encrypted or not

  • user required String

    The user for authenticating against the Kafka servers

LeaderboardInput

The fields for querying a Metric in leaderboard format.

A Metric's leaderboard query returns an ordered table of Dimension and Metric values over a given time range.

Fields

  • metric optional MetricInput

    The Metric to query. You can query a pre-configured Metric by ID or name, or you can query an ad hoc Metric that you define inline.

  • timeRange optional TimeRangeInput

    The time range for calculating the leaderboard.

    The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

    If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

    If both relative and absolute time ranges are provided, the relative time range will take precedence.

    If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

    • timeRange.timestamp optional String

      The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

    • timeRange.relative optional RelativeTimeRange

      The relative time period.

      The Relative time ranges are based on the current date and time.

      THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

      PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

      NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

      LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

      • THIS_HOUR

        Starts at the zeroth minute of the current hour and continues for 60 minutes.

      • TODAY

        Starts at 12:00:00 AM of the current day and continues for 24 hours.

      • THIS_WEEK

        Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

      • THIS_MONTH

        Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

      • THIS_QUARTER

        Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

      • THIS_YEAR

        Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

      • PREVIOUS_HOUR

        Starts at the zeroth minute of the previous hour and continues for 60 minutes.

      • YESTERDAY

        Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

      • PREVIOUS_WEEK

        Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

      • PREVIOUS_MONTH

        Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

      • PREVIOUS_QUARTER

        Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

      • PREVIOUS_YEAR

        Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

      • NEXT_HOUR

        Starts at the zeroth minute of the next hour and continues for 60 minutes.

      • TOMORROW

        " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

      • NEXT_WEEK

        Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

      • NEXT_MONTH

        Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

      • NEXT_QUARTER

        Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

      • NEXT_YEAR

        Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

      • LAST_N_MINUTES

        Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

      • LAST_N_HOURS

        Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

      • LAST_N_DAYS

        Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

      • LAST_N_WEEKS

        Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

      • LAST_N_MONTHS

        Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

      • LAST_N_QUARTERS

        Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

      • LAST_N_YEARS

        Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

    • timeRange.n optional Int

      The number of time units for the LAST_N relative periods.

    • timeRange.start optional DateTime

      The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

    • timeRange.stop optional DateTime

      The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

  • timeZone optional String

    The time zone to use. Dates and times are always returned in UTC, but setting the time zone influences relative time ranges and granularities.

    You can set this to "America/Los_Angeles", "Europe/Berlin", or any other value in the IANA time zone database. Defaults to "UTC".

  • dimensions required array of DimensionInput

    One or many Dimensions to group the Metric values by. Typically, Dimensions in a leaderboard are what you want to compare and rank.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • sort optional Sort

    The sort order of the rows. It can be ascending (ASC) or descending (DESC) order. Defaults to descending (DESC) order when not provided.

    The available sort orders.

    • ASC

      Sort in ascending order.

    • DESC

      Sort in descending order.

  • rowLimit required Int

    The number of rows to be returned. It can be a number between 1 and 1,000.

  • filters optional array of FilterInput

    The list of filters to apply before retrieving the leaderboard data. If no Query Filters are provided, all data is included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

MaxMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

  • measure required DimensionInput

    The column to calculate the maximum from.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

MergeTreeTableEngineInput

Parameters for the MergeTree table engine.

Fields

  • type optional TableEngineType

    The type is always MERGE_TREE.

    ClickHouse table engine types.

    • MERGE_TREE

      The MergeTree table engine.

    • REPLACING_MERGE_TREE

      The ReplacingMergeTree table engine.

    • SUMMING_MERGE_TREE

      The SummingMergeTree table engine.

MetricInput

Fields

  • id optional ID

    The ID of a pre-configured Metric.

  • name optional String

    The name of a pre-configured Metric.

  • custom optional CustomMetricQueryInput

    An ad hoc Custom Metric.

    • custom.dataPool required DataPoolInput

      The Data Pool to which this Metric belongs.

    • custom.expression required String

      Custom expression for defining the Metric.

  • count optional CountMetricQueryInput

    An ad hoc Count Metric.

  • sum optional SumMetricQueryInput

    An ad hoc Sum Metric.

  • average optional AverageMetricQueryInput

    An ad hoc Average Metric.

  • min optional MinMetricQueryInput

    An ad hoc Min Metric.

  • max optional MaxMetricQueryInput

    An ad hoc Max Metric.

  • countDistinct optional CountDistinctMetricQueryInput

    An ad hoc Count Distinct Metric.

MetricReportDimensionInput

The fields for specifying a dimension to include in a Metric Report.

Fields

  • columnName required String

    The column name of the dimension to include in a Metric Report. This must match the name of a Data Pool column.

  • displayName optional String

    The name to display in the headers array when displaying the report. This defaults to the column name if unspecified.

  • sort optional Sort

    The sort order for the dimension. It can be ascending (ASC) or descending (DESC) order. Defaults to ascending (ASC) order when not provided.

    The available sort orders.

    • ASC

      Sort in ascending order.

    • DESC

      Sort in descending order.

MetricReportInput

The fields for querying a Metric Report.

A Metric Report is a table whose columns include dimensions and Metric values, calculated over a given time range.

Fields

  • timeRange optional TimeRangeInput

    The time range for calculating the Metric Report.

    The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

    If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

    If both relative and absolute time ranges are provided, the relative time range will take precedence.

    If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

    • timeRange.timestamp optional String

      The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

    • timeRange.relative optional RelativeTimeRange

      The relative time period.

      The Relative time ranges are based on the current date and time.

      THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

      PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

      NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

      LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

      • THIS_HOUR

        Starts at the zeroth minute of the current hour and continues for 60 minutes.

      • TODAY

        Starts at 12:00:00 AM of the current day and continues for 24 hours.

      • THIS_WEEK

        Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

      • THIS_MONTH

        Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

      • THIS_QUARTER

        Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

      • THIS_YEAR

        Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

      • PREVIOUS_HOUR

        Starts at the zeroth minute of the previous hour and continues for 60 minutes.

      • YESTERDAY

        Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

      • PREVIOUS_WEEK

        Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

      • PREVIOUS_MONTH

        Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

      • PREVIOUS_QUARTER

        Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

      • PREVIOUS_YEAR

        Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

      • NEXT_HOUR

        Starts at the zeroth minute of the next hour and continues for 60 minutes.

      • TOMORROW

        " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

      • NEXT_WEEK

        Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

      • NEXT_MONTH

        Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

      • NEXT_QUARTER

        Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

      • NEXT_YEAR

        Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

      • LAST_N_MINUTES

        Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

      • LAST_N_HOURS

        Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

      • LAST_N_DAYS

        Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

      • LAST_N_WEEKS

        Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

      • LAST_N_MONTHS

        Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

      • LAST_N_QUARTERS

        Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

      • LAST_N_YEARS

        Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

    • timeRange.n optional Int

      The number of time units for the LAST_N relative periods.

    • timeRange.start optional DateTime

      The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

    • timeRange.stop optional DateTime

      The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

  • timeZone optional String

    The time zone to use. Dates and times are always returned in UTC, but setting the time zone influences relative time ranges and granularities.

    You can set this to "America/Los_Angeles", "Europe/Berlin", or any other value in the IANA time zone database. Defaults to "UTC".

  • dimensions required array of MetricReportDimensionInput

    One or many dimensions to group the Metric values by. Typically, dimensions in a report are what you want to compare and rank.

    The fields for specifying a dimension to include in a Metric Report.

    • dimensions.columnName required String

      The column name of the dimension to include in a Metric Report. This must match the name of a Data Pool column.

    • dimensions.displayName optional String

      The name to display in the headers array when displaying the report. This defaults to the column name if unspecified.

    • dimensions.sort optional Sort

      The sort order for the dimension. It can be ascending (ASC) or descending (DESC) order. Defaults to ascending (ASC) order when not provided.

      The available sort orders.

      • ASC

        Sort in ascending order.

      • DESC

        Sort in descending order.

  • metrics required array of MetricReportMetricInput

    One or more Metrics to include in the Metric Report. These will be broken down by dimensions.

    The fields for specifying a Metric to include in a Metric Report.

    • metrics.metric optional MetricInput

      The Metric to query. You can query a pre-configured Metric by ID or name, or you can query an ad hoc Metric that you define inline.

    • metrics.displayName optional String

      The name to display in the headers array when displaying the report. This defaults to the Metric's unique name if unspecified.

    • metrics.filters optional array of FilterInput

      The Query Filters to apply when calculating the Metric.

    • metrics.sort optional Sort

      The sort order for the Metric. It can be ascending (ASC) or descending (DESC) order. Defaults to descending (DESC) order when not provided.

      The available sort orders.

      • ASC

        Sort in ascending order.

      • DESC

        Sort in descending order.

  • filters optional array of FilterInput

    The Query Filters to apply when building the Metric Report. These can be used to filter out rows.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • orderByColumn optional Int

    The index of the column to order the Metric Report by. The index is 1-based and defaults to the first Metric column. In other words, by default, reports are ordered by the first Metric; however, you can order by the second Metric, third Metric, etc., by overriding the orderByColumn input. You can also order by dimensions this way.

  • first optional Int

    The number of rows to be returned when paging forward. It can be a number between 1 and 1,000.

  • after optional String

    The cursor to use when paging forward.

  • last optional Int

    The number of rows to be returned when paging forward. It can be a number between 1 and 1,000.

  • before optional String

    The cursor to use when paging backward.

MetricReportMetricInput

The fields for specifying a Metric to include in a Metric Report.

Fields

  • metric optional MetricInput

    The Metric to query. You can query a pre-configured Metric by ID or name, or you can query an ad hoc Metric that you define inline.

  • displayName optional String

    The name to display in the headers array when displaying the report. This defaults to the Metric's unique name if unspecified.

  • filters optional array of FilterInput

    The Query Filters to apply when calculating the Metric.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • sort optional Sort

    The sort order for the Metric. It can be ascending (ASC) or descending (DESC) order. Defaults to descending (DESC) order when not provided.

    The available sort orders.

    • ASC

      Sort in ascending order.

    • DESC

      Sort in descending order.

MigrateMetricInput

The fields for migrating a Metric's Data Pool.

Fields

  • metricId required ID

    The Metric that is going to be migrated.

  • newDataPoolId required ID

    The DataPool to which the Metric is going to be migrated.

MinMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

  • measure required DimensionInput

    The column to calculate the minimum from.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

ModifyDataPoolAccessPolicyInput

Fields

  • id required ID

  • uniqueName optional String

    The Data Pool Access Policy's new unique name.

  • description optional String

    The Data Pool Access Policy's new description.

  • columns optional array of String

    Columns that the Access Policy makes available for querying. If not provided this property will not be modified.

  • rows optional array of FilterInput

    Row-level filters that the Access Policy applies before executing queries. If not provided this property will not be modified.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • rows.column required String

      The name of the column to filter on.

    • rows.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • rows.value optional String

      The value to compare the column to.

    • rows.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • rows.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

ModifyHttpDataSourceInput

Fields

  • connectionSettings optional PartialHttpConnectionSettingsInput

    The HTTP Data Source's new connection settings. If not provided this property will not be modified.

    The HTTP Data Source connection settings.

    • connectionSettings.basicAuth optional HttpBasicAuthInput

      The HTTP Basic authentication settings for uploading new data.

      If this parameter is not provided, anyone with the URL to your tables will be able to upload data. While it's OK to test without HTTP Basic authentication, we recommend enabling it. If not provided this property will not be modified.

    • connectionSettings.basicAuthEnabled optional Boolean

      Set this to false to disable HTTP Basic authentication. Any previously stored HTTP Basic authentication settings will be cleared out. If not provided this property will not be modified.

    • connectionSettings.tables optional array of HttpDataSourceTableInput

      The HTTP Data Source's tables. If not provided this property will not be modified.

  • description optional String

    The HTTP Data Source's new description. If not provided this property will not be modified.

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the HTTP Data Source to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The HTTP Data Source's new unique name. If not provided this property will not be modified.

ModifyKafkaDataSourceInput

Fields

  • connectionSettings optional PartialKafkaConnectionSettingsInput

    The Kafka Data Source's new connection settings. If not provided this property will not be modified.

    The Kafka Data Source connection settings.

    • connectionSettings.auth optional String

      The type of authentication to use. Can be SCRAM-SHA-256, SCRAM-SHA-512, PLAIN or NONE If not provided this property will not be modified.

    • connectionSettings.bootstrapServers required array of String

      The bootstrap server(s) to connect to If not provided this property will not be modified.

    • connectionSettings.password optional String

      The password for the provided user If not provided this property will not be modified.

    • connectionSettings.tls optional Boolean

      Whether the the connection to the Kafka servers is encrypted or not If not provided this property will not be modified.

    • connectionSettings.user optional String

      The user for authenticating against the Kafka servers If not provided this property will not be modified.

  • description optional String

    The Kafka Data Source's new description. If not provided this property will not be modified.

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the Kafka Data Source to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The Kafka Data Source's new unique name. If not provided this property will not be modified.

ModifyMetricInput

The fields for modifying a Metric.

Fields

  • metric required ID

    The ID of the Metric to modify.

  • uniqueName optional String

    The Metric's new unique name.

  • description optional String

    The Metric's new description.

  • dimensions optional array of DimensionInput

    The Metric's new Dimensions. Used to add or remove Dimensions.

    The fields for creating or modifying a Dimension.

    • dimensions.columnName required String

      The name of the column to create the Dimension from.

  • filters optional array of FilterInput

    The Metric's new Filters. Used to add or remove Metric Filters.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

  • accessControlEnabled optional Boolean

    Enables or disables access control for the Metric.

ModifyPolicyInput

The fields for modifying a Policy.

Fields

  • policy required ID

    The Policy's unique identifier.

  • type required PolicyType

    The type of Policy.

    The types of Policies that can be applied to a Metric.

    • ALL_ACCESS

      Grants access to all Metric data.

    • TENANT_ACCESS

      Grants access to a specified tenant's Metric data.

ModifyS3DataSourceInput

Fields

  • connectionSettings optional PartialS3ConnectionSettingsInput

    The S3 Data Source's new connection settings. If not provided this property will not be modified.

    The connection settings for an S3 Data Source. These include the S3 bucket name, the AWS access key ID, and the tables (along with their paths). We do not allow fetching the AWS secret access key after it has been set.

    • connectionSettings.awsAccessKeyId optional String

      The AWS access key ID for an IAM user with sufficient access to the S3 bucket. If not provided this property will not be modified.

    • connectionSettings.awsSecretAccessKey optional String

      The AWS secret access key for an IAM user with sufficient access to the S3 bucket. If not provided this property will not be modified.

    • connectionSettings.bucket optional String

      The name of the S3 bucket. If not provided this property will not be modified.

    • connectionSettings.tables optional array of S3DataSourceTableInput

      The S3 Data Source's tables. If not provided this property will not be modified.

  • description optional String

    The S3 Data Source's new description. If not provided this property will not be modified.

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the S3 Data Source to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The S3 Data Source's new unique name. If not provided this property will not be modified.

ModifyWebhookDataSourceInput

Fields

  • connectionSettings optional PartialWebhookConnectionSettingsInput

    The Webhook Data Source's new connection settings. If not provided this property will not be modified.

    The Webhook Data Source connection settings.

    • connectionSettings.basicAuth optional HttpBasicAuthInput

      The HTTP basic authentication settings for the Webhook Data Source URL. If this parameter is not provided, anyone with the webhook URL will be able to send events. While it's OK to test without HTTP Basic authentication, we recommend enabling it. If not provided this property will not be modified.

    • connectionSettings.basicAuthEnabled optional Boolean

      Set this to false to disable HTTP Basic authentication. Any previously stored HTTP Basic authentication settings will be cleared out. If not provided this property will not be modified.

  • description optional String

    The Webhook Data Source's new description. If not provided this property will not be modified.

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the Webhook Data Source to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The Webhook Data Source's new unique name. If not provided this property will not be modified.

PartialHttpConnectionSettingsInput

The HTTP Data Source connection settings.

Fields

  • basicAuth optional HttpBasicAuthInput

    The HTTP Basic authentication settings for uploading new data.

    If this parameter is not provided, anyone with the URL to your tables will be able to upload data. While it's OK to test without HTTP Basic authentication, we recommend enabling it. If not provided this property will not be modified.

    The fields for specifying an HTTP Data Source's Basic authentication settings.

    • basicAuth.username required String

      The username for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

    • basicAuth.password required String

      The password for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

  • basicAuthEnabled optional Boolean

    Set this to false to disable HTTP Basic authentication. Any previously stored HTTP Basic authentication settings will be cleared out. If not provided this property will not be modified.

  • tables optional array of HttpDataSourceTableInput

    The HTTP Data Source's tables. If not provided this property will not be modified.

    The fields for specifying an HTTP Data Source's table.

PartialKafkaConnectionSettingsInput

The Kafka Data Source connection settings.

Fields

  • auth optional String

    The type of authentication to use. Can be SCRAM-SHA-256, SCRAM-SHA-512, PLAIN or NONE If not provided this property will not be modified.

  • bootstrapServers required array of String

    The bootstrap server(s) to connect to If not provided this property will not be modified.

  • password optional String

    The password for the provided user If not provided this property will not be modified.

  • tls optional Boolean

    Whether the the connection to the Kafka servers is encrypted or not If not provided this property will not be modified.

  • user optional String

    The user for authenticating against the Kafka servers If not provided this property will not be modified.

PartialS3ConnectionSettingsInput

The connection settings for an S3 Data Source. These include the S3 bucket name, the AWS access key ID, and the tables (along with their paths). We do not allow fetching the AWS secret access key after it has been set.

Fields

  • awsAccessKeyId optional String

    The AWS access key ID for an IAM user with sufficient access to the S3 bucket. If not provided this property will not be modified.

  • awsSecretAccessKey optional String

    The AWS secret access key for an IAM user with sufficient access to the S3 bucket. If not provided this property will not be modified.

  • bucket optional String

    The name of the S3 bucket. If not provided this property will not be modified.

  • tables optional array of S3DataSourceTableInput

    The S3 Data Source's tables. If not provided this property will not be modified.

    The fields for specifying an S3 Data Source's table.

PartialSnowflakeConnectionSettingsInput

The fields for modifying a Snowflake Data Source's connection settings.

Fields

  • account optional String

    The Snowflake account. Only include the part before the "snowflakecomputing.com" part of your Snowflake URL (make sure you are in classic console, not Snowsight). For AWS-based accounts, this looks like "znXXXXX.us-east-2.aws". For Google Cloud-based accounts, this looks like "ffXXXXX.us-central1.gcp". If not provided this property will not be modified.

  • database optional String

    The Snowflake database name. If not provided this property will not be modified.

  • warehouse optional String

    The Snowflake warehouse name. It should be "PROPELLING" if you used the default name in the setup script. If not provided this property will not be modified.

  • schema optional String

    The Snowflake schema. If not provided this property will not be modified.

  • username optional String

    The Snowflake username. It should be "PROPEL" if you used the default name in the setup script. If not provided this property will not be modified.

  • password optional String

    The Snowflake password. If not provided this property will not be modified.

  • role optional String

    The Snowflake role. It should be "PROPELLER" if you used the default name in the setup script. If not provided this property will not be modified.

PartialWebhookConnectionSettingsInput

The Webhook Data Source connection settings.

Fields

  • basicAuth optional HttpBasicAuthInput

    The HTTP basic authentication settings for the Webhook Data Source URL. If this parameter is not provided, anyone with the webhook URL will be able to send events. While it's OK to test without HTTP Basic authentication, we recommend enabling it. If not provided this property will not be modified.

    The fields for specifying an HTTP Data Source's Basic authentication settings.

    • basicAuth.username required String

      The username for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

    • basicAuth.password required String

      The password for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

  • basicAuthEnabled optional Boolean

    Set this to false to disable HTTP Basic authentication. Any previously stored HTTP Basic authentication settings will be cleared out. If not provided this property will not be modified.

RecordsByUniqueIdInput

The fields for querying records by unique ID.

Fields

  • dataPool required DataPoolInput

    The Data Pool to be queried. A Data Pool ID or unique name can be provided.

  • columns required array of String

    The columns to retrieve.

  • uniqueIds required array of String

    The unique IDs of the records to retrieve.

ReplacingMergeTreeTableEngineInput

Parameters for the ReplacingMergeTree table engine.

Fields

  • type optional TableEngineType

    The type is always REPLACING_MERGE_TREE.

    ClickHouse table engine types.

    • MERGE_TREE

      The MergeTree table engine.

    • REPLACING_MERGE_TREE

      The ReplacingMergeTree table engine.

    • SUMMING_MERGE_TREE

      The SummingMergeTree table engine.

  • ver optional String

    The ver parameter to the ReplacingMergeTree engine.

S3ConnectionSettingsInput

The connection settings for an S3 Data Source. These include the S3 bucket name, the AWS access key ID, and the tables (along with their paths). We do not allow fetching the AWS secret access key after it has been set.

Fields

  • awsAccessKeyId required String

    The AWS access key ID for an IAM user with sufficient access to the S3 bucket.

  • awsSecretAccessKey required String

    The AWS secret access key for an IAM user with sufficient access to the S3 bucket.

  • bucket required String

    The name of the S3 bucket.

  • tables required array of S3DataSourceTableInput

    The S3 Data Source's tables.

    The fields for specifying an S3 Data Source's table.

S3DataSourceColumnInput

The fields for specifying a column in an S3 Data Source's table.

Fields

  • name required String

    The column name. It has to be unique within a Table.

  • type required ColumnType

    The column type.

    The Propel data types.

    • BOOLEAN

      True or false.

    • STRING

      A variable-length string.

    • FLOAT

      A 32-bit signed double-precision floating point number.

    • DOUBLE

      A 64-bit signed double-precision floating point number.

    • INT8

      An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

    • INT16

      A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

    • INT32

      A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

    • INT64

      A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

    • DATE

      A date without a timestamp. For example, "YYYY-MM-DD".

    • TIMESTAMP

      A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

    • JSON

      A JavaScript Object Notation (JSON) document.

  • nullable required Boolean

    Whether the column's type is nullable or not.

S3DataSourceTableInput

The fields for specifying an S3 Data Source's table.

Fields

  • name required String

    The name of the table

  • path optional String

    The path to the table's files in S3.

  • columns required array of S3DataSourceColumnInput

    All the columns present in the table

    The fields for specifying a column in an S3 Data Source's table.

    • columns.name required String

      The column name. It has to be unique within a Table.

    • columns.type required ColumnType

      The column type.

      The Propel data types.

      • BOOLEAN

        True or false.

      • STRING

        A variable-length string.

      • FLOAT

        A 32-bit signed double-precision floating point number.

      • DOUBLE

        A 64-bit signed double-precision floating point number.

      • INT8

        An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

      • INT16

        A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

      • INT32

        A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

      • INT64

        A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

      • DATE

        A date without a timestamp. For example, "YYYY-MM-DD".

      • TIMESTAMP

        A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

      • JSON

        A JavaScript Object Notation (JSON) document.

    • columns.nullable required Boolean

      Whether the column's type is nullable or not.

SnowflakeConnectionSettingsInput

The fields for creating a Snowflake Data Source's connection settings.

Fields

  • account required String

    The Snowflake account. Only include the part before the "snowflakecomputing.com" part of your Snowflake URL (make sure you are in classic console, not Snowsight). For AWS-based accounts, this looks like "znXXXXX.us-east-2.aws". For Google Cloud-based accounts, this looks like "ffXXXXX.us-central1.gcp".

  • database required String

    The Snowflake database name.

  • warehouse required String

    The Snowflake warehouse name. It should be "PROPELLING" if you used the default name in the setup script.

  • schema required String

    The Snowflake schema.

  • username required String

    The Snowflake username. It should be "PROPEL" if you used the default name in the setup script.

  • password required String

    The Snowflake password.

  • role required String

    The Snowflake role. It should be "PROPELLER" if you used the default name in the setup script.

SqlV1Input

Input to the SqlV1 api.

Fields

  • query required String

    The SQL query.

SumMetricQueryInput

Fields

  • dataPool required DataPoolInput

    The Data Pool to which this Metric belongs.

  • measure required DimensionInput

    The column to be summed.

    The fields for creating or modifying a Dimension.

    • measure.columnName required String

      The name of the column to create the Dimension from.

SummingMergeTreeTableEngineInput

Parameters for the SummingMergeTree table engine.

Fields

  • type optional TableEngineType

    The type is always SUMMING_MERGE_TREE.

    ClickHouse table engine types.

    • MERGE_TREE

      The MergeTree table engine.

    • REPLACING_MERGE_TREE

      The ReplacingMergeTree table engine.

    • SUMMING_MERGE_TREE

      The SummingMergeTree table engine.

  • columns optional array of String

    The columns argument for the SummingMergeTree table engine

TableEngineInput

A Data Pool's table engine.

Fields

  • mergeTree optional MergeTreeTableEngineInput

    Field for specifying the MergeTree table engine.

    Parameters for the MergeTree table engine.

    • mergeTree.type optional TableEngineType

      The type is always MERGE_TREE.

      ClickHouse table engine types.

      • MERGE_TREE

        The MergeTree table engine.

      • REPLACING_MERGE_TREE

        The ReplacingMergeTree table engine.

      • SUMMING_MERGE_TREE

        The SummingMergeTree table engine.

  • replacingMergeTree optional ReplacingMergeTreeTableEngineInput

    Field for specifying the ReplacingMergeTree table engine.

    Parameters for the ReplacingMergeTree table engine.

    • replacingMergeTree.type optional TableEngineType

      The type is always REPLACING_MERGE_TREE.

      ClickHouse table engine types.

      • MERGE_TREE

        The MergeTree table engine.

      • REPLACING_MERGE_TREE

        The ReplacingMergeTree table engine.

      • SUMMING_MERGE_TREE

        The SummingMergeTree table engine.

    • replacingMergeTree.ver optional String

      The ver parameter to the ReplacingMergeTree engine.

  • summingMergeTree optional SummingMergeTreeTableEngineInput

    Field for specifying the SummingMergeTree table engine.

    Parameters for the SummingMergeTree table engine.

    • summingMergeTree.type optional TableEngineType

      The type is always SUMMING_MERGE_TREE.

      ClickHouse table engine types.

      • MERGE_TREE

        The MergeTree table engine.

      • REPLACING_MERGE_TREE

        The ReplacingMergeTree table engine.

      • SUMMING_MERGE_TREE

        The SummingMergeTree table engine.

    • summingMergeTree.columns optional array of String

      The columns argument for the SummingMergeTree table engine

TableSettingsInput

A Data Pool's table settings.

These describe how the Data Pool's table is created in ClickHouse.

Fields

  • engine optional TableEngineInput

    The ClickHouse table engine for the Data Pool's table.

    This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    A Data Pool's table engine.

  • partitionBy optional array of String

    The PARTITION BY clause for the Data Pool's table.

    This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

  • primaryKey optional array of String

    The PRIMARY KEY clause for the Data Pool's table.

    This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

  • orderBy optional array of String

    The ORDER BY clause for the Data Pool's table.

    This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

TenantInput

The fields to specify the Data Pool's tenant ID column. The tenant ID column is used to control access to your data with access policies.

Fields

  • columnName required String

    The name of the column that represents the tenant ID.

TimeRangeInput

The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

If both relative and absolute time ranges are provided, the relative time range will take precedence.

If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

Fields

  • timestamp optional String

    The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

  • relative optional RelativeTimeRange

    The relative time period.

    The Relative time ranges are based on the current date and time.

    THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

    PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

    NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

    LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

    • THIS_HOUR

      Starts at the zeroth minute of the current hour and continues for 60 minutes.

    • TODAY

      Starts at 12:00:00 AM of the current day and continues for 24 hours.

    • THIS_WEEK

      Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

    • THIS_MONTH

      Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

    • THIS_QUARTER

      Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

    • THIS_YEAR

      Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

    • PREVIOUS_HOUR

      Starts at the zeroth minute of the previous hour and continues for 60 minutes.

    • YESTERDAY

      Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

    • PREVIOUS_WEEK

      Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

    • PREVIOUS_MONTH

      Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

    • PREVIOUS_QUARTER

      Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

    • PREVIOUS_YEAR

      Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

    • NEXT_HOUR

      Starts at the zeroth minute of the next hour and continues for 60 minutes.

    • TOMORROW

      " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

    • NEXT_WEEK

      Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

    • NEXT_MONTH

      Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

    • NEXT_QUARTER

      Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

    • NEXT_YEAR

      Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

    • LAST_N_MINUTES

      Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

    • LAST_N_HOURS

      Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

    • LAST_N_DAYS

      Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

    • LAST_N_WEEKS

      Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

    • LAST_N_MONTHS

      Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

    • LAST_N_QUARTERS

      Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

    • LAST_N_YEARS

      Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

  • n optional Int

    The number of time units for the LAST_N relative periods.

  • start optional DateTime

    The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

  • stop optional DateTime

    The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

TimeSeriesInput

The fields for querying a Metric in time series format.

A Metric's time series query returns the values over a given time range aggregated by a given time granularity; day, month, or year, for example.

Fields

  • metric optional MetricInput

    The Metric to Query. It can be a pre-created one or it can be inlined here.

  • timeRange optional TimeRangeInput

    The time range for calculating the time series.

    The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

    If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

    If both relative and absolute time ranges are provided, the relative time range will take precedence.

    If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

    • timeRange.timestamp optional String

      The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

    • timeRange.relative optional RelativeTimeRange

      The relative time period.

      The Relative time ranges are based on the current date and time.

      THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

      PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

      NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

      LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

      • THIS_HOUR

        Starts at the zeroth minute of the current hour and continues for 60 minutes.

      • TODAY

        Starts at 12:00:00 AM of the current day and continues for 24 hours.

      • THIS_WEEK

        Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

      • THIS_MONTH

        Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

      • THIS_QUARTER

        Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

      • THIS_YEAR

        Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

      • PREVIOUS_HOUR

        Starts at the zeroth minute of the previous hour and continues for 60 minutes.

      • YESTERDAY

        Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

      • PREVIOUS_WEEK

        Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

      • PREVIOUS_MONTH

        Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

      • PREVIOUS_QUARTER

        Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

      • PREVIOUS_YEAR

        Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

      • NEXT_HOUR

        Starts at the zeroth minute of the next hour and continues for 60 minutes.

      • TOMORROW

        " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

      • NEXT_WEEK

        Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

      • NEXT_MONTH

        Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

      • NEXT_QUARTER

        Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

      • NEXT_YEAR

        Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

      • LAST_N_MINUTES

        Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

      • LAST_N_HOURS

        Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

      • LAST_N_DAYS

        Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

      • LAST_N_WEEKS

        Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

      • LAST_N_MONTHS

        Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

      • LAST_N_QUARTERS

        Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

      • LAST_N_YEARS

        Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

    • timeRange.n optional Int

      The number of time units for the LAST_N relative periods.

    • timeRange.start optional DateTime

      The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

    • timeRange.stop optional DateTime

      The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

  • timeZone optional String

    The time zone to use. Dates and times are always returned in UTC, but setting the time zone influences relative time ranges and granularities.

    You can set this to "America/Los_Angeles", "Europe/Berlin", or any other value in the IANA time zone database. Defaults to "UTC".

  • granularity required TimeSeriesGranularity

    The time granularity (hour, day, month, etc.) to aggregate the Metric values by.

    The available time series granularities. Granularities define the unit of time to aggregate the Metric data for a time series query.

    For example, if the granularity is set to DAY, then the the time series query will return a label and a value for each day.

    If there are no records for a given time series granularity, Propel will return the label and a value of "0" so that the time series can be properly visualized.

    • MINUTE

      Aggregates values by minute intervals.

    • FIVE_MINUTES

      Aggregates values by 5-minute intervals.

    • TEN_MINUTES

      Aggregates values by 10-minute intervals.

    • FIFTEEN_MINUTES

      Aggregates values by 15-minute intervals.

    • HOUR

      Aggregates values by hourly intervals.

    • DAY

      Aggregates values by daily intervals.

    • WEEK

      Aggregates values by weekly intervals.

    • MONTH

      Aggregates values by monthly intervals.

    • YEAR

      Aggregates values by yearly intervals.

  • filters optional array of FilterInput

    The Query Filters to apply before retrieving the time series data. If no Query Filters are provided, all data is included.

    The fields of a filter.

    You can construct more complex filters using and and or. For example, to construct a filter equivalent to

    (value > 0 AND value <= 100) OR status = "confirmed"
    

    you could write

    {
      "column": "value",
      "operator": "GREATER_THAN",
      "value": "0",
      "and": [{
        "column": "value",
        "operator": "LESS_THAN_OR_EQUAL_TO",
        "value": "0"
      }],
      "or": [{
        "column": "status",
        "operator": "EQUALS",
        "value": "confirmed"
      }]
    }
    

    Note that and takes precedence over or.

    • filters.column required String

      The name of the column to filter on.

    • filters.operator required FilterOperator

      The operation to perform when comparing the column and filter values.

      The available Filter operators.

      • EQUALS

        Selects values that are equal to the specified value.

      • NOT_EQUALS

        Selects values that are not equal to the specified value.

      • GREATER_THAN

        Selects values that are greater than the specified value.

      • GREATER_THAN_OR_EQUAL_TO

        Selects values that are greater or equal to the specified value.

      • LESS_THAN

        Selects values that are less than the specified value.

      • LESS_THAN_OR_EQUAL_TO

        Selects values that are less or equal to the specified value.

      • IS_NULL

        Selects values that are null. This operator does not accept a value.

      • IS_NOT_NULL

        Selects values that are not null. This operator does not accept a value.

      • LIKE

        Selects values that match the specified pattern.

      • NOT_LIKE

        "Selects values that do not match the specified pattern.

    • filters.value optional String

      The value to compare the column to.

    • filters.and optional array of FilterInput

      Additional filters to AND with this one. AND takes precedence over OR.

    • filters.or optional array of FilterInput

      Additional filters to OR with this one. AND takes precedence over OR.

TimestampInput

The fields to specify the Data Pool's primary timestamp column. Propel uses the primary timestamp to order and partition your data in Data Pools. It will serve as the time dimension for your Metrics.

Fields

  • columnName required String

    The name of the column that represents the primary timestamp.

TopValuesInput

The fields for querying the top values in a given column.

Fields

  • dataPool required DataPoolInput

    The Data Pool to be queried. A Data Pool ID or unique name can be provided.

  • columnName required String

    The column to fetch the unique values from.

  • timeRange optional TimeRangeInput

    The time range for calculating the top values.

    The fields required to specify the time range for a time series, counter, or leaderboard Metric query.

    If no relative or absolute time ranges are provided, Propel defaults to an absolute time range beginning with the earliest record in the Metric's Data Pool and ending with the latest record.

    If both relative and absolute time ranges are provided, the relative time range will take precedence.

    If a LAST_N relative time period is selected, an n ≥ 1 must be provided. If no n is provided or n < 1, a BAD_REQUEST error will be returned.

    • timeRange.timestamp optional String

      The timestamp field to use when querying. Defaults to the timestamp configured on the Data Pool or Metric, if any. Set this to filter on an alternative timestamp field.

    • timeRange.relative optional RelativeTimeRange

      The relative time period.

      The Relative time ranges are based on the current date and time.

      THIS - The current unit of time. For example, if today is June 8, 2022, and THIS_MONTH is selected, then data for June 2022 would be returned.

      PREVIOUS - The previous unit of time. For example, if today is June 8, 2022, and PREVIOUS_MONTH is selected, then data for May 2022 would be returned. It excludes the current unit of time.

      NEXT - The next unit of time. For example, if today is June 8, 2022, and NEXT_MONTH is selected, then data for July 2022 would be returned. It excludes the current unit of time.

      LAST_N - The last n units of time, including the current one. For example, if today is June 8, 2022 and LAST_N_YEARS with n = 3 is selected, then data for 2020, 2021, and 2022 will be returned. It will include the current time period.

      • THIS_HOUR

        Starts at the zeroth minute of the current hour and continues for 60 minutes.

      • TODAY

        Starts at 12:00:00 AM of the current day and continues for 24 hours.

      • THIS_WEEK

        Starts on Monday, 12:00:00 AM of the current week and continues for seven days.

      • THIS_MONTH

        Starts at 12:00:00 AM on the first day of the current month and continues for the duration of the month.

      • THIS_QUARTER

        Starts at 12:00:00 AM on the first day of the current calendar quarter and continues for the duration of the quarter.

      • THIS_YEAR

        Starts on January 1st, 12:00:00 AM of the current year and continues for the duration of the year.

      • PREVIOUS_HOUR

        Starts at the zeroth minute of the previous hour and continues for 60 minutes.

      • YESTERDAY

        Starts at 12:00:00 AM on the day before the today and continues for 24 hours.

      • PREVIOUS_WEEK

        Starts on Monday, 12:00:00 AM, a week before the current week, and continues for seven days.

      • PREVIOUS_MONTH

        Starts at 12:00:00 AM on the first day of the month before the current month and continues for the duration of the month.

      • PREVIOUS_QUARTER

        Starts at 12:00:00 AM on the first day of the calendar quarter before the current quarter and continues for the duration of the quarter.

      • PREVIOUS_YEAR

        Starts on January 1st, 12:00:00 AM, the year before the current year, and continues for the duration of the year.

      • NEXT_HOUR

        Starts at the zeroth minute of the next hour and continues for 60 minutes.

      • TOMORROW

        " Starts at 12:00:00 AM, the day after the current day, and continues for 24 hours.

      • NEXT_WEEK

        Starts on Monday, 12:00:00 AM, the week after the current week, and continues for the duration of the week.

      • NEXT_MONTH

        Starts at 12:00:00 AM on the first day of the next month and continues for the duration of the month.

      • NEXT_QUARTER

        Starts at 12:00:00 AM on the first day of the next calendar quarter and continues for the duration of the quarter.

      • NEXT_YEAR

        Starts on January 1st, 12:00:00 AM of the next year and continues for the duration of the year.

      • LAST_N_MINUTES

        Starts at the zeroth second n - 1 minute(s) before the current minute and continues through the current minute. It includes this minute.

      • LAST_N_HOURS

        Starts at the zeroth minute of the n - 1 hour(s) before the current hour, and continues through the current hour. It includes this hour.

      • LAST_N_DAYS

        Starts at 12:00:00 AM, n - 1 day(s) before the current day, and continues through the current day. It includes today.

      • LAST_N_WEEKS

        Starts on Monday, 12:00:00 AM, n - 1 week(s) before the current week, and continues through the current week. It includes this week.

      • LAST_N_MONTHS

        Starts at 12:00:00 AM on the first day of the month, n - 1 month(s) before the current month, and continues through the current month. It includes this month.

      • LAST_N_QUARTERS

        Starts at 12:00:00 AM on the first day of the calendar quarter n - 1 quarter(s) before the current quarter and continues through the current quarter. It includes this quarter.

      • LAST_N_YEARS

        Starts on January 1st, 12:00:00 AM of the year n - 1 year(s) before the current year and continues through the current year. It includes this year.

    • timeRange.n optional Int

      The number of time units for the LAST_N relative periods.

    • timeRange.start optional DateTime

      The optional start timestamp (inclusive). Defaults to the timestamp of the earliest record in the Data Pool.

    • timeRange.stop optional DateTime

      The optional end timestamp (exclusive). Defaults to the timestamp of the latest record in the Data Pool.

  • timeZone optional String

    The time zone to use. Dates and times are always returned in UTC, but setting the time zone influences relative time ranges and granularities.

    You can set this to "America/Los_Angeles", "Europe/Berlin", or any other value in the IANA time zone database. Defaults to "UTC".

  • maxValues optional Int

    The maximum number of values to return. It can be a number between 1 and 1,000. If the parameter is omitted, default value 10 is used.

UniqueIdInput

The fields to specify the Data Pool's unique ID column. Propel uses the primary timestamp and a unique ID to compose a primary key for determining whether records should be inserted, deleted, or updated within the Data Pool.

Fields

  • columnName required String

    The name of the column that represents the unique ID.

UpdateDataPoolRecordsJobSetColumnInput

The fields for creating an Update Data Pool Records Job.

{
"column": "status",
"expression": "'completed'"
}

{
"column": "counter",
"expression": "counter + 1"
}

{
"column": "full_name",
"expression": "concat(first_name, ' ', last_name)"
}

Fields

  • column required String

    The name of the column to update.

  • expression required String

    The value to which the column will be updated. Once evaluated, it should be of the same data type as the column.

WebhookConnectionSettingsInput

The Webhook Data Source connection settings.

Fields

  • basicAuth optional HttpBasicAuthInput

    The HTTP basic authentication settings for the Webhook Data Source URL. If this parameter is not provided, anyone with the webhook URL will be able to send events. While it's OK to test without HTTP Basic authentication, we recommend enabling it.

    The fields for specifying an HTTP Data Source's Basic authentication settings.

    • basicAuth.username required String

      The username for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

    • basicAuth.password required String

      The password for HTTP Basic authentication that must be included in the Authorization header when uploading new data.

  • columns optional array of WebhookDataSourceColumnInput

    The additional columns for the Webhook Data Source table.

    The fields for specifying a column in an Webhook Data Source's table.

    • columns.name required String

      The column name. It has to be unique within a Table.

    • columns.jsonProperty required String

      The JSON property that the column will be derived from. For example, if you POST a JSON event like this:

      { "greeting": { "message": "hello, world" } }
      

      Then you can use the JSON property "greeting.message" to extract "hello, world" to a column.

    • columns.type required ColumnType

      The column type.

      The Propel data types.

      • BOOLEAN

        True or false.

      • STRING

        A variable-length string.

      • FLOAT

        A 32-bit signed double-precision floating point number.

      • DOUBLE

        A 64-bit signed double-precision floating point number.

      • INT8

        An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

      • INT16

        A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

      • INT32

        A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

      • INT64

        A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

      • DATE

        A date without a timestamp. For example, "YYYY-MM-DD".

      • TIMESTAMP

        A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

      • JSON

        A JavaScript Object Notation (JSON) document.

    • columns.nullable required Boolean

      Whether the column's type is nullable or not.

  • tableSettings optional TableSettingsInput

    Override the Data Pool's table settings. These describe how the Data Pool's table is created in ClickHouse, and a default will be chosen based on the Data Pool's timestamp and uniqueId values, if any. You can override these defaults in order to specify a custom table engine, custom ORDER BY, etc.

    A Data Pool's table settings.

    These describe how the Data Pool's table is created in ClickHouse.

    • tableSettings.engine optional TableEngineInput

      The ClickHouse table engine for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    • tableSettings.partitionBy optional array of String

      The PARTITION BY clause for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    • tableSettings.primaryKey optional array of String

      The PRIMARY KEY clause for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

    • tableSettings.orderBy optional array of String

      The ORDER BY clause for the Data Pool's table.

      This field is optional. A default will be chosen based on the Data Pool's timestamp and uniqueId values, if specified.

  • tenant optional String

    The tenant ID column, if any.

  • timestamp optional String

    The primary timestamp column, if any.

  • uniqueId optional String

    The unique ID column, if any. Propel uses the primary timestamp and a unique ID to compose a primary key for determining whether records should be inserted, deleted, or updated.

WebhookDataSourceColumnInput

The fields for specifying a column in an Webhook Data Source's table.

Fields

  • name required String

    The column name. It has to be unique within a Table.

  • jsonProperty required String

    The JSON property that the column will be derived from. For example, if you POST a JSON event like this:

    { "greeting": { "message": "hello, world" } }
    

    Then you can use the JSON property "greeting.message" to extract "hello, world" to a column.

  • type required ColumnType

    The column type.

    The Propel data types.

    • BOOLEAN

      True or false.

    • STRING

      A variable-length string.

    • FLOAT

      A 32-bit signed double-precision floating point number.

    • DOUBLE

      A 64-bit signed double-precision floating point number.

    • INT8

      An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

    • INT16

      A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

    • INT32

      A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

    • INT64

      A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

    • DATE

      A date without a timestamp. For example, "YYYY-MM-DD".

    • TIMESTAMP

      A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

    • JSON

      A JavaScript Object Notation (JSON) document.

  • nullable required Boolean

    Whether the column's type is nullable or not.

createApplicationInput

The fields for creating an Application.

Fields

  • uniqueName optional String

    The Application's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Application's description.

  • propeller optional Propeller

    The Application's Propeller. If no Propeller is provided, Propel will set the Propeller to P1_X_SMALL.

    A Propeller determines your Application's query processing power. The larger the Propeller, the faster the queries and the higher the cost. Every Propel Application (and therefore every set of API credentials) has a Propeller that determines the speed and cost of queries.

    Learn more about Data Sources.

    • P1_X_SMALL

      Max records per second: 5,000,000 records per second

    • P1_SMALL

      Max records per second: 25,000,000 records per second

    • P1_MEDIUM

      Max records per second: 100,000,000 records per second

    • P1_LARGE

      Max records per second: 250,000,000 records per second

    • P1_X_LARGE

      Max records per second: 500,000,000 records per second

  • scopes optional array of ApplicationScope

    The Application's API authorization scopes. If specified, at least one scope must be provided; otherwise, all scopes will be granted to the Application by default.

    The API operations an Application is authorized to perform.

    • ADMIN

      Grant read/write access to Data Sources, Data Pools, Metrics and Policies.

    • APPLICATION_ADMIN

      Grant read/write access to Applications.

    • DATA_POOL_QUERY

      Grant read access to query Data Pools.

    • DATA_POOL_READ

      Grant read access to read Data Pools.

    • DATA_POOL_STATS

      Grant read access to fetch column statistics from Data Pools.

    • METRIC_QUERY

      Grant read access to query Metrics.

    • METRIC_STATS

      Grant read access to fetch Dimension statistics from Metrics.

    • METRIC_READ

      Grant read access to Metrics.

      This does not allow querying Metrics. For that, see METRIC_QUERY.

createSnowflakeDataSourceInput

The fields for creating a Snowflake Data Source.

Fields

  • uniqueName optional String

    The Data Source's unique name. If not specified, Propel will set the ID as unique name.

  • description optional String

    The Data Source's description.

  • connectionSettings required SnowflakeConnectionSettingsInput

    The Data Source's connection settings.

    The fields for creating a Snowflake Data Source's connection settings.

    • connectionSettings.account required String

      The Snowflake account. Only include the part before the "snowflakecomputing.com" part of your Snowflake URL (make sure you are in classic console, not Snowsight). For AWS-based accounts, this looks like "znXXXXX.us-east-2.aws". For Google Cloud-based accounts, this looks like "ffXXXXX.us-central1.gcp".

    • connectionSettings.database required String

      The Snowflake database name.

    • connectionSettings.warehouse required String

      The Snowflake warehouse name. It should be "PROPELLING" if you used the default name in the setup script.

    • connectionSettings.schema required String

      The Snowflake schema.

    • connectionSettings.username required String

      The Snowflake username. It should be "PROPEL" if you used the default name in the setup script.

    • connectionSettings.password required String

      The Snowflake password.

    • connectionSettings.role required String

      The Snowflake role. It should be "PROPELLER" if you used the default name in the setup script.

idOrUniqueName

The ID or unique name input.

If both ID and unique name are provided, the ID will take precedence.

Fields

  • id optional String

    The unique identifier of the object.

  • uniqueName optional String

    The unique name of the object.

modifyApplicationInput

The fields for modifying an Application.

Fields

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the Application to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The Application's new unique name.

  • description optional String

    The Application's new description.

  • propeller optional Propeller

    The Application's new Propeller.

    A Propeller determines your Application's query processing power. The larger the Propeller, the faster the queries and the higher the cost. Every Propel Application (and therefore every set of API credentials) has a Propeller that determines the speed and cost of queries.

    Learn more about Data Sources.

    • P1_X_SMALL

      Max records per second: 5,000,000 records per second

    • P1_SMALL

      Max records per second: 25,000,000 records per second

    • P1_MEDIUM

      Max records per second: 100,000,000 records per second

    • P1_LARGE

      Max records per second: 250,000,000 records per second

    • P1_X_LARGE

      Max records per second: 500,000,000 records per second

  • scopes optional array of ApplicationScope

    The Application's new API authorization scopes.

    The API operations an Application is authorized to perform.

    • ADMIN

      Grant read/write access to Data Sources, Data Pools, Metrics and Policies.

    • APPLICATION_ADMIN

      Grant read/write access to Applications.

    • DATA_POOL_QUERY

      Grant read access to query Data Pools.

    • DATA_POOL_READ

      Grant read access to read Data Pools.

    • DATA_POOL_STATS

      Grant read access to fetch column statistics from Data Pools.

    • METRIC_QUERY

      Grant read access to query Metrics.

    • METRIC_STATS

      Grant read access to fetch Dimension statistics from Metrics.

    • METRIC_READ

      Grant read access to Metrics.

      This does not allow querying Metrics. For that, see METRIC_QUERY.

modifyDataPoolInput

The fields for modifying a Data Pool.

Fields

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the Data Pool to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The Data Pool's new unique name.

  • description optional String

    The Data Pool's new description.

  • dataRetentionInDays optional Int

    The Data Pool's new data retention in days.

  • syncing optional DataPoolSyncingInput

    The Data Pool's new syncing settings.

    The fields for modifying the Data Pool syncing.

    • syncing.interval required DataPoolSyncInterval

      The available Data Pool sync intervals. Specify unit of time between attempts to sync data from your data warehouse.

      Note that the syncing interval is approximate. For example, setting the syncing interval to EVERY_1_HOUR does not mean that syncing will occur exactly on the hour. Instead, the syncing interval starts relative to when the Data Pool goes LIVE, and Propel will attempt to sync approximately every hour. Additionally, if you pause or resume syncing, this too can shift the syncing interval around.

      • EVERY_1_MINUTE

      • EVERY_5_MINUTES

      • EVERY_15_MINUTES

      • EVERY_30_MINUTES

      • EVERY_1_HOUR

      • EVERY_4_HOURS

      • EVERY_12_HOURS

      • EVERY_24_HOURS

  • accessControlEnabled optional Boolean

    Enables or disables access control for the Data Pool.

    If the Data Pool has access control enabled, Applications must be assigned Data Pool Access Policies in order to query the Data Pool and its Metrics.

modifySnowflakeDataSourceInput

The fields for modifying a Snowflake Data Source.

Fields

  • idOrUniqueName required idOrUniqueName

    The ID or unique name of the Data Source to modify.

    The ID or unique name input.

    If both ID and unique name are provided, the ID will take precedence.

  • uniqueName optional String

    The Data Source's new unique name.

  • description optional String

    The Data Source's new description.

  • connectionSettings optional PartialSnowflakeConnectionSettingsInput

    The Data Source's new connection settings.

    The fields for modifying a Snowflake Data Source's connection settings.

    • connectionSettings.account optional String

      The Snowflake account. Only include the part before the "snowflakecomputing.com" part of your Snowflake URL (make sure you are in classic console, not Snowsight). For AWS-based accounts, this looks like "znXXXXX.us-east-2.aws". For Google Cloud-based accounts, this looks like "ffXXXXX.us-central1.gcp". If not provided this property will not be modified.

    • connectionSettings.database optional String

      The Snowflake database name. If not provided this property will not be modified.

    • connectionSettings.warehouse optional String

      The Snowflake warehouse name. It should be "PROPELLING" if you used the default name in the setup script. If not provided this property will not be modified.

    • connectionSettings.schema optional String

      The Snowflake schema. If not provided this property will not be modified.

    • connectionSettings.username optional String

      The Snowflake username. It should be "PROPEL" if you used the default name in the setup script. If not provided this property will not be modified.

    • connectionSettings.password optional String

      The Snowflake password. If not provided this property will not be modified.

    • connectionSettings.role optional String

      The Snowflake role. It should be "PROPELLER" if you used the default name in the setup script. If not provided this property will not be modified.