Spatio.Api.Connections (spatio_sdk v0.0.2)

API calls for all endpoints tagged Connections.

Summary

Functions

List the caller's multi-provider accounts.

List supported integrations + their connection state. Legacy path; /v1/connections/list is the preferred alias.

List supported integrations + their connection state.

List the caller's connected accounts.

Force a refresh of a connection's OAuth tokens.

Resolve an account by provider/identifier.

Force a sync against the upstream provider.

Functions

disconnect_connection(connection, disconnect_connection_request, opts \\ [])

@spec disconnect_connection(
  Tesla.Env.client(),
  Spatio.Model.DisconnectConnectionRequest.t(),
  keyword()
) ::
  {:ok, %{optional(String.t()) => any()}}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Disconnect a connected account.

Parameters

  • connection (Spatio.Connection): Connection to server
  • disconnect_connection_request (DisconnectConnectionRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, %{}} on success
  • {:error, Tesla.Env.t} on failure

install_connection(connection, install_connection_request, opts \\ [])

@spec install_connection(
  Tesla.Env.client(),
  Spatio.Model.InstallConnectionRequest.t(),
  keyword()
) ::
  {:ok, %{optional(String.t()) => any()}}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Begin an OAuth install for a connection.

Parameters

  • connection (Spatio.Connection): Connection to server
  • install_connection_request (InstallConnectionRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, %{}} on success
  • {:error, Tesla.Env.t} on failure

list_accounts(connection, opts \\ [])

@spec list_accounts(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, Spatio.Model.ApiError.t()}
  | {:ok, Spatio.Model.AccountListResponse.t()}
  | {:error, Tesla.Env.t()}

List the caller's multi-provider accounts.

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.AccountListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

list_connection_integrations(connection, opts \\ [])

@spec list_connection_integrations(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, Spatio.Model.ConnectionListResponse.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

List supported integrations + their connection state. Legacy path; /v1/connections/list is the preferred alias.

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ConnectionListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

list_connections(connection, opts \\ [])

@spec list_connections(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, Spatio.Model.ConnectionListResponse.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

List supported integrations + their connection state.

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ConnectionListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

list_user_connections(connection, opts \\ [])

@spec list_user_connections(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, Spatio.Model.ConnectionAccountListResponse.t()}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

List the caller's connected accounts.

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters

Returns

  • {:ok, Spatio.Model.ConnectionAccountListResponse.t} on success
  • {:error, Tesla.Env.t} on failure

refresh_connection(connection, refresh_connection_request, opts \\ [])

@spec refresh_connection(
  Tesla.Env.client(),
  Spatio.Model.RefreshConnectionRequest.t(),
  keyword()
) ::
  {:ok, %{optional(String.t()) => any()}}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Force a refresh of a connection's OAuth tokens.

Parameters

  • connection (Spatio.Connection): Connection to server
  • refresh_connection_request (RefreshConnectionRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, %{}} on success
  • {:error, Tesla.Env.t} on failure

remove_account(connection, account_id, opts \\ [])

@spec remove_account(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, nil} | {:ok, Spatio.Model.ApiError.t()} | {:error, Tesla.Env.t()}

Remove an account.

Parameters

  • connection (Spatio.Connection): Connection to server
  • account_id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, nil} on success
  • {:error, Tesla.Env.t} on failure

resolve_account(connection, opts \\ [])

@spec resolve_account(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, %{optional(String.t()) => any()}}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Resolve an account by provider/identifier.

Parameters

  • connection (Spatio.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :provider (String.t):
    • :email (String.t):

Returns

  • {:ok, %{}} on success
  • {:error, Tesla.Env.t} on failure

sync_account(connection, account_id, opts \\ [])

@spec sync_account(Tesla.Env.client(), String.t(), keyword()) ::
  {:ok, %{optional(String.t()) => any()}}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Force a sync against the upstream provider.

Parameters

  • connection (Spatio.Connection): Connection to server
  • account_id (String.t):
  • opts (keyword): Optional parameters

Returns

  • {:ok, %{}} on success
  • {:error, Tesla.Env.t} on failure

update_account(connection, account_id, update_account_request, opts \\ [])

@spec update_account(
  Tesla.Env.client(),
  String.t(),
  Spatio.Model.UpdateAccountRequest.t(),
  keyword()
) ::
  {:ok, %{optional(String.t()) => any()}}
  | {:ok, Spatio.Model.ApiError.t()}
  | {:error, Tesla.Env.t()}

Update account metadata (label, etc.).

Parameters

  • connection (Spatio.Connection): Connection to server
  • account_id (String.t):
  • update_account_request (UpdateAccountRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, %{}} on success
  • {:error, Tesla.Env.t} on failure