@faable/deploy-sdk 2.15.0 → 2.16.0

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.
@@ -22,6 +22,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
22
22
  * `GET /app/checkname` — operationId: `app/checkname`
23
23
  *
24
24
  * Check if an app name is availiable
25
+ *
26
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
27
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
28
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
29
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
30
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
31
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
32
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
25
33
  */
26
34
  appCheckname(params?: OpQuery<"app/checkname">): Promise<{
27
35
  name: string;
@@ -34,6 +42,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
34
42
  * `POST /app` — operationId: `app/create`
35
43
  *
36
44
  * Create App
45
+ *
46
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
47
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
48
+ * @throws {FaableApiError} `team_required` (400) — The operation needs a project: send it in the `x-faable-team` header.
49
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
50
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
51
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
52
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
53
+ * @throws {FaableApiError} `app_rate_limited` (429) — A new account may only create a few apps in its first 24 hours.
54
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
55
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
37
56
  */
38
57
  appCreate(data: OpBody<"app/create">): Promise<{
39
58
  id: string;
@@ -83,6 +102,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
83
102
  * `DELETE /app/{id}` — operationId: `app/delete`
84
103
  *
85
104
  * Delete App
105
+ *
106
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
107
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
108
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
109
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
110
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
111
+ * @throws {FaableApiError} `moderation_hold` (403) — The project contains an app disabled by moderation and cannot be deleted. Contact support@faable.com.
112
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
113
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
114
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
115
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
116
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
86
117
  */
87
118
  appDelete(id: string): Promise<{
88
119
  id: string;
@@ -134,6 +165,23 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
134
165
  * Deploy the latest commit now
135
166
  *
136
167
  * Build and deploy the current head of the deploy branch, without waiting for a push. Same path as a push webhook, including the same-commit dedupe.
168
+ *
169
+ * @throws {FaableApiError} `branch_missing` (400) — The deploy branch does not exist on the repository. `message` lists the branches that do.
170
+ * @throws {FaableApiError} `deploy_mode_conflict` (400) — The app deploys from its own workflow, so the platform will not create a deployment for it.
171
+ * @throws {FaableApiError} `repository_empty` (400) — The repository has no commits on the deploy branch yet.
172
+ * @throws {FaableApiError} `repository_not_linked` (400) — The app has no linked repository.
173
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
174
+ * @throws {FaableApiError} `github_token_invalid` (401) — The stored GitHub token was rejected; the user must reconnect.
175
+ * @throws {FaableApiError} `user_token_required` (401) — The endpoint acts on behalf of a person and the credential carries no user (an API key or a service account).
176
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
177
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
178
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
179
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
180
+ * @throws {FaableApiError} `deploy_refused` (409) — The deploy was refused by quota, plan or an in-flight deployment. `message` says which.
181
+ * @throws {FaableApiError} `github_identity_missing` (412) — The user has not connected GitHub. Send them through `connect_github`.
182
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
183
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
184
+ * @throws {FaableApiError} `github_error` (502) — GitHub failed upstream. `message` carries what it said.
137
185
  */
138
186
  appDeployNow(id: string): Promise<{
139
187
  status: "created";
@@ -144,6 +192,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
144
192
  * `GET /app/{id}` — operationId: `app/get`
145
193
  *
146
194
  * Get App
195
+ *
196
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
197
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
198
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
199
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
200
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
201
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
202
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
203
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
204
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
205
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
206
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
147
207
  */
148
208
  appGet(id: string, params?: OpQuery<"app/get">): Promise<{
149
209
  id: string;
@@ -193,6 +253,16 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
193
253
  * `GET /app/{app_id}/registry` — operationId: `app/get_registry`
194
254
  *
195
255
  * Get app registry
256
+ *
257
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
258
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
259
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
260
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
261
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
262
+ * @throws {FaableApiError} `app_disabled` (409) — The app is disabled, so it cannot be deployed or provisioned. `message` says why when the reason is public.
263
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
264
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
265
+ * @throws {FaableApiError} `bad_gateway` (502) — An upstream the API depends on failed.
196
266
  */
197
267
  appGetRegistry(app_id: string): Promise<{
198
268
  id: string;
@@ -208,6 +278,24 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
208
278
  * Link a GitHub repository to an app
209
279
  *
210
280
  * Link a GitHub repository to an app after verifying the user has a connected GitHub identity with access to the repository.
281
+ *
282
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
283
+ * @throws {FaableApiError} `github_token_invalid` (401) — The stored GitHub token was rejected; the user must reconnect.
284
+ * @throws {FaableApiError} `user_token_required` (401) — The endpoint acts on behalf of a person and the credential carries no user (an API key or a service account).
285
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
286
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
287
+ * @throws {FaableApiError} `github_installation_suspended` (403) — The GitHub App installation is suspended.
288
+ * @throws {FaableApiError} `github_permission_denied` (403) — The installation lacks a permission this operation needs.
289
+ * @throws {FaableApiError} `github_repository_blocked` (403) — GitHub refuses to serve the source of that repository (403 or 451).
290
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
291
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
292
+ * @throws {FaableApiError} `github_repository_not_found` (404) — The repository does not exist or the installation cannot see it.
293
+ * @throws {FaableApiError} `repository_already_linked` (409) — The repository is already linked to another app. `details.app_id` / `details.app_name` name it.
294
+ * @throws {FaableApiError} `github_identity_missing` (412) — The user has not connected GitHub. Send them through `connect_github`.
295
+ * @throws {FaableApiError} `github_installation_missing` (412) — The Faable GitHub App is not installed on any repository of theirs.
296
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
297
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
298
+ * @throws {FaableApiError} `github_error` (502) — GitHub failed upstream. `message` carries what it said.
211
299
  */
212
300
  appLinkRepository(id: string, data: OpBody<"app/link_repository">): Promise<{
213
301
  id: string;
@@ -257,6 +345,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
257
345
  * `GET /app` — operationId: `app/list`
258
346
  *
259
347
  * List Apps
348
+ *
349
+ * @throws {FaableApiError} `invalid_query` (400) — The `?query=` FaableQL expression could not be parsed.
350
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
351
+ * @throws {FaableApiError} `search_not_supported` (400) — This resource does not support `?q=`.
352
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
353
+ * @throws {FaableApiError} `team_or_scope_required` (401) — Listing needs either a project in `x-faable-team` or a global scope on the token.
354
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
355
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
356
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
357
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
358
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
359
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
260
360
  */
261
361
  appList(params?: Omit<OpQuery<"app/list">, "cursor" | "next">): {
262
362
  all: () => Promise<{
@@ -399,6 +499,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
399
499
  * `GET /app/{app_id}/logs` — operationId: `app/logs`
400
500
  *
401
501
  * Get app logs
502
+ *
503
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
504
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
505
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
506
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
507
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
508
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
509
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
402
510
  */
403
511
  appLogs(app_id: string, params?: OpQuery<"app/logs">): Promise<void>;
404
512
  /**
@@ -407,6 +515,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
407
515
  * List repository branches
408
516
  *
409
517
  * Branch names of the linked repository.
518
+ *
519
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
520
+ * @throws {FaableApiError} `github_token_invalid` (401) — The stored GitHub token was rejected; the user must reconnect.
521
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
522
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
523
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
524
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
525
+ * @throws {FaableApiError} `github_repository_not_found` (404) — The repository does not exist or the installation cannot see it.
526
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
527
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
528
+ * @throws {FaableApiError} `github_error` (502) — GitHub failed upstream. `message` carries what it said.
410
529
  */
411
530
  appRepoBranches(id: string): Promise<{
412
531
  branches: string[];
@@ -417,6 +536,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
417
536
  * Get effective repository build config
418
537
  *
419
538
  * Effective build configuration read from the repository: the monorepo Root Directory and its source (platform override or the repo's faable.json).
539
+ *
540
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
541
+ * @throws {FaableApiError} `github_token_invalid` (401) — The stored GitHub token was rejected; the user must reconnect.
542
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
543
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
544
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
545
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
546
+ * @throws {FaableApiError} `github_repository_not_found` (404) — The repository does not exist or the installation cannot see it.
547
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
548
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
549
+ * @throws {FaableApiError} `github_error` (502) — GitHub failed upstream. `message` carries what it said.
420
550
  */
421
551
  appRepoConfig(id: string): Promise<{
422
552
  root_dir: string | null;
@@ -428,6 +558,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
428
558
  * List repository directories
429
559
  *
430
560
  * Directories of the linked repository on the deploy branch, flagged with whether each one holds a buildable manifest. Feeds the Root Directory picker so a monorepo is configured from what the repository actually contains. Limited to three levels deep; dotted directories and node_modules are excluded.
561
+ *
562
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
563
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
564
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
565
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
566
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
567
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
568
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
431
569
  */
432
570
  appRepoDirectories(id: string): Promise<{
433
571
  directories: {
@@ -442,6 +580,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
442
580
  * Check whether a repository can be linked to a new app
443
581
  *
444
582
  * Runs the free-plan "one repository, one app" guard before the app exists. Always 200: `linkable:false` names the app that already has the repository (and its project when it is another one of yours), with the same message the link would refuse with.
583
+ *
584
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
585
+ * @throws {FaableApiError} `user_token_required` (401) — The endpoint acts on behalf of a person and the credential carries no user (an API key or a service account).
586
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
587
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
588
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
589
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
590
+ * @throws {FaableApiError} `github_identity_missing` (412) — The user has not connected GitHub. Send them through `connect_github`.
591
+ * @throws {FaableApiError} `github_installation_missing` (412) — The Faable GitHub App is not installed on any repository of theirs.
592
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
593
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
594
+ * @throws {FaableApiError} `github_error` (502) — GitHub failed upstream. `message` carries what it said.
445
595
  */
446
596
  appRepoLinkable(params?: OpQuery<"app/repo_linkable">): Promise<{
447
597
  linkable: boolean;
@@ -459,6 +609,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
459
609
  * List repository workflow files
460
610
  *
461
611
  * GitHub Actions workflow files present on the linked repository (deploy branch).
612
+ *
613
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
614
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
615
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
616
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
617
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
618
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
619
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
462
620
  */
463
621
  appRepoWorkflows(id: string): Promise<{
464
622
  workflows: {
@@ -473,6 +631,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
473
631
  * Change the deploy branch
474
632
  *
475
633
  * Change the branch the app deploys from. Apps deploying from their own GitHub Actions workflow must update the branch trigger in the workflow file themselves.
634
+ *
635
+ * @throws {FaableApiError} `branch_missing` (400) — The deploy branch does not exist on the repository. `message` lists the branches that do.
636
+ * @throws {FaableApiError} `repository_not_linked` (400) — The app has no linked repository.
637
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
638
+ * @throws {FaableApiError} `user_token_required` (401) — The endpoint acts on behalf of a person and the credential carries no user (an API key or a service account).
639
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
640
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
641
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
642
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
643
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
644
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
476
645
  */
477
646
  appSetDeployBranch(id: string, data: OpBody<"app/set_deploy_branch">): Promise<{
478
647
  github_branch: string;
@@ -484,6 +653,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
484
653
  * Set the deploy mode
485
654
  *
486
655
  * Choose how pushes deploy: 'push' = every push deploys directly; 'ci' = deploy once the commit's CI checks pass. Both are platform-managed (webhook) triggers.
656
+ *
657
+ * @throws {FaableApiError} `no_deploy_workflow` (400) — No workflow in the repository runs `faable deploy`.
658
+ * @throws {FaableApiError} `no_workflows` (400) — The repository has no GitHub Actions workflows, so a CI gate would never open.
659
+ * @throws {FaableApiError} `root_dir_mismatch` (400) — The workflow deploys from one directory and platform builds would run from another. Declare `rootDir` in faable.json.
660
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
661
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
662
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
663
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
664
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
665
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
666
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
487
667
  */
488
668
  appSetDeployMode(id: string, data: OpBody<"app/set_deploy_mode">): Promise<{
489
669
  id: string;
@@ -535,6 +715,16 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
535
715
  * Set the Root Directory
536
716
  *
537
717
  * Set the platform Root Directory: the subdirectory of the repository the build runs from. Takes precedence over the repo's faable.json `rootDir`; `null` clears it and hands precedence back. The path must exist on the deploy branch.
718
+ *
719
+ * @throws {FaableApiError} `invalid_root_dir` (400) — The Root Directory must be a path inside the repository — no leading `/` and no `..`.
720
+ * @throws {FaableApiError} `root_dir_not_found` (400) — The Root Directory does not exist on that ref of the repository.
721
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
722
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
723
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
724
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
725
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
726
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
727
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
538
728
  */
539
729
  appSetRootDir(id: string, data: OpBody<"app/set_root_dir">): Promise<{
540
730
  id: string;
@@ -584,6 +774,15 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
584
774
  * `GET /app/slug/{slug}` — operationId: `app/slug`
585
775
  *
586
776
  * Get App by unique slug
777
+ *
778
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
779
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
780
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
781
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
782
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
783
+ * @throws {FaableApiError} `app_not_found` (404) — No app with that id or slug in this project.
784
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
785
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
587
786
  */
588
787
  appSlug(slug: string): Promise<{
589
788
  id: string;
@@ -633,6 +832,15 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
633
832
  * `GET /app/{app_id}/traffic` — operationId: `app/traffic`
634
833
  *
635
834
  * Get App Traffic
835
+ *
836
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
837
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
838
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
839
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
840
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
841
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
842
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
843
+ * @throws {FaableApiError} `metrics_unavailable` (503) — Traffic metrics are temporarily unavailable — this is not an app with no traffic.
636
844
  */
637
845
  appTraffic(app_id: string, params?: OpQuery<"app/traffic">): Promise<{
638
846
  range: {
@@ -694,6 +902,15 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
694
902
  * Unlink the GitHub repository from an app
695
903
  *
696
904
  * Unlink the GitHub repository from an app.
905
+ *
906
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
907
+ * @throws {FaableApiError} `user_token_required` (401) — The endpoint acts on behalf of a person and the credential carries no user (an API key or a service account).
908
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
909
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
910
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
911
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
912
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
913
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
697
914
  */
698
915
  appUnlinkRepository(id: string): Promise<{
699
916
  id: string;
@@ -743,6 +960,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
743
960
  * `POST /app/{id}` — operationId: `app/update`
744
961
  *
745
962
  * Update App
963
+ *
964
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
965
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
966
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
967
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
968
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
969
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
970
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
971
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
972
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
973
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
974
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
746
975
  */
747
976
  appUpdate(id: string, data: OpBody<"app/update">): Promise<{
748
977
  id: string;
@@ -794,6 +1023,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
794
1023
  * Get App WAF
795
1024
  *
796
1025
  * Get the WAF rules in effect for an App
1026
+ *
1027
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1028
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1029
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1030
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1031
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1032
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1033
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
797
1034
  */
798
1035
  appWaf(app_id: string): Promise<{
799
1036
  enabled: boolean;
@@ -824,6 +1061,16 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
824
1061
  * Add App WAF Rule
825
1062
  *
826
1063
  * Add a WAF rule to an App
1064
+ *
1065
+ * @throws {FaableApiError} `bad_request` (400) — The request is malformed. `message` says what is wrong.
1066
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1067
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1068
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1069
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1070
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1071
+ * @throws {FaableApiError} `conflict` (409) — The request conflicts with the current state of the resource.
1072
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1073
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
827
1074
  */
828
1075
  appWafAddRule(app_id: string, data: OpBody<"app/waf/addRule">): Promise<{
829
1076
  enabled: boolean;
@@ -854,6 +1101,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
854
1101
  * Remove App WAF Rule
855
1102
  *
856
1103
  * Remove a WAF rule from an App
1104
+ *
1105
+ * @throws {FaableApiError} `bad_request` (400) — The request is malformed. `message` says what is wrong.
1106
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1107
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1108
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1109
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1110
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1111
+ * @throws {FaableApiError} `waf_rule_not_found` (404) — No WAF rule with that pattern on this app.
1112
+ * @throws {FaableApiError} `conflict` (409) — The request conflicts with the current state of the resource.
1113
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1114
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
857
1115
  */
858
1116
  appWafRemoveRule(app_id: string, data: OpBody<"app/waf/removeRule">): Promise<{
859
1117
  enabled: boolean;
@@ -884,6 +1142,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
884
1142
  * Get the team's daily deploy quota status
885
1143
  *
886
1144
  * Daily deploy allowance of the current team: how much was used today, when it resets, and how many builds are held waiting for it.
1145
+ *
1146
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1147
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1148
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1149
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1150
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1151
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1152
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1153
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1154
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1155
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
887
1156
  */
888
1157
  deployQuotaGet(): Promise<{
889
1158
  limited: boolean;
@@ -899,6 +1168,13 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
899
1168
  * Roll out the builds held by the daily deploy quota
900
1169
  *
901
1170
  * Releases the team's held deployments if its current plan allows it (per app, only the newest held build rolls out; older ones are canceled). Safe to call at any time — it does nothing while the quota is still spent.
1171
+ *
1172
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1173
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1174
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1175
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1176
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1177
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
902
1178
  */
903
1179
  deployQuotaRelease(): Promise<{
904
1180
  released: string[];
@@ -910,6 +1186,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
910
1186
  * Cancel a queued or building deployment
911
1187
  *
912
1188
  * Cancel a deployment that has not been handed over to the controller yet (QUEUED or BUILDING)
1189
+ *
1190
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1191
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1192
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1193
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1194
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1195
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1196
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
913
1197
  */
914
1198
  deploymentCancel(deployment_id: string): Promise<{
915
1199
  id: string;
@@ -940,6 +1224,20 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
940
1224
  * `POST /deployment` — operationId: `deployment/create`
941
1225
  *
942
1226
  * Create Deployment
1227
+ *
1228
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
1229
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1230
+ * @throws {FaableApiError} `team_required` (400) — The operation needs a project: send it in the `x-faable-team` header.
1231
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1232
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1233
+ * @throws {FaableApiError} `plan_required` (403) — The build or feature needs a higher plan. `message` says which.
1234
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1235
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1236
+ * @throws {FaableApiError} `app_disabled` (409) — The app is disabled, so it cannot be deployed or provisioned. `message` says why when the reason is public.
1237
+ * @throws {FaableApiError} `remote_build_disabled` (409) — Remote builds are off for this environment or this app. Deploy with a local build instead.
1238
+ * @throws {FaableApiError} `deploy_refused` (409) — The deploy was refused by quota, plan or an in-flight deployment. `message` says which.
1239
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1240
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
943
1241
  */
944
1242
  deploymentCreate(data: OpBody<"deployment/create">): Promise<{
945
1243
  id: string;
@@ -970,6 +1268,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
970
1268
  * `DELETE /deployment/{id}` — operationId: `deployment/delete`
971
1269
  *
972
1270
  * Delete Deployment
1271
+ *
1272
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1273
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1274
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1275
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1276
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1277
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1278
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1279
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1280
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1281
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
973
1282
  */
974
1283
  deploymentDelete(id: string): Promise<{
975
1284
  id: string;
@@ -1000,6 +1309,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1000
1309
  * `GET /deployment/{id}` — operationId: `deployment/get`
1001
1310
  *
1002
1311
  * Get Deployment
1312
+ *
1313
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1314
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1315
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1316
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1317
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1318
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1319
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1320
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1321
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1322
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1323
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1003
1324
  */
1004
1325
  deploymentGet(id: string): Promise<{
1005
1326
  id: string;
@@ -1032,6 +1353,15 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1032
1353
  * Get deployment build logs
1033
1354
  *
1034
1355
  * Get the CLI build/deploy output attached to a deployment
1356
+ *
1357
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1358
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1359
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1360
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1361
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1362
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1363
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1364
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1035
1365
  */
1036
1366
  deploymentGetLogs(deployment_id: string): Promise<{
1037
1367
  id: string;
@@ -1051,6 +1381,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1051
1381
  * `GET /deployment` — operationId: `deployment/list`
1052
1382
  *
1053
1383
  * List Deployments
1384
+ *
1385
+ * @throws {FaableApiError} `invalid_query` (400) — The `?query=` FaableQL expression could not be parsed.
1386
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1387
+ * @throws {FaableApiError} `search_not_supported` (400) — This resource does not support `?q=`.
1388
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1389
+ * @throws {FaableApiError} `team_or_scope_required` (401) — Listing needs either a project in `x-faable-team` or a global scope on the token.
1390
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1391
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1392
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1393
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1394
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1395
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1054
1396
  */
1055
1397
  deploymentList(params?: Omit<OpQuery<"deployment/list">, "cursor" | "next">): {
1056
1398
  all: () => Promise<{
@@ -1136,6 +1478,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1136
1478
  * `POST /deployment/{id}` — operationId: `deployment/update`
1137
1479
  *
1138
1480
  * Update Deployment
1481
+ *
1482
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1483
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
1484
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1485
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1486
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1487
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1488
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1489
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1490
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1491
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1492
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1139
1493
  */
1140
1494
  deploymentUpdate(id: string, data: OpBody<"deployment/update">): Promise<{
1141
1495
  id: string;
@@ -1166,6 +1520,19 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1166
1520
  * `POST /domain` — operationId: `domain/create`
1167
1521
  *
1168
1522
  * Create Domain
1523
+ *
1524
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
1525
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1526
+ * @throws {FaableApiError} `team_required` (400) — The operation needs a project: send it in the `x-faable-team` header.
1527
+ * @throws {FaableApiError} `domain_invalid` (400) — Not a valid hostname. No protocol, port or path.
1528
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1529
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1530
+ * @throws {FaableApiError} `domain_reserved` (403) — Hostnames under that domain are assigned by Faable.
1531
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1532
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1533
+ * @throws {FaableApiError} `domain_taken` (409) — That hostname is already registered on Faable.
1534
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1535
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1169
1536
  */
1170
1537
  domainCreate(data: OpBody<"domain/create">): Promise<{
1171
1538
  id: string;
@@ -1187,6 +1554,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1187
1554
  * `DELETE /domain/{id}` — operationId: `domain/delete`
1188
1555
  *
1189
1556
  * Delete Domain
1557
+ *
1558
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1559
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1560
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1561
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1562
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1563
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1564
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1565
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1566
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1567
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1190
1568
  */
1191
1569
  domainDelete(id: string): Promise<{
1192
1570
  id: string;
@@ -1208,6 +1586,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1208
1586
  * `GET /domain/fqdn/{fqdn}` — operationId: `domain/fqdn`
1209
1587
  *
1210
1588
  * Get domain by FQDN
1589
+ *
1590
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1591
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1592
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1593
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1594
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1595
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1596
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1211
1597
  */
1212
1598
  domainFqdn(fqdn: string): Promise<{
1213
1599
  id: string;
@@ -1229,6 +1615,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1229
1615
  * `GET /domain/{id}` — operationId: `domain/get`
1230
1616
  *
1231
1617
  * Get Domain
1618
+ *
1619
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1620
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1621
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1622
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1623
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1624
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1625
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1626
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1627
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1628
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1629
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1232
1630
  */
1233
1631
  domainGet(id: string): Promise<{
1234
1632
  id: string;
@@ -1250,6 +1648,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1250
1648
  * `GET /domain` — operationId: `domain/list`
1251
1649
  *
1252
1650
  * List Domains
1651
+ *
1652
+ * @throws {FaableApiError} `invalid_query` (400) — The `?query=` FaableQL expression could not be parsed.
1653
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1654
+ * @throws {FaableApiError} `search_not_supported` (400) — This resource does not support `?q=`.
1655
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1656
+ * @throws {FaableApiError} `team_or_scope_required` (401) — Listing needs either a project in `x-faable-team` or a global scope on the token.
1657
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1658
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1659
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1660
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1661
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1662
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1253
1663
  */
1254
1664
  domainList(params?: Omit<OpQuery<"domain/list">, "cursor" | "next">): {
1255
1665
  all: () => Promise<{
@@ -1308,6 +1718,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1308
1718
  * `POST /domain/{id}` — operationId: `domain/update`
1309
1719
  *
1310
1720
  * Update Domain
1721
+ *
1722
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1723
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
1724
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1725
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1726
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1727
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1728
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1729
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1730
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1731
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1732
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1311
1733
  */
1312
1734
  domainUpdate(id: string, data: OpBody<"domain/update">): Promise<{
1313
1735
  id: string;
@@ -1329,6 +1751,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1329
1751
  * `POST /project` — operationId: `project/create`
1330
1752
  *
1331
1753
  * Create Project
1754
+ *
1755
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
1756
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1757
+ * @throws {FaableApiError} `team_required` (400) — The operation needs a project: send it in the `x-faable-team` header.
1758
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1759
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1760
+ * @throws {FaableApiError} `project_plan_limited` (402) — The Free plan project cap is reached. Upgrade to create more.
1761
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1762
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1763
+ * @throws {FaableApiError} `project_rate_limited` (429) — A new account may only create a few projects in its first hours. It opens with time, or with a plan.
1764
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1765
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1332
1766
  */
1333
1767
  projectCreate(data: OpBody<"project/create">): Promise<{
1334
1768
  id: string;
@@ -1348,6 +1782,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1348
1782
  * `DELETE /project/{id}` — operationId: `project/delete`
1349
1783
  *
1350
1784
  * Delete Project
1785
+ *
1786
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1787
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1788
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1789
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1790
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1791
+ * @throws {FaableApiError} `moderation_hold` (403) — The project contains an app disabled by moderation and cannot be deleted. Contact support@faable.com.
1792
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1793
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1794
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1795
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1796
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1351
1797
  */
1352
1798
  projectDelete(id: string): Promise<{
1353
1799
  id: string;
@@ -1367,6 +1813,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1367
1813
  * `GET /project/{id}` — operationId: `project/get`
1368
1814
  *
1369
1815
  * Get Project
1816
+ *
1817
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1818
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1819
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1820
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1821
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1822
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1823
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1824
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1825
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
1826
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1827
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1370
1828
  */
1371
1829
  projectGet(id: string): Promise<{
1372
1830
  id: string;
@@ -1386,6 +1844,15 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1386
1844
  * `POST /project/{id}/invite` — operationId: `project/invite`
1387
1845
  *
1388
1846
  * Invite collaborators to project
1847
+ *
1848
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1849
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1850
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1851
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1852
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1853
+ * @throws {FaableApiError} `project_not_found` (404) — No project with that id for this caller.
1854
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1855
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1389
1856
  */
1390
1857
  projectInvite(id: string, data: OpBody<"project/invite">): Promise<{
1391
1858
  project: import("./types.js").components["schemas"]["Project"];
@@ -1401,6 +1868,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1401
1868
  * Project creation limits for the caller
1402
1869
  *
1403
1870
  * Whether the caller can create another project, and why not
1871
+ *
1872
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1873
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1874
+ * @throws {FaableApiError} `owner_only` (403) — Only the project owner can manage collaborators.
1875
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1876
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1877
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1878
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1404
1879
  */
1405
1880
  projectLimits(): Promise<{
1406
1881
  can_create: boolean;
@@ -1419,6 +1894,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1419
1894
  * `GET /project` — operationId: `project/list`
1420
1895
  *
1421
1896
  * List Projects
1897
+ *
1898
+ * @throws {FaableApiError} `invalid_query` (400) — The `?query=` FaableQL expression could not be parsed.
1899
+ * @throws {FaableApiError} `invalid_expand` (400) — An `?expand=` path is not allowed on this resource.
1900
+ * @throws {FaableApiError} `search_not_supported` (400) — This resource does not support `?q=`.
1901
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1902
+ * @throws {FaableApiError} `team_or_scope_required` (401) — Listing needs either a project in `x-faable-team` or a global scope on the token.
1903
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1904
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1905
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1906
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1907
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1908
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1422
1909
  */
1423
1910
  projectList(params?: Omit<OpQuery<"project/list">, "cursor" | "next">): {
1424
1911
  all: () => Promise<{
@@ -1471,6 +1958,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1471
1958
  * `DELETE /project/{id}/collaborator/{user_id}` — operationId: `project/removeCollaborator`
1472
1959
  *
1473
1960
  * Remove a collaborator from a project
1961
+ *
1962
+ * @throws {FaableApiError} `owner_not_removable` (400) — The project owner cannot be removed. Delete the project instead.
1963
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1964
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1965
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1966
+ * @throws {FaableApiError} `superadmin_only` (403) — The operation is restricted to platform staff.
1967
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
1968
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
1969
+ * @throws {FaableApiError} `collaborator_not_found` (404) — That user is not a collaborator on the project.
1970
+ * @throws {FaableApiError} `project_not_found` (404) — No project with that id for this caller.
1971
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
1972
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1474
1973
  */
1475
1974
  projectRemoveCollaborator(id: string, user_id: string): Promise<{
1476
1975
  id: string;
@@ -1490,6 +1989,18 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1490
1989
  * `POST /project/{id}` — operationId: `project/update`
1491
1990
  *
1492
1991
  * Update Project
1992
+ *
1993
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
1994
+ * @throws {FaableApiError} `already_exists` (400) — A resource with the same unique field already exists. `details.fields` names the field.
1995
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
1996
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
1997
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
1998
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
1999
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2000
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2001
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
2002
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2003
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1493
2004
  */
1494
2005
  projectUpdate(id: string, data: OpBody<"project/update">): Promise<{
1495
2006
  id: string;
@@ -1511,6 +2022,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1511
2022
  * Create secrets in batch
1512
2023
  *
1513
2024
  * Create a secrets in batch
2025
+ *
2026
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
2027
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
2028
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
2029
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2030
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2031
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2032
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1514
2033
  */
1515
2034
  secretsCreateBatch(data: OpBody<"secrets/create_batch">): Promise<{
1516
2035
  id: string;
@@ -1531,6 +2050,17 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1531
2050
  * `DELETE /secret/{secret_id}` — operationId: `secrets/delete`
1532
2051
  *
1533
2052
  * Delete a secret
2053
+ *
2054
+ * @throws {FaableApiError} `invalid_id` (400) — The id in the path is not a valid id for this resource.
2055
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
2056
+ * @throws {FaableApiError} `access_denied` (401) — The row exists but does not belong to the caller.
2057
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
2058
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
2059
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2060
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2061
+ * @throws {FaableApiError} `not_found` (404) — The resource does not exist, or not in the caller’s project.
2062
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2063
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1534
2064
  */
1535
2065
  secretsDelete(secret_id: string): Promise<void>;
1536
2066
  /**
@@ -1539,6 +2069,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1539
2069
  * List all secrets assigned to an App or Profile contexts
1540
2070
  *
1541
2071
  * List all app secrets assigned to an App or Profile contexts
2072
+ *
2073
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
2074
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
2075
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
2076
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2077
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2078
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2079
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1542
2080
  */
1543
2081
  secretsListApp(context_id: string, params?: OpQuery<"secrets/list_app">): Promise<{
1544
2082
  next: string | null;
@@ -1548,6 +2086,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1548
2086
  * `POST /secret` — operationId: `secrets/upsert`
1549
2087
  *
1550
2088
  * Upsert a secret
2089
+ *
2090
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
2091
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
2092
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
2093
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2094
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2095
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2096
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1551
2097
  */
1552
2098
  secretsUpsert(data: OpBody<"secrets/upsert">): Promise<{
1553
2099
  id: string;
@@ -1568,6 +2114,14 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1568
2114
  * `GET /usage/summary` — operationId: `usage/summary`
1569
2115
  *
1570
2116
  * Get team usage summary for the current billing period
2117
+ *
2118
+ * @throws {FaableApiError} `validation_error` (400) — The body, query or path failed schema validation. `details.issues` lists each failing field.
2119
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
2120
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
2121
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2122
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2123
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2124
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1571
2125
  */
1572
2126
  usageSummary(params?: OpQuery<"usage/summary">): Promise<{
1573
2127
  resources: {
@@ -1607,6 +2161,13 @@ export declare abstract class GeneratedFaableDeployApi extends FaableApi {
1607
2161
  * `GET /usage/traffic` — operationId: `usage/traffic`
1608
2162
  *
1609
2163
  * Get metered traffic usage per team for the current period
2164
+ *
2165
+ * @throws {FaableApiError} `unauthorized` (401) — The request carries no valid credentials.
2166
+ * @throws {FaableApiError} `invalid_token` (401) — The bearer token is missing, malformed or expired.
2167
+ * @throws {FaableApiError} `forbidden` (403) — The credentials are valid but do not allow this operation.
2168
+ * @throws {FaableApiError} `user_suspended` (403) — The account is suspended. Contact support@faable.com.
2169
+ * @throws {FaableApiError} `too_many_requests` (429) — Rate limit exceeded. Honour the `Retry-After` header.
2170
+ * @throws {FaableApiError} `internal_error` (500) — Unexpected server error. Retry later; the request id is logged.
1610
2171
  */
1611
2172
  usageTraffic(): Promise<{
1612
2173
  traffic: {