Skip to content

Latest commit

 

History

History
449 lines (352 loc) · 17.8 KB

DAGRunApi.md

File metadata and controls

449 lines (352 loc) · 17.8 KB

airflow_python_sdk.DAGRunApi

All URIs are relative to http://localhost/api/v1

Method HTTP request Description
delete_dag_run DELETE /dags/{dag_id}/dagRuns/{dag_run_id} Delete a DAG run
get_dag_run GET /dags/{dag_id}/dagRuns/{dag_run_id} Get a DAG run
get_dag_runs GET /dags/{dag_id}/dagRuns List DAG runs
get_dag_runs_batch POST /dags/~/dagRuns/list List DAG runs (batch)
post_dag_run POST /dags/{dag_id}/dagRuns Trigger a new DAG run

delete_dag_run

delete_dag_run(dag_id, dag_run_id)

Delete a DAG run

Example

  • Basic Authentication (Basic):
import time
import airflow_python_sdk
from airflow_python_sdk.api import dag_run_api
from airflow_python_sdk.model.error import Error
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = airflow_python_sdk.Configuration(
    host = "http://localhost/api/v1"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure HTTP basic authorization: Basic
configuration = airflow_python_sdk.Configuration(
    username = 'YOUR_USERNAME',
    password = 'YOUR_PASSWORD'
)

# Enter a context with an instance of the API client
with airflow_python_sdk.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = dag_run_api.DAGRunApi(api_client)
    dag_id = "dag_id_example" # str | The DAG ID.
    dag_run_id = "dag_run_id_example" # str | The DAG run ID.

    # example passing only required values which don't have defaults set
    try:
        # Delete a DAG run
        api_instance.delete_dag_run(dag_id, dag_run_id)
    except airflow_python_sdk.ApiException as e:
        print("Exception when calling DAGRunApi->delete_dag_run: %s\n" % e)

Parameters

Name Type Description Notes
dag_id str The DAG ID.
dag_run_id str The DAG run ID.

Return type

void (empty response body)

Authorization

Basic

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
204 No content success. -
400 Client specified an invalid argument. -
401 Request not authenticated due to missing, invalid, authentication info. -
403 Client does not have sufficient permission. -
404 A specified resource is not found. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_dag_run

DAGRun get_dag_run(dag_id, dag_run_id)

Get a DAG run

Example

  • Basic Authentication (Basic):
import time
import airflow_python_sdk
from airflow_python_sdk.api import dag_run_api
from airflow_python_sdk.model.dag_run import DAGRun
from airflow_python_sdk.model.error import Error
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = airflow_python_sdk.Configuration(
    host = "http://localhost/api/v1"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure HTTP basic authorization: Basic
configuration = airflow_python_sdk.Configuration(
    username = 'YOUR_USERNAME',
    password = 'YOUR_PASSWORD'
)

# Enter a context with an instance of the API client
with airflow_python_sdk.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = dag_run_api.DAGRunApi(api_client)
    dag_id = "dag_id_example" # str | The DAG ID.
    dag_run_id = "dag_run_id_example" # str | The DAG run ID.

    # example passing only required values which don't have defaults set
    try:
        # Get a DAG run
        api_response = api_instance.get_dag_run(dag_id, dag_run_id)
        pprint(api_response)
    except airflow_python_sdk.ApiException as e:
        print("Exception when calling DAGRunApi->get_dag_run: %s\n" % e)

Parameters

Name Type Description Notes
dag_id str The DAG ID.
dag_run_id str The DAG run ID.

Return type

DAGRun

Authorization

Basic

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Success. -
401 Request not authenticated due to missing, invalid, authentication info. -
403 Client does not have sufficient permission. -
404 A specified resource is not found. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_dag_runs

DAGRunCollection get_dag_runs(dag_id)

List DAG runs

This endpoint allows specifying ~ as the dag_id to retrieve DAG runs for all DAGs.

Example

  • Basic Authentication (Basic):
import time
import airflow_python_sdk
from airflow_python_sdk.api import dag_run_api
from airflow_python_sdk.model.error import Error
from airflow_python_sdk.model.dag_run_collection import DAGRunCollection
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = airflow_python_sdk.Configuration(
    host = "http://localhost/api/v1"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure HTTP basic authorization: Basic
configuration = airflow_python_sdk.Configuration(
    username = 'YOUR_USERNAME',
    password = 'YOUR_PASSWORD'
)

# Enter a context with an instance of the API client
with airflow_python_sdk.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = dag_run_api.DAGRunApi(api_client)
    dag_id = "dag_id_example" # str | The DAG ID.
    limit = 100 # int | The numbers of items to return. (optional) if omitted the server will use the default value of 100
    offset = 0 # int | The number of items to skip before starting to collect the result set. (optional)
    execution_date_gte = dateutil_parser('1970-01-01T00:00:00.00Z') # datetime | Returns objects greater or equal to the specified date.  This can be combined with execution_date_lte parameter to receive only the selected period.  (optional)
    execution_date_lte = dateutil_parser('1970-01-01T00:00:00.00Z') # datetime | Returns objects less than or equal to the specified date.  This can be combined with execution_date_gte parameter to receive only the selected period.  (optional)
    start_date_gte = dateutil_parser('1970-01-01T00:00:00.00Z') # datetime | Returns objects greater or equal the specified date.  This can be combined with start_date_lte parameter to receive only the selected period.  (optional)
    start_date_lte = dateutil_parser('1970-01-01T00:00:00.00Z') # datetime | Returns objects less or equal the specified date.  This can be combined with start_date_gte parameter to receive only the selected period.  (optional)
    end_date_gte = dateutil_parser('1970-01-01T00:00:00.00Z') # datetime | Returns objects greater or equal the specified date.  This can be combined with start_date_lte parameter to receive only the selected period.  (optional)
    end_date_lte = dateutil_parser('1970-01-01T00:00:00.00Z') # datetime | Returns objects less than or equal to the specified date.  This can be combined with start_date_gte parameter to receive only the selected period.  (optional)

    # example passing only required values which don't have defaults set
    try:
        # List DAG runs
        api_response = api_instance.get_dag_runs(dag_id)
        pprint(api_response)
    except airflow_python_sdk.ApiException as e:
        print("Exception when calling DAGRunApi->get_dag_runs: %s\n" % e)

    # example passing only required values which don't have defaults set
    # and optional values
    try:
        # List DAG runs
        api_response = api_instance.get_dag_runs(dag_id, limit=limit, offset=offset, execution_date_gte=execution_date_gte, execution_date_lte=execution_date_lte, start_date_gte=start_date_gte, start_date_lte=start_date_lte, end_date_gte=end_date_gte, end_date_lte=end_date_lte)
        pprint(api_response)
    except airflow_python_sdk.ApiException as e:
        print("Exception when calling DAGRunApi->get_dag_runs: %s\n" % e)

Parameters

Name Type Description Notes
dag_id str The DAG ID.
limit int The numbers of items to return. [optional] if omitted the server will use the default value of 100
offset int The number of items to skip before starting to collect the result set. [optional]
execution_date_gte datetime Returns objects greater or equal to the specified date. This can be combined with execution_date_lte parameter to receive only the selected period. [optional]
execution_date_lte datetime Returns objects less than or equal to the specified date. This can be combined with execution_date_gte parameter to receive only the selected period. [optional]
start_date_gte datetime Returns objects greater or equal the specified date. This can be combined with start_date_lte parameter to receive only the selected period. [optional]
start_date_lte datetime Returns objects less or equal the specified date. This can be combined with start_date_gte parameter to receive only the selected period. [optional]
end_date_gte datetime Returns objects greater or equal the specified date. This can be combined with start_date_lte parameter to receive only the selected period. [optional]
end_date_lte datetime Returns objects less than or equal to the specified date. This can be combined with start_date_gte parameter to receive only the selected period. [optional]

Return type

DAGRunCollection

Authorization

Basic

HTTP request headers

  • Content-Type: Not defined
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 List of DAG runs. -
401 Request not authenticated due to missing, invalid, authentication info. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

get_dag_runs_batch

DAGRunCollection get_dag_runs_batch(list_dag_runs_form)

List DAG runs (batch)

This endpoint is a POST to allow filtering across a large number of DAG IDs, where as a GET it would run in to maximum HTTP request URL length limit.

Example

  • Basic Authentication (Basic):
import time
import airflow_python_sdk
from airflow_python_sdk.api import dag_run_api
from airflow_python_sdk.model.error import Error
from airflow_python_sdk.model.list_dag_runs_form import ListDagRunsForm
from airflow_python_sdk.model.dag_run_collection import DAGRunCollection
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = airflow_python_sdk.Configuration(
    host = "http://localhost/api/v1"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure HTTP basic authorization: Basic
configuration = airflow_python_sdk.Configuration(
    username = 'YOUR_USERNAME',
    password = 'YOUR_PASSWORD'
)

# Enter a context with an instance of the API client
with airflow_python_sdk.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = dag_run_api.DAGRunApi(api_client)
    list_dag_runs_form = ListDagRunsForm(
        page_offset=0,
        page_limit=100,
        dag_ids=[
            "dag_ids_example",
        ],
        execution_date_gte=dateutil_parser('1970-01-01T00:00:00.00Z'),
        execution_date_lte=dateutil_parser('1970-01-01T00:00:00.00Z'),
        start_date_gte=dateutil_parser('1970-01-01T00:00:00.00Z'),
        start_date_lte=dateutil_parser('1970-01-01T00:00:00.00Z'),
        end_date_gte=dateutil_parser('1970-01-01T00:00:00.00Z'),
        end_date_lte=dateutil_parser('1970-01-01T00:00:00.00Z'),
    ) # ListDagRunsForm | 

    # example passing only required values which don't have defaults set
    try:
        # List DAG runs (batch)
        api_response = api_instance.get_dag_runs_batch(list_dag_runs_form)
        pprint(api_response)
    except airflow_python_sdk.ApiException as e:
        print("Exception when calling DAGRunApi->get_dag_runs_batch: %s\n" % e)

Parameters

Name Type Description Notes
list_dag_runs_form ListDagRunsForm

Return type

DAGRunCollection

Authorization

Basic

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Success. -
400 Client specified an invalid argument. -
401 Request not authenticated due to missing, invalid, authentication info. -
403 Client does not have sufficient permission. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]

post_dag_run

DAGRun post_dag_run(dag_id, dag_run)

Trigger a new DAG run

Example

  • Basic Authentication (Basic):
import time
import airflow_python_sdk
from airflow_python_sdk.api import dag_run_api
from airflow_python_sdk.model.dag_run import DAGRun
from airflow_python_sdk.model.error import Error
from pprint import pprint
# Defining the host is optional and defaults to http://localhost/api/v1
# See configuration.py for a list of all supported configuration parameters.
configuration = airflow_python_sdk.Configuration(
    host = "http://localhost/api/v1"
)

# The client must configure the authentication and authorization parameters
# in accordance with the API server security policy.
# Examples for each auth method are provided below, use the example that
# satisfies your auth use case.

# Configure HTTP basic authorization: Basic
configuration = airflow_python_sdk.Configuration(
    username = 'YOUR_USERNAME',
    password = 'YOUR_PASSWORD'
)

# Enter a context with an instance of the API client
with airflow_python_sdk.ApiClient(configuration) as api_client:
    # Create an instance of the API class
    api_instance = dag_run_api.DAGRunApi(api_client)
    dag_id = "dag_id_example" # str | The DAG ID.
    dag_run = DAGRun(
        dag_run_id="dag_run_id_example",
        dag_id="dag_id_example",
        execution_date=dateutil_parser('1970-01-01T00:00:00.00Z'),
        start_date=dateutil_parser('1970-01-01T00:00:00.00Z'),
        end_date=dateutil_parser('1970-01-01T00:00:00.00Z'),
        state=DagState("success"),
        external_trigger=True,
        conf={},
    ) # DAGRun | 

    # example passing only required values which don't have defaults set
    try:
        # Trigger a new DAG run
        api_response = api_instance.post_dag_run(dag_id, dag_run)
        pprint(api_response)
    except airflow_python_sdk.ApiException as e:
        print("Exception when calling DAGRunApi->post_dag_run: %s\n" % e)

Parameters

Name Type Description Notes
dag_id str The DAG ID.
dag_run DAGRun

Return type

DAGRun

Authorization

Basic

HTTP request headers

  • Content-Type: application/json
  • Accept: application/json

HTTP response details

Status code Description Response headers
200 Success. -
400 Client specified an invalid argument. -
401 Request not authenticated due to missing, invalid, authentication info. -
409 The resource that a client tried to create already exists. -
403 Client does not have sufficient permission. -
404 A specified resource is not found. -

[Back to top] [Back to API list] [Back to Model list] [Back to README]