forked from deploymenttheory/go-api-sdk-jamfpro
-
Notifications
You must be signed in to change notification settings - Fork 0
/
UpdateADUESessionTokenSettings.go
54 lines (43 loc) · 1.71 KB
/
UpdateADUESessionTokenSettings.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package main
import (
"encoding/json"
"fmt"
"log"
"github.com/deploymenttheory/go-api-sdk-jamfpro/sdk/http_client"
"github.com/deploymenttheory/go-api-sdk-jamfpro/sdk/jamfpro"
)
func main() {
// Define the path to the JSON configuration file
configFilePath := "/Users/dafyddwatkins/GitHub/deploymenttheory/go-api-sdk-jamfpro/clientauth.json"
// Load the client OAuth credentials from the configuration file
authConfig, err := jamfpro.LoadAuthConfig(configFilePath)
if err != nil {
log.Fatalf("Failed to load client OAuth configuration: %v", err)
}
// Instantiate the default logger and set the desired log level
logLevel := http_client.LogLevelWarning // LogLevelNone // LogLevelWarning // LogLevelInfo // LogLevelDebug
// Configuration for the jamfpro
config := http_client.Config{
InstanceName: authConfig.InstanceName,
Auth: http_client.AuthConfig{
ClientID: authConfig.ClientID,
ClientSecret: authConfig.ClientSecret,
},
LogLevel: logLevel,
}
// Create a new jamfpro client instance
client, err := jamfpro.NewClient(config)
if err != nil {
log.Fatalf("Failed to create Jamf Pro client: %v", err)
}
updatedSettings := jamfpro.ResourceADUETokenSettings{
Enabled: false,
ExpirationIntervalDays: 0, // NOTE this needs either seconds or days. The omitempty means it only sends the one you fill however, if you set it to 0, that also counts as empty and therefore you get failed to supply error.
}
adueSettings, err := client.UpdateADUESessionTokenSettings(updatedSettings)
jsonData, err := json.MarshalIndent(adueSettings, "", " ") // Indent with 4 spaces
if err != nil {
log.Fatalf("Error marshaling data: %v", err)
}
fmt.Println("Fetched data:\n", string(jsonData))
}