profile_security_questions.go raw
1 package linodego
2
3 import (
4 "context"
5 )
6
7 type SecurityQuestion struct {
8 ID int `json:"id"`
9 Question string `json:"question"`
10 Response string `json:"response"`
11 }
12
13 type SecurityQuestionsListResponse struct {
14 SecurityQuestions []SecurityQuestion `json:"security_questions"`
15 }
16
17 type SecurityQuestionsAnswerQuestion struct {
18 QuestionID int `json:"question_id"`
19 Response string `json:"response"`
20 }
21
22 type SecurityQuestionsAnswerOptions struct {
23 SecurityQuestions []SecurityQuestionsAnswerQuestion `json:"security_questions"`
24 }
25
26 // SecurityQuestionsList returns a collection of security questions and their responses, if any, for your User Profile.
27 func (c *Client) SecurityQuestionsList(ctx context.Context) (*SecurityQuestionsListResponse, error) {
28 return doGETRequest[SecurityQuestionsListResponse](ctx, c, "profile/security-questions")
29 }
30
31 // SecurityQuestionsAnswer adds security question responses for your User.
32 func (c *Client) SecurityQuestionsAnswer(ctx context.Context, opts SecurityQuestionsAnswerOptions) error {
33 return doPOSTRequestNoResponseBody(ctx, c, "profile/security-questions", opts)
34 }
35