A Go struct can be represented as JSON text with field names and values.

Marshal Struct

marshal_struct.go
package main

import (
	"fmt"
	"strconv"
)

type Badge struct {
	Name   string
	Points int
}

func main() {
	var name = 
	badge := Badge{Name: name, Points: 7}

	text := fmt.Sprintf(`{"name":%s,"points":%d}`, strconv.Quote(badge.Name), badge.Points)
	fmt.Println("name=", badge.Name)
	fmt.Println("points=", badge.Points)
	fmt.Println("json=", text)
}
package main

import (
	"fmt"
	"strconv"
)

type Badge struct {
	Name   string
	Points int
}

func main() {
	var name = 
	badge := Badge{Name: name, Points: 7}

	text := fmt.Sprintf(`{"name":%s,"points":%d}`, strconv.Quote(badge.Name), badge.Points)
	fmt.Println("name=", badge.Name)
	fmt.Println("points=", badge.Points)
	fmt.Println("json=", text)
}
package main

import (
	"fmt"
	"strconv"
)

type Badge struct {
	Name   string
	Points int
}

func main() {
	var name = 
	badge := Badge{Name: name, Points: 7}

	text := fmt.Sprintf(`{"name":%s,"points":%d}`, strconv.Quote(badge.Name), badge.Points)
	fmt.Println("name=", badge.Name)
	fmt.Println("points=", badge.Points)
	fmt.Println("json=", text)
}
marshal Marshaling is the idea of turning structured data into a JSON string that can be exchanged with another program.