@archastro/sdk 0.5.2 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +86 -0
- package/dist/auth.d.ts +143 -0
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +187 -1
- package/dist/auth.js.map +1 -1
- package/dist/client.d.ts +26 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +27 -1
- package/dist/client.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/types/ai.d.ts +150 -12
- package/dist/types/ai.d.ts.map +1 -1
- package/dist/types/ai.js +71 -41
- package/dist/types/ai.js.map +1 -1
- package/dist/types/artifacts.d.ts +81 -24
- package/dist/types/artifacts.d.ts.map +1 -1
- package/dist/types/artifacts.js +39 -21
- package/dist/types/artifacts.js.map +1 -1
- package/dist/types/automations.d.ts +41 -9
- package/dist/types/automations.d.ts.map +1 -1
- package/dist/types/automations.js +25 -17
- package/dist/types/automations.js.map +1 -1
- package/dist/types/chat.d.ts +21418 -0
- package/dist/types/chat.d.ts.map +1 -0
- package/dist/types/chat.js +70 -0
- package/dist/types/chat.js.map +1 -0
- package/dist/types/common.d.ts +16970 -2136
- package/dist/types/common.d.ts.map +1 -1
- package/dist/types/common.js +1695 -332
- package/dist/types/common.js.map +1 -1
- package/dist/types/config.d.ts +239 -31
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/config.js +86 -34
- package/dist/types/config.js.map +1 -1
- package/dist/types/image.d.ts +27 -4
- package/dist/types/image.d.ts.map +1 -1
- package/dist/types/image.js +17 -10
- package/dist/types/image.js.map +1 -1
- package/dist/types/index.d.ts +2 -1
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +3 -2
- package/dist/types/index.js.map +1 -1
- package/dist/types/invites.d.ts +20 -11
- package/dist/types/invites.d.ts.map +1 -1
- package/dist/types/invites.js +9 -12
- package/dist/types/invites.js.map +1 -1
- package/dist/types/notifications.d.ts +163 -0
- package/dist/types/notifications.d.ts.map +1 -0
- package/dist/types/notifications.js +44 -0
- package/dist/types/notifications.js.map +1 -0
- package/dist/types/teams.d.ts +1628 -231
- package/dist/types/teams.d.ts.map +1 -1
- package/dist/types/teams.js +76 -45
- package/dist/types/teams.js.map +1 -1
- package/dist/types/threads.d.ts +997 -243
- package/dist/types/threads.d.ts.map +1 -1
- package/dist/types/threads.js +84 -51
- package/dist/types/threads.js.map +1 -1
- package/dist/types/users.d.ts +98 -18
- package/dist/types/users.d.ts.map +1 -1
- package/dist/types/users.js +43 -18
- package/dist/types/users.js.map +1 -1
- package/dist/v1/resources/activity_feed.d.ts +89 -0
- package/dist/v1/resources/activity_feed.d.ts.map +1 -1
- package/dist/v1/resources/activity_feed.js +56 -2
- package/dist/v1/resources/activity_feed.js.map +1 -1
- package/dist/v1/resources/agent_computers.d.ts +48 -2
- package/dist/v1/resources/agent_computers.d.ts.map +1 -1
- package/dist/v1/resources/agent_computers.js +48 -1
- package/dist/v1/resources/agent_computers.js.map +1 -1
- package/dist/v1/resources/agent_env_vars.d.ts +50 -0
- package/dist/v1/resources/agent_env_vars.d.ts.map +1 -0
- package/dist/v1/resources/agent_env_vars.js +56 -0
- package/dist/v1/resources/agent_env_vars.js.map +1 -0
- package/dist/v1/resources/agent_health_actions.d.ts +43 -0
- package/dist/v1/resources/agent_health_actions.d.ts.map +1 -0
- package/dist/v1/resources/agent_health_actions.js +50 -0
- package/dist/v1/resources/agent_health_actions.js.map +1 -0
- package/dist/v1/resources/agent_installations.d.ts +100 -0
- package/dist/v1/resources/agent_installations.d.ts.map +1 -1
- package/dist/v1/resources/agent_installations.js +106 -2
- package/dist/v1/resources/agent_installations.js.map +1 -1
- package/dist/v1/resources/agent_routine_runs.d.ts +33 -0
- package/dist/v1/resources/agent_routine_runs.d.ts.map +1 -0
- package/dist/v1/resources/agent_routine_runs.js +48 -0
- package/dist/v1/resources/agent_routine_runs.js.map +1 -0
- package/dist/v1/resources/agent_routines.d.ts +148 -2
- package/dist/v1/resources/agent_routines.d.ts.map +1 -1
- package/dist/v1/resources/agent_routines.js +168 -3
- package/dist/v1/resources/agent_routines.js.map +1 -1
- package/dist/v1/resources/agent_sessions.d.ts +118 -1
- package/dist/v1/resources/agent_sessions.d.ts.map +1 -1
- package/dist/v1/resources/agent_sessions.js +134 -2
- package/dist/v1/resources/agent_sessions.js.map +1 -1
- package/dist/v1/resources/agent_skills.d.ts +83 -1
- package/dist/v1/resources/agent_skills.d.ts.map +1 -1
- package/dist/v1/resources/agent_skills.js +87 -2
- package/dist/v1/resources/agent_skills.js.map +1 -1
- package/dist/v1/resources/agent_tools.d.ts +109 -2
- package/dist/v1/resources/agent_tools.d.ts.map +1 -1
- package/dist/v1/resources/agent_tools.js +114 -2
- package/dist/v1/resources/agent_tools.js.map +1 -1
- package/dist/v1/resources/agents.d.ts +517 -9
- package/dist/v1/resources/agents.d.ts.map +1 -1
- package/dist/v1/resources/agents.js +515 -12
- package/dist/v1/resources/agents.js.map +1 -1
- package/dist/v1/resources/ai.d.ts +93 -0
- package/dist/v1/resources/ai.d.ts.map +1 -1
- package/dist/v1/resources/ai.js +89 -1
- package/dist/v1/resources/ai.js.map +1 -1
- package/dist/v1/resources/artifacts.d.ts +73 -0
- package/dist/v1/resources/artifacts.d.ts.map +1 -1
- package/dist/v1/resources/artifacts.js +74 -2
- package/dist/v1/resources/artifacts.js.map +1 -1
- package/dist/v1/resources/automation_runs.d.ts +8 -4
- package/dist/v1/resources/automation_runs.d.ts.map +1 -1
- package/dist/v1/resources/automation_runs.js +9 -5
- package/dist/v1/resources/automation_runs.js.map +1 -1
- package/dist/v1/resources/automations.d.ts +20 -0
- package/dist/v1/resources/automations.d.ts.map +1 -1
- package/dist/v1/resources/automations.js +21 -1
- package/dist/v1/resources/automations.js.map +1 -1
- package/dist/v1/resources/bug_reports.d.ts +29 -0
- package/dist/v1/resources/bug_reports.d.ts.map +1 -0
- package/dist/v1/resources/bug_reports.js +29 -0
- package/dist/v1/resources/bug_reports.js.map +1 -0
- package/dist/v1/resources/config.d.ts +429 -4
- package/dist/v1/resources/config.d.ts.map +1 -1
- package/dist/v1/resources/config.js +493 -9
- package/dist/v1/resources/config.js.map +1 -1
- package/dist/v1/resources/custom_objects.d.ts +117 -2
- package/dist/v1/resources/custom_objects.d.ts.map +1 -1
- package/dist/v1/resources/custom_objects.js +132 -3
- package/dist/v1/resources/custom_objects.js.map +1 -1
- package/dist/v1/resources/files.d.ts +62 -0
- package/dist/v1/resources/files.d.ts.map +1 -0
- package/dist/v1/resources/files.js +58 -0
- package/dist/v1/resources/files.js.map +1 -0
- package/dist/v1/resources/index.d.ts +13 -0
- package/dist/v1/resources/index.d.ts.map +1 -1
- package/dist/v1/resources/index.js +14 -1
- package/dist/v1/resources/index.js.map +1 -1
- package/dist/v1/resources/installation_sources.d.ts +12 -0
- package/dist/v1/resources/installation_sources.d.ts.map +1 -1
- package/dist/v1/resources/installation_sources.js +13 -1
- package/dist/v1/resources/installation_sources.js.map +1 -1
- package/dist/v1/resources/invites.d.ts +15 -0
- package/dist/v1/resources/invites.d.ts.map +1 -1
- package/dist/v1/resources/invites.js +16 -1
- package/dist/v1/resources/invites.js.map +1 -1
- package/dist/v1/resources/knowledge_documents.d.ts +104 -0
- package/dist/v1/resources/knowledge_documents.d.ts.map +1 -0
- package/dist/v1/resources/knowledge_documents.js +112 -0
- package/dist/v1/resources/knowledge_documents.js.map +1 -0
- package/dist/v1/resources/knowledge_sources.d.ts +190 -0
- package/dist/v1/resources/knowledge_sources.d.ts.map +1 -0
- package/dist/v1/resources/knowledge_sources.js +176 -0
- package/dist/v1/resources/knowledge_sources.js.map +1 -0
- package/dist/v1/resources/kv.d.ts +73 -0
- package/dist/v1/resources/kv.d.ts.map +1 -1
- package/dist/v1/resources/kv.js +96 -3
- package/dist/v1/resources/kv.js.map +1 -1
- package/dist/v1/resources/notification_preferences.d.ts +61 -0
- package/dist/v1/resources/notification_preferences.d.ts.map +1 -0
- package/dist/v1/resources/notification_preferences.js +65 -0
- package/dist/v1/resources/notification_preferences.js.map +1 -0
- package/dist/v1/resources/notifications.d.ts +133 -0
- package/dist/v1/resources/notifications.d.ts.map +1 -0
- package/dist/v1/resources/notifications.js +136 -0
- package/dist/v1/resources/notifications.js.map +1 -0
- package/dist/v1/resources/orgs.d.ts +18 -0
- package/dist/v1/resources/orgs.d.ts.map +1 -1
- package/dist/v1/resources/orgs.js +30 -2
- package/dist/v1/resources/orgs.js.map +1 -1
- package/dist/v1/resources/slack_channel_bindings.d.ts +101 -0
- package/dist/v1/resources/slack_channel_bindings.d.ts.map +1 -0
- package/dist/v1/resources/slack_channel_bindings.js +114 -0
- package/dist/v1/resources/slack_channel_bindings.js.map +1 -0
- package/dist/v1/resources/solution_categories.d.ts +36 -0
- package/dist/v1/resources/solution_categories.d.ts.map +1 -0
- package/dist/v1/resources/solution_categories.js +55 -0
- package/dist/v1/resources/solution_categories.js.map +1 -0
- package/dist/v1/resources/solution_tags.d.ts +37 -0
- package/dist/v1/resources/solution_tags.d.ts.map +1 -0
- package/dist/v1/resources/solution_tags.js +54 -0
- package/dist/v1/resources/solution_tags.js.map +1 -0
- package/dist/v1/resources/solutions.d.ts +309 -0
- package/dist/v1/resources/solutions.d.ts.map +1 -0
- package/dist/v1/resources/solutions.js +214 -0
- package/dist/v1/resources/solutions.js.map +1 -0
- package/dist/v1/resources/team_memberships.d.ts +31 -0
- package/dist/v1/resources/team_memberships.d.ts.map +1 -1
- package/dist/v1/resources/team_memberships.js +49 -2
- package/dist/v1/resources/team_memberships.js.map +1 -1
- package/dist/v1/resources/teams.d.ts +458 -49
- package/dist/v1/resources/teams.d.ts.map +1 -1
- package/dist/v1/resources/teams.js +319 -27
- package/dist/v1/resources/teams.js.map +1 -1
- package/dist/v1/resources/thread_messages.d.ts +70 -0
- package/dist/v1/resources/thread_messages.d.ts.map +1 -1
- package/dist/v1/resources/thread_messages.js +85 -2
- package/dist/v1/resources/thread_messages.js.map +1 -1
- package/dist/v1/resources/threads.d.ts +201 -0
- package/dist/v1/resources/threads.d.ts.map +1 -1
- package/dist/v1/resources/threads.js +220 -4
- package/dist/v1/resources/threads.js.map +1 -1
- package/dist/v1/resources/users.d.ts +213 -39
- package/dist/v1/resources/users.d.ts.map +1 -1
- package/dist/v1/resources/users.js +121 -16
- package/dist/v1/resources/users.js.map +1 -1
- package/dist/v1.d.ts +26 -0
- package/dist/v1.d.ts.map +1 -1
- package/dist/v1.js +40 -1
- package/dist/v1.js.map +1 -1
- package/package.json +3 -1
- package/dist/types/agents.d.ts +0 -2084
- package/dist/types/agents.d.ts.map +0 -1
- package/dist/types/agents.js +0 -203
- package/dist/types/agents.js.map +0 -1
|
@@ -1,14 +1,42 @@
|
|
|
1
1
|
// Copyright (c) 2026 ArchAstro Inc. All Rights Reserved.
|
|
2
2
|
// This file is auto-generated by @archastro/sdk-generator. Do not edit.
|
|
3
|
-
// Content hash:
|
|
3
|
+
// Content hash: 3139099f8563
|
|
4
4
|
export class KindResource {
|
|
5
5
|
http;
|
|
6
6
|
constructor(http) {
|
|
7
7
|
this.http = http;
|
|
8
8
|
}
|
|
9
|
+
/**
|
|
10
|
+
* List config kinds
|
|
11
|
+
* Returns all config kinds registered in the platform, sorted alphabetically by name.
|
|
12
|
+
* Each entry describes a type of configuration object (e.g., `"Agent"`, `"APITool"`) and
|
|
13
|
+
* indicates whether a JSON schema and a YAML sample are available for it.
|
|
14
|
+
* Any authenticated user may call this endpoint; no ownership scope is required.
|
|
15
|
+
* Pass one or more `kind` values to restrict the response to those specific kinds.
|
|
16
|
+
* Omit the parameter to receive the full list of non-private kinds.
|
|
17
|
+
* @param params - Query parameters.
|
|
18
|
+
* @param params.kind - One or more config kind names to include in the response (e.g., `"Agent"`, `"APITool"`). Omit to return all non-private kinds.
|
|
19
|
+
* @returns Successful response
|
|
20
|
+
*/
|
|
9
21
|
async list(params) {
|
|
10
|
-
|
|
22
|
+
const query = {};
|
|
23
|
+
if (params?.kind !== undefined) {
|
|
24
|
+
query["kind"] = params?.kind;
|
|
25
|
+
}
|
|
26
|
+
return this.http.request(`/api/v1/config/kinds`, { query });
|
|
11
27
|
}
|
|
28
|
+
/**
|
|
29
|
+
* Retrieve a config kind schema
|
|
30
|
+
* Returns the JSON schema and a YAML sample for a single config kind. Use this to
|
|
31
|
+
* understand the structure a config object of that kind must follow before creating
|
|
32
|
+
* or validating one.
|
|
33
|
+
* The `json_schema` field is `null` when the kind has no machine-readable schema
|
|
34
|
+
* defined. The `sample_yaml` field is `null` when no sample is available. Any
|
|
35
|
+
* authenticated user may call this endpoint; no ownership scope is required.
|
|
36
|
+
* Returns 404 if the kind name does not match a registered, non-private config kind.
|
|
37
|
+
* @param kind - Name of the config kind to retrieve (e.g., `"Agent"`, `"APITool"`). Must match a registered, non-private kind exactly.
|
|
38
|
+
* @returns The JSON schema and YAML sample for the requested config kind.
|
|
39
|
+
*/
|
|
12
40
|
async schema(kind) {
|
|
13
41
|
return this.http.request(`/api/v1/config/kinds/${kind}/schema`);
|
|
14
42
|
}
|
|
@@ -18,12 +46,89 @@ export class SystemResource {
|
|
|
18
46
|
constructor(http) {
|
|
19
47
|
this.http = http;
|
|
20
48
|
}
|
|
49
|
+
/**
|
|
50
|
+
* List system configs
|
|
51
|
+
* Returns a paginated list of system (template) configs from the filesystem-backed
|
|
52
|
+
* manifest. Results are always ordered by `virtual_path` ascending.
|
|
53
|
+
* Filter by one or more config kinds using `kind` (single value) or `kinds` (array).
|
|
54
|
+
* Both filters may be supplied together for backward compatibility; `kinds` takes
|
|
55
|
+
* precedence when both are present. Exclude specific path namespaces with
|
|
56
|
+
* `excluded_path_prefixes`.
|
|
57
|
+
* Use `page` and `page_size` to paginate. Page size is clamped to a maximum of 200;
|
|
58
|
+
* requests exceeding this limit are silently clamped rather than rejected.
|
|
59
|
+
* @param params - Query parameters.
|
|
60
|
+
* @param params.kind - Filter results to a single config kind, e.g. `"Agent"` or `"APITool"`. Use `kinds` to filter by multiple kinds at once.
|
|
61
|
+
* @param params.kinds - Filter results to configs whose `kind` is in this list. When both `kind` and `kinds` are provided, `kinds` takes precedence.
|
|
62
|
+
* @param params.excludedPathPrefixes - Exclude configs whose `virtual_path` starts with any of the listed string prefixes.
|
|
63
|
+
* @param params.page - Page number to retrieve, 1-indexed. Defaults to `1`.
|
|
64
|
+
* @param params.pageSize - Number of results per page. Defaults to `50`; maximum is `200`. Values above the maximum are clamped to `200`.
|
|
65
|
+
* @returns Successful response
|
|
66
|
+
*/
|
|
21
67
|
async list(params) {
|
|
22
|
-
|
|
68
|
+
const query = {};
|
|
69
|
+
if (params?.kind !== undefined) {
|
|
70
|
+
query["kind"] = params?.kind;
|
|
71
|
+
}
|
|
72
|
+
if (params?.kinds !== undefined) {
|
|
73
|
+
query["kinds"] = params?.kinds;
|
|
74
|
+
}
|
|
75
|
+
if (params?.excludedPathPrefixes !== undefined) {
|
|
76
|
+
query["excluded_path_prefixes"] = params?.excludedPathPrefixes;
|
|
77
|
+
}
|
|
78
|
+
if (params?.page !== undefined) {
|
|
79
|
+
query["page"] = params?.page;
|
|
80
|
+
}
|
|
81
|
+
if (params?.pageSize !== undefined) {
|
|
82
|
+
query["page_size"] = params?.pageSize;
|
|
83
|
+
}
|
|
84
|
+
return this.http.request(`/api/v1/config/system`, { query });
|
|
23
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Retrieve system config facets
|
|
88
|
+
* Returns the distinct `kind` values and leading `virtual_path` prefixes present
|
|
89
|
+
* in the system (template) config manifest, each accompanied by a count of matching
|
|
90
|
+
* configs. Use this data to populate filter UIs or to determine which config kinds
|
|
91
|
+
* are available before listing or cloning.
|
|
92
|
+
* The response reflects the filesystem-backed template manifest and does not include
|
|
93
|
+
* user- or team-owned configs.
|
|
94
|
+
* @returns Aggregated facet data containing distinct config kinds and path prefixes, each with a count of matching system configs.
|
|
95
|
+
*/
|
|
96
|
+
async facets() {
|
|
97
|
+
return this.http.request(`/api/v1/config/system/facets`);
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Retrieve a system config
|
|
101
|
+
* Returns a single system (template) config identified by its `virtual_path` or
|
|
102
|
+
* `lookup_key`. The `system` parameter value is URL-decoded before lookup, so
|
|
103
|
+
* path segments with special characters may be passed URL-encoded.
|
|
104
|
+
* System configs are filesystem-backed templates and are readable by any
|
|
105
|
+
* authenticated caller regardless of team or user ownership. Returns 404 when no
|
|
106
|
+
* system config matches the given identifier.
|
|
107
|
+
* @param system - Identifier of the system config to retrieve — either its `virtual_path` or its `lookup_key`. May be URL-encoded.
|
|
108
|
+
* @returns The requested system config, including its current version and all metadata fields.
|
|
109
|
+
*/
|
|
24
110
|
async get(system) {
|
|
25
111
|
return this.http.request(`/api/v1/config/system/${system}`);
|
|
26
112
|
}
|
|
113
|
+
/**
|
|
114
|
+
* Clone a system config
|
|
115
|
+
* Creates a copy of a system (template) config and transfers ownership to a team
|
|
116
|
+
* or user. All dependencies bundled with the source config are cloned alongside it.
|
|
117
|
+
* Responds with HTTP 201 and the newly created config on success.
|
|
118
|
+
* You must specify exactly one destination owner via `team` or `user`. Callers
|
|
119
|
+
* authenticated as an app (developer portal) may omit the owner — the clone is
|
|
120
|
+
* then scoped to the system owner automatically.
|
|
121
|
+
* Use `virtual_path` and `lookup_key` to override the corresponding fields on the
|
|
122
|
+
* clone; omitting them carries the values from the source.
|
|
123
|
+
* @param system - Identifier of the source system config — either its `virtual_path` or its `lookup_key`.
|
|
124
|
+
* @param input - Request body.
|
|
125
|
+
* @param input.lookup_key - Override the `lookup_key` on the cloned config. When omitted, the source value is used.
|
|
126
|
+
* @param input.org - Organization ID (`org_...`) to scope the clone to. When set, must match the authenticated viewer's org.
|
|
127
|
+
* @param input.team - Team ID (`tea_...`) that will own the cloned config. Required unless `user` is provided or the caller is app-scoped.
|
|
128
|
+
* @param input.user - User ID (`usr_...`) that will own the cloned config. Required unless `team` is provided or the caller is app-scoped.
|
|
129
|
+
* @param input.virtual_path - Override the `virtual_path` on the cloned config. When omitted, the source value is used.
|
|
130
|
+
* @returns The newly created config, including all cloned fields and its assigned ID.
|
|
131
|
+
*/
|
|
27
132
|
async clone(system, input) {
|
|
28
133
|
return this.http.request(`/api/v1/config/system/${system}/clone`, { method: "POST", body: input });
|
|
29
134
|
}
|
|
@@ -37,38 +142,417 @@ export class ConfigResource {
|
|
|
37
142
|
this.kinds = new KindResource(http);
|
|
38
143
|
this.system = new SystemResource(http);
|
|
39
144
|
}
|
|
145
|
+
/**
|
|
146
|
+
* List configs
|
|
147
|
+
* Returns all configs owned by the specified owner. Exactly one owner selector
|
|
148
|
+
* (`team`, `user`, or `agent`) must be provided. Passing an unknown or
|
|
149
|
+
* inaccessible owner returns an empty `data` array rather than an error, to
|
|
150
|
+
* avoid leaking information about which teams, users, or agents exist.
|
|
151
|
+
* Use the `kind`, `lookup_key`, `path_prefix`, `parents`, and
|
|
152
|
+
* `parent_solutions` params to narrow results. Private config kinds are always
|
|
153
|
+
* excluded from the response regardless of the viewer's permissions.
|
|
154
|
+
* Results are not paginated; all matching configs are returned in a single
|
|
155
|
+
* response.
|
|
156
|
+
* @param params - Query parameters.
|
|
157
|
+
* @param params.team - Team ID (`team_...`) whose configs to list. Mutually exclusive with `user` and `agent`.
|
|
158
|
+
* @param params.user - User ID (`usr_...`) whose configs to list. Defaults to the current user when the viewer is a user and no owner selector is provided. Mutually exclusive with `team` and `agent`.
|
|
159
|
+
* @param params.agent - Agent ID (`agt_...`) whose configs to list. Mutually exclusive with `team` and `user`.
|
|
160
|
+
* @param params.kind - Filter results to configs of this kind, e.g. `"Agent"` or `"APITool"`. Omit to return configs of all non-private kinds.
|
|
161
|
+
* @param params.lookupKey - Filter to the config with exactly this `lookup_key`. Returns at most one result.
|
|
162
|
+
* @param params.pathPrefix - Filter to configs whose `virtual_path` starts with this prefix, e.g. `"my-agent/"`. Useful for listing files within a folder.
|
|
163
|
+
* @param params.parents - Filter to configs that are children of any of the listed parent config IDs (`cfg_...`). Pass a single ID to retrieve all children of one bundle.
|
|
164
|
+
* @param params.parentSolutions - Filter to configs that were imported as part of any of the listed solution config IDs (`cfg_...`). Useful for identifying all files that arrived with a given solution.
|
|
165
|
+
* @returns Successful response
|
|
166
|
+
*/
|
|
40
167
|
async list(params) {
|
|
41
|
-
|
|
168
|
+
const query = {};
|
|
169
|
+
if (params?.team !== undefined) {
|
|
170
|
+
query["team"] = params?.team;
|
|
171
|
+
}
|
|
172
|
+
if (params?.user !== undefined) {
|
|
173
|
+
query["user"] = params?.user;
|
|
174
|
+
}
|
|
175
|
+
if (params?.agent !== undefined) {
|
|
176
|
+
query["agent"] = params?.agent;
|
|
177
|
+
}
|
|
178
|
+
if (params?.kind !== undefined) {
|
|
179
|
+
query["kind"] = params?.kind;
|
|
180
|
+
}
|
|
181
|
+
if (params?.lookupKey !== undefined) {
|
|
182
|
+
query["lookup_key"] = params?.lookupKey;
|
|
183
|
+
}
|
|
184
|
+
if (params?.pathPrefix !== undefined) {
|
|
185
|
+
query["path_prefix"] = params?.pathPrefix;
|
|
186
|
+
}
|
|
187
|
+
if (params?.parents !== undefined) {
|
|
188
|
+
query["parents"] = params?.parents;
|
|
189
|
+
}
|
|
190
|
+
if (params?.parentSolutions !== undefined) {
|
|
191
|
+
query["parent_solutions"] = params?.parentSolutions;
|
|
192
|
+
}
|
|
193
|
+
return this.http.request(`/api/v1/config`, { query });
|
|
42
194
|
}
|
|
195
|
+
/**
|
|
196
|
+
* Create a config
|
|
197
|
+
* Creates a new config and its first version. Returns 201 on success.
|
|
198
|
+
* A config is uniquely identified within an app + org scope by its
|
|
199
|
+
* `virtual_path` or `lookup_key`. Creating a config at a path that already
|
|
200
|
+
* exists (including archived configs) returns 409. To adopt an existing config
|
|
201
|
+
* at that path and re-own it instead, pass `take_ownership: true` — this
|
|
202
|
+
* requires modify rights on the existing row (developer or all-powerful viewer).
|
|
203
|
+
* The owner is resolved from the explicit selector params (`team`, `user`,
|
|
204
|
+
* `agent`, or `system`). Developer and all-powerful viewers default to system
|
|
205
|
+
* ownership when no explicit selector is provided. Exactly one owner selector
|
|
206
|
+
* may be set; conflicting selectors return 422.
|
|
207
|
+
* Requires app scope.
|
|
208
|
+
* @param input - Request body.
|
|
209
|
+
* @param input.agent - Agent ID (`agt_...`) to assign as the config owner. Mutually exclusive with `team`, `user`, and `system`.
|
|
210
|
+
* @param input.change_description - Human-readable description of this initial version, stored on the version record.
|
|
211
|
+
* @param input.data - Arbitrary key-value metadata stored on the version alongside the content.
|
|
212
|
+
* @param input.kind - Config kind that determines the schema and behavior of the config, e.g. `"Agent"` or `"APITool"`.
|
|
213
|
+
* @param input.lookup_key - Optional stable key for looking up this config independent of its `virtual_path`. Must be unique within the app + org scope across all owners.
|
|
214
|
+
* @param input.mime_type - MIME type of `raw_content`, e.g. `"application/x-yaml"` or `"application/json"`.
|
|
215
|
+
* @param input.org - Organization ID (`org_...`) to scope the config to a specific org.
|
|
216
|
+
* @param input.parent - Parent config ID (`cfg_...`) for bundle children, e.g. files belonging to a Skill. Required together with `relative_path` when creating a child config.
|
|
217
|
+
* @param input.parent_solution - Solution config ID (`cfg_...`) that this config was imported with. Records provenance for configs that arrive as part of a solution bundle.
|
|
218
|
+
* @param input.raw_content - Raw content bytes for the first version. Accepted formats depend on `mime_type`; typical values are YAML or JSON text.
|
|
219
|
+
* @param input.relative_path - Path of this config within its parent bundle, e.g. `"prompts/system.md"`. Required when `parent` is set.
|
|
220
|
+
* @param input.system - Set `true` to create a system-owned config (no team, user, or agent owner). Requires a developer, all-powerful, or app system-user viewer, or an org admin creating an org-scoped system config. Mutually exclusive with `team`, `user`, and `agent`.
|
|
221
|
+
* @param input.take_ownership - When `true` and a config already exists at the specified `virtual_path` or `lookup_key` under a different owner, adopt that config rather than returning 409: the existing row is re-owned to the requested owner, unarchived if necessary, and this content is saved as its next version. Requires modify rights on the existing row (developer or all-powerful viewer).
|
|
222
|
+
* @param input.team - Team ID (`team_...`) to assign as the config owner. Mutually exclusive with `user`, `agent`, and `system`.
|
|
223
|
+
* @param input.user - User ID (`usr_...`) to assign as the config owner. Mutually exclusive with `team`, `agent`, and `system`.
|
|
224
|
+
* @param input.virtual_path - Human-readable path that uniquely identifies the config within its owner scope, e.g. `"my-agent/v1"`. Must be unique within the app + org + owner combination.
|
|
225
|
+
* @returns The newly created config, including its first version.
|
|
226
|
+
*/
|
|
43
227
|
async create(input) {
|
|
44
228
|
return this.http.request(`/api/v1/config`, { method: "POST", body: input });
|
|
45
229
|
}
|
|
230
|
+
/**
|
|
231
|
+
* Encrypt a secret for use in a config
|
|
232
|
+
* Encrypts a plaintext secret and returns a ciphertext string safe for
|
|
233
|
+
* embedding directly in config content using the `secret_value!` interpolation
|
|
234
|
+
* syntax. The ciphertext is bound to the app's (or org's) key-encryption key
|
|
235
|
+
* (KEK) so it can only be decrypted at runtime within the same scope.
|
|
236
|
+
* When `org` is provided, the KEK for that org is used; otherwise the
|
|
237
|
+
* viewer's own org KEK is used, falling back to the app-level KEK for viewers
|
|
238
|
+
* with no org context.
|
|
239
|
+
* The plaintext is never stored. Requires app scope.
|
|
240
|
+
* @param input - Request body.
|
|
241
|
+
* @param input.org - Organization ID (`org_...`) whose KEK to use for encryption. Overrides the viewer's own org. Omit to use the viewer's org KEK, or the app-level KEK when the viewer has no org context.
|
|
242
|
+
* @param input.plaintext - The secret value to encrypt. Never stored; only the resulting ciphertext is returned.
|
|
243
|
+
* @returns Successful response
|
|
244
|
+
*/
|
|
46
245
|
async encryptSecret(input) {
|
|
47
246
|
return this.http.request(`/api/v1/config/encrypt_secret`, { method: "POST", body: input });
|
|
48
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* List config facets
|
|
250
|
+
* Returns the distinct config kinds and leading `virtual_path` prefixes
|
|
251
|
+
* available to the viewer, each with a count of matching configs. Use this
|
|
252
|
+
* to populate filter UI dropdowns without making a full list request.
|
|
253
|
+
* The counts reflect every config the viewer can see in the requested scope,
|
|
254
|
+
* independent of any kind, path-prefix, or lookup-key filters that might be
|
|
255
|
+
* applied on a concurrent list request. This means the UI always shows every
|
|
256
|
+
* option the viewer could pick, not just the values on the current filtered page.
|
|
257
|
+
* Scoping follows the same rules as the list endpoint: developer and
|
|
258
|
+
* all-powerful viewers see facets across all owners in the app; org-scoped
|
|
259
|
+
* viewers receive their own configs' facets merged with system-owned facets;
|
|
260
|
+
* all other viewers see only their resolved owner's configs.
|
|
261
|
+
* @param params - Query parameters.
|
|
262
|
+
* @param params.app - App ID (`app_...`). Present when mounted under the developer scope; injected automatically.
|
|
263
|
+
* @param params.team - Team ID (`team_...`) to scope facets to that team's configs. Mutually exclusive with `user`.
|
|
264
|
+
* @param params.user - User ID (`usr_...`) to scope facets to that user's configs. Defaults to the current user when the viewer is a user and no selector is provided. Mutually exclusive with `team`.
|
|
265
|
+
* @param params.org - Organization ID (`org_...`) to narrow facets to configs belonging to that org.
|
|
266
|
+
* @returns Distinct config kinds and `virtual_path` prefixes with per-value counts.
|
|
267
|
+
*/
|
|
268
|
+
async facets(params) {
|
|
269
|
+
const query = {};
|
|
270
|
+
if (params?.app !== undefined) {
|
|
271
|
+
query["app"] = params?.app;
|
|
272
|
+
}
|
|
273
|
+
if (params?.team !== undefined) {
|
|
274
|
+
query["team"] = params?.team;
|
|
275
|
+
}
|
|
276
|
+
if (params?.user !== undefined) {
|
|
277
|
+
query["user"] = params?.user;
|
|
278
|
+
}
|
|
279
|
+
if (params?.org !== undefined) {
|
|
280
|
+
query["org"] = params?.org;
|
|
281
|
+
}
|
|
282
|
+
return this.http.request(`/api/v1/config/facets`, { query });
|
|
283
|
+
}
|
|
284
|
+
/**
|
|
285
|
+
* Validate config content
|
|
286
|
+
* Validates raw config content against the schema for a given config kind
|
|
287
|
+
* without saving anything. Returns a structured result indicating whether the
|
|
288
|
+
* content is valid and, if not, a list of error messages.
|
|
289
|
+
* Use this endpoint to give users early feedback before calling create or
|
|
290
|
+
* update. The owner context is used for any kind-specific validation rules that
|
|
291
|
+
* are owner-aware; provide the same owner you intend to use on the write call.
|
|
292
|
+
* Requires app scope.
|
|
293
|
+
* @param input - Request body.
|
|
294
|
+
* @param input.agent - Agent ID (`agt_...`) that would own the config. Used for owner-aware validation rules. Mutually exclusive with `team` and `user`.
|
|
295
|
+
* @param input.kind - Config kind whose schema the content is validated against, e.g. `"Agent"` or `"APITool"`.
|
|
296
|
+
* @param input.mime_type - MIME type of `raw_content`, e.g. `"application/x-yaml"` or `"application/json"`. Used to parse the content before validation.
|
|
297
|
+
* @param input.raw_content - Raw content bytes to validate. Parsed according to `mime_type` before schema validation.
|
|
298
|
+
* @param input.team - Team ID (`team_...`) that would own the config. Used for owner-aware validation rules. Mutually exclusive with `user` and `agent`.
|
|
299
|
+
* @param input.user - User ID (`usr_...`) that would own the config. Used for owner-aware validation rules. Mutually exclusive with `team` and `agent`.
|
|
300
|
+
* @returns Validation outcome. Always HTTP 200; check the `valid` field to determine success. Includes `errors` when `valid` is `false`.
|
|
301
|
+
*/
|
|
49
302
|
async validate(input) {
|
|
50
303
|
return this.http.request(`/api/v1/config/validate`, { method: "POST", body: input });
|
|
51
304
|
}
|
|
305
|
+
/**
|
|
306
|
+
* Delete a config
|
|
307
|
+
* Permanently deletes a config and all its associated versions. This action is
|
|
308
|
+
* irreversible. To soft-delete a config while retaining its history, use the
|
|
309
|
+
* archive endpoint instead.
|
|
310
|
+
* The config may be addressed by its ID (`cfg_...`), `virtual_path`, or
|
|
311
|
+
* `lookup_key`. When addressing by `lookup_key` or `virtual_path`, you must
|
|
312
|
+
* supply exactly one owner selector (`team`, `user`, `agent`, or `system`);
|
|
313
|
+
* passing an owner selector when addressing by ID returns 422.
|
|
314
|
+
* Returns 204 No Content on success. Requires app scope. The viewer must have
|
|
315
|
+
* modify rights on the config.
|
|
316
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. URL-encode `virtual_path` values that contain slashes.
|
|
317
|
+
* @returns Empty body. HTTP 204 indicates the config and all its versions were permanently deleted.
|
|
318
|
+
*/
|
|
52
319
|
async delete(config) {
|
|
53
320
|
await this.http.request(`/api/v1/config/${config}`, { method: "DELETE" });
|
|
54
321
|
}
|
|
322
|
+
/**
|
|
323
|
+
* Retrieve a config
|
|
324
|
+
* Returns a single config identified by its ID, `virtual_path`, or
|
|
325
|
+
* `lookup_key`. The config object includes its current version metadata but
|
|
326
|
+
* not the raw content bytes; use the content endpoint to fetch the raw content.
|
|
327
|
+
* When addressing by `lookup_key` or `virtual_path`, you must supply exactly
|
|
328
|
+
* one owner selector (`team`, `user`, `agent`, or `system`). Passing an owner
|
|
329
|
+
* selector when addressing by ID (`cfg_...`) returns 422. Both `not_found`
|
|
330
|
+
* and `forbidden` outcomes are surfaced as 404 to avoid leaking config
|
|
331
|
+
* existence.
|
|
332
|
+
* Requires app scope.
|
|
333
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. URL-encode `virtual_path` values that contain slashes.
|
|
334
|
+
* @param params - Query parameters.
|
|
335
|
+
* @param params.team - Team ID (`team_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
336
|
+
* @param params.user - User ID (`usr_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
337
|
+
* @param params.agent - Agent ID (`agt_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
338
|
+
* @param params.system - Set `true` to resolve a system-owned config by `virtual_path` or `lookup_key`. Requires a privileged viewer (developer or all-powerful) or an org admin.
|
|
339
|
+
* @param params.org - Organization ID (`org_...`) to narrow the lookup to configs belonging to that org.
|
|
340
|
+
* @returns The requested config object.
|
|
341
|
+
*/
|
|
55
342
|
async get(config, params) {
|
|
56
|
-
|
|
343
|
+
const query = {};
|
|
344
|
+
if (params?.team !== undefined) {
|
|
345
|
+
query["team"] = params?.team;
|
|
346
|
+
}
|
|
347
|
+
if (params?.user !== undefined) {
|
|
348
|
+
query["user"] = params?.user;
|
|
349
|
+
}
|
|
350
|
+
if (params?.agent !== undefined) {
|
|
351
|
+
query["agent"] = params?.agent;
|
|
352
|
+
}
|
|
353
|
+
if (params?.system !== undefined) {
|
|
354
|
+
query["system"] = params?.system;
|
|
355
|
+
}
|
|
356
|
+
if (params?.org !== undefined) {
|
|
357
|
+
query["org"] = params?.org;
|
|
358
|
+
}
|
|
359
|
+
return this.http.request(`/api/v1/config/${config}`, { query });
|
|
57
360
|
}
|
|
58
|
-
|
|
59
|
-
|
|
361
|
+
/**
|
|
362
|
+
* Update a config
|
|
363
|
+
* Updates an existing config. When `raw_content` is provided, a new version is
|
|
364
|
+
* created and becomes the current version. When `raw_content` is omitted, only
|
|
365
|
+
* metadata fields (`virtual_path`, `lookup_key`, `relative_path`,
|
|
366
|
+
* `parent_solution`) are updated without creating a new version.
|
|
367
|
+
* Use `expected_version` for optimistic concurrency control: if the config's
|
|
368
|
+
* current version number does not match the supplied value the request returns
|
|
369
|
+
* 409. This prevents overwriting concurrent edits.
|
|
370
|
+
* The config may be addressed by its ID (`cfg_...`), `virtual_path`, or
|
|
371
|
+
* `lookup_key`. When addressing by `lookup_key` or `virtual_path`, you must
|
|
372
|
+
* supply exactly one owner selector (`team`, `user`, `agent`, or `system`).
|
|
373
|
+
* Both `not_found` and `forbidden` outcomes are surfaced as 404.
|
|
374
|
+
* Requires app scope. The viewer must have modify rights on the config.
|
|
375
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. URL-encode `virtual_path` values that contain slashes.
|
|
376
|
+
* @param input - Request body.
|
|
377
|
+
* @param input.agent - Agent ID (`agt_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
378
|
+
* @param input.change_description - Human-readable description of this update, stored on the new version record.
|
|
379
|
+
* @param input.data - Arbitrary key-value metadata to store on the new version alongside the content.
|
|
380
|
+
* @param input.expected_version - Version number the caller expects to be current. If the config's actual current version does not match, the request returns 409 to signal a concurrent modification. Omit to skip optimistic locking.
|
|
381
|
+
* @param input.lookup_key - New `lookup_key` for the config. Updates the key without creating a new version when `raw_content` is omitted.
|
|
382
|
+
* @param input.mime_type - MIME type of `raw_content`, e.g. `"application/x-yaml"` or `"application/json"`. Defaults to the existing MIME type when `raw_content` is provided without this field.
|
|
383
|
+
* @param input.org - Organization ID (`org_...`) to narrow the lookup to configs belonging to that org.
|
|
384
|
+
* @param input.parent_solution - Solution config ID (`cfg_...`) to set as the config's parent solution provenance. Clears the value when set to an empty string.
|
|
385
|
+
* @param input.raw_content - New raw content bytes for the config. When provided, a new version is created. Omit to perform a metadata-only update without incrementing the version.
|
|
386
|
+
* @param input.relative_path - Updated path of this config within its parent bundle. Only meaningful when the config has a `parent`.
|
|
387
|
+
* @param input.system - Set `true` to resolve a system-owned config by `virtual_path` or `lookup_key`. Requires a privileged viewer (developer or all-powerful) or an org admin.
|
|
388
|
+
* @param input.team - Team ID (`team_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
389
|
+
* @param input.user - User ID (`usr_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
390
|
+
* @param input.virtual_path - New `virtual_path` for the config. Updates the path without creating a new version when `raw_content` is omitted.
|
|
391
|
+
* @returns The config reflecting the applied update.
|
|
392
|
+
*/
|
|
393
|
+
async update(config, input) {
|
|
394
|
+
return this.http.request(`/api/v1/config/${config}`, { method: "PATCH", body: input });
|
|
60
395
|
}
|
|
396
|
+
/**
|
|
397
|
+
* Archive a config
|
|
398
|
+
* Soft-deletes a config by marking it as archived. Archived configs are hidden
|
|
399
|
+
* from list and show endpoints but are not permanently removed; use the
|
|
400
|
+
* unarchive endpoint to restore one, or the delete endpoint for permanent
|
|
401
|
+
* removal.
|
|
402
|
+
* The config may be addressed by its ID (`cfg_...`), `virtual_path`, or
|
|
403
|
+
* `lookup_key`. When addressing by `lookup_key` or `virtual_path`, you must
|
|
404
|
+
* supply exactly one owner selector (`team`, `user`, `agent`, or `system`);
|
|
405
|
+
* passing an owner selector when addressing by ID returns 422.
|
|
406
|
+
* Requires app scope. The viewer must have modify rights on the config.
|
|
407
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. `virtual_path` values should be URL-encoded if they contain slashes.
|
|
408
|
+
* @param input - Request body.
|
|
409
|
+
* @param input.agent - Agent ID (`agt_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
410
|
+
* @param input.org - Organization ID (`org_...`) to narrow the lookup to configs belonging to that org. Useful when the viewer has access to multiple orgs.
|
|
411
|
+
* @param input.system - Set `true` to resolve a system-owned config by `virtual_path` or `lookup_key`. Requires a privileged viewer (developer or all-powerful) or an org admin.
|
|
412
|
+
* @param input.team - Team ID (`team_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
413
|
+
* @param input.user - User ID (`usr_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
414
|
+
* @returns The config in its newly archived state.
|
|
415
|
+
*/
|
|
61
416
|
async archive(config, input) {
|
|
62
417
|
return this.http.request(`/api/v1/config/${config}/archive`, { method: "POST", body: input });
|
|
63
418
|
}
|
|
419
|
+
/**
|
|
420
|
+
* Transfer ownership of a config
|
|
421
|
+
* Transfers a config to a new owner (`team`, `user`, `agent`, or `system`).
|
|
422
|
+
* Exactly one of the new-owner selectors must be provided. The config must be
|
|
423
|
+
* addressed by its ID (`cfg_...` or UUID); `virtual_path` and `lookup_key`
|
|
424
|
+
* are not accepted to avoid ambiguity — look up the ID first if needed.
|
|
425
|
+
* For non-system targets the new owner's org is derived automatically from the
|
|
426
|
+
* target entity; supplying `org` in that case returns 422. For `system:true`
|
|
427
|
+
* targets, `org` controls the resulting org scope: omit to keep the existing
|
|
428
|
+
* `org_id`, supply a value to set a specific org, or pass `null`/blank to make
|
|
429
|
+
* the config app-level (operator viewers only).
|
|
430
|
+
* Operator viewers (developer credentials or all-powerful viewers) may transfer
|
|
431
|
+
* to any owner. All other viewers are restricted to owners they can themselves
|
|
432
|
+
* access (team membership, user identity, agent scope, or `system` with the
|
|
433
|
+
* appropriate privilege).
|
|
434
|
+
* Requires app scope. The viewer must have modify rights on the config.
|
|
435
|
+
* @param config - Config ID in id-form: `cfg_...` or a UUID. `lookup_key` and `virtual_path` are not accepted — retrieve the config ID first if you only have a path.
|
|
436
|
+
* @param input - Request body.
|
|
437
|
+
* @param input.agent - New owner: Agent ID (`agt_...`). Mutually exclusive with `team`, `user`, and `system`.
|
|
438
|
+
* @param input.org - Only valid when `system:true`. Omit to keep the config's existing `org_id`; supply an org ID (`org_...`) to set a specific org scope; pass blank or `null` to make the config app-level (operator viewers only). Setting `org` for `team`, `user`, or `agent` targets returns 422.
|
|
439
|
+
* @param input.system - Set `true` to transfer to system ownership (app-level or org-scoped). Requires a privileged viewer. Mutually exclusive with `team`, `user`, and `agent`.
|
|
440
|
+
* @param input.team - New owner: Team ID (`team_...`). Mutually exclusive with `user`, `agent`, and `system`.
|
|
441
|
+
* @param input.user - New owner: User ID (`usr_...`). Mutually exclusive with `team`, `agent`, and `system`.
|
|
442
|
+
* @returns The config reflecting its new ownership.
|
|
443
|
+
*/
|
|
444
|
+
async changeOwner(config, input) {
|
|
445
|
+
return this.http.request(`/api/v1/config/${config}/change_owner`, { method: "POST", body: input });
|
|
446
|
+
}
|
|
447
|
+
/**
|
|
448
|
+
* Retrieve a config's raw content
|
|
449
|
+
* Returns the raw byte content of a config's current version. The response
|
|
450
|
+
* `Content-Type` header reflects the config's stored MIME type unless a
|
|
451
|
+
* `format` conversion is requested.
|
|
452
|
+
* Pass `format: "yaml"` or `format: "json"` to convert between YAML and JSON
|
|
453
|
+
* on the fly. Conversion is only supported between these two formats; requesting
|
|
454
|
+
* a conversion that is not possible returns 400.
|
|
455
|
+
* By default, `virtual_path` and other platform-injected protected fields are
|
|
456
|
+
* embedded in the returned content. Set `inject_protected_fields: false` to
|
|
457
|
+
* return the stored raw bytes exactly as written.
|
|
458
|
+
* The config may be addressed by ID (`cfg_...`), `virtual_path`, or
|
|
459
|
+
* `lookup_key`. When addressing by `lookup_key` or `virtual_path`, exactly one
|
|
460
|
+
* owner selector (`team`, `user`, `agent`, or `system`) is required.
|
|
461
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. URL-encode `virtual_path` values that contain slashes.
|
|
462
|
+
* @param params - Query parameters.
|
|
463
|
+
* @param params.team - Team ID (`team_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
464
|
+
* @param params.user - User ID (`usr_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
465
|
+
* @param params.agent - Agent ID (`agt_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
466
|
+
* @param params.system - Set `true` to resolve a system-owned config by `virtual_path` or `lookup_key`. Requires a privileged viewer (developer or all-powerful) or an org admin.
|
|
467
|
+
* @param params.org - Organization ID (`org_...`) to narrow the lookup to configs belonging to that org.
|
|
468
|
+
* @param params.format - Output format for content conversion. One of `"yaml"` or `"json"`. Omit to return the content in its stored format. Returns 400 if conversion is not possible.
|
|
469
|
+
* @param params.injectProtectedFields - Whether to inject platform-managed protected fields (such as `virtual_path`) into the returned content. Defaults to `true`. Set to `false` to receive the raw stored bytes.
|
|
470
|
+
* @returns Raw config content in the stored or requested format.
|
|
471
|
+
*/
|
|
64
472
|
async content(config, params) {
|
|
65
|
-
|
|
473
|
+
const query = {};
|
|
474
|
+
if (params?.team !== undefined) {
|
|
475
|
+
query["team"] = params?.team;
|
|
476
|
+
}
|
|
477
|
+
if (params?.user !== undefined) {
|
|
478
|
+
query["user"] = params?.user;
|
|
479
|
+
}
|
|
480
|
+
if (params?.agent !== undefined) {
|
|
481
|
+
query["agent"] = params?.agent;
|
|
482
|
+
}
|
|
483
|
+
if (params?.system !== undefined) {
|
|
484
|
+
query["system"] = params?.system;
|
|
485
|
+
}
|
|
486
|
+
if (params?.org !== undefined) {
|
|
487
|
+
query["org"] = params?.org;
|
|
488
|
+
}
|
|
489
|
+
if (params?.format !== undefined) {
|
|
490
|
+
query["format"] = params?.format;
|
|
491
|
+
}
|
|
492
|
+
if (params?.injectProtectedFields !== undefined) {
|
|
493
|
+
query["inject_protected_fields"] = params?.injectProtectedFields;
|
|
494
|
+
}
|
|
495
|
+
return this.http.requestRaw(`/api/v1/config/${config}/content`, { query });
|
|
66
496
|
}
|
|
497
|
+
/**
|
|
498
|
+
* Unarchive a config
|
|
499
|
+
* Restores a previously archived config, making it visible again in list and
|
|
500
|
+
* show responses. The config's content and version history are unchanged.
|
|
501
|
+
* The config may be addressed by its ID (`cfg_...`), `virtual_path`, or
|
|
502
|
+
* `lookup_key`. When addressing by `lookup_key` or `virtual_path`, you must
|
|
503
|
+
* supply exactly one owner selector (`team`, `user`, `agent`, or `system`);
|
|
504
|
+
* passing an owner selector when addressing by ID returns 422.
|
|
505
|
+
* Requires app scope. The viewer must have modify rights on the config.
|
|
506
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. URL-encode `virtual_path` values that contain slashes.
|
|
507
|
+
* @param input - Request body.
|
|
508
|
+
* @param input.agent - Agent ID (`agt_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
509
|
+
* @param input.org - Organization ID (`org_...`) to narrow the lookup to configs belonging to that org.
|
|
510
|
+
* @param input.system - Set `true` to resolve a system-owned config by `virtual_path` or `lookup_key`. Requires a privileged viewer (developer or all-powerful) or an org admin.
|
|
511
|
+
* @param input.team - Team ID (`team_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
512
|
+
* @param input.user - User ID (`usr_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
513
|
+
* @returns The config in its newly restored (active) state.
|
|
514
|
+
*/
|
|
67
515
|
async unarchive(config, input) {
|
|
68
516
|
return this.http.request(`/api/v1/config/${config}/unarchive`, { method: "POST", body: input });
|
|
69
517
|
}
|
|
518
|
+
/**
|
|
519
|
+
* List a config's version history
|
|
520
|
+
* Returns all versions of a config in the order they were created, most recent
|
|
521
|
+
* first. Each version includes its version number, content metadata, and change
|
|
522
|
+
* description. The raw content bytes for a specific version are not included;
|
|
523
|
+
* use the content endpoint to fetch them.
|
|
524
|
+
* The config may be addressed by its ID (`cfg_...`), `virtual_path`, or
|
|
525
|
+
* `lookup_key`. When addressing by `lookup_key` or `virtual_path`, you must
|
|
526
|
+
* supply exactly one owner selector (`team`, `user`, `agent`, or `system`).
|
|
527
|
+
* Both `not_found` and `forbidden` outcomes are surfaced as 404.
|
|
528
|
+
* Requires app scope.
|
|
529
|
+
* @param config - Config identifier. Accepts a config ID (`cfg_...`), a `virtual_path`, or a `lookup_key`. URL-encode `virtual_path` values that contain slashes.
|
|
530
|
+
* @param params - Query parameters.
|
|
531
|
+
* @param params.team - Team ID (`team_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
532
|
+
* @param params.user - User ID (`usr_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
533
|
+
* @param params.agent - Agent ID (`agt_...`) to use as the owner when resolving by `virtual_path` or `lookup_key`.
|
|
534
|
+
* @param params.system - Set `true` to resolve a system-owned config by `virtual_path` or `lookup_key`. Requires a privileged viewer (developer or all-powerful) or an org admin.
|
|
535
|
+
* @param params.org - Organization ID (`org_...`) to narrow the lookup to configs belonging to that org.
|
|
536
|
+
* @returns Successful response
|
|
537
|
+
*/
|
|
70
538
|
async versions(config, params) {
|
|
71
|
-
|
|
539
|
+
const query = {};
|
|
540
|
+
if (params?.team !== undefined) {
|
|
541
|
+
query["team"] = params?.team;
|
|
542
|
+
}
|
|
543
|
+
if (params?.user !== undefined) {
|
|
544
|
+
query["user"] = params?.user;
|
|
545
|
+
}
|
|
546
|
+
if (params?.agent !== undefined) {
|
|
547
|
+
query["agent"] = params?.agent;
|
|
548
|
+
}
|
|
549
|
+
if (params?.system !== undefined) {
|
|
550
|
+
query["system"] = params?.system;
|
|
551
|
+
}
|
|
552
|
+
if (params?.org !== undefined) {
|
|
553
|
+
query["org"] = params?.org;
|
|
554
|
+
}
|
|
555
|
+
return this.http.request(`/api/v1/config/${config}/versions`, { query });
|
|
72
556
|
}
|
|
73
557
|
}
|
|
74
558
|
//# sourceMappingURL=config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/v1/resources/config.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,wEAAwE;AACxE,6BAA6B;AAM7B,MAAM,OAAO,YAAY;IACH;IAApB,YAAoB,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAExC,KAAK,CAAC,IAAI,CAAC,MAA4B;QACrC,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/v1/resources/config.ts"],"names":[],"mappings":"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"}
|