Skip to content

Commit f937d0f

Browse files
authored
Merge pull request #852 from bbiggerr/add/beta-programs
Added Beta Program commands
2 parents d7111f4 + 3c563f0 commit f937d0f

File tree

1 file changed

+319
-1
lines changed

1 file changed

+319
-1
lines changed

openapi.yaml

Lines changed: 319 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -532,6 +532,147 @@ paths:
532532
--state PA \
533533
--tax_id ATU99999999 \
534534
--zip 19102
535+
/account/betas:
536+
x-linode-cli-command: betas
537+
get:
538+
tags:
539+
- Beta Programs
540+
summary: Enrolled Beta Programs List
541+
operationId: getEnrolledBetaPrograms
542+
servers:
543+
- url: https://api.linode.com/v4
544+
security:
545+
- personalAccessToken: []
546+
- oauth:
547+
- account:read_only
548+
x-linode-cli-action: enrolled
549+
x-linode-grant: unrestricted only
550+
parameters:
551+
- $ref: '#/components/parameters/pageOffset'
552+
- $ref: '#/components/parameters/pageSize'
553+
description: |
554+
Display all enrolled Beta Programs for your Account. Includes inactive as well as active Beta Programs.
555+
556+
Only unrestricted Users can access this command.
557+
responses:
558+
'200':
559+
description: Returns a paginated list of all enrolled Beta Program objects for the Account.
560+
content:
561+
application/json:
562+
schema:
563+
allOf:
564+
- $ref: '#/components/schemas/PaginationEnvelope'
565+
- type: object
566+
properties:
567+
data:
568+
type: array
569+
items:
570+
$ref: '#/components/schemas/BetaProgramEnrolled'
571+
default:
572+
$ref: '#/components/responses/ErrorResponse'
573+
x-code-samples:
574+
- lang: Shell
575+
source: >
576+
curl https://api.linode.com/v4/account/betas \
577+
-H "Authorization: Bearer $TOKEN"
578+
- lang: CLI
579+
source: >
580+
linode-cli betas enrolled
581+
post:
582+
tags:
583+
- Beta Programs
584+
summary: Beta Program Enroll
585+
operationId: enrollBetaProgram
586+
servers:
587+
- url: https://api.linode.com/v4
588+
security:
589+
- personalAccessToken: []
590+
- oauth:
591+
- account:read_write
592+
x-linode-cli-action: enroll
593+
x-linode-grant: unrestricted only
594+
description: |
595+
Enroll your Account in an active Beta Program.
596+
597+
Only unrestricted Users can access this command.
598+
599+
To view active Beta Programs, use the Beta Programs List command.
600+
601+
Active Beta Programs may have a limited number of enrollments. If a Beta Program has reached is maximum number of enrollments, an error is returned even though the request is successful.
602+
603+
Beta Programs with `"greenlight_only": true` can only be enrolled by Accounts that participate in the [Greenlight](https://www.linode.com/green-light/) program.
604+
requestBody:
605+
description: Updated information for the Managed MySQL Database.
606+
required: true
607+
content:
608+
application/json:
609+
schema:
610+
required:
611+
- id
612+
type: object
613+
description: The Beta Program ID to enroll in for your Account.
614+
properties:
615+
id:
616+
$ref: '#/components/schemas/BetaProgram/properties/id'
617+
responses:
618+
'200':
619+
description: Enrollment request successful.
620+
content:
621+
application/json:
622+
schema:
623+
type: object
624+
default:
625+
$ref: '#/components/responses/ErrorResponse'
626+
x-code-samples:
627+
- lang: Shell
628+
source: >
629+
curl https://api.linode.com/v4/account/betas \
630+
-H "Authorization: Bearer $TOKEN" \
631+
-H "Content-Type: application/json" \
632+
-X POST -d '{
633+
"id": "example_open"
634+
}'
635+
- lang: CLI
636+
source: >
637+
linode-cli betas enroll --id example_open
638+
/account/betas/{betaId}:
639+
x-linode-cli-command: betas
640+
parameters:
641+
- $ref: '#/components/parameters/betaId'
642+
get:
643+
tags:
644+
- Beta Programs
645+
summary: Enrolled Beta Program View
646+
operationId: getEnrolledBetaProgram
647+
servers:
648+
- url: https://api.linode.com/v4
649+
security:
650+
- personalAccessToken: []
651+
- oauth:
652+
- account:read_only
653+
x-linode-cli-action: enrolled-view
654+
x-linode-grant: unrestricted only
655+
description: |
656+
Display an enrolled Beta Program for your Account. The Beta Program may be inactive.
657+
658+
Only unrestricted Users can access this command.
659+
responses:
660+
'200':
661+
description: Returns an enrolled Beta Program object for the Account.
662+
content:
663+
application/json:
664+
schema:
665+
$ref: '#/components/schemas/BetaProgramEnrolled'
666+
default:
667+
$ref: '#/components/responses/ErrorResponse'
668+
x-code-samples:
669+
- lang: Shell
670+
source: >
671+
curl https://api.linode.com/v4/account/betas/$betaId \
672+
-H "Authorization: Bearer $TOKEN"
673+
- lang: CLI
674+
source: >
675+
linode-cli betas enrolled-view $betaId
535676
/account/cancel:
536677
x-linode-cli-command: account
537678
post:
@@ -3118,6 +3259,90 @@ paths:
31183259
]
31193260
}' \
31203261
https://api.linode.com/v4/account/users/example_user/grants
3262+
/betas:
3263+
x-linode-cli-command: betas
3264+
get:
3265+
tags:
3266+
- Beta Programs
3267+
summary: Beta Programs List
3268+
operationId: getBetaPrograms
3269+
servers:
3270+
- url: https://api.linode.com/v4
3271+
security:
3272+
- personalAccessToken: []
3273+
- oauth: []
3274+
x-linode-cli-action:
3275+
- list
3276+
- ls
3277+
x-linode-grant: unrestricted only
3278+
parameters:
3279+
- $ref: '#/components/parameters/pageOffset'
3280+
- $ref: '#/components/parameters/pageSize'
3281+
description: |
3282+
Display all active Beta Programs.
3283+
3284+
Only unrestricted Users can access this command.
3285+
responses:
3286+
'200':
3287+
description: Returns a paginated list of all available Beta Program objects.
3288+
content:
3289+
application/json:
3290+
schema:
3291+
allOf:
3292+
- $ref: '#/components/schemas/PaginationEnvelope'
3293+
- type: object
3294+
properties:
3295+
data:
3296+
type: array
3297+
items:
3298+
$ref: '#/components/schemas/BetaProgram'
3299+
default:
3300+
$ref: '#/components/responses/ErrorResponse'
3301+
x-code-samples:
3302+
- lang: Shell
3303+
source: >
3304+
curl https://api.linode.com/v4/betas \
3305+
-H "Authorization: Bearer $TOKEN"
3306+
- lang: CLI
3307+
source: >
3308+
linode-cli betas list
3309+
/betas/{betaId}:
3310+
x-linode-cli-command: betas
3311+
parameters:
3312+
- $ref: '#/components/parameters/betaId'
3313+
get:
3314+
tags:
3315+
- Beta Programs
3316+
summary: Beta Program View
3317+
operationId: getBetaProgram
3318+
servers:
3319+
- url: https://api.linode.com/v4
3320+
security:
3321+
- personalAccessToken: []
3322+
- oauth: []
3323+
x-linode-cli-action: view
3324+
x-linode-grant: unrestricted only
3325+
description: |
3326+
Display information about a Beta Program. This command can be used to access inactive as well as active Beta Programs.
3327+
3328+
Only unrestricted Users can access this command.
3329+
responses:
3330+
'200':
3331+
description: Returns a paginated list of all available Beta Program objects.
3332+
content:
3333+
application/json:
3334+
schema:
3335+
$ref: '#/components/schemas/BetaProgram'
3336+
default:
3337+
$ref: '#/components/responses/ErrorResponse'
3338+
x-code-samples:
3339+
- lang: Shell
3340+
source: >
3341+
curl https://api.linode.com/v4/betas/$betaId \
3342+
-H "Authorization: Bearer $TOKEN"
3343+
- lang: CLI
3344+
source: >
3345+
linode-cli beta view $betaId
31213346
/databases/engines:
31223347
x-linode-cli-command: databases
31233348
get:
@@ -18879,6 +19104,13 @@ components:
1887919104
items:
1888019105
$ref: '#/components/schemas/ErrorObject'
1888119106
parameters:
19107+
betaId:
19108+
name: betaId
19109+
in: path
19110+
description: The ID of the Beta Program.
19111+
required: true
19112+
schema:
19113+
type: string
1888219114
pageOffset:
1888319115
name: page
1888419116
in: query
@@ -19331,6 +19563,90 @@ components:
1933119563
readOnly: true
1933219564
description: >
1933319565
A list of the disks that are part of the Backup.
19566+
BetaProgram:
19567+
type: object
19568+
description: An object representing Beta Program information.
19569+
properties:
19570+
id:
19571+
type: string
19572+
description: The unique identifier of the Beta Program.
19573+
example: example_open
19574+
x-linode-cli-display: 1
19575+
label:
19576+
type: string
19577+
readOnly: true
19578+
x-linode-filterable: true
19579+
description: The name of the Beta Program.
19580+
example: Example Open Beta
19581+
x-linode-cli-display: 2
19582+
description:
19583+
type: string
19584+
readOnly: true
19585+
nullable: true
19586+
description: Additional details regarding the Beta Program.
19587+
example: "This is an open public beta for an example feature."
19588+
x-linode-cli-display: 3
19589+
greenlight_only:
19590+
type: boolean
19591+
readOnly: true
19592+
x-linode-filterable: true
19593+
description: Whether the Beta Program requires [Green Light](https://www.linode.com/green-light/) participation for enrollment.
19594+
example: true
19595+
x-linode-cli-display: 4
19596+
started:
19597+
type: string
19598+
format: date-time
19599+
readOnly: true
19600+
x-linode-filterable: true
19601+
description: The start date-time of the Beta Program.
19602+
example: '2023-07-11T00:00:00'
19603+
x-linode-cli-display: 5
19604+
ended:
19605+
type: string
19606+
format: date-time
19607+
readOnly: true
19608+
nullable: true
19609+
x-linode-filterable: true
19610+
description: |
19611+
The date-time that the Beta Program ended.
19612+
19613+
`null` indicates that the Beta Program is ongoing.
19614+
example: null
19615+
x-linode-cli-display: 6
19616+
more_info:
19617+
type: string
19618+
readOnly: true
19619+
nullable: true
19620+
description: Additional source of information for the Beta Program.
19621+
example: https://www.linode.com/green-light/
19622+
x-linode-cli-display: 7
19623+
BetaProgramEnrolled:
19624+
type: object
19625+
description: An object representing an enrolled Beta Program for the Account.
19626+
properties:
19627+
id:
19628+
$ref: '#/components/schemas/BetaProgram/properties/id'
19629+
x-linode-cli-display: 1
19630+
label:
19631+
$ref: '#/components/schemas/BetaProgram/properties/label'
19632+
x-linode-cli-display: 2
19633+
description:
19634+
$ref: '#/components/schemas/BetaProgram/properties/description'
19635+
x-linode-cli-display: 3
19636+
started:
19637+
$ref: '#/components/schemas/BetaProgram/properties/started'
19638+
x-linode-cli-display: 4
19639+
ended:
19640+
$ref: '#/components/schemas/BetaProgram/properties/ended'
19641+
x-linode-cli-display: 5
19642+
enrolled:
19643+
type: string
19644+
format: date-time
19645+
readOnly: true
19646+
x-linode-filterable: true
19647+
description: The date-time of Account enrollment to the Beta Program.
19648+
example: '2023-09-11T00:00:00'
19649+
x-linode-cli-display: 6
1933419650
CreditCard:
1933519651
type: object
1933619652
description: |
@@ -19596,7 +19912,7 @@ components:
1959619912
x-linode-cli-display: 2
1959719913
created:
1959819914
type: string
19599-
format: datetime
19915+
format: date-time
1960019916
example: '2022-01-01T00:01:01'
1960119917
description: A time value given in a combined date and time format that represents when the database backup was created.
1960219918
x-linode-filterable: true
@@ -26648,6 +26964,8 @@ components:
2664826964
tags:
2664926965
- name: Account
2665026966
description: Use the Account endpoints to manage user settings, billing, and payments. You can also initiate and maintain OAuth client application authentication, enable the Linode Managed service, and create new users on your account.
26967+
- name: Beta Programs
26968+
description: Use the Beta Programs endpoint to view information to view information about available beta programs. To sign up for eligible beta programs, use the [Beta Program Join]() Account command.
2665126969
- name: Databases
2665226970
description: Managed Databases is Linode's fully-managed, high-performance database service. Use the Managed Databases endpoints to create and manage database clusters.
2665326971
- name: Domains

0 commit comments

Comments
 (0)