112 строки
3.3 KiB
ReStructuredText
112 строки
3.3 KiB
ReStructuredText
.. Licensed to the Apache Software Foundation (ASF) under one
|
|
or more contributor license agreements. See the NOTICE file
|
|
distributed with this work for additional information
|
|
regarding copyright ownership. The ASF licenses this file
|
|
to you under the Apache License, Version 2.0 (the
|
|
"License"); you may not use this file except in compliance
|
|
with the License. You may obtain a copy of the License at
|
|
|
|
.. http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
.. Unless required by applicable law or agreed to in writing,
|
|
software distributed under the License is distributed on an
|
|
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
KIND, either express or implied. See the License for the
|
|
specific language governing permissions and limitations
|
|
under the License.
|
|
|
|
|
|
|
|
REST API Reference
|
|
==================
|
|
|
|
Airflow exposes an REST API. It is available through the webserver. Endpoints are
|
|
available at ``/api/experimental/``.
|
|
|
|
.. warning::
|
|
|
|
The API structure is not stable. We expect the endpoint definitions to change.
|
|
|
|
Endpoints
|
|
---------
|
|
|
|
.. http:post:: /api/experimental/dags/<DAG_ID>/dag_runs
|
|
|
|
Creates a dag_run for a given dag id.
|
|
Note: If execution_date is not specified in the body, airflow by default creates only one DAG per second for a given DAG_ID.
|
|
In order to create multiple DagRun within one second, execution_date must be specified with the format "YYYY-mm-DDTHH:MM:SS.ssssss".
|
|
|
|
**Trigger DAG with config, example:**
|
|
|
|
.. code-block:: bash
|
|
|
|
curl -X POST \
|
|
http://localhost:8080/api/experimental/dags/<DAG_ID>/dag_runs \
|
|
-H 'Cache-Control: no-cache' \
|
|
-H 'Content-Type: application/json' \
|
|
-d '{"conf":"{\"key\":\"value\"}"}'
|
|
|
|
|
|
.. http:get:: /api/experimental/dags/<DAG_ID>/dag_runs
|
|
|
|
Returns a list of Dag Runs for a specific DAG ID.
|
|
|
|
|
|
.. http:get:: /api/experimental/dags/<string:dag_id>/dag_runs/<string:execution_date>
|
|
|
|
Returns a JSON with a dag_run's public instance variables. The format for the <string:execution_date> is expected to be "YYYY-mm-DDTHH:MM:SS", for example: "2016-11-16T11:34:15".
|
|
|
|
|
|
.. http:get:: /api/experimental/test
|
|
|
|
To check REST API server correct work. Return status 'OK'.
|
|
|
|
|
|
.. http:get:: /api/experimental/dags/<DAG_ID>/tasks/<TASK_ID>
|
|
|
|
Returns info for a task.
|
|
|
|
|
|
.. http:get:: /api/experimental/dags/<DAG_ID>/dag_runs/<string:execution_date>/tasks/<TASK_ID>
|
|
|
|
Returns a JSON with a task instance's public instance variables. The format for the <string:execution_date> is expected to be "YYYY-mm-DDTHH:MM:SS", for example: "2016-11-16T11:34:15".
|
|
|
|
|
|
.. http:get:: /api/experimental/dags/<DAG_ID>/paused/<string:paused>
|
|
|
|
'<string:paused>' must be a 'true' to pause a DAG and 'false' to unpause.
|
|
|
|
|
|
.. http:get:: /api/experimental/dags/<DAG_ID>/paused
|
|
|
|
Returns the paused state of a DAG
|
|
|
|
|
|
.. http:get:: /api/experimental/latest_runs
|
|
|
|
Returns the latest DagRun for each DAG formatted for the UI.
|
|
|
|
|
|
.. http:get:: /api/experimental/pools
|
|
|
|
Get all pools.
|
|
|
|
|
|
.. http:get:: /api/experimental/pools/<string:name>
|
|
|
|
Get pool by a given name.
|
|
|
|
|
|
.. http:post:: /api/experimental/pools
|
|
|
|
Create a pool.
|
|
|
|
|
|
.. http:delete:: /api/experimental/pools/<string:name>
|
|
|
|
Delete pool.
|
|
|
|
.. http:get:: /api/experimental/lineage/<DAG_ID>/<string:execution_date>/
|
|
|
|
Returns the lineage information for the dag.
|