Blame doc/api.rst

Lei Yang 2b814a
Pagure API v0 Reference
Lei Yang 2b814a
=======================
Lei Yang 2b814a
Lei Yang 2b814a
Overview
Lei Yang 2b814a
--------
Lei Yang 2b814a
Lei Yang 2b814a
This documentation describes the Pagure API v0.
Lei Yang 2b814a
Lei Yang 2b814a
Authentication
Lei Yang 2b814a
~~~~~~~~~~~~~~
Lei Yang 2b814a
Lei Yang 2b814a
To access some endpoints, you need login Pagure using API token. You can
Lei Yang 2b814a
generate one in the project setting page.
Lei Yang 2b814a
Lei Yang 2b814a
When sending HTTP request, include ``Authorization`` field in the header
Lei Yang 2b814a
with value ``token $your-api-token``, where ``$your-api-token`` is the
Lei Yang 2b814a
API token generated in the project setting page.
Lei Yang 2b814a
Lei Yang 2b814a
Anyone with the token can access the APIs on your behalf, so please be
Lei Yang 2b814a
sure to keep it private and safe.
Lei Yang 2b814a
Lei Yang 566c51
Request Encoding
Lei Yang 566c51
~~~~~~~~~~~~~~~~
Lei Yang 2b814a
Lei Yang 2b814a
The payload of POST and GET requests is encoded as
Lei Yang 2b814a
``application/x-www-form-urlencoded``. This is an example URL of a GET
Lei Yang 2b814a
request:
Lei Yang 2b814a
``https://pagure.io/api/0/test/issues?status=Open&tags=Pagure&tags=Enhancement``
Lei Yang 2b814a
Lei Yang 566c51
Return Encoding
Lei Yang 566c51
~~~~~~~~~~~~~~~
Lei Yang 2b814a
Lei Yang 2b814a
The return value of API calls is ``application/json``. This is an
Lei Yang 2b814a
example of return value:
Lei Yang 2b814a
Lei Yang 2b814a
::
Lei Yang 2b814a
Lei Yang 2b814a
    {
Lei Yang 2b814a
      "args": {
Lei Yang 2b814a
        "assignee": null,
Lei Yang 2b814a
        "author": null,
Lei Yang 2b814a
        "status": null,
Lei Yang 2b814a
        "tags": []
Lei Yang 2b814a
      },
Lei Yang 2b814a
      "issues": [
Lei Yang 2b814a
        {
Lei Yang 2b814a
          "assignee": null,
Lei Yang 2b814a
          "blocks": [],
Lei Yang 2b814a
          "comments": [],
Lei Yang 2b814a
          "content": "Sample ticket",
Lei Yang 2b814a
          "date_created": "1434266418",
Lei Yang 2b814a
          "depends": [],
Lei Yang 2b814a
          "id": 4,
Lei Yang 2b814a
          "private": false,
Lei Yang 2b814a
          "status": "Open",
Lei Yang 2b814a
          "tags": [],
Lei Yang 2b814a
          "title": "This is a sample",
Lei Yang 2b814a
          "user": {
Lei Yang 2b814a
            "fullname": "Pagure",
Lei Yang 2b814a
            "name": "API"
Lei Yang 2b814a
          }
Lei Yang 2b814a
        }
Lei Yang 2b814a
      ]
Lei Yang 2b814a
    }