Skip to content
Ryan Rauh edited this page Feb 25, 2014 · 13 revisions

Huboard Events

Each event that HuBoard emits has a similar JSON schema with a standard meta hash and a unique payload object that is determined by its event type.

Note: HuBoard will do it's best to republish events that HuBoard receives from GitHub's issue webhook. So as long as you have HuBoard configured to receive webhooks from GitHub they will be transformed and published as HuBoard events. So if you have both integrations enable you will receive double events.

The meta key will always contain the following data:

Key Type Description
action string the name of the event
identifier number:string a number or string used to identify what entity caused the event, usually the issue number
timestamp string iso8601 timestamp of when the event was created
user object a slimmed down github user of the signed in user who triggered the event
correlationId string special string used by HuBoard to related events piped to the client
repo_full_name string used to identify the GitHub repository ie; rauhryan/huboard
origin object contains server origin information such as the server scheme and host ie; scheme : https, host: huboard.com

IssueMovedEvent

Triggered when a user drags a card into a new column

meta.action

moved

Payload
Key Type Description
issue object the github issue that was moved
column object the destination column
previous object the previous column the issues was dragged from
Example
{
    "meta": {
        "action": "moved",
        "identifier": 6,
        "timestamp": "2014-02-19T12:13:38Z",
        "user": {
            "login": "trevorah",
            "id": 298742,
            "gravatar_id": "9496bed6a195a98d671fbaee17374fae",
            "site_admin": false,
            "name": "Andy Trevorah",
            "company": null,
            "email": null
        },
        "correlationId": "0cc01aff-44b9-4452-c1cc-6d60e9e6280c",
        "repo_full_name": "trevorah/test-repo",
        "origin" : {
           scheme: "https",
           host: "huboard.com"
        }
    },
    "payload": {
        "issue": {
            "url": "https://api.github.com/repos/trevorah/test-repo/issues/6",
            "labels_url": "https://api.github.com/repos/trevorah/test-repo/issues/6/labels{/name}",
            "comments_url": "https://api.github.com/repos/trevorah/test-repo/issues/6/comments",
            "events_url": "https://api.github.com/repos/trevorah/test-repo/issues/6/events",
            "html_url": "https://github.com/trevorah/test-repo/issues/6",
            "id": 27869984,
            "number": 6,
            "title": "My Issue",
            "user": {
                "login": "trevorah",
                "id": 298742,
                "avatar_url": "https://gravatar.com/avatar/9496bed6a195a98d671fbaee17374fae?d=https%3A%2F%2Fidenticons.github.com%2Fc773064505d458d24a7c2546768ac9fc.png&r=x",
                "gravatar_id": "9496bed6a195a98d671fbaee17374fae",
                "url": "https://api.github.com/users/trevorah",
                "html_url": "https://github.com/trevorah",
                "followers_url": "https://api.github.com/users/trevorah/followers",
                "following_url": "https://api.github.com/users/trevorah/following{/other_user}",
                "gists_url": "https://api.github.com/users/trevorah/gists{/gist_id}",
                "starred_url": "https://api.github.com/users/trevorah/starred{/owner}{/repo}",
                "subscriptions_url": "https://api.github.com/users/trevorah/subscriptions",
                "organizations_url": "https://api.github.com/users/trevorah/orgs",
                "repos_url": "https://api.github.com/users/trevorah/repos",
                "events_url": "https://api.github.com/users/trevorah/events{/privacy}",
                "received_events_url": "https://api.github.com/users/trevorah/received_events",
                "type": "User",
                "site_admin": false
            },
            "labels": [
                {
                    "url": "https://api.github.com/repos/trevorah/test-repo/labels/1+-+Ready",
                    "name": "1 - Ready",
                    "color": "CCCCCC",
                    "index": "1",
                    "text": "Ready",
                    "wip": 0
                }
            ],
            "state": "open",
            "assignee": null,
            "milestone": null,
            "comments": 0,
            "created_at": "2014-02-19T12:13:23Z",
            "updated_at": "2014-02-19T12:13:37Z",
            "closed_at": null,
            "pull_request": {
                "html_url": null,
                "diff_url": null,
                "patch_url": null
            },
            "body_html": "",
            "body_text": "",
            "body": "\r\n\r\n<!---\r\n@huboard:{\"order\":6.0,\"custom_state\":\"\"}\n-->\r\n",
            "closed_by": null,
            "current_state": {
                "url": "https://api.github.com/repos/trevorah/test-repo/labels/1+-+Ready",
                "name": "1 - Ready",
                "color": "CCCCCC",
                "index": "1",
                "text": "Ready",
                "wip": 0
            },
            "other_labels": [],
            "_data": {
                "order": 6,
                "custom_state": ""
            },
            "repo": {
                "owner": {
                    "login": "trevorah"
                },
                "name": "test-repo"
            }
        },
        "column": {
            "url": "https://api.github.com/repos/trevorah/test-repo/labels/1+-+Ready",
            "name": "1 - Ready",
            "color": "CCCCCC",
            "index": "1",
            "text": "Ready",
            "wip": 0
        },
        "previous": {
            "url": "https://api.github.com/repos/trevorah/test-repo/labels/0+-+Backlog",
            "name": "0 - Backlog",
            "color": "CCCCCC",
            "index": "0",
            "text": "Backlog",
            "wip": 0
        }
    }
}

IssueReorderedEvent

meta.action

reordered

Triggered when a user reorders an issue in the same column

Payload
Key Type Description
issue object the github issue that was moved
column object the column the issue is in

IssueAssignedEvent

meta.action

assigned

Triggered when a user assigns an issue

Payload
Key Type Description
issue object the github issue that was moved
user object a slimmed down github user of the signed in user who triggered the event

IssueMilestoneChangedEvent

meta.action

milestone_changed

Triggered when a user drags an issue into a milestone

Payload
Key Type Description
issue object the github issue that was moved
milestone object the github milestone

IssueClosedEvent

meta.action

issue_closed

Triggered when a user closed an issue in HuBoard

Payload
Key Type Description
issue object the github issue that was moved

IssueOpenedEvent

meta.action

issue_opened

Triggered when a user opens an issue in HuBoard

Payload
Key Type Description
issue object the github issue that was moved

IssueReopenedEvent

meta.action

issue_reopened

Triggered when a user reopens an issue in HuBoard

Payload
Key Type Description
issue object the github issue that was moved

IssueStatusChangedEvent

meta.action

issue_status_changed

Triggered when a user changes the status of an issue to blocked or ready

Payload
Key Type Description
issue object the github issue that was moved
action string the action taken on the issue blocked, unblocked, ready, unready