github.com/muxinc/mux-go@v1.1.1/examples/video/everything/list-everything.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 7 "github.com/muxinc/mux-go" 8 ) 9 10 func checkError(err error) { 11 if err != nil { 12 fmt.Printf("err: %s \n\n", err) 13 os.Exit(255) 14 } 15 } 16 17 func main() { 18 // API Client Init 19 client := muxgo.NewAPIClient( 20 muxgo.NewConfiguration( 21 muxgo.WithBasicAuth(os.Getenv("MUX_TOKEN_ID"), os.Getenv("MUX_TOKEN_SECRET")), 22 )) 23 24 // List Assets 25 fmt.Println("Listing Assets: \n") 26 assets, err := client.AssetsApi.ListAssets() 27 checkError(err) 28 for _, asset := range assets.Data { 29 fmt.Printf("Asset ID: %s\n", asset.Id) 30 fmt.Printf("Status: %s\n", asset.Status) 31 fmt.Printf("Duration: %f\n\n", asset.Duration) 32 } 33 34 // List Live Streams 35 fmt.Println("Listing Live Streams: \n") 36 streams, err := client.LiveStreamsApi.ListLiveStreams() 37 checkError(err) 38 for _, stream := range streams.Data { 39 fmt.Printf("Live Stream ID: %s\n", stream.Id) 40 fmt.Printf("Status: %s\n", stream.Status) 41 fmt.Printf("Stream Key: %s\n\n", stream.StreamKey) 42 } 43 44 // List Direct Uploads 45 fmt.Println("Listing Direct Uploads: \n") 46 uploads, err := client.DirectUploadsApi.ListDirectUploads() 47 checkError(err) 48 for _, upload := range uploads.Data { 49 fmt.Printf("Status: %s\n", upload.Status) 50 fmt.Printf("New Asset ID: %s\n\n", upload.AssetId) 51 } 52 53 // List URL Signing Keys 54 fmt.Println("Listing URL Signing Keys: \n") 55 keys, err := client.URLSigningKeysApi.ListUrlSigningKeys() 56 for _, key := range keys.Data { 57 fmt.Printf("Signing Key ID: %s\n\n", key.Id) 58 } 59 }