RecoupGet a free auditFree audit

API REFERENCE

List Org Repo Stats (Admin)

On this page
GET/api/admins/sandboxes/orgs

Returns commit statistics for each repository in the recoupable GitHub organization. Each item includes the repo name, URL, total commit count, latest 5 commit messages, earliest and latest commit timestamps, and the list of account repo URLs that include this org repo as a submodule. Requires the authenticated account to be a Recoup admin. Authentication via x-api-key or Authorization Bearer token.

Authentication

x-api-key in header

bearerAuth bearer

Request

cURL
curl --request GET \
  --url 'https://api.recoupable.dev/api/admins/sandboxes/orgs' \
  --header 'x-api-key: YOUR_API_KEY'

Try it

Fill in the fields, send the request from your browser, and read the live response. The curl below updates as you type.

Kept in this browser tab only and cleared when it closes.

cURL for this request
curl --request GET \
  --url 'https://recoup-api.vercel.app/api/admins/sandboxes/orgs'

Responses

200Org repo statistics retrieved successfully

application/json

statusstring · enumrequired

Status of the request

Values: "success", "error"

reposarray<OrgRepoRow>required

List of org repos with their commit statistics, ordered by total_commits descending

Item properties for repos
repo_namestringrequired

Repository name

repo_urlstringrequired

Full GitHub HTML URL of the repository

total_commitsintegerrequired

Total number of commits in the repository

latest_commit_messagesarray<string>required

Messages from the 5 most recent commits

Item properties for latest_commit_messages

string

earliest_committed_atstringrequired

ISO 8601 timestamp of the earliest (first) commit

format: date-time

latest_committed_atstringrequired

ISO 8601 timestamp of the most recent commit

format: date-time

account_reposarray<object>required

List of accounts using this org repo as a submodule, with account_id, email, and repo_url

Item properties for account_repos
account_idstringrequired
emailstringnullable
repo_urlstringrequired
401Unauthorized - missing or invalid credentials

application/json

statusstring · enumrequired

Status of the request

Values: "error"

messagestringrequired

Error message describing what went wrong

403Forbidden - authenticated account is not a Recoup admin

application/json

statusstring · enumrequired

Status of the request

Values: "error"

messagestringrequired

Error message describing what went wrong

500Internal server error

application/json

statusstring · enumrequired

Status of the request

Values: "error"

messagestringrequired

Error message describing what went wrong

Full specification

Download the OpenAPI file for complete schemas, constraints, and examples.

Download accounts.json
View operation source
json
{
  "description": "Returns commit statistics for each repository in the recoupable GitHub organization. Each item includes the repo name, URL, total commit count, latest 5 commit messages, earliest and latest commit timestamps, and the list of account repo URLs that include this org repo as a submodule. Requires the authenticated account to be a Recoup admin. Authentication via x-api-key or Authorization Bearer token.",
  "parameters": [],
  "security": [
    {
      "apiKeyAuth": []
    },
    {
      "bearerAuth": []
    }
  ],
  "responses": {
    "200": {
      "description": "Org repo statistics retrieved successfully",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AdminSandboxOrgsResponse"
          }
        }
      }
    },
    "401": {
      "description": "Unauthorized - missing or invalid credentials",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AccountErrorResponse"
          }
        }
      }
    },
    "403": {
      "description": "Forbidden - authenticated account is not a Recoup admin",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AccountErrorResponse"
          }
        }
      }
    },
    "500": {
      "description": "Internal server error",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/AccountErrorResponse"
          }
        }
      }
    }
  }
}