github.com/twilio/twilio-go@v1.20.1/rest/accounts/v1/safe_list_numbers.go (about)

     1  /*
     2   * This code was generated by
     3   * ___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
     4   *  |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
     5   *  |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \
     6   *
     7   * Twilio - Accounts
     8   * This is the public Twilio REST API.
     9   *
    10   * NOTE: This class is auto generated by OpenAPI Generator.
    11   * https://openapi-generator.tech
    12   * Do not edit the class manually.
    13   */
    14  
    15  package openapi
    16  
    17  import (
    18  	"encoding/json"
    19  	"net/url"
    20  )
    21  
    22  // Optional parameters for the method 'CreateSafelist'
    23  type CreateSafelistParams struct {
    24  	// The phone number to be added in SafeList. Phone numbers must be in [E.164 format](https://www.twilio.com/docs/glossary/what-e164).
    25  	PhoneNumber *string `json:"PhoneNumber,omitempty"`
    26  }
    27  
    28  func (params *CreateSafelistParams) SetPhoneNumber(PhoneNumber string) *CreateSafelistParams {
    29  	params.PhoneNumber = &PhoneNumber
    30  	return params
    31  }
    32  
    33  // Add a new phone number to SafeList.
    34  func (c *ApiService) CreateSafelist(params *CreateSafelistParams) (*AccountsV1Safelist, error) {
    35  	path := "/v1/SafeList/Numbers"
    36  
    37  	data := url.Values{}
    38  	headers := make(map[string]interface{})
    39  
    40  	if params != nil && params.PhoneNumber != nil {
    41  		data.Set("PhoneNumber", *params.PhoneNumber)
    42  	}
    43  
    44  	resp, err := c.requestHandler.Post(c.baseURL+path, data, headers)
    45  	if err != nil {
    46  		return nil, err
    47  	}
    48  
    49  	defer resp.Body.Close()
    50  
    51  	ps := &AccountsV1Safelist{}
    52  	if err := json.NewDecoder(resp.Body).Decode(ps); err != nil {
    53  		return nil, err
    54  	}
    55  
    56  	return ps, err
    57  }
    58  
    59  // Optional parameters for the method 'DeleteSafelist'
    60  type DeleteSafelistParams struct {
    61  	// The phone number to be removed from SafeList. Phone numbers must be in [E.164 format](https://www.twilio.com/docs/glossary/what-e164).
    62  	PhoneNumber *string `json:"PhoneNumber,omitempty"`
    63  }
    64  
    65  func (params *DeleteSafelistParams) SetPhoneNumber(PhoneNumber string) *DeleteSafelistParams {
    66  	params.PhoneNumber = &PhoneNumber
    67  	return params
    68  }
    69  
    70  // Remove a phone number from SafeList.
    71  func (c *ApiService) DeleteSafelist(params *DeleteSafelistParams) error {
    72  	path := "/v1/SafeList/Numbers"
    73  
    74  	data := url.Values{}
    75  	headers := make(map[string]interface{})
    76  
    77  	if params != nil && params.PhoneNumber != nil {
    78  		data.Set("PhoneNumber", *params.PhoneNumber)
    79  	}
    80  
    81  	resp, err := c.requestHandler.Delete(c.baseURL+path, data, headers)
    82  	if err != nil {
    83  		return err
    84  	}
    85  
    86  	defer resp.Body.Close()
    87  
    88  	return nil
    89  }
    90  
    91  // Optional parameters for the method 'FetchSafelist'
    92  type FetchSafelistParams struct {
    93  	// The phone number to be fetched from SafeList. Phone numbers must be in [E.164 format](https://www.twilio.com/docs/glossary/what-e164).
    94  	PhoneNumber *string `json:"PhoneNumber,omitempty"`
    95  }
    96  
    97  func (params *FetchSafelistParams) SetPhoneNumber(PhoneNumber string) *FetchSafelistParams {
    98  	params.PhoneNumber = &PhoneNumber
    99  	return params
   100  }
   101  
   102  // Check if a phone number exists in SafeList.
   103  func (c *ApiService) FetchSafelist(params *FetchSafelistParams) (*AccountsV1Safelist, error) {
   104  	path := "/v1/SafeList/Numbers"
   105  
   106  	data := url.Values{}
   107  	headers := make(map[string]interface{})
   108  
   109  	if params != nil && params.PhoneNumber != nil {
   110  		data.Set("PhoneNumber", *params.PhoneNumber)
   111  	}
   112  
   113  	resp, err := c.requestHandler.Get(c.baseURL+path, data, headers)
   114  	if err != nil {
   115  		return nil, err
   116  	}
   117  
   118  	defer resp.Body.Close()
   119  
   120  	ps := &AccountsV1Safelist{}
   121  	if err := json.NewDecoder(resp.Body).Decode(ps); err != nil {
   122  		return nil, err
   123  	}
   124  
   125  	return ps, err
   126  }