io.keen.client.scala

Master

trait Master extends Reader with Writer

A Client mixing in Master can make Keen IO API calls requiring a master key, such as deleting data, creating saved queries, and performing administrative functions.

A Master client can also perform all Reader and Writer API calls and does not require additional keys configured for these. However, this should not be considered a shortcut! Please keep your master key as secure as possible by not deploying it where it isn't strictly needed.

A master key must be configured in the Client's Settings or the masterKey field must otherwise be set e.g. with an anonymous class override.

Self Type
Master with Client
Source
Client.scala
Example:
  1. Initializing a Client with master access

    val keen = new Client with Master {
    override val masterKey = "myMasterKey"
    }
Exceptions thrown
MissingCredential

if a master key is not configured.

See also

https://keen.io/docs/security/

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. Master
  2. Writer
  3. Reader
  4. AccessLevel
  5. AnyRef
  6. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract val authority: String

    Definition Classes
    AccessLevel
  2. abstract val scheme: String

    Definition Classes
    AccessLevel
  3. abstract val version: String

    Definition Classes
    AccessLevel

Concrete Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. def addEvent(collection: String, event: String): Future[Response]

    Publish a single event.

    Publish a single event.

    collection

    The collection to which the event will be added.

    event

    The event

    Definition Classes
    Writer
    See also

    Record a single event API Reference

  7. def addEvents(events: String): Future[Response]

    Publish multiple events.

    Publish multiple events.

    events

    The events to add to the project.

    Definition Classes
    Writer
    See also

    Record multiple events API Reference

  8. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  9. def average(collection: String, targetProperty: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns the average across all numeric values for the target property in the event collection matching the given criteria.

    Returns the average across all numeric values for the target property in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    targetProperty

    The name of the property you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    timezone

    Modifies the timeframe filters for Relative Timeframes to match a specific timezone.

    groupBy

    The group_by parameter specifies the name of a property by which you would like to group the results. Using this parameter changes the response format. See Group By.

    Definition Classes
    Reader
    See also

    Average API Reference

  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. def count(collection: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns the number of resources in the event collection matching the given criteria.

    Returns the number of resources in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    Definition Classes
    Reader
    See also

    Count API Reference

  12. def countUnique(collection: String, targetProperty: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns the number of unique resources in the event collection matching the given criteria.

    Returns the number of unique resources in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    targetProperty

    The name of the property you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    timezone

    Modifies the timeframe filters for Relative Timeframes to match a specific timezone.

    groupBy

    The group_by parameter specifies the name of a property by which you would like to group the results. Using this parameter changes the response format. See Group By.

    Definition Classes
    Reader
    See also

    Count Unique API Reference

  13. def deleteCollection(collection: String): Future[Response]

    Deletes the entire event collection.

    Deletes the entire event collection. This is irreversible and will only work for collections under 10k events.

    collection

    The name of the collection.

    See also

    Delete a Collection API Reference

  14. def deleteProperty(collection: String, name: String): Future[Response]

    Removes a property and deletes all values stored with that property name.

    Removes a property and deletes all values stored with that property name.

    See also

    Delete a Property API Reference

  15. def doRequest(path: String, method: String, key: String, body: Option[String] = None, params: Map[String, Option[String]] = Map.empty): Future[Response]

    Attributes
    protected
    Definition Classes
    AccessLevel
  16. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  17. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  18. def extraction(collection: String, filters: Option[String] = None, timeframe: Option[String] = None, email: Option[String] = None, latest: Option[String] = None, propertyNames: Option[String] = None): Future[Response]

    Creates an extraction request for full-form event data with all property values.

    Creates an extraction request for full-form event data with all property values.

    If the email parameter is given, the extraction will be processed asynchronously and an email will be sent to the specified address when complete. Otherwise events are returned in a synchronous JSON response with a limit of 100,000 events.

    collection

    The name of the event collection you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    email

    Email address to notify when asynchronous extraction is ready for download.

    latest

    An integer containing the number of most recent events to extract.

    propertyNames

    An array of strings containing properties you wish to extract. If this parameter is omitted, all properties will be returned.

    Definition Classes
    Reader
    To do

    Should accept timezone parameter: https://github.com/keenlabs/KeenClient-Scala/issues/37

    See also

    Extractions API Reference

  19. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  20. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  21. def getCollection(collection: String): Future[Response]

    Returns available schema information for this event collection, including properties and their type.

    Returns available schema information for this event collection, including properties and their type. It also returns links to sub-resources.

    collection

    The name of the collection.

    To do

    This only requires a read key, move to Reader

    See also

    Inspect a single collection API Reference

  22. def getEvents: Future[Response]

    Returns schema information for all the event collections in this project.

    Returns schema information for all the event collections in this project.

    To do

    This only requires a read key, move to Reader

    See also

    Inspect all collections API Reference

  23. def getProject: Future[Response]

    Returns detailed information about the specific project, as well as links to related resources.

    Returns detailed information about the specific project, as well as links to related resources.

    See also

    Inspect a single project API Reference

  24. def getProjects: Future[Response]

    Returns the projects accessible to the API user, as well as links to project sub-resources for discovery.

    Returns the projects accessible to the API user, as well as links to project sub-resources for discovery.

    See also

    Inspect all projects API Reference

  25. def getProperty(collection: String, name: String): Future[Response]

    Returns the property name, type, and a link to sub-resources.

    Returns the property name, type, and a link to sub-resources.

    To do

    This only requires a read key, move to Reader

    See also

    Inspect a single property API Reference

  26. def getQueries: Future[Response]

    Returns the list of available query resources as paths to their endpoints.

    Returns the list of available query resources as paths to their endpoints.

    See also

    Query Availability API Reference

  27. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  28. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  29. val masterKey: String

    A master key required to make API calls of administrative nature.

  30. def maximum(collection: String, targetProperty: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns the maximum numeric value for the target property in the event collection matching the given criteria.

    Returns the maximum numeric value for the target property in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    targetProperty

    The name of the property you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    timezone

    Modifies the timeframe filters for Relative Timeframes to match a specific timezone.

    groupBy

    The group_by parameter specifies the name of a property by which you would like to group the results. Using this parameter changes the response format. See Group By.

    Definition Classes
    Reader
    See also

    Maximum API Reference

  31. def minimum(collection: String, targetProperty: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns the minimum numeric value for the target property in the event collection matching the given criteria.

    Returns the minimum numeric value for the target property in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    targetProperty

    The name of the property you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    timezone

    Modifies the timeframe filters for Relative Timeframes to match a specific timezone.

    groupBy

    The group_by parameter specifies the name of a property by which you would like to group the results. Using this parameter changes the response format. See Group By.

    Definition Classes
    Reader
    See also

    Minimum API Reference

  32. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  33. final def notify(): Unit

    Definition Classes
    AnyRef
  34. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  35. val projectId: String

    Project identifier for the Keen project that an AccessLevel's API key is associated with.

    Project identifier for the Keen project that an AccessLevel's API key is associated with.

    Definition Classes
    AccessLevel
  36. val readKey: String

    A read key required to make API calls for querying and extracting data.

    A read key required to make API calls for querying and extracting data.

    Definition Classes
    MasterReader
  37. def selectUnique(collection: String, targetProperty: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns a list of unique resources in the event collection matching the given criteria.

    Returns a list of unique resources in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    targetProperty

    The name of the property you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    timezone

    Modifies the timeframe filters for Relative Timeframes to match a specific timezone.

    groupBy

    The group_by parameter specifies the name of a property by which you would like to group the results. Using this parameter changes the response format. See Group By.

    Definition Classes
    Reader
    See also

    Select Unique API Reference

  38. def sum(collection: String, targetProperty: String, filters: Option[String] = None, timeframe: Option[String] = None, timezone: Option[String] = None, groupBy: Option[String] = None): Future[Response]

    Returns the sum across all numeric values for the target property in the event collection matching the given criteria.

    Returns the sum across all numeric values for the target property in the event collection matching the given criteria.

    collection

    The name of the event collection you are analyzing.

    targetProperty

    The name of the property you are analyzing.

    filters

    Filters are used to narrow down the events used in an analysis request based on event property values. See Filters.

    timeframe

    A Timeframe specifies the events to use for analysis based on a window of time. If no timeframe is specified, all events will be counted. See Timeframes.

    timezone

    Modifies the timeframe filters for Relative Timeframes to match a specific timezone.

    groupBy

    The group_by parameter specifies the name of a property by which you would like to group the results. Using this parameter changes the response format. See Group By.

    Definition Classes
    Reader
    See also

    Sum API Reference

  39. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  40. def toString(): String

    Definition Classes
    AnyRef → Any
  41. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  42. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  43. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  44. val writeKey: String

    A write key required to make API calls that write data.

    A write key required to make API calls that write data.

    Definition Classes
    MasterWriter

Inherited from Writer

Inherited from Reader

Inherited from AccessLevel

Inherited from AnyRef

Inherited from Any

Ungrouped