こういうのがあったとする
hoge-workflow.yaml
name: hoge-workflow
on:
  workflow_dispatch:
    inputs:
      required_string:
        description: 必須な値
        type: string
        required: true
      optional_boolean:
        description: オプショナルな値
        type: boolean
        default: false
        required: false
これをgoから呼び出すとき、こんな感じにしたとする
github.Actions.CreateWorkflowDispatchEventByFileName(ctx, "your-org", "your-repo", "hoge-workflow.yaml", github.CreateWorkflowDispatchEventRequest{
	Ref: branch,
	Inputs: map[string]interface{}{
		"required_value": "hoge",
	},
})
optional_booleanが必須ではないから渡さなくていいはずだという理屈はわかるが、これだと422エラーを受け取ることになる(え、optionalじゃないの?という気持ちはあるが...)
試しに明示的にoptional_booleanへnilを渡してみるも、今度はFor 'additionalProperties', nil is not a string.というエラーで422エラーになる。
仕方ないのでoptionalだが値を渡すしかないっぽい。
Inputs: map[string]interface{}{
	"required_value": "hoge",
    "optional_value": false,
},
これなら動きそうだが、実はこれもダメで正解はひとつしかない。
Inputs: map[string]interface{}{
	"required_value": "hoge",
    "optional_value": "false",
},
はい、これで動きます。booleanの値を文字列にして渡すのが正解でした〜... わかるかこんなもん。
optionalなのにoptionalな挙動じゃないのも解せないわ