From 4d83edb1a153b094a2f81134aabf634e001460ab Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Fri, 17 Jun 2022 11:19:17 -0400 Subject: [PATCH 1/4] Add Phone Number Endpoints --- openapi.yaml | 161 ++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 160 insertions(+), 1 deletion(-) diff --git a/openapi.yaml b/openapi.yaml index 11cfdc03e..1f1c72575 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -2631,7 +2631,7 @@ paths: email address. Linode Managed can monitor any service or software stack reachable over TCP or HTTP. See our [Linode Managed guide](/docs/platform/linode-managed/) to learn more. - operationId: enableAccountManged + operationId: enableAccountManaged x-linode-cli-action: enable-managed security: - personalAccessToken: [] @@ -17463,6 +17463,165 @@ paths: - lang: CLI source: > linode-cli sshkey delete 42 + /profile/phone-number: + x-linode-cli-command: profile + delete: + x-linode-grant: read_write + tags: + - Profile + summary: Phone Number Delete + description: | + Delete the verified phone number for the User making this request. + + Use this command to opt out of SMS messages for the requesting User after a phone number has been verified with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. + operationId: deleteProfilePhone + x-linode-cli-command: phone-delete + security: + - personalAccessToken: [] + - oauth: + - account:read_write + responses: + '200': + description: > + Phone number deletion request successful. + content: + application/json: + schema: + type: object + default: + $ref: '#/components/responses/ErrorResponse' + x-code-samples: + - lang: Shell + source: > + curl -H "Content-Type: application/json" \ + -H "Authorization: Bearer $TOKEN" \ + -X DELETE \ + https://api.linode.com/v4/profile/phone-number + - lang: CLI + source: > + linode-cli profile phone-delete + post: + x-linode-grant: read_write + tags: + - Profile + summary: Phone Number Verification Code Send + description: | + Send a one-time verification code via SMS message to the submitted phone number. Providing your phone number helps ensure you can securely access your Account in case other ways to connect are lost. Your phone number is only used to verify your identity by sending an SMS message. Standard carrier messaging fees may apply. + + * By accessing this command you are opting in to receive SMS messages. You can opt out of SMS messages by using the **Phone Number Delete** ([DELETE /profile/phone-number](/docs/api/profile/#phone-number-delete)) command after your phone number is verified. + + * Verification codes are valid for 10 minutes after they are sent. + + * Subsequent requests made prior to code expiration result in sending the same code. + + Once a verification code is received, verify your phone number with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. + operationId: sendProfilePhoneVerificationCode + x-linode-cli-command: phone-code-send + security: + - personalAccessToken: [] + - oauth: + - account:read_write + requestBody: + description: Enter a phone number and country code for verification. + content: + application/json: + schema: + required: + - iso_code + - phone_number + type: object + properties: + iso_code: + type: string + description: The two-letter ISO 3166 country code associated with the phone number. + example: US + phone_number: + type: string + description: A valid phone number. + format: phone + example: 555-555-5555 + responses: + '200': + description: > + Phone number verification code request successful. + content: + application/json: + schema: + type: object + default: + $ref: '#/components/responses/ErrorResponse' + x-code-samples: + - lang: Shell + source: > + curl -H "Content-Type: application/json" \ + -H "Authorization: Bearer $TOKEN" \ + -X POST -d '{ + "iso_code": "US", + "phone_number": "555-555-5555" + }' \ + https://api.linode.com/v4/profile/phone-number + - lang: CLI + source: > + linode-cli profile phone-code-send \ + --iso-code US \ + --phone-number 555-555-5555 + /profile/phone-number/verify: + x-linode-cli-command: profile + post: + x-linode-grant: read_write + tags: + - Profile + summary: Phone Number Verify + description: | + Verify a phone number by confirming the one-time code received via SMS message after accessing the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. + + * Verification codes are valid for 10 minutes after they are sent. + + * Only the same User that made the verification code request can use that code with this command. + + Once completed, the verified phone number is assigned to the User making the request. To change the verified phone number for a User, first use the **Phone Number Delete** ([DELETE /profile/phone-number](/docs/api/profile/#phone-number-delete)) command, then begin the verification process again with the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. + operationId: checkProfilePhoneVerificationCode + x-linode-cli-command: phone-verify + security: + - personalAccessToken: [] + - oauth: + - account:read_write + requestBody: + description: Enter a phone verification code for confirmation. + content: + application/json: + schema: + required: + - otp_code + type: object + properties: + otp_code: + type: string + description: The one-time, six-digit code received via SMS message after accessing the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. + example: "US" + responses: + '200': + description: > + Phone number verification successful. + content: + application/json: + schema: + type: object + default: + $ref: '#/components/responses/ErrorResponse' + x-code-samples: + - lang: Shell + source: > + curl -H "Content-Type: application/json" \ + -H "Authorization: Bearer $TOKEN" \ + -X POST -d '{ + "otp_code": "123456" + }' \ + https://api.linode.com/v4/profile/phone-number/verify + - lang: CLI + source: > + linode-cli profile phone-verify \ + --otp_code 123456 /profile/preferences: x-linode-cli-command: profile get: From 1e7b03fff5ab2871cfda8fa84e4e9c4e1a105b76 Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Thu, 23 Jun 2022 13:46:04 -0400 Subject: [PATCH 2/4] Update operationId's --- openapi.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 1f1c72575..60f47f354 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -17474,7 +17474,7 @@ paths: Delete the verified phone number for the User making this request. Use this command to opt out of SMS messages for the requesting User after a phone number has been verified with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. - operationId: deleteProfilePhone + operationId: deleteProfilePhoneNumber x-linode-cli-command: phone-delete security: - personalAccessToken: [] @@ -17515,7 +17515,7 @@ paths: * Subsequent requests made prior to code expiration result in sending the same code. Once a verification code is received, verify your phone number with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. - operationId: sendProfilePhoneVerificationCode + operationId: postProfilePhoneNumber x-linode-cli-command: phone-code-send security: - personalAccessToken: [] @@ -17580,7 +17580,7 @@ paths: * Only the same User that made the verification code request can use that code with this command. Once completed, the verified phone number is assigned to the User making the request. To change the verified phone number for a User, first use the **Phone Number Delete** ([DELETE /profile/phone-number](/docs/api/profile/#phone-number-delete)) command, then begin the verification process again with the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. - operationId: checkProfilePhoneVerificationCode + operationId: postProfilePhoneNumberVerify x-linode-cli-command: phone-verify security: - personalAccessToken: [] From adcc33257bf6b08e3623520d6725eb14cbb44d30 Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Thu, 23 Jun 2022 13:49:05 -0400 Subject: [PATCH 3/4] Update cli commands --- openapi.yaml | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 60f47f354..6034d6179 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -17464,7 +17464,7 @@ paths: source: > linode-cli sshkey delete 42 /profile/phone-number: - x-linode-cli-command: profile + x-linode-cli-command: phone delete: x-linode-grant: read_write tags: @@ -17475,7 +17475,7 @@ paths: Use this command to opt out of SMS messages for the requesting User after a phone number has been verified with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. operationId: deleteProfilePhoneNumber - x-linode-cli-command: phone-delete + x-linode-cli-command: delete security: - personalAccessToken: [] - oauth: @@ -17499,7 +17499,7 @@ paths: https://api.linode.com/v4/profile/phone-number - lang: CLI source: > - linode-cli profile phone-delete + linode-cli phone delete post: x-linode-grant: read_write tags: @@ -17516,7 +17516,7 @@ paths: Once a verification code is received, verify your phone number with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. operationId: postProfilePhoneNumber - x-linode-cli-command: phone-code-send + x-linode-cli-command: sms-code-send security: - personalAccessToken: [] - oauth: @@ -17562,11 +17562,11 @@ paths: https://api.linode.com/v4/profile/phone-number - lang: CLI source: > - linode-cli profile phone-code-send \ + linode-cli phone sms-code-send \ --iso-code US \ --phone-number 555-555-5555 /profile/phone-number/verify: - x-linode-cli-command: profile + x-linode-cli-command: phone post: x-linode-grant: read_write tags: @@ -17581,7 +17581,7 @@ paths: Once completed, the verified phone number is assigned to the User making the request. To change the verified phone number for a User, first use the **Phone Number Delete** ([DELETE /profile/phone-number](/docs/api/profile/#phone-number-delete)) command, then begin the verification process again with the **Phone Verification Code Send** ([POST /profile/phone-number](/docs/api/profile/#phone-number-verification-code-send)) command. operationId: postProfilePhoneNumberVerify - x-linode-cli-command: phone-verify + x-linode-cli-command: verify security: - personalAccessToken: [] - oauth: @@ -17620,7 +17620,7 @@ paths: https://api.linode.com/v4/profile/phone-number/verify - lang: CLI source: > - linode-cli profile phone-verify \ + linode-cli phone verify \ --otp_code 123456 /profile/preferences: x-linode-cli-command: profile From 6a9fdaf35225a3f43e7c5871322f8e09b3ae6a9c Mon Sep 17 00:00:00 2001 From: bbiggerr Date: Fri, 24 Jun 2022 13:45:02 -0400 Subject: [PATCH 4/4] Add verified_phone_number to Profile --- openapi.yaml | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 6034d6179..b46c7ebcc 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -17494,9 +17494,9 @@ paths: - lang: Shell source: > curl -H "Content-Type: application/json" \ - -H "Authorization: Bearer $TOKEN" \ + -H "Authorization: Bearer $TOKEN_BBIGGER_DEV" \ -X DELETE \ - https://api.linode.com/v4/profile/phone-number + https://api.dev.linode.com/v4/profile/phone-number - lang: CLI source: > linode-cli phone delete @@ -17554,12 +17554,12 @@ paths: - lang: Shell source: > curl -H "Content-Type: application/json" \ - -H "Authorization: Bearer $TOKEN" \ + -H "Authorization: Bearer $TOKEN_BBIGGER_DEV" \ -X POST -d '{ "iso_code": "US", - "phone_number": "555-555-5555" + "phone_number": "267-273-8229" }' \ - https://api.linode.com/v4/profile/phone-number + https://api.dev.linode.com/v4/profile/phone-number - lang: CLI source: > linode-cli phone sms-code-send \ @@ -25217,6 +25217,15 @@ components: as necessary. example: example-user@gmail.com x-linode-cli-display: 2 + verified_phone_number: + type: string + format: phone + readOnly: true + description: | + The phone number verified for this Profile with the **Phone Number Verify** ([POST /profile/phone-number/verify](/docs/api/profile/#phone-number-verify)) command. + + `null` if this Profile has no verified phone number. + example: "+5555555555" timezone: type: string description: >