summaryrefslogtreecommitdiff
path: root/src/api.go
blob: d485728b05cd86f267639d325913e2ef733870b3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package eduvpn

import (
	"net/http"
)

func (eduvpn *VPNState) APIAuthenticatedGet(endpoint string) (string, error) {
	url := eduvpn.Server.Endpoints.API.V3.API + endpoint

	// Ensure we have non-expired tokens
	oauthErr := eduvpn.EnsureTokensOAuth()

	if oauthErr != nil {
		return "", oauthErr
	}

	headers := &http.Header{"Authorization": {"Bearer " + eduvpn.Server.OAuth.Token.Access}}
	body, bodyErr := HTTPGetWithOptionalParams(url, &HTTPOptionalParams{Headers: headers})
	if bodyErr != nil {
		return "", bodyErr
	}
	return string(body), nil
}