Packages

Webhook delivery, monitoring, and management API. All endpoints under `/v1` require authentication via `Authorization: Bearer <api_key>` header unless marked as **Public**.

Current section

Files

Jump to
hooksniff lib hook_sniff_api api api_keys.ex
Raw

lib/hook_sniff_api/api/api_keys.ex

# NOTE: This file is auto generated by OpenAPI Generator 7.22.0 (https://openapi-generator.tech).
# Do not edit this file manually.
defmodule HookSniffAPI.Api.APIKeys do
@moduledoc """
API calls for all endpoints tagged `APIKeys`.
"""
alias HookSniffAPI.Connection
import HookSniffAPI.RequestBuilder
@doc """
List API keys
### Parameters
- `connection` (HookSniffAPI.Connection): Connection to server
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, [%ApiKeyInfo{}, ...]}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec api_keys_get(Tesla.Env.client, keyword()) :: {:ok, [HookSniffAPI.Model.ApiKeyInfo.t]} | {:error, Tesla.Env.t}
def api_keys_get(connection, _opts \\ []) do
request =
%{}
|> method(:get)
|> url("/api-keys")
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{200, HookSniffAPI.Model.ApiKeyInfo}
])
end
@doc """
Delete (revoke) an API key
### Parameters
- `connection` (HookSniffAPI.Connection): Connection to server
- `id` (String.t):
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, nil}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec api_keys_id_delete(Tesla.Env.client, String.t, keyword()) :: {:ok, nil} | {:error, Tesla.Env.t}
def api_keys_id_delete(connection, id, _opts \\ []) do
request =
%{}
|> method(:delete)
|> url("/api-keys/#{id}")
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{200, false}
])
end
@doc """
Rotate an API key
### Parameters
- `connection` (HookSniffAPI.Connection): Connection to server
- `id` (String.t):
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, HookSniffAPI.Model.CreateApiKeyResponse.t}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec api_keys_id_rotate_post(Tesla.Env.client, String.t, keyword()) :: {:ok, HookSniffAPI.Model.CreateApiKeyResponse.t} | {:error, Tesla.Env.t}
def api_keys_id_rotate_post(connection, id, _opts \\ []) do
request =
%{}
|> method(:post)
|> url("/api-keys/#{id}/rotate")
|> ensure_body()
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{200, HookSniffAPI.Model.CreateApiKeyResponse}
])
end
@doc """
Create a new API key
### Parameters
- `connection` (HookSniffAPI.Connection): Connection to server
- `opts` (keyword): Optional parameters
### Returns
- `{:ok, HookSniffAPI.Model.CreateApiKeyResponse.t}` on success
- `{:error, Tesla.Env.t}` on failure
"""
@spec api_keys_post(Tesla.Env.client, keyword()) :: {:ok, HookSniffAPI.Model.CreateApiKeyResponse.t} | {:error, Tesla.Env.t}
def api_keys_post(connection, _opts \\ []) do
request =
%{}
|> method(:post)
|> url("/api-keys")
|> ensure_body()
|> Enum.into([])
connection
|> Connection.request(request)
|> evaluate_response([
{201, HookSniffAPI.Model.CreateApiKeyResponse}
])
end
end