Aura.Model.HexAPIKey (Aura v0.9.1)

View Source

A struct describing an API key record coming from a Hex-compliant API.

💻 Examples

%Aura.Model.HexAPIKey{
  authing_key: false,
  secret: "3321e19a16017725ced9fe56a0071aa6",
  inserted_at: ~U[2025-06-02 04:26:33.915977Z],
  name: "veniam.ut",
  permissions: [
    %{domain: "api", resource: "read"},
    %{domain: "api", resource: "write"}
  ],
  revoked_at: nil,
  updated_at: ~U[2025-06-02 04:26:33.915977Z],
  url: "http://localhost:4000/api/keys/veniam.ut"
}

👀 See Also

📖 Resources

Summary

Types

A permission realm that this API key has.

❓ Sorry, documentation from the hex specification is lacking here. ❓

DateTime when this key became invalid

The API key payload - it is only provided once, upon creation; always nil after.

t()

Type describing an API key coming from a Hex-compliant API.

Functions

Builds a HexAPIKey from a map

Types

api_permission()

@type api_permission() :: %{domain: String.t(), resource: String.t()}

A permission realm that this API key has.

🏷️ Keys

  • domain :: A domain for which this API key is valid
  • resource :: What kind of operations this API key can do within its domain

💻 Examples

%{domain: "api", resource: "read"}
%{domain: "api", resource: "write"}

👀 See Also

authing_key()

@type authing_key() :: boolean()

❓ Sorry, documentation from the hex specification is lacking here. ❓

📖 Resources

👀 See Also

revoked_date_time()

@type revoked_date_time() :: DateTime.t() | nil

DateTime when this key became invalid

💻 Examples

~U[2025-05-29 18:15:18.244790Z]

👀 See Also

secret()

@type secret() :: String.t() | nil

The API key payload - it is only provided once, upon creation; always nil after.

🔒 Security

Guard this secret payload with your life - never keep it as plain text in your code.

💻 Examples

"3321e19a16017725ced9fe56a0071aa6"

👀 See Also

t()

@type t() :: %Aura.Model.HexAPIKey{
  authing_key: authing_key(),
  inserted_at: Aura.Model.Common.inserted_at(),
  name: Aura.Common.api_key_name(),
  permissions: [api_permission()],
  revoked_at: revoked_date_time(),
  secret: secret(),
  updated_at: Aura.Model.Common.updated_at(),
  url: Aura.Model.Common.url()
}

Type describing an API key coming from a Hex-compliant API.

🏷️ Keys

💻 Examples

%Aura.Model.HexAPIKey{
  authing_key: false,
  secret: "3321e19a16017725ced9fe56a0071aa6",
  inserted_at: ~U[2025-06-02 04:26:33.915977Z],
  name: "veniam.ut",
  permissions: [
    %{domain: "api", resource: "read"},
    %{domain: "api", resource: "write"}
  ],
  revoked_at: nil,
  updated_at: ~U[2025-06-02 04:26:33.915977Z],
  url: "http://localhost:4000/api/keys/veniam.ut"
}

👀 See Also

Functions

build(m)

@spec build(m :: map()) :: t()

Builds a HexAPIKey from a map

🏷️ Params