> ## Documentation Index
> Fetch the complete documentation index at: https://specterops-bed-6715-managed-id-auth-method.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# GH_HasVariable

> Repository has access to this variable (org-level or repo-level)

<img noZoom src="https://mintcdn.com/specterops-bed-6715-managed-id-auth-method/32bGxo1_JbXAaHjs/assets/enterprise-AND-community-edition-pill-tag.svg?fit=max&auto=format&n=32bGxo1_JbXAaHjs&q=85&s=bb5b2bc8331220b968a23923bc289c26" alt="Applies to BloodHound Enterprise and CE" width="482" height="45" data-path="assets/enterprise-AND-community-edition-pill-tag.svg" />

## Edge Schema

* Source: [GH\_Repository](/opengraph/extensions/github/nodes/gh_repository)
* Destination: [GH\_OrgVariable](/opengraph/extensions/github/nodes/gh_orgvariable), [GH\_RepoVariable](/opengraph/extensions/github/nodes/gh_repovariable)
* Traversable: ✅

## General Information

The traversable GH\_HasVariable edge represents the relationship between a repository and the variables accessible within that context. This edge shows which variables are available in which scopes. Repositories can have access to both organization-level variables (scoped by visibility to all, private, or selected repositories) and repository-level variables defined directly on the repo. This edge is traversable because any principal that can push code to a repository (via [GH\_CanWriteBranch](/opengraph/extensions/github/edges/gh_canwritebranch) or [GH\_CanCreateBranch](/opengraph/extensions/github/edges/gh_cancreatebranch)) can write a workflow that reads variable values at runtime, and variables may contain configuration data useful for lateral movement such as deployment URLs, service names, or environment identifiers.

```mermaid theme={null}
graph LR
    node1("GH_Repository GitHound")
    node2("GH_OrgVariable ENVIRONMENT_URL")
    node3("GH_RepoVariable NODE_VERSION")
    node1 -- GH_HasVariable --> node2
    node1 -- GH_HasVariable --> node3
```
