Back to Bitbucket in Google Sheets
SheetXAI logo
Bitbucket logo
Bitbucket · Google Sheets Guide

Build a Full Bitbucket Repository Inventory in a Google Sheet

2026-05-13
4 min read
See the Excel version →

The Scenario

You are a platform architect. Your company has grown to 60+ repositories across a Bitbucket workspace, and costs are climbing. The engineering leadership team wants an inventory of every repo — name, main language, size, visibility (public or private), and the last time it was updated — so they can identify dead repos and repos that should not be public.

Nobody has this list. Bitbucket's UI shows repos in a paginated list of tiles. You can click into each one to see its metadata, or you can use the API.

The bad version of this month:

  • You open Bitbucket workspace settings and start scrolling through repos
  • You create a Google Sheet with headers: name, language, size, visibility, last updated
  • You click into repo 1, copy the metadata, paste a row
  • You click into repo 2, copy the metadata, paste a row
  • By repo 15 you realize the "size" field shows in KB for some repos and MB for others
  • By repo 30 the VP asks for the sheet at 3 PM and you have not reached the private/public column yet
  • You send a sheet with 30 rows and a note saying "still working on the other 30."

The fast version is one prompt.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent inside your Google Sheet that lists every repo in the workspace via the API, normalizes the size units, and writes the full inventory in one pass.

Open the SheetXAI sidebar and type:

List all repositories in Bitbucket workspace 'acme-corp'. For each repo, write name, main language, size in MB (normalized from whatever unit the API returns), visibility (public or private), and the last-updated date in columns A through E. Sort by last-updated date ascending so the oldest repos are at the top.

SheetXAI queries the workspace repo list, handles pagination for 60+ repos, normalizes the size values to MB, and writes the full inventory. The oldest, most-likely-abandoned repos are at the top.

What You Get

A complete repo inventory table:

  • Name — the repo slug and display name
  • Main language — the primary programming language Bitbucket detected
  • Size in MB — normalized from whatever unit the API returns
  • Visibility — public or private
  • Last-updated date — formatted as YYYY-MM-DD, sorted ascending

All 60+ repos, in one pass. Not 30 and a note saying the rest are coming.

Want to flag repos that have not been updated in over a year? Ask SheetXAI to add a column that marks them "Stale." It appends the column in the same prompt.

What If the Data Is Not Quite Ready

Repository inventories from Bitbucket have a few wrinkles when the workspace has grown organically over years.

When some repos have no detected language

Repos with only configuration files or documentation often show no language. You want those flagged rather than showing a blank.

List all repositories in Bitbucket workspace 'acme-corp'. Write name, main language, size in MB, visibility, and last-updated date in columns A through E. In column F, write "No language detected" if the language field is blank, and leave it blank otherwise.

When the team wants to see fork count and watcher count for popularity signals

Leadership also wants to know which repos are actively watched, as a proxy for which ones matter.

List all repositories in Bitbucket workspace 'acme-corp'. Write name, visibility, main language, size in MB, last-updated date, fork count, and watcher count in columns A through G. Sort by watcher count descending.

When you want to filter to only private repos for the access review

The access review only covers private repos. Public repos can stay.

List all private repositories in Bitbucket workspace 'acme-corp'. Write name, main language, size in MB, and last-updated date in columns A through D. Flag any repo not updated in the last 12 months with "Stale" in column E.

When leadership wants a language breakdown summary alongside the full inventory

The CTO wants to know the distribution of languages across the workspace before the architecture review.

List all repositories in Bitbucket workspace 'acme-corp'. Write the full inventory — name, main language, size in MB, visibility, last-updated date — on the Inventory tab. On the Summary tab, write each unique language and the count of repos using it, sorted descending by count. Add a row for "No language detected" at the bottom if applicable.

The pattern: the full inventory and the language breakdown both come from one prompt. The architecture review has both views ready without a second pass.

Try It

Get the 7-day free trial of SheetXAI and ask it to list all repositories in your Bitbucket workspace into a blank sheet. The Bitbucket integration is included in every SheetXAI plan. For related workflows, see how to export open pull requests across all repos or the Bitbucket in Google Sheets overview.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more