Get the dependency graph (full org or subgraph anchored at a repo).
Return the dependency graph for a connected org.
Without root: full graph for the org.
With root=<repo_id>: subgraph anchored at that repo, including up to
depth hops in both directions (upstream + downstream). Designed for AI
coding agents that want a focused neighbourhood instead of the whole org.
Nodes are repositories; edges are resolved dependencies from the most
recent completed scan. Format is G6-compatible.
Confidence differs between the two modes, deliberately. With root,
min_confidence (default 0.4) governs both the traversal and the edges
returned, and the response echoes it as applied_min_confidence. Without
root, no floor is applied — the full-org graph returns every manifest
edge so clients can filter for themselves, and applied_min_confidence is
null. That asymmetry is why the org and workspace dependency counters
match this endpoint exactly: browsing is a different question from asking what
breaks.
GET
/
api
/
v1
/
connected-orgs
/
{connected_org_id}
/
graph
Get the dependency graph (full org or subgraph anchored at a repo).
curl --request GET \ --url https://api.example.com/api/v1/connected-orgs/{connected_org_id}/graph \ --header 'X-API-Key: <api-key>'
Optional repository ID to anchor a subgraph view. When set, the response is limited to the root plus its upstream and downstream neighbours within depth hops. Omit for the full org graph.
Minimum edge confidence to traverse, between 0.0 and 1.0. The default 0.4 admits every reference a machine could act on — deterministic parser edges (0.9–1.0), resolver matches (0.65–0.95), heuristic references in build and CI files, package manifests and fetch commands (0.85), and references in files the classifier does not recognise (0.6–0.7), which mean 'unclassified', not 'unlikely'. It excludes only references a human reads rather than a machine executes: prose, HTML templates, generated blobs and ignore files (0.3). Pass 0.8 to restrict the answer to deterministic and build-file evidence only, or 0.0 to include everything. The value actually applied is echoed in the response, and each affected repository carries the confidence of the weakest edge on the strongest path that reached it, so a stricter answer can be recovered by filtering the response without a second request. Ignored when root is omitted: the full-org graph applies no floor at all and returns every manifest edge, in which case applied_min_confidence in the response is null.
The confidence floor used for the subgraph traversal, or null when root was omitted. null is the honest answer for the full-org graph, which applies no floor at all and returns every manifest edge for clients to filter themselves — so a number here would misreport it.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Riftmap","description":"Cross-repository dependency mapper and change impact engine for GitLab/GitHub orgs. The agent-friendly API for 'if I change repo X, what breaks?'","colors":{"primary":"#7B61FF","light":"#9B85FF","dark":"#5E47DB"},"logo":{"light":"https://mintcdn.com/westgaardtechnologies/3NKuoQH-GCYzbIwS/logo.png?fit=max\u0026auto=format\u0026n=3NKuoQH-GCYzbIwS\u0026q=85\u0026s=ca82ef4bbabdfd659799823771bad0ec","dark":"https://mintcdn.com/westgaardtechnologies/3NKuoQH-GCYzbIwS/logo.png?fit=max\u0026auto=format\u0026n=3NKuoQH-GCYzbIwS\u0026q=85\u0026s=ca82ef4bbabdfd659799823771bad0ec"},"favicon":"https://mintcdn.com/westgaardtechnologies/3NKuoQH-GCYzbIwS/favicon.png?fit=max\u0026auto=format\u0026n=3NKuoQH-GCYzbIwS\u0026q=85\u0026s=55d4e687c4535ecb69d903d5e02d0ed9","navbar":{"links":[{"href":"https://app.riftmap.dev","label":"App"}],"primary":{"type":"button","label":"Sign up","href":"https://app.riftmap.dev/register"}},"seo":{"metatags":{"og:site_name":"Riftmap Docs"},"indexing":"navigable"},"fonts":{"heading":{"family":"DM Sans"},"body":{"family":"DM Sans"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"westgaardtechnologies","hasAudioNarration":false,"actualSubdomain":"westgaardtechnologies","customDomains":["docs.riftmap.dev"],"gitSource":{"type":"github","owner":"danielwestgaard","repo":"riftmap","deployBranch":"main","contentDirectory":"docs-site","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aa9521202ae04dd3ca6ab39","collectionId":"6f981270-5d60-46f9-9d4d-c0eb0b80ef8c","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aa9521202ae04dd3ca6ab39"},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ab910403102d6a97e68e101","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"API Reference","count":88},{"language":"default","tag":"Endpoints","count":87},{"language":"default","tag":"auth","count":18},{"language":"default","tag":"billing","count":18},{"language":"default","tag":"Documentation","count":14},{"language":"default","tag":"workspaces","count":12},{"language":"default","tag":"connected-orgs","count":7},{"language":"default","tag":"repositories","count":7},{"language":"default","tag":"Changelog","count":6},{"language":"default","tag":"invitations","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo","slug":"/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo","pageMetadata":{"title":"Get the dependency graph (full org or subgraph anchored at a repo).","description":"Return the dependency graph for a connected org.\n\nWithout ``root``: full graph for the org.\n\nWith ``root=\u003crepo_id>``: subgraph anchored at that repo, including up to\n``depth`` hops in both directions (upstream + downstream). Designed for AI\ncoding agents that want a focused neighbourhood instead of the whole org.\n\nNodes are repositories; edges are resolved dependencies from the most\nrecent completed scan. Format is G6-compatible.\n\n**Confidence differs between the two modes, deliberately.** With ``root``,\n``min_confidence`` (default 0.4) governs both the traversal and the edges\nreturned, and the response echoes it as ``applied_min_confidence``. Without\n``root``, no floor is applied — the full-org graph returns every ``manifest``\nedge so clients can filter for themselves, and ``applied_min_confidence`` is\n``null``. That asymmetry is why the org and workspace dependency counters\nmatch this endpoint exactly: browsing is a different question from asking what\nbreaks.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/graph","href":"/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n strong: \"strong\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Return the dependency graph for a connected org.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Without \", _jsx(_components.code, {\n children: \"root\"\n }), \": full graph for the org.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"With \", _jsx(_components.code, {\n children: \"root=\u003crepo_id>\"\n }), \": subgraph anchored at that repo, including up to\\n\", _jsx(_components.code, {\n children: \"depth\"\n }), \" hops in both directions (upstream + downstream). Designed for AI\\ncoding agents that want a focused neighbourhood instead of the whole org.\"]\n }), \"\\n\", _jsx(_components.p, {\n children: \"Nodes are repositories; edges are resolved dependencies from the most\\nrecent completed scan. Format is G6-compatible.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsx(_components.strong, {\n children: \"Confidence differs between the two modes, deliberately.\"\n }), \" With \", _jsx(_components.code, {\n children: \"root\"\n }), \",\\n\", _jsx(_components.code, {\n children: \"min_confidence\"\n }), \" (default 0.4) governs both the traversal and the edges\\nreturned, and the response echoes it as \", _jsx(_components.code, {\n children: \"applied_min_confidence\"\n }), \". Without\\n\", _jsx(_components.code, {\n children: \"root\"\n }), \", no floor is applied — the full-org graph returns every \", _jsx(_components.code, {\n children: \"manifest\"\n }), \"\\nedge so clients can filter for themselves, and \", _jsx(_components.code, {\n children: \"applied_min_confidence\"\n }), \" is\\n\", _jsx(_components.code, {\n children: \"null\"\n }), \". That asymmetry is why the org and workspace dependency counters\\nmatch this endpoint exactly: browsing is a different question from asking what\\nbreaks.\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get the dependency graph (full org or subgraph anchored at a repo).","description":"Return the dependency graph for a connected org.\n\nWithout ``root``: full graph for the org.\n\nWith ``root=\u003crepo_id>``: subgraph anchored at that repo, including up to\n``depth`` hops in both directions (upstream + downstream). Designed for AI\ncoding agents that want a focused neighbourhood instead of the whole org.\n\nNodes are repositories; edges are resolved dependencies from the most\nrecent completed scan. Format is G6-compatible.\n\n**Confidence differs between the two modes, deliberately.** With ``root``,\n``min_confidence`` (default 0.4) governs both the traversal and the edges\nreturned, and the response echoes it as ``applied_min_confidence``. Without\n``root``, no floor is applied — the full-org graph returns every ``manifest``\nedge so clients can filter for themselves, and ``applied_min_confidence`` is\n``null``. That asymmetry is why the org and workspace dependency counters\nmatch this endpoint exactly: browsing is a different question from asking what\nbreaks.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/graph","href":"/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"description":"Return the dependency graph for a connected org.\n\nWithout ``root``: full graph for the org.\n\nWith ``root=\u003crepo_id>``: subgraph anchored at that repo, including up to\n``depth`` hops in both directions (upstream + downstream). Designed for AI\ncoding agents that want a focused neighbourhood instead of the whole org.\n\nNodes are repositories; edges are resolved dependencies from the most\nrecent completed scan. Format is G6-compatible.\n\n**Confidence differs between the two modes, deliberately.** With ``root``,\n``min_confidence`` (default 0.4) governs both the traversal and the edges\nreturned, and the response echoes it as ``applied_min_confidence``. Without\n``root``, no floor is applied — the full-org graph returns every ``manifest``\nedge so clients can filter for themselves, and ``applied_min_confidence`` is\n``null``. That asymmetry is why the org and workspace dependency counters\nmatch this endpoint exactly: browsing is a different question from asking what\nbreaks.","operationId":"get_graph_api_v1_connected_orgs__connected_org_id__graph_get","parameters":["a4953591-5026-414e-b39e-d899348b6eea","d5dba433-edbe-4e3a-a89a-2253e1fdd435","9b34ada9-eb11-4a2d-b9f6-1ddd6ef0a19f","5a3a12ee-d0b3-4928-8d30-99641ed6da94","e503222c-db0d-43f9-ae46-1c3ea8cd1918","b164c46a-de29-424a-ad71-4619379fbf9d"],"responses":{"200":"d8f95c1f-80e6-42b4-8af4-fa7aeb5eb2f2","422":"3ee68fc7-70d2-437b-90de-3ec504569ac3"},"security":["8ab95577-9632-46af-b303-19735f47ac81","b798e4a1-e722-4269-a2c7-55df9180d65c"],"summary":"Get the dependency graph (full org or subgraph anchored at a repo).","tags":["graph"],"method":"get","type":"path","servers":[],"path":"/api/v1/connected-orgs/{connected_org_id}/graph","baseUrlOptions":[],"title":"Get the dependency graph (full org or subgraph anchored at a repo).","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"a4953591-5026-414e-b39e-d899348b6eea":{"in":"path","name":"connected_org_id","required":true,"schema":{"format":"uuid","title":"Connected Org Id","type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string\u003cuuid>"}},"d5dba433-edbe-4e3a-a89a-2253e1fdd435":{"description":"Optional repository ID to anchor a subgraph view. When set, the response is limited to the root plus its upstream and downstream neighbours within ``depth`` hops. Omit for the full org graph.","in":"query","name":"root","required":false,"schema":{"oneOf":[{"type":"string","title":"Root","description":"Optional repository ID to anchor a subgraph view. When set, the response is limited to the root plus its upstream and downstream neighbours within ``depth`` hops. Omit for the full org graph.","format":"uuid","uniqueKey":"oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","title":"Root","description":"Optional repository ID to anchor a subgraph view. When set, the response is limited to the root plus its upstream and downstream neighbours within ``depth`` hops. Omit for the full org graph.","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string\u003cuuid> | null"}},"9b34ada9-eb11-4a2d-b9f6-1ddd6ef0a19f":{"description":"BFS depth from ``root`` in each direction. Ignored when ``root`` is omitted.","in":"query","name":"depth","required":false,"schema":{"default":2,"description":"BFS depth from ``root`` in each direction. Ignored when ``root`` is omitted.","maximum":10,"minimum":1,"title":"Depth","type":"integer","isRequired":false,"uniqueKey":"","typeLabel":"integer"}},"5a3a12ee-d0b3-4928-8d30-99641ed6da94":{"description":"Minimum edge confidence to traverse, between 0.0 and 1.0. The default 0.4 admits every reference a machine could act on — deterministic parser edges (0.9–1.0), resolver matches (0.65–0.95), heuristic references in build and CI files, package manifests and fetch commands (0.85), and references in files the classifier does not recognise (0.6–0.7), which mean 'unclassified', not 'unlikely'. It excludes only references a human reads rather than a machine executes: prose, HTML templates, generated blobs and ignore files (0.3). Pass 0.8 to restrict the answer to deterministic and build-file evidence only, or 0.0 to include everything. The value actually applied is echoed in the response, and each affected repository carries the confidence of the weakest edge on the strongest path that reached it, so a stricter answer can be recovered by filtering the response without a second request. Ignored when ``root`` is omitted: the full-org graph applies no floor at all and returns every ``manifest`` edge, in which case ``applied_min_confidence`` in the response is ``null``.","in":"query","name":"min_confidence","required":false,"schema":{"default":0.4,"description":"Minimum edge confidence to traverse, between 0.0 and 1.0. The default 0.4 admits every reference a machine could act on — deterministic parser edges (0.9–1.0), resolver matches (0.65–0.95), heuristic references in build and CI files, package manifests and fetch commands (0.85), and references in files the classifier does not recognise (0.6–0.7), which mean 'unclassified', not 'unlikely'. It excludes only references a human reads rather than a machine executes: prose, HTML templates, generated blobs and ignore files (0.3). Pass 0.8 to restrict the answer to deterministic and build-file evidence only, or 0.0 to include everything. The value actually applied is echoed in the response, and each affected repository carries the confidence of the weakest edge on the strongest path that reached it, so a stricter answer can be recovered by filtering the response without a second request. Ignored when ``root`` is omitted: the full-org graph applies no floor at all and returns every ``manifest`` edge, in which case ``applied_min_confidence`` in the response is ``null``.","maximum":1,"minimum":0,"title":"Min Confidence","type":"number","isRequired":false,"uniqueKey":"","typeLabel":"number"}},"e503222c-db0d-43f9-ae46-1c3ea8cd1918":{"in":"header","name":"X-Workspace-Id","required":false,"schema":{"oneOf":[{"type":"string","title":"X-Workspace-Id","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"X-Workspace-Id","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"}},"b164c46a-de29-424a-ad71-4619379fbf9d":{"in":"cookie","name":"riftmap_access","required":false,"schema":{"oneOf":[{"type":"string","title":"Riftmap Access","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"Riftmap Access","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"}}},"responses":{"d8f95c1f-80e6-42b4-8af4-fa7aeb5eb2f2":{"content":{"application/json":{"schema":{"description":"Full dependency graph for an organization (G6 compatible).","properties":{"edges":{"items":{"description":"A directed dependency edge between two repos.","properties":{"confidence":{"title":"Confidence","type":"number","isRequired":true,"uniqueKey":"edges.items.[INDEX].confidence","typeLabel":"number"},"dependency_type":{"title":"Dependency Type","type":"string","isRequired":true,"uniqueKey":"edges.items.[INDEX].dependency_type","typeLabel":"string"},"id":{"title":"Id","type":"string","isRequired":true,"uniqueKey":"edges.items.[INDEX].id","typeLabel":"string"},"source":{"title":"Source","type":"string","isRequired":true,"uniqueKey":"edges.items.[INDEX].source","typeLabel":"string"},"target":{"title":"Target","type":"string","isRequired":true,"uniqueKey":"edges.items.[INDEX].target","typeLabel":"string"},"version_constraint":{"oneOf":[{"type":"string","title":"Version Constraint","isRequired":true,"uniqueKey":"edges.items.[INDEX].version_constraint.oneOf.0","typeLabel":"string"},{"type":"null","title":"Version Constraint","isRequired":true,"uniqueKey":"edges.items.[INDEX].version_constraint.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"edges.items.[INDEX].version_constraint","typeLabel":"string | null"}},"required":["id","source","target","dependency_type","version_constraint","confidence"],"title":"GraphEdge","type":"object","uniqueKey":"edges.items.[INDEX]","typeLabel":"GraphEdge · object"},"title":"Edges","type":"array","isRequired":true,"uniqueKey":"edges","typeLabel":"GraphEdge · object[]"},"nodes":{"items":{"description":"A repository node in the dependency graph.","properties":{"id":{"title":"Id","type":"string","isRequired":true,"uniqueKey":"nodes.items.[INDEX].id","typeLabel":"string"},"label":{"title":"Label","type":"string","isRequired":true,"uniqueKey":"nodes.items.[INDEX].label","typeLabel":"string"},"metadata":{"additionalProperties":true,"default":{},"title":"Metadata","type":"object","uniqueKey":"nodes.items.[INDEX].metadata","typeLabel":"Metadata · object"},"type":{"default":"repository","title":"Type","type":"string","uniqueKey":"nodes.items.[INDEX].type","typeLabel":"string"}},"required":["id","label"],"title":"GraphNode","type":"object","uniqueKey":"nodes.items.[INDEX]","typeLabel":"GraphNode · object"},"title":"Nodes","type":"array","isRequired":true,"uniqueKey":"nodes","typeLabel":"GraphNode · object[]"},"applied_min_confidence":{"oneOf":[{"type":"number","title":"Applied Min Confidence","description":"The confidence floor used for the subgraph traversal, or `null` when `root` was omitted. `null` is the honest answer for the full-org graph, which applies no floor at all and returns every `manifest` edge for clients to filter themselves — so a number here would misreport it.","uniqueKey":"applied_min_confidence.oneOf.0","typeLabel":"number"},{"type":"null","title":"Applied Min Confidence","description":"The confidence floor used for the subgraph traversal, or `null` when `root` was omitted. `null` is the honest answer for the full-org graph, which applies no floor at all and returns every `manifest` edge for clients to filter themselves — so a number here would misreport it.","uniqueKey":"applied_min_confidence.oneOf.1","typeLabel":"null"}],"uniqueKey":"applied_min_confidence","typeLabel":"number | null"}},"required":["nodes","edges"],"title":"GraphResponse","type":"object","uniqueKey":"","typeLabel":"GraphResponse · object"},"examples":{"Example":{"title":"Example","value":{"edges":[{"confidence":123,"dependency_type":"\u003cstring>","id":"\u003cstring>","source":"\u003cstring>","target":"\u003cstring>","version_constraint":"\u003cstring>"}],"nodes":[{"id":"\u003cstring>","label":"\u003cstring>","metadata":{},"type":"repository"}],"applied_min_confidence":123}}},"exampleType":"generated"}},"description":"Successful Response","exampleType":"generated"},"3ee68fc7-70d2-437b-90de-3ec504569ac3":{"content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"title":"Location","type":"array","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"title":"Message","type":"string","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"title":"Error Type","type":"string","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"},"ctx":{"title":"Context","type":"object","uniqueKey":"detail.items.[INDEX].ctx","typeLabel":"Context · object"},"input":{"oneOf":[{"title":"Input"}],"uniqueKey":"detail.items.[INDEX].input","typeLabel":"any"}},"required":["loc","msg","type"],"title":"ValidationError","type":"object","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"title":"Detail","type":"array","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"title":"HTTPValidationError","type":"object","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>","ctx":{},"input":"\u003cunknown>"}]}}},"exampleType":"generated"}},"description":"Validation Error","exampleType":"generated"}},"security":{"8ab95577-9632-46af-b303-19735f47ac81":{"APIKeyHeader":{"in":"header","name":"X-API-Key","type":"apiKey","scopes":[]}},"b798e4a1-e722-4269-a2c7-55df9180d65c":{"HTTPBearer":{"description":"API key as Bearer token (rfm_live_... prefix)","scheme":"bearer","type":"http","scopes":[]}}},"servers":{},"processedSecurityOptions":[{"schemes":[{"scheme":{"in":"header","name":"X-API-Key","type":"apiKey","scopes":[]},"schema":{"title":"X-API-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"APIKeyHeader","name":"X-API-Key"}],"title":"APIKeyHeader"},{"schemes":[{"scheme":{"description":"API key as Bearer token (rfm_live_... prefix)","scheme":"bearer","type":"http","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"API key as Bearer token (rfm_live_... prefix)","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"HTTPBearer","name":"Authorization"}],"title":"HTTPBearer"}]},"originalFileLocation":"openapi.json"},"subdomain":"westgaardtechnologies","siteName":"Riftmap","title":"Get the dependency graph (full org or subgraph anchored at a repo). - Riftmap","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-27T12:47:01.492Z","originalFileLocation":"api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Return the dependency graph for a connected org. Without root: full graph for the org. With root=: subgraph anchored at that repo, including up to depth hops in both directions (upstream + downstream). Designed for AI coding agents that want a focused neighbourhood instead of the whole org. Nodes are repositories; edges are resolved dependencies from the most recent completed scan. Format is G6-compatible. Confidence differs between the two modes, deliberately. With root, min_confidence (default 0.4) governs both the traversal and the edges returned, and the response echoes it as applied_min_confidence. Without root, no floor is applied — the full-org graph returns every manifest edge so clients can filter for themselves, and applied_min_confidence is null. That asymmetry is why the org and workspace dependency counters match this endpoint exactly: browsing is a different question from asking what breaks.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Riftmap\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get the dependency graph (full org or subgraph anchored at a repo). - Riftmap\">\u003cmeta data-mint-head property=\"og:description\" content=\"Return the dependency graph for a connected org. Without root: full graph for the org. With root=: subgraph anchored at that repo, including up to depth hops in both directions (upstream + downstream). Designed for AI coding agents that want a focused neighbourhood instead of the whole org. Nodes are repositories; edges are resolved dependencies from the most recent completed scan. Format is G6-compatible. Confidence differs between the two modes, deliberately. With root, min_confidence (default 0.4) governs both the traversal and the edges returned, and the response echoes it as applied_min_confidence. Without root, no floor is applied — the full-org graph returns every manifest edge so clients can filter for themselves, and applied_min_confidence is null. That asymmetry is why the org and workspace dependency counters match this endpoint exactly: browsing is a different question from asking what breaks.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Riftmap Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://westgaardtechnologies.mintlify.site/_mintlify/api/og/v2?division=graph\u0026amp;title=Get+the+dependency+graph+%28full+org+or+subgraph+anchored+at+a+repo%29.\u0026amp;description=Return+the+dependency+graph+for+a+connected+org.%0A%0AWithout+%60%60root%60%60%3A+full+graph+for+the+org.%0A%0AWith+%60%60root%3D%3Crepo_id%3E%60%60%3A+subgraph+anchored+at+that+repo%2C+including+\u0026amp;theme=868fc54aab183060d84a05a1\u0026amp;signature=41b1a68a0e9573480e866c78c469545d92e2c4d32961447d0e4f9fda2c3dbd61\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get the dependency graph (full org or subgraph anchored at a repo). - Riftmap\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Return the dependency graph for a connected org. Without root: full graph for the org. With root=: subgraph anchored at that repo, including up to depth hops in both directions (upstream + downstream). Designed for AI coding agents that want a focused neighbourhood instead of the whole org. Nodes are repositories; edges are resolved dependencies from the most recent completed scan. Format is G6-compatible. Confidence differs between the two modes, deliberately. With root, min_confidence (default 0.4) governs both the traversal and the edges returned, and the response echoes it as applied_min_confidence. Without root, no floor is applied — the full-org graph returns every manifest edge so clients can filter for themselves, and applied_min_confidence is null. That asymmetry is why the org and workspace dependency counters match this endpoint exactly: browsing is a different question from asking what breaks.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://westgaardtechnologies.mintlify.site/_mintlify/api/og/v2?division=graph\u0026amp;title=Get+the+dependency+graph+%28full+org+or+subgraph+anchored+at+a+repo%29.\u0026amp;description=Return+the+dependency+graph+for+a+connected+org.%0A%0AWithout+%60%60root%60%60%3A+full+graph+for+the+org.%0A%0AWith+%60%60root%3D%3Crepo_id%3E%60%60%3A+subgraph+anchored+at+that+repo%2C+including+\u0026amp;theme=868fc54aab183060d84a05a1\u0026amp;signature=41b1a68a0e9573480e866c78c469545d92e2c4d32961447d0e4f9fda2c3dbd61\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/westgaardtechnologies/R6ltIliKa1Ys7Brf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Riftmap\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#7B61FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.riftmap.dev/#organization\",\"name\":\"Riftmap\",\"url\":\"https://docs.riftmap.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/westgaardtechnologies/3NKuoQH-GCYzbIwS/logo.png?fit=max\u0026auto=format\u0026n=3NKuoQH-GCYzbIwS\u0026q=85\u0026s=ca82ef4bbabdfd659799823771bad0ec\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.riftmap.dev#website\",\"name\":\"Riftmap\",\"url\":\"https://docs.riftmap.dev\",\"publisher\":{\"@id\":\"https://docs.riftmap.dev/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo#webpage\",\"url\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo\",\"name\":\"Get the dependency graph (full org or subgraph anchored at a repo).\",\"description\":\"Return the dependency graph for a connected org. Without root: full graph for the org. With root=: subgraph anchored at that repo, including up to depth hops in both directions (upstream + downstream). Designed for AI coding agents that want a focused neighbourhood instead of the whole org. Nodes are repositories; edges are resolved dependencies from the most recent completed scan. Format is G6-compatible. Confidence differs between the two modes, deliberately. With root, min_confidence (default 0.4) governs both the traversal and the edges returned, and the response echoes it as applied_min_confidence. Without root, no floor is applied — the full-org graph returns every manifest edge so clients can filter for themselves, and applied_min_confidence is null. That asymmetry is why the org and workspace dependency counters match this endpoint exactly: browsing is a different question from asking what breaks.\",\"dateModified\":\"2026-09-27T12:47:01.492Z\",\"isPartOf\":{\"@id\":\"https://docs.riftmap.dev#website\"},\"breadcrumb\":{\"@id\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.riftmap.dev/api-reference/artifacts/get-a-single-artifact-by-id-with-consumer-count-and-orphan-flag\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get the dependency graph (full org or subgraph anchored at a repo).\",\"item\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo#apireference\",\"headline\":\"Get the dependency graph (full org or subgraph anchored at a repo).\",\"name\":\"Get the dependency graph (full org or subgraph anchored at a repo).\",\"description\":\"Return the dependency graph for a connected org. Without root: full graph for the org. With root=: subgraph anchored at that repo, including up to depth hops in both directions (upstream + downstream). Designed for AI coding agents that want a focused neighbourhood instead of the whole org. Nodes are repositories; edges are resolved dependencies from the most recent completed scan. Format is G6-compatible. Confidence differs between the two modes, deliberately. With root, min_confidence (default 0.4) governs both the traversal and the edges returned, and the response echoes it as applied_min_confidence. Without root, no floor is applied — the full-org graph returns every manifest edge so clients can filter for themselves, and applied_min_confidence is null. That asymmetry is why the org and workspace dependency counters match this endpoint exactly: browsing is a different question from asking what breaks.\",\"url\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo\",\"mainEntityOfPage\":{\"@id\":\"https://docs.riftmap.dev/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo#webpage\"},\"dateModified\":\"2026-09-27T12:47:01.492Z\",\"publisher\":{\"@id\":\"https://docs.riftmap.dev/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.riftmap.dev#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Riftmap\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Riftmap","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Overview","pages":[{"title":"API reference","href":"/api-reference/introduction"}]},{"group":"Endpoints","pages":[{"group":"artifacts","pages":[{"title":"Get a single artifact by ID, with consumer count and orphan flag.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/artifacts/{artifact_id}","href":"/api-reference/artifacts/get-a-single-artifact-by-id-with-consumer-count-and-orphan-flag"},{"title":"List repositories consuming this artifact, with pinned versions.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/artifacts/{artifact_id}/consumers","href":"/api-reference/artifacts/list-repositories-consuming-this-artifact-with-pinned-versions"},{"title":"List all versions of this artifact seen across the org, with consumer counts.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/artifacts/{artifact_id}/versions","href":"/api-reference/artifacts/list-all-versions-of-this-artifact-seen-across-the-org-with-consumer-counts"},{"title":"List artifacts (Docker images, packages, modules) produced in a connected org.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/artifacts","href":"/api-reference/artifacts/list-artifacts-docker-images-packages-modules-produced-in-a-connected-org"}]},{"group":"auth","pages":[{"title":"Accept Tos","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/accept-tos","href":"/api-reference/auth/accept-tos"},{"title":"Cancel Account Deletion","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/account/cancel-deletion","href":"/api-reference/auth/cancel-account-deletion"},{"title":"Delete Account","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/account/delete","href":"/api-reference/auth/delete-account"},{"title":"Verify Email","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/email/verify","href":"/api-reference/auth/verify-email"},{"title":"Resend Verification Email","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/email/verify/resend","href":"/api-reference/auth/resend-verification-email"},{"title":"Login","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/login","href":"/api-reference/auth/login"},{"title":"Logout","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/logout","href":"/api-reference/auth/logout"},{"title":"Get Me","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/auth/me","href":"/api-reference/auth/get-me"},{"title":"Update Me","deprecated":null,"version":null,"openapi":"/openapi.json patch /api/v1/auth/me","href":"/api-reference/auth/update-me"},{"title":"Oauth Callback","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/auth/oauth/{provider}/callback","href":"/api-reference/auth/oauth-callback"},{"title":"Oauth Start","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/auth/oauth/{provider}/start","href":"/api-reference/auth/oauth-start"},{"title":"Change Password","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/password/change","href":"/api-reference/auth/change-password"},{"title":"Confirm Password Reset","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/password/reset/confirm","href":"/api-reference/auth/confirm-password-reset"},{"title":"Request Password Reset","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/password/reset/request","href":"/api-reference/auth/request-password-reset"},{"title":"Set Password","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/password/set","href":"/api-reference/auth/set-password"},{"title":"List Providers","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/auth/providers","href":"/api-reference/auth/list-providers"},{"title":"Refresh Token","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/refresh","href":"/api-reference/auth/refresh-token"},{"title":"Register","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/auth/register","href":"/api-reference/auth/register"}]},{"group":"billing","pages":[{"title":"Get Plan Catalog","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/billing/plans","href":"/api-reference/billing/get-plan-catalog"},{"title":"Stripe Webhook","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/webhooks/stripe","href":"/api-reference/billing/stripe-webhook"},{"title":"Get Billing Status","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing","href":"/api-reference/billing/get-billing-status"},{"title":"Cancel Subscription","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/cancel","href":"/api-reference/billing/cancel-subscription"},{"title":"Preview pending charges that will bill on the final invoice if not waived","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing/cancel/preview","href":"/api-reference/billing/preview-pending-charges-that-will-bill-on-the-final-invoice-if-not-waived"},{"title":"Change Plan","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/change-plan","href":"/api-reference/billing/change-plan"},{"title":"Preview Change Plan","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing/change-plan/preview","href":"/api-reference/billing/preview-change-plan"},{"title":"Create Checkout Session","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/checkout","href":"/api-reference/billing/create-checkout-session"},{"title":"Get Billing History","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing/history","href":"/api-reference/billing/get-billing-history"},{"title":"Get Payment Info","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing/payment-info","href":"/api-reference/billing/get-payment-info"},{"title":"Attach Payment Method","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/payment-methods","href":"/api-reference/billing/attach-payment-method"},{"title":"Create Setup Intent","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/payment-methods/setup-intent","href":"/api-reference/billing/create-setup-intent"},{"title":"Create Portal Session","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/portal","href":"/api-reference/billing/create-portal-session"},{"title":"Resume Subscription","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/resume","href":"/api-reference/billing/resume-subscription"},{"title":"Add Seats","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/billing/seats","href":"/api-reference/billing/add-seats"},{"title":"Remove Seats","deprecated":null,"version":null,"openapi":"/openapi.json delete /api/v1/workspaces/{workspace_id}/billing/seats","href":"/api-reference/billing/remove-seats"},{"title":"Preview Seat Change","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing/seats/preview","href":"/api-reference/billing/preview-seat-change"},{"title":"Get Billing Usage","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/billing/usage","href":"/api-reference/billing/get-billing-usage"}]},{"group":"connected-orgs","pages":[{"title":"List Connected Orgs","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs","href":"/api-reference/connected-orgs/list-connected-orgs"},{"title":"Create Connected Org","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/connected-orgs","href":"/api-reference/connected-orgs/create-connected-org"},{"title":"Get Connected Org","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}","href":"/api-reference/connected-orgs/get-connected-org"},{"title":"Update Connected Org","deprecated":null,"version":null,"openapi":"/openapi.json put /api/v1/connected-orgs/{connected_org_id}","href":"/api-reference/connected-orgs/update-connected-org"},{"title":"Delete Connected Org","deprecated":null,"version":null,"openapi":"/openapi.json delete /api/v1/connected-orgs/{connected_org_id}","href":"/api-reference/connected-orgs/delete-connected-org"},{"title":"Ranked findings feed: high-fan-in repos with low bus factor (spec §8). Shares and counts are computed over a trailing window (default 365 days), excluding merge commits, with bot identities stripped; each item carries the `window` (start/end) and `computed_at` it was computed for.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/ownership-risk","href":"/api-reference/connected-orgs/ranked-findings-feed:-high-fan-in-repos-with-low-bus-factor-spec-§8-shares-and-counts-are-computed-over-a-trailing-window-default-365-days-excluding-merge-commits-with-bot-identities-stripped;-each-item-carries-the-`window`-startend-and-`computed_at`-it-was-computed-for"},{"title":"Get Connected Org Stats","description":"Aggregate statistics for one connected org: repository, declaration and deduped dependency-edge counts, artifact orphan/consumption breakdowns, and the declaration-outcome breakdown naming why each parsed dependency did or did not become a graph edge. Dependency figures are scoped per repository to its own current scan, not to a single org-wide one.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/stats","href":"/api-reference/connected-orgs/get-connected-org-stats"}]},{"group":"graph","pages":[{"title":"Get the dependency graph (full org or subgraph anchored at a repo).","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/graph","href":"/api-reference/graph/get-the-dependency-graph-full-org-or-subgraph-anchored-at-a-repo"}]},{"group":"repositories","pages":[{"title":"List repositories discovered in a connected org.","description":"List all repositories discovered in a connected org.\n\nPaginated via ``limit`` / ``offset`` query params (default 100, max 500).\n``X-Total-Count`` response header carries the unfiltered row count.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/repositories","href":"/api-reference/repositories/list-repositories-discovered-in-a-connected-org"},{"title":"Resolve a clone URL or org/repo slug to a repository (pass exactly one of `url` or `full_path`).","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/lookup","href":"/api-reference/repositories/resolve-a-clone-url-or-orgrepo-slug-to-a-repository-pass-exactly-one-of-`url`-or-`full_path`"},{"title":"Get a single repository by ID, including freshness fields.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/{repo_id}","href":"/api-reference/repositories/get-a-single-repository-by-id-including-freshness-fields"},{"title":"Recommended first hydration call after `/lookup`: repo + capped deps + capped dependents + artifacts in one round-trip.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/{repo_id}/context","href":"/api-reference/repositories/recommended-first-hydration-call-after-`lookup`:-repo-+-capped-deps-+-capped-dependents-+-artifacts-in-one-round-trip"},{"title":"List the dependency declarations this repository makes.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/{repo_id}/dependencies","href":"/api-reference/repositories/list-the-dependency-declarations-this-repository-makes"},{"title":"List the repositories that directly depend on this repository.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/{repo_id}/dependents","href":"/api-reference/repositories/list-the-repositories-that-directly-depend-on-this-repository"},{"title":"Bus-factor signal + capped human contributors for one repo (spec §8).","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/{repo_id}/ownership","href":"/api-reference/repositories/bus-factor-signal-+-capped-human-contributors-for-one-repo-spec-§8"}]},{"group":"scans","pages":[{"title":"List Scans","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/connected-orgs/{connected_org_id}/scans","href":"/api-reference/scans/list-scans"},{"title":"Trigger Scan","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/connected-orgs/{connected_org_id}/scans","href":"/api-reference/scans/trigger-scan"},{"title":"Get Scan","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/scans/{scan_id}","href":"/api-reference/scans/get-scan"},{"title":"Cancel Scan","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/scans/{scan_id}/cancel","href":"/api-reference/scans/cancel-scan"}]},{"group":"invitations","pages":[{"title":"Preview Invitation","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/invitations/{token}","href":"/api-reference/invitations/preview-invitation"},{"title":"Accept Invitation","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/invitations/{token}/accept","href":"/api-reference/invitations/accept-invitation"},{"title":"List Invitations","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/invitations","href":"/api-reference/invitations/list-invitations"},{"title":"Create Invitation","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/invitations","href":"/api-reference/invitations/create-invitation"},{"title":"Revoke Invitation","deprecated":null,"version":null,"openapi":"/openapi.json delete /api/v1/workspaces/{workspace_id}/invitations/{invitation_id}","href":"/api-reference/invitations/revoke-invitation"}]},{"group":"impact","pages":[{"title":"Transitive downstream blast radius (repo-level BFS). NOT file-path scoped — accepts only `max_depth` + `min_confidence`.","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/repositories/{repo_id}/impact","href":"/api-reference/impact/transitive-downstream-blast-radius-repo-level-bfs-not-file-path-scoped-—-accepts-only-`max_depth`-+-`min_confidence`"}]},{"group":"workspaces","pages":[{"title":"List Workspaces","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces","href":"/api-reference/workspaces/list-workspaces"},{"title":"Create Workspace","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces","href":"/api-reference/workspaces/create-workspace"},{"title":"Create Workspace With Checkout","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/create-with-checkout","href":"/api-reference/workspaces/create-workspace-with-checkout"},{"title":"Get Workspace","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}","href":"/api-reference/workspaces/get-workspace"},{"title":"Update Workspace","deprecated":null,"version":null,"openapi":"/openapi.json put /api/v1/workspaces/{workspace_id}","href":"/api-reference/workspaces/update-workspace"},{"title":"Delete Workspace","deprecated":null,"version":null,"openapi":"/openapi.json delete /api/v1/workspaces/{workspace_id}","href":"/api-reference/workspaces/delete-workspace"},{"title":"Regenerate Api Key","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/api-key/regenerate","href":"/api-reference/workspaces/regenerate-api-key"},{"title":"Read the workspace's plan entitlements (any member)","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/entitlements","href":"/api-reference/workspaces/read-the-workspaces-plan-entitlements-any-member"},{"title":"Export Workspace","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/export","href":"/api-reference/workspaces/export-workspace"},{"title":"List Oauth Orgs","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/oauth-orgs/{provider}","href":"/api-reference/workspaces/list-oauth-orgs"},{"title":"Get Workspace Stats","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/stats","href":"/api-reference/workspaces/get-workspace-stats"},{"title":"Transfer Ownership","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/transfer","href":"/api-reference/workspaces/transfer-ownership"}]},{"group":"api-keys","pages":[{"title":"List Api Keys","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/api-keys","href":"/api-reference/api-keys/list-api-keys"},{"title":"Create Api Key","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/api-keys","href":"/api-reference/api-keys/create-api-key"},{"title":"Revoke Api Key","deprecated":null,"version":null,"openapi":"/openapi.json delete /api/v1/workspaces/{workspace_id}/api-keys/{key_id}","href":"/api-reference/api-keys/revoke-api-key"}]},{"group":"memberships","pages":[{"title":"Leave Workspace","deprecated":null,"version":null,"openapi":"/openapi.json post /api/v1/workspaces/{workspace_id}/leave","href":"/api-reference/memberships/leave-workspace"},{"title":"List Members","deprecated":null,"version":null,"openapi":"/openapi.json get /api/v1/workspaces/{workspace_id}/members","href":"/api-reference/memberships/list-members"},{"title":"Remove Member","deprecated":null,"version":null,"openapi":"/openapi.json delete /api/v1/workspaces/{workspace_id}/members/{user_id}","href":"/api-reference/memberships/remove-member"},{"title":"Update Member Role","deprecated":null,"version":null,"openapi":"/openapi.json patch /api/v1/workspaces/{workspace_id}/members/{user_id}","href":"/api-reference/memberships/update-member-role"}]},{"group":"meta","pages":[{"title":"Health","deprecated":null,"version":null,"openapi":"/openapi.json get /health","href":"/api-reference/meta/health"},{"title":"Health Detailed","deprecated":null,"version":null,"openapi":"/openapi.json get /health/detailed","href":"/api-reference/meta/health-detailed"},{"title":"Ready","deprecated":null,"version":null,"openapi":"/openapi.json get /ready","href":"/api-reference/meta/ready"}]}]}]}]},"basePath":"","title":"Get the dependency graph (full org or subgraph anchored at a repo). - Riftmap","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Myd8dsju.js","utils-C2HkQgW0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-8rSppmTv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B6MjiCFm.js","snippetPresets-DwrSAONL.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-1-a5UQKQ.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C541m7wZ.js","shallow-CWELCZ77.js","getApiPlaygroundDisplay-CTo5Zn03.js","CodeSnippet-D--dzvnl.js","CodeSnippets-DM3cXEDh.js","Page-CxAy5y67.js","getPastedJson-C-VECgcL.js","icon-BPq2-Mg3.js","MethodPill-D9J5cUHd.js","DuplicateIcon-BqHaxUnD.js","createIcon-CIbcZHp9.js","DynamicMarkdown-BKiHAm_d.js","SectionHeading-DstQXt3H.js","axios-vUo_bRtp.js","Markdown-CpxgzsKA.js","clsx-C5EfhVm0.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CJ9Oly2E.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Mk6P3qvh.js"]}