Fix responses

Signed-off-by: 0x6f736f646f <blackd0t@protonmail.com>
This commit is contained in:
0x6f736f646f
2022-02-12 01:02:59 +03:00
parent 065efd1d1d
commit 01e1ad39eb
+27 -50
View File
@@ -8,67 +8,72 @@ import (
)
// GetMe Return information about the logged in User
func (sdk mfSDK) GetMe() (string, error) {
func (sdk mfSDK) GetMe() (UserRes, error) {
var ur UserRes
endpoint := "auth/me"
url := fmt.Sprintf("%s/%s", sdk.apiURL, endpoint)
req, err := http.NewRequest(http.MethodGet, url, nil)
if err != nil {
return "", err
return ur, err
}
resp, err := sdk.makeRequest(req)
if err != nil {
return "", err
return ur, err
}
return string(resp), err
if err := json.Unmarshal(resp, &ur); err != nil {
return ur, err
}
return ur, err
}
// Generate (or re-generate) an API Key for logged in User.
func (sdk mfSDK) GenerateUserApiKey() (string, error) {
// GenerateUserAPIKey generates (or re-generate) an API Key for logged in User.
// To generate this without logging into Memfault, you may use HTTP Basic Auth to call this API.
func (sdk mfSDK) GenerateUserAPIKey() (UserAPIKeyRes, error) {
var akr UserAPIKeyRes
endpoint := "auth/api_key"
url := fmt.Sprintf("%s/%s", sdk.apiURL, endpoint)
payload := strings.NewReader(``)
req, err := http.NewRequest(http.MethodPost, url, payload)
if err != nil {
return "", err
return akr, err
}
resp, err := sdk.makeRequest(req)
if err != nil {
return "", err
return akr, err
}
var akr UserApiKeyRes
if err := json.Unmarshal(resp, &akr); err != nil {
return "", err
return akr, err
}
return string(akr.Data.ApiKey), nil
return akr, nil
}
// GetUserApiKey Get a previously generated API Key for the logged in User
func (sdk mfSDK) GetUserApiKey() (string, error) {
// GetUserAPIKey Get a previously generated API Key for the logged in User
func (sdk mfSDK) GetUserAPIKey() (UserAPIKeyRes, error) {
var akr UserAPIKeyRes
endpoint := "auth/api_key"
url := fmt.Sprintf("%s/%s", sdk.apiURL, endpoint)
req, err := http.NewRequest(http.MethodGet, url, nil)
if err != nil {
return "", err
return akr, err
}
resp, err := sdk.makeRequest(req)
if err != nil {
return "", err
return akr, err
}
var akr UserApiKeyRes
if err := json.Unmarshal(resp, &akr); err != nil {
return "", err
return akr, err
}
return string(akr.Data.ApiKey), nil
return akr, nil
}
// DeleteUserApiKey Invalidate the previously generated API Key for the logged in User and do not create another one
func (sdk mfSDK) DeleteUserApiKey() (string, error) {
// DeleteUserAPIKey Invalidate the previously generated API Key for the logged in User and do not create another one
func (sdk mfSDK) DeleteUserAPIKey() (string, error) {
endpoint := "auth/api_key"
url := fmt.Sprintf("%s/%s", sdk.apiURL, endpoint)
payload := strings.NewReader(``)
@@ -77,37 +82,9 @@ func (sdk mfSDK) DeleteUserApiKey() (string, error) {
if err != nil {
return "", err
}
resp, err := sdk.makeRequest(req)
_, err = sdk.makeRequest(req)
if err != nil {
return "", err
}
return string(resp), nil
}
// GetOrganizationSlug
func (sdk mfSDK) GetOrganizationSlug(multiple bool) (string, error) {
endpoint := "auth/me"
url := fmt.Sprintf("%s/%s", sdk.apiURL, endpoint)
req, err := http.NewRequest(http.MethodGet, url, nil)
if err != nil {
return "", err
}
resp, err := sdk.makeRequest(req)
if err != nil {
return "", err
}
var ur UserRes
if err := json.Unmarshal(resp, &ur); err != nil {
return "", err
}
if multiple {
var list []string
for _, organization := range ur.Organizations {
list = append(list, organization.Slug)
}
organizationSlugs := fmt.Sprint(list)
return organizationSlugs, nil
}
return string(ur.Organizations[0].Slug), nil
return "DELETED", nil
}