# `Arex.Http`
[🔗](https://github.com/m/exarcade/blob/v0.1.0/lib/arex/http.ex#L1)

Low-level ArcadeDB HTTP transport.

Most application code should prefer higher-level modules such as
`Arex.Query`, `Arex.Command`, `Arex.Record`, `Arex.Schema`, `Arex.Vertex`,
and `Arex.Edge`. This module is the thin boundary to the underlying Req-based
transport layer.

`Arex.Http` resolves options, builds authenticated requests, normalizes error
responses, and applies the library's read-versus-write retry policy. It is
useful for extensions, diagnostics, and coverage of ArcadeDB endpoints that
do not justify a dedicated public wrapper yet.

Reach for `Arex.Http` when you need:

- raw access to an ArcadeDB HTTP endpoint
- custom request bodies, query params, or response decoding behavior
- a temporary escape hatch while evaluating a new public helper

Stay on the higher-level helpers when you want Arex to handle model-specific
concerns such as boundary stamping, result normalization, or purpose-built
input validation.

# `command_raw`

Executes a raw command request against `/api/v1/command/:db`.

The target database must be resolved before the request is sent. Write
helpers do not allow retry configuration.

# `exists_database?`

Checks whether a database exists on the configured server.

# `list_databases`

Lists databases visible to the configured server credentials.

# `query_raw`

Executes a raw query request against `/api/v1/query/:db`.

The target database must be resolved before the request is sent. Read retry
settings are honored when present.

# `request`

Performs an authenticated HTTP request against an arbitrary ArcadeDB path.

# `server_command`

Executes a server-scoped administrative command.

This helper targets `/api/v1/server` and is used for operations such as
database creation and deletion.

# `server_info`

Fetches ArcadeDB server metadata from `/api/v1/server`.

# `unwrap_result`

Unwraps the common `%{"result" => ...}` ArcadeDB response envelope when present.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
