A HSDP API client enabling Go programs to interact with various HSDP APIs in a simple and uniform way
The current implement covers only a subset of HSDP APIs. Basically we implement functionality as needed.
- Cartel c.q. Container Host management (examples)
- Secure Transport Layer (STL) / Edge
- Device queries
- Application Resources management
- Device configuration management (firewall, logging)
- Public Key Infrastructe (PKI) management
- Identity and Access Management (IAM)
- Groups
- Organizations
- Permissions
- Roles
- Users
- Passwords
- Propositions
- Applications
- Services
- Devices
- MFA Policies
- Password Policies
- Email Templates
- Logging (examples)
- Auditing (examples)
- Clinical Data Repository (CDR)
- Tenant Onboarding
- Subscription management
- FHIR CRUD
- FHIR Patch
- Telemetry Data Repository (TDR)
- Contract management
- Data Item management
- S3Creds Policy management
- DICOM Store
- Config management
- Hosted Application Streaming (HAS) management
- Service Discovery
- Console settings
- Metrics Alerts
- Metrics Autoscalers
- IronIO tasks, codes and schedules management (examples)
package main
import (
"fmt"
"github.com/philips-software/go-hsdp-api/iam"
)
func main() {
client, _ := iam.NewClient(nil, &iam.Config{
OAuth2ClientID: "ClientID",
OAuth2Secret: "ClientPWD",
SharedKey: "KeyHere",
SecretKey: "SecretHere",
IAMURL: "https://iam-stage.foo-bar.com",
IDMURL: "https://idm-stage.foo-bar.com",
})
err := client.Login("[email protected]", "Password!@#")
if err != nil {
fmt.Printf("Error logging in: %v\n", err)
return
}
introspect, _, _ := client.Introspect()
if introspect != nil {
fmt.Printf("Introspect response: %v\n", introspect)
}
}
- Increase API coverage
- If you have an issue: report it on the issue tracker
Andy Lo-A-Foe ([email protected])
License is MIT. See LICENSE file