Eurobase · Schema

GitHubReposResponse

CloudPlatformEuropeanAgentsDeveloper Tools

Properties

Name Type Description
githubAccount object
installations array
repos array Browser-safe repository rows after applying the bounded q and limit projection.
accountStatus string
accountStatusReason stringnull
accountVerifiedAt stringnull
sync object
installationCount integer
repoCount integer Sum of installation repository counts before q and limit are applied; it can exceed the returned or persisted repository rows when the snapshot is bounded or truncated. A missing stored installation c
snapshotVersion integer
snapshotUpdatedAt stringnull
hasSavedAccess boolean
projectCreateAvailable boolean
recommendedAction string
recoveryAction object
repositoryAccessAction object
navStatus object
ready boolean
View JSON Schema on GitHub

JSON Schema

eurobase-dev-git-hub-repos-response-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/eurobase-dev/json-schema/eurobase-dev-git-hub-repos-response-schema.json",
  "title": "GitHubReposResponse",
  "x-generated": "2026-11-10",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/eurobase-dev-github-api-openapi.yml#/components/schemas/GitHubReposResponse",
  "type": "object",
  "required": [
    "githubAccount",
    "installations",
    "repos",
    "accountStatus",
    "installationCount",
    "repoCount",
    "sync",
    "snapshotVersion",
    "hasSavedAccess",
    "projectCreateAvailable",
    "recommendedAction",
    "recoveryAction",
    "navStatus",
    "ready"
  ],
  "properties": {
    "githubAccount": {
      "$ref": "#/$defs/GitHubAccount"
    },
    "installations": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/GitHubInstallation"
      }
    },
    "repos": {
      "type": "array",
      "description": "Browser-safe repository rows after applying the bounded q and limit projection.",
      "items": {
        "$ref": "#/$defs/GitHubRepo"
      }
    },
    "accountStatus": {
      "type": "string",
      "enum": [
        "none",
        "unknown",
        "connected",
        "revoked"
      ]
    },
    "accountStatusReason": {
      "type": [
        "string",
        "null"
      ]
    },
    "accountVerifiedAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "sync": {
      "$ref": "#/$defs/GitHubSyncState"
    },
    "installationCount": {
      "type": "integer"
    },
    "repoCount": {
      "type": "integer",
      "minimum": 0,
      "description": "Sum of installation repository counts before q and limit are applied; it can exceed the returned or persisted repository rows when the snapshot is bounded or truncated. A missing stored installation count is normalized to 0 while ready remains false and recoveryAction remains refresh."
    },
    "snapshotVersion": {
      "type": "integer"
    },
    "snapshotUpdatedAt": {
      "type": [
        "string",
        "null"
      ],
      "format": "date-time"
    },
    "hasSavedAccess": {
      "type": "boolean"
    },
    "projectCreateAvailable": {
      "type": "boolean"
    },
    "recommendedAction": {
      "type": "string",
      "enum": [
        "none",
        "oauth",
        "refresh",
        "install",
        "manage",
        "review",
        "disabled"
      ]
    },
    "recoveryAction": {
      "$ref": "#/$defs/GitHubConnectAction"
    },
    "repositoryAccessAction": {
      "oneOf": [
        {
          "$ref": "#/$defs/GitHubConnectAction"
        },
        {
          "type": "null"
        }
      ]
    },
    "navStatus": {
      "type": "object",
      "required": [
        "tone",
        "label"
      ],
      "properties": {
        "tone": {
          "type": "string",
          "enum": [
            "neutral",
            "healthy",
            "warning",
            "danger"
          ]
        },
        "label": {
          "type": "string"
        }
      }
    },
    "ready": {
      "type": "boolean"
    }
  },
  "$defs": {
    "GitHubAccount": {
      "type": [
        "object",
        "null"
      ],
      "required": [
        "login"
      ],
      "properties": {
        "login": {
          "type": "string"
        },
        "name": {
          "type": [
            "string",
            "null"
          ]
        },
        "avatarUrl": {
          "type": [
            "string",
            "null"
          ]
        },
        "oauthStatus": {
          "type": [
            "string",
            "null"
          ],
          "enum": [
            "connected",
            "revoked",
            "unknown",
            null
          ]
        },
        "oauthStatusReason": {
          "type": [
            "string",
            "null"
          ]
        },
        "oauthVerifiedAt": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        },
        "snapshotVersion": {
          "type": "integer"
        },
        "createdAt": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        },
        "updatedAt": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        }
      }
    },
    "GitHubConnectAction": {
      "type": "object",
      "required": [
        "kind",
        "label"
      ],
      "properties": {
        "kind": {
          "type": "string",
          "enum": [
            "none",
            "oauth",
            "refresh",
            "install",
            "manage",
            "review",
            "disabled"
          ]
        },
        "label": {
          "type": "string"
        },
        "href": {
          "type": [
            "string",
            "null"
          ]
        },
        "disabled": {
          "type": "boolean"
        },
        "reason": {
          "type": [
            "string",
            "null"
          ]
        }
      }
    },
    "GitHubInstallation": {
      "type": "object",
      "required": [
        "id",
        "repoCount"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "accountLogin": {
          "type": [
            "string",
            "null"
          ]
        },
        "repoCount": {
          "type": "integer",
          "minimum": 0,
          "description": "Selected or allowed repository count recorded for this installation. A missing stored count is serialized as 0 only while the top-level snapshot remains not ready with refresh recovery; it is not proven empty inventory."
        },
        "repositoryAccessAction": {
          "oneOf": [
            {
              "$ref": "#/$defs/GitHubConnectAction"
            },
            {
              "type": "null"
            }
          ]
        },
        "syncStatus": {
          "type": "string",
          "enum": [
            "ok",
            "empty",
            "error",
            "stale"
          ]
        },
        "syncError": {
          "oneOf": [
            {
              "$ref": "#/$defs/GitHubSyncError"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    },
    "GitHubRepo": {
      "type": "object",
      "required": [
        "id",
        "name",
        "fullName",
        "private",
        "defaultBranch"
      ],
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "fullName": {
          "type": "string"
        },
        "private": {
          "type": "boolean"
        },
        "defaultBranch": {
          "type": "string"
        }
      }
    },
    "GitHubSyncError": {
      "type": "object",
      "required": [
        "code",
        "scope",
        "actor",
        "recoveryAction",
        "message"
      ],
      "properties": {
        "code": {
          "type": "string"
        },
        "scope": {
          "type": "string",
          "enum": [
            "installations",
            "repositories"
          ]
        },
        "actor": {
          "type": "string",
          "enum": [
            "user",
            "operator",
            "unknown"
          ]
        },
        "recoveryAction": {
          "type": "string",
          "enum": [
            "reconnect-oauth",
            "install-app",
            "open-installation-access",
            "retry-refresh",
            "operator-fix"
          ]
        },
        "message": {
          "type": "string"
        }
      }
    },
    "GitHubSyncState": {
      "type": "object",
      "required": [
        "status",
        "errors"
      ],
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "ok",
            "partial",
            "stale"
          ]
        },
        "message": {
          "type": [
            "string",
            "null"
          ]
        },
        "errors": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/GitHubSyncError"
          }
        },
        "primaryError": {
          "oneOf": [
            {
              "$ref": "#/$defs/GitHubSyncError"
            },
            {
              "type": "null"
            }
          ]
        }
      }
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/eurobase-dev-git-hub-repos-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.