
Company News
Socket Has Acquired Secure Annex
Socket has acquired Secure Annex to expand extension security across browsers, IDEs, and AI tools.
github.com/deploymenttheory/go-api-sdk-apple
Advanced tools
This repo offers a collection of Go based SDKs and tools for interacting with various Apple API services and device management services, including:
The SDK provides a complete implementation of the iTunes Search API, allowing you to:
Complete implementation of the Apple Business Manager API with modern Go practices:
Devices API:
Device Management Services API:
Key Features:
Quick Start:
Get started quickly with the GitLab-style client pattern:
package main
import (
"context"
"fmt"
"log"
"github.com/deploymenttheory/go-api-sdk-apple/axm"
"github.com/deploymenttheory/go-api-sdk-apple/axm/client"
"github.com/deploymenttheory/go-api-sdk-apple/axm/services/devices"
"github.com/deploymenttheory/go-api-sdk-apple/axm/services/devicemanagement"
)
func main() {
// Method 1: Direct client creation (GitLab-style)
// Parse private key from PEM format
privateKey, err := client.ParsePrivateKey([]byte(privateKeyPEM))
if err != nil {
log.Fatalf("Failed to parse private key: %v", err)
}
client, err := axm.NewClient("your-key-id", "your-issuer-id", privateKey)
if err != nil {
log.Fatalf("Failed to create client: %v", err)
}
// Method 2: From environment variables
// client, err := axm.NewClientFromEnv()
// Expects: APPLE_KEY_ID, APPLE_ISSUER_ID, APPLE_PRIVATE_KEY_PATH
// Method 3: From file
// client, err := axm.NewClientFromFile("key-id", "issuer-id", "/path/to/key.p8")
ctx := context.Background()
// Get organization devices - GitLab-style access
response, err := client.Devices.GetOrganizationDevices(ctx, &devices.RequestQueryOptions{
Fields: []string{
devices.FieldSerialNumber,
devices.FieldDeviceModel,
devices.FieldStatus,
},
Limit: 100,
})
if err != nil {
log.Fatalf("Error getting devices: %v", err)
}
fmt.Printf("Found %d devices\n", len(response.Data))
// Get device management services - GitLab-style access
services, err := client.DeviceManagement.GetDeviceManagementServices(ctx, &devicemanagement.RequestQueryOptions{
Limit: 10,
})
if err != nil {
log.Fatalf("Error getting services: %v", err)
}
fmt.Printf("Found %d MDM servers\n", len(services.Data))
}
📖 Complete Quick Start Guide →
The guide covers 6 different client setup methods, from simple environment variables to advanced builder patterns with full customization options.
Integration with Apple Device Management for:
Explore the examples directory for comprehensive examples of using the SDK with different Apple services.
For detailed documentation, see:
Contributions are welcome! Please see CONTRIBUTING.md for guidelines.
This project is licensed under the MIT License.
FAQs
Unknown package
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Company News
Socket has acquired Secure Annex to expand extension security across browsers, IDEs, and AI tools.

Research
/Security News
Socket is tracking cloned Open VSX extensions tied to GlassWorm, with several updated from benign-looking sleepers into malware delivery vehicles.

Product
Reachability analysis for PHP is now available in experimental, helping teams identify which vulnerabilities are actually exploitable.