/*Package main is a simple test of Json Identing (aka pretty print) To run: $ go run main.go { "eventId": "xyz", "articleId": "123" } The json is formatted nicely with linebreaks and 2x spaces. */ package main import ( "encoding/json" "fmt" ) type ArticleDrafted struct { *Event } type Event struct { EventID EventID `json:"eventId,omitempty"` ArticleID ArticleID `json:"articleId,omitempty"` } type EventID string type ArticleID string func main() { t := ArticleDrafted{ Event: &Event{ EventID: "xyz", ArticleID: "123", }, } b, err := json.MarshalIndent(&t, "", " ") if err != nil { fmt.Println(err) return } fmt.Println(string(b)) }