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