analytics / lib /plausible_web /controllers /api /external_query_api_controller.ex
Leon4gr45's picture
Upload folder using huggingface_hub (part 2)
8da2481 verified
Raw
History Blame Contribute Delete
778 Bytes
defmodule PlausibleWeb.Api.ExternalQueryApiController do
@moduledoc false
use PlausibleWeb, :controller
use Plausible.Repo
use PlausibleWeb.Plugs.ErrorHandler
alias Plausible.Stats.{Query, QueryError}
def query(conn, params) do
site = Repo.preload(conn.assigns.site, :owners)
case Query.parse_and_build(site, params,
debug_metadata: debug_metadata(conn),
now: conn.private[:now]
) do
{:ok, query} ->
results = Plausible.Stats.query(site, query)
json(conn, results)
{:error, %QueryError{message: message}} ->
conn
|> put_status(400)
|> json(%{error: message})
end
end
def schema(conn, _params) do
json(conn, Plausible.Stats.JSONSchema.raw_schema())
end
end