ArchAstro. V1. Config. System
(archastro v0.2.0)
Copy Markdown
System API resource.
Summary
Functions
@spec clone( ArchAstro.Client.t(), String.t(), ArchAstro.Types.Operations.PostApiV1ConfigSystemSystemClone.Input.t() ) :: {:ok, ArchAstro.Types.Config.t()} | {:error, ArchAstro.Error.reason()}
Clone a system config
Creates a copy of a system (template) config and transfers ownership to a team or user. All dependencies bundled with the source config are cloned alongside it. Responds with HTTP 201 and the newly created config on success.
You must specify exactly one destination owner via team or user. Callers
authenticated as an app (developer portal) may omit the owner — the clone is
then scoped to the system owner automatically.
Use virtual_path and lookup_key to override the corresponding fields on the
clone; omitting them carries the values from the source.
The newly created config, including all cloned fields and its assigned ID.
@spec facets(ArchAstro.Client.t()) :: {:ok, ArchAstro.Types.ConfigFacets.t()} | {:error, ArchAstro.Error.reason()}
Retrieve system config facets
Returns the distinct kind values and leading virtual_path prefixes present
in the system (template) config manifest, each accompanied by a count of matching
configs. Use this data to populate filter UIs or to determine which config kinds
are available before listing or cloning.
The response reflects the filesystem-backed template manifest and does not include user- or team-owned configs.
Aggregated facet data containing distinct config kinds and path prefixes, each with a count of matching system configs.
@spec get(ArchAstro.Client.t(), String.t()) :: {:ok, ArchAstro.Types.Config.t()} | {:error, ArchAstro.Error.reason()}
Retrieve a system config
Returns a single system (template) config identified by its virtual_path or
lookup_key. The system parameter value is URL-decoded before lookup, so
path segments with special characters may be passed URL-encoded.
System configs are filesystem-backed templates and are readable by any authenticated caller regardless of team or user ownership. Returns 404 when no system config matches the given identifier.
The requested system config, including its current version and all metadata fields.
@spec list( ArchAstro.Client.t(), ArchAstro.Types.Operations.GetApiV1ConfigSystem.Params.t() ) :: {:ok, ArchAstro.Types.Operations.GetApiV1ConfigSystem.Response.t()} | {:error, ArchAstro.Error.reason()}
List system configs
Returns a paginated list of system (template) configs from the filesystem-backed
manifest. Results are always ordered by virtual_path ascending.
Filter by one or more config kinds using kind (single value) or kinds (array).
Both filters may be supplied together for backward compatibility; kinds takes
precedence when both are present. Exclude specific path namespaces with
excluded_path_prefixes.
Use page and page_size to paginate. Page size is clamped to a maximum of 200;
requests exceeding this limit are silently clamped rather than rejected.
Successful response