Apache Airflow - OpenApi Client for Go

Clone this repo:


  1. e1deffd add test & doc for authentication (#5) by QP Hou · 5 months ago master
  2. 781c285 Fix PostDagRun method name (#4) by QP Hou · 6 months ago
  3. c85a1a1 fix package path in go module and catch up to latest openapi spec (#3) by QP Hou · 6 months ago
  4. 8fba0d9 Add generated go client (#1) by QP Hou · 6 months ago
  5. b22e285 Removed -- by Jarek Potiuk · 7 months ago

Airflow Go client

Go Airflow OpenAPI client generated from openapi spec.


import (

func main() {
	cli := airflow.NewAPIClient(&airflow.Configuration{
		Scheme:   "http",
		Host:     "localhost:28080",
		BasePath: "/api/v1",

	cred := airflow.BasicAuth{
		UserName: "username",
		Password: "password",
	ctx := context.WithValue(context.Background(), airflow.ContextBasicAuth, cred)

	variable, _, err := client.VariableApi.GetVariable(ctx, "foo")
	if err != nil {
	} else {

See README for full client API documentation.

Release process

Go client is versioned using semantic import versioning.

To release a new version 1.x.y, simply push a new tag to this repo named airflow/v1.x.y.

Major version upgrade requires changing package import path based on semantic import versioning, which needs to be done manually.