revertinc / revert

Revert makes it incredibly easy to build integrations with any third party API
https://revert.dev
GNU Affero General Public License v3.0
947 stars 74 forks source link

[REVER-20] JIRA Integration #249

Open jatinsandilya opened 1 year ago

jatinsandilya commented 1 year ago

To goal of this issue is to support Jira as an integration within Revert APIs.

Jira documentation: https://developer.atlassian.com/server/jira/platform/rest-apis/

Next steps:

As us any questions you might have on our discord.

jatinsandilya commented 11 months ago

Response structure for theGET endpoints.

  1. GET https://api.revert.dev/ticketing/users: List all users of a connected JIRA workspace
{
    "results": [
        {
            "remoteId": "48884691",
            "id": "48884691",
            "email": "jatin@revert.dev",
            "additional": {}
        },
        {
            "remoteId": "48884692",
            "id": "48884691",
            "email": "allen@revert.dev",
            "additional": {}
        }
    ]
}
  1. GET https://api.revert.dev/ticketing/users/<user_id> : Get details of a specific user.
{
    "results": {
        "remoteId": "48884691",
        "id": "48884691",
        "email": "jatin@revert.dev",
        "additional": {}
    }
}

Request structure for creating a ticket -

POST https://api.revert.dev/ticketing/ticket: Create a ticket

{
    "ticket": {
        "id": "123123",
        "remote_id": "123123",
        "name": "Name of the ticket",
        "assignees": [
            "<id of person A>",
            "<id of person B>"
        ],
        "dueDate": "2023-01-12T12:00:00Z",
        "status": "OPEN",
        "description": "Description of the ticket"
    }
}

Response

{
    "ticket": {
        "id": "123123",
        "remote_id": "123123",
        "name": "Name of the ticket",
        "assignees": [
            "<id of person A>",
            "<id of person B>"
        ],
        "dueDate": "2023-01-12T12:00:00Z",
        "status": "OPEN",
        "description": "Description of the ticket"
    }
}