Skip to main content

Metric

The Metric object.

A Metric is a business indicator measured over time.

Learn more about Metrics.

fields

  • id non-null ID

    The Metric's unique identifier.

  • uniqueName non-null String

    The Metric's unique name.

  • description non-null String

    The Metric's description.

  • account non-null Account

    The Metric's Account.

    The Account object.

    • account.id non-null ID

      The Account's unique identifier.

  • environment non-null Environment

    The Metric's Environment.

    The Environments object.

    Environments are independent and isolated Propel workspaces for development, staging (testing), and production workloads. Environments are hosted in a specific region, initially in us-east-2 only.

  • createdAt non-null DateTime

    The Metric's creation date and time in UTC.

  • modifiedAt non-null DateTime

    The Metric's last modification date and time in UTC.

  • createdBy non-null String

    The Metric's creator. It can be either a User ID, an Application ID, or "system" if it was created by Propel.

  • modifiedBy non-null String

    The Metric's last modifier. It can be either a User ID, an Application ID, or "system" if it was modified by Propel.

  • dataPool nullable DataPool

    The Data Pool that powers this Metric.

    The Data Pool object.

    A Data Pool is a cached table hydrated from your data warehouse optimized for high-concurrency and low-latency queries.

    Learn more about Data Pools.

    • dataPool.id non-null ID

      The Data Pool's unique identifier.

    • dataPool.uniqueName non-null String

      The Data Pool's unique name.

    • dataPool.description non-null String

      The Data Pool's description.

    • dataPool.account non-null Account

      The Data Pool's Account.

    • dataPool.environment non-null Environment

      The Data Pool's Environment.

    • dataPool.createdAt non-null DateTime

      The Data Pool's creation date and time in UTC.

    • dataPool.modifiedAt non-null DateTime

      The Data Pool's last modification date and time in UTC.

    • dataPool.createdBy non-null String

      The Data Pools's creator. It can be either a User ID, an Application ID, or "system" if it was created by Propel.

    • dataPool.modifiedBy non-null String

      The Data Pools's last modifier. It can be either a User ID, an Application ID, or "system" if it was modified by Propel.

    • dataPool.dataSource non-null DataSource

      The Data Pool's Data Source.

    • dataPool.status non-null DataPoolStatus

      The Data Pool's status.

      The status of a Data Pool.

      • CREATED

        The Data Pool has been created and will be set up soon.

      • PENDING

        Propel is attempting to set up the Data Pool.

      • LIVE

        The Data Pool is set up and serving data. Check its Syncs to monitor data ingestion.

      • SETUP_FAILED

        The Data Pool setup failed. Check its Setup Tasks before re-attempting setup.

      • DELETING

        Propel is deleting the Data Pool and all of its associated data.

    • dataPool.dataRetentionInDays non-null Int

      The Data Pool's data retention in days (not yet supported).

    • dataPool.table non-null String

      The name of the Data Pool's table.

    • dataPool.timestamp non-null Timestamp

      The Data Pool's timestamp column.

    • dataPool.tenant nullable Tenant

      The Data Pool's Tenant ID, if configured.

    • dataPool.cursor nullable Cursor

      The Data Pool's cursor column. The column to track whether a record should be synced. An example of a cursor would be a timestamp column like updated_at.

    • dataPool.recordCount nullable String

      The number of records in the Data Pool.

    • dataPool.sizeInTerabytes nullable Float

      The amount of storage in terabytes used by the Data Pool.

    • dataPool.columns nullable DataPoolColumnConnection

      A list of columns included in the Data Pool. The specified columns from the underlying table will by synced to the Data Pool.

      This list does not include any excluded columns.

    • dataPool.availableMeasures nullable DataPoolColumnConnection

      A list of measures (numeric columns) available to Metrics.

      This list does not include any excluded columns.

    • dataPool.setupTasks nullable array of DataPoolSetupTask

      A list of setup tasks performed on the Data Pool during its most recent setup attempt.

    • dataPool.syncing non-null DataPoolSyncing

      Settings related to Data Pool syncing.

    • dataPool.syncs nullable SyncConnection

      • dataPool.syncs.filter optional SyncsFilter

        The filter to apply when listing the Syncs for a Data Pool.

        • EMPTY

          Returns only Syncs with empty records.

        • NOT_EMPTY

          Returns only Syncs that contain one or more records.

        • ALL

          Returns all Syncs, regardless of whether they contain records or not.

      • dataPool.syncs.first optional Int

      • dataPool.syncs.after optional String

      • dataPool.syncs.last optional Int

      • dataPool.syncs.before optional String

    • dataPool.metrics nullable MetricConnection

    • dataPool.deletionJobs nullable DeletionJobConnection

      The Deletion Jobs that where historically issued to this Data Pool, sorted by creation time, in descending order.

  • dimensions non-null array of Dimension

    The Metric's Dimensions. These Dimensions are available to Query Filters.

    The Dimension object that represents a column in a table.

    • dimensions.columnName non-null String

      The column name it represents.

    • dimensions.type non-null String

      The column data type.

    • dimensions.isNullable nullable Boolean

      Whether the column is nullable.

    • dimensions.stats nullable DimensionStatistics

      The statistics for the dimension values. Fetching statistics incurs query costs.

  • timestamp non-null Dimension

    The Metric's timestamp. This is the same as its Data Pool's timestamp.

    The Dimension object that represents a column in a table.

    • timestamp.columnName non-null String

      The column name it represents.

    • timestamp.type non-null String

      The column data type.

    • timestamp.isNullable nullable Boolean

      Whether the column is nullable.

    • timestamp.stats nullable DimensionStatistics

      The statistics for the dimension values. Fetching statistics incurs query costs.

  • boosters non-null BoosterConnection

    List the Boosters associated to the Metric.

    The Booster connection object.

    Learn more about pagination in GraphQL.

  • type non-null MetricType

    The Metric's type. The different Metric types determine how the values are calculated.

    The available Metric types.

    • COUNT

      Counts the number of records that matches the Metric Filters. For time series, it will count the values for each time granularity.

    • SUM

      Sums the values of the specified column for every record that matches the Metric Filters. For time series, it will sum the values for each time granularity.

    • COUNT_DISTINCT

      Counts the number of distinct values in the specified column for every record that matches the Metric Filters. For time series, it will count the distinct values for each time granularity.

    • AVERAGE

      Averages the values of the specified column for every record that matches the Metric Filters. For time series, it will average the values for each time granularity.

    • MIN

      Selects the minimum value of the specified column for every record that matches the Metric Filters. For time series, it will select the minimum value for each time granularity.

    • MAX

      Selects the maximum value of the specified column for every record that matches the Metric Filters. For time series, it will select the maximum value for each time granularity.

  • settings non-null MetricSettings

    The settings for the Metric. The settings are specific to the Metric's type.


  • counter nullable CounterResponse

    The Metric data in counter format. A single metric value for the given time range and filters.

    The counter response object. It contains a single Metric value for the given time range and Query Filters.

  • timeSeries nullable TimeSeriesResponse

    The Metric data in time series format. Arrays of timestamps and Metric values for the given time range and filters.

    The time series response object. It contains an array of time series labels and an array of Metric values for the given time range and Query Filters.

  • leaderboard nullable LeaderboardResponse

    The Metric data in leaderboard format. A table (array of rows) with the selected dimensions and corresponding Metric values for the given time range and filters.

    The leaderboard response object. It contains an array of headers and a table (array of rows) with the selected Dimensions and corresponding Metric values for the given time range and Query Filters.

    • leaderboard.headers non-null array of String

      The table headers. It contains the Dimension and Metric names.

    • leaderboard.rows non-null array of String

      An ordered array of rows. Each row contains the Dimension values and the corresponding Metric value. A Dimension value can be empty. A Metric value will never be empty.

    • leaderboard.query non-null QueryInfo

      The Query statistics and metadata.

  • policies non-null PolicyConnection

    List the Policies associated to the Metric.

    The Policy connection object.

    Learn more about pagination in GraphQL.

  • accessControlEnabled non-null Boolean

    Whether or not access control is enabled for the Metric.