Packages

An open source two way communication platform for the social sector

Current section

Files

Jump to
glific lib glific_web controllers api v1 onboard_controller.ex
Raw

lib/glific_web/controllers/api/v1/onboard_controller.ex

defmodule GlificWeb.API.V1.OnboardController do
@moduledoc """
The Glific Onboarding Controller
"""
use GlificWeb, :controller
require Logger
alias Glific.Saas.Onboard
alias Plug.Conn
@doc false
@spec setup(Conn.t(), map()) :: Conn.t()
def setup(conn, %{"token" => token} = params) do
case Glific.verify_google_captcha(token) do
{:ok, "success"} ->
json(conn, Onboard.setup(params))
{:error, error} ->
conn
|> put_status(400)
|> json(%{error: %{status: 400, message: error}})
end
end
end