mirror of
https://github.com/rodneyosodo/memfault-go.git
synced 2026-06-23 04:00:08 +00:00
+27
-50
@@ -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
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user