July 17, 2025
3 min
read

Hi there 👋

If you're a developer or working as a PO or PM chances are a good portion of your team's life happens in GitHub.

Wouldn’t it be great to connect the two without building a custom integration?

With PocketQuery for Confluence, you can. This post shows you how to pull live GitHub data like open pull requests, recent commits, or contributor stats straight into Confluence pages using the GitHub REST API.

No more switching tabs or pasting screenshots. Let’s go.

Why GitHub + Confluence?

Many teams already use PocketQuery to power Confluence pages and live docs with live data from tools like Jira, Sentry, or SQL databases. GitHub fits right in its REST API is well-documented, reliable, and easy to connect.

Even if your team uses Jira for planning, much of the actual development work pull requests, commits, workflows, and code reviews happens in GitHub. With PocketQuery, you can bring that data into Confluence and build dashboards your whole team can rely on.

Live GitHub data embedded in a Confluence page using PocketQuery

By connecting GitHub to PocketQuery, you can display live, filterable data such as:

  • Open pull requests across one or more repositories
  • Issues filtered by label (e.g., "bug" or "urgent")
  • Recent commits for sprint retrospectives
  • GitHub Actions workflow runs for release tracking
  • Contributor stats, languages used, or even Dependabot alerts

It’s a powerful way to make GitHub insights visible right where your planning and documentation already lives.

What You’ll Need

  • Access to PocketQuery for Confluence (available on Atlassian Marketplace)
  • A GitHub Personal Access Token (with appropriate read permissions)
  • A little time to configure your REST data source

Good news: You don’t need to write a plugin or host anything yourself.

Step-by-Step: Connecting GitHub via PocketQuery

You can connect GitHub to PocketQuery in just a few minutes using its REST API. Here's how to set it up:

1. Create a REST data source in PocketQuery

In the PocketQuery admin interface, add a new data source with the following configuration:

  • Type: REST
  • Username: (leave this field empty)
  • Password: Paste your GitHub Personal Access Token
  • Base URL (optional): https://api.github.com

This setup allows PocketQuery to authenticate with GitHub and make authorized API requests.

Setting up a REST data source in PocketQuery using the GitHub API
Setting up a REST data source in PocketQuery using the GitHub API
2. Write a REST query

Example: Get open pull requests for a repository

- HTTP Method: GET

- Endpoint Path: 

/repos/{owner}/{repo}/pulls?state=open
3. Visualize the result

You can process and format the result using PocketQuery's Velocity or JavaScript templates to show lists, tables, or charts.

⬇️ Insert this template:

#set($tableRows = $PQ.toList($result))
<table class="aui">
  <thead>
    <tr>
      <th>Title</th>
      <th>Author</th>
      <th>Status</th>
      <th>Updated at</th>
      <th>Created at</th>
    </tr>
  </thead>
  <tbody>
  #foreach ($row in $tableRows)		
      <tr>
        <td><a href="$row.html_url">$row.title</a></td>
        <td>$row.get('user.login')</td>
        <td>$row.state</td>
        <td>$row.updated_at</td>
        <td>$row.created_at</td>
      </tr>
  #end
  </tbody>
</table>

This will show the live list of open pull requests from the GitHub API, styled with Atlassian's AUI table class for a clean Confluence-native look.

Sample Use Cases

Here are some ideas for what you can build:

  • Sprint overview dashboard: Show open pull requests, bugs, and recent commits in a single view.
  • Contributor recognition board: List top contributors in each repo or across the org.
  • Release activity monitor: Show latest GitHub Actions workflow runs.
  • Security watchlist: Display current Dependabot alerts by repo or organization.

All of this can be displayed in live-updating Confluence pages, ready for weekly meetings or async updates.

Useful GitHub Endpoints

Purpose Endpoint
Open Pull Requests https://api.github.com/repos/{owner}/{repo}/pulls?state=open
Open Issues https://api.github.com/repos/{owner}/{repo}/issues?state=open
Filtered Issues (e.g. bugs) https://api.github.com/repos/{owner}/{repo}/issues?state=open&labels=bug
Commits https://api.github.com/repos/{owner}/{repo}/commits
Contributors https://api.github.com/repos/{owner}/{repo}/contributors
GitHub Actions Runs https://api.github.com/repos/{owner}/{repo}/actions/runs
Deployments https://api.github.com/repos/{owner}/{repo}/deployments
Dependabot Alerts (Repo) https://api.github.com/repos/{owner}/{repo}/dependabot/alerts
Dependabot Alerts (Org) https://api.github.com/orgs/{org}/dependabot/alerts
Org Repositories https://api.github.com/orgs/{org}/repos
Rate Limit (for debugging) https://api.github.com/rate_limit
Why Use PocketQuery for This?
  • No custom development needed
  • Works in Confluence Data Center & Cloud
  • Secure connection with personal tokens
  • Full control over formatting and interactivity
  • Combine GitHub data with Jira, Sentry, SQL and more
Ready to Try It?

If you’re managing developer work in Confluence but tracking progress in GitHub, this setup closes the loop without copy-pasting a single line of data.

👉 Try PocketQuery on the Atlassian Marketplace

Got questions or want a walkthrough? Reach out - we’re happy to help.

Best,
Alice from Lively Apps

Blog

Our latest posts