OpenApiTypesense.Analytics (OpenApiTypesense v1.3.2)

View Source

Provides API endpoints related to analytics

Summary

Functions

Create an analytics event

Create analytics rule(s)

Flush in-memory analytics to disk

Retrieve analytics events

Get analytics subsystem status

Retrieve analytics rules

Functions

create_analytics_event(body, opts \\ [])

(since 0.4.0)
@spec create_analytics_event(
  body :: OpenApiTypesense.AnalyticsEvent.t(),
  opts :: keyword()
) ::
  {:ok, OpenApiTypesense.AnalyticsEventCreateResponse.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Create an analytics event

Submit a single analytics event. The event must correspond to an existing analytics rule by name.

Request Body

Content Types: application/json

The analytics event to be created

create_analytics_rule(body, opts \\ [])

(since 0.4.0)

Create analytics rule(s)

Create one or more analytics rules. You can send a single rule object or an array of rule objects.

Request Body

Content Types: application/json

The analytics rule(s) to be created

delete_analytics_rule(rule_name, opts \\ [])

(since 0.4.0)
@spec delete_analytics_rule(rule_name :: String.t(), opts :: keyword()) ::
  {:ok, OpenApiTypesense.AnalyticsRuleDeleteResponse.t()}
  | {:ok, OpenApiTypesense.AnalyticsRule.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Delete an analytics rule

Permanently deletes an analytics rule, given it's name

flush_analytics(opts \\ [])

(since 1.1.0)
@spec flush_analytics(opts :: keyword()) ::
  {:ok, OpenApiTypesense.AnalyticsEventCreateResponse.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Flush in-memory analytics to disk

Triggers a flush of analytics data to persistent storage.

get_analytics_events(opts \\ [])

(since 1.1.0)
@spec get_analytics_events(opts :: keyword()) ::
  {:ok, OpenApiTypesense.AnalyticsEventsResponse.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Retrieve analytics events

Retrieve the most recent events for a user and rule.

Options

  • user_id
  • name: Analytics rule name
  • n: Number of events to return (max 1000)

get_analytics_status(opts \\ [])

(since 1.1.0)
@spec get_analytics_status(opts :: keyword()) ::
  {:ok, OpenApiTypesense.AnalyticsStatus.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Get analytics subsystem status

Returns sizes of internal analytics buffers and queues.

retrieve_analytics_rule(rule_name, opts \\ [])

(since 0.4.0)
@spec retrieve_analytics_rule(rule_name :: String.t(), opts :: keyword()) ::
  {:ok, OpenApiTypesense.AnalyticsRule.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Retrieves an analytics rule

Retrieve the details of an analytics rule, given it's name

retrieve_analytics_rules(opts \\ [])

(since 0.4.0)
@spec retrieve_analytics_rules(opts :: keyword()) ::
  {:ok, [OpenApiTypesense.AnalyticsRule.t()]}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Retrieve analytics rules

Retrieve all analytics rules. Use the optional rule_tag filter to narrow down results.

Options

  • rule_tag: Filter rules by rule_tag

upsert_analytics_rule(rule_name, body, opts \\ [])

(since 0.4.0)
@spec upsert_analytics_rule(
  rule_name :: String.t(),
  body :: OpenApiTypesense.AnalyticsRuleUpdate.t(),
  opts :: keyword()
) ::
  {:ok, OpenApiTypesense.AnalyticsRule.t()}
  | {:ok, OpenApiTypesense.AnalyticsRuleSchema.t()}
  | {:error, OpenApiTypesense.ApiResponse.t()}

Upserts an analytics rule

Upserts an analytics rule with the given name.

Request Body

Content Types: application/json

The Analytics rule to be upserted