Graphiant · OpenAPI Overlay 1.0.0
API Evangelist enhancements for the Graphiant Portal REST API
6 actions
6 updates
documentation
extends
../openapi/_original/graphiant-portal-openapi-original.json
Derived by API Evangelist
Built from the contracts Graphiant publishes. Graphiant did not publish this file.
What the actions change
x-apievangelist-slugx-apievangelist-enrichedx-apievangelist-sourcex-api-bundle-versionx-contact-docsx-api-referencex-status-pagex-sla
Targets 3
$.info
$.servers[0]
$.components.securitySchemes.jwtAuth
OpenAPI Overlay
overlay: 1.0.0
info:
title: API Evangelist enhancements for the Graphiant Portal REST API
version: 1.0.0
extends: ../openapi/_original/graphiant-portal-openapi-original.json
x-provenance:
generated: '2026-08-01'
method: generated
source: openapi/graphiant-portal-openapi-original.json
note: >-
Captures the API Evangelist enrichment pass over the harvested Graphiant bundle
without mutating it. The harvested spec is verbatim from
Graphiant-Inc/graphiant-sdk-python@main api/graphiant_api_docs_v26.7.0.json. This
overlay records catalog metadata, the runtime semantics Graphiant documents in prose
but does not encode in the contract, and the three structural gaps the enrichment
pass found — no operationIds, no tags, no operation summaries. It deliberately does
NOT synthesise 525 operationIds or tag every operation: those are provider decisions,
and inventing them here would create identifiers the provider does not honour.
actions:
- target: $.info
update:
x-apievangelist-slug: graphiant
x-apievangelist-enriched: '2026-08-01'
x-apievangelist-source: https://github.com/Graphiant-Inc/graphiant-sdk-python/blob/main/api/graphiant_api_docs_v26.7.0.json
x-api-bundle-version: 26.7.0
x-contact-docs: https://docs.graphiant.com/docs/graphiant-portal-rest-api
x-api-reference: https://docs.graphiant.com/apidocs
x-status-page: https://status.graphiant.io/
x-sla: https://docs.graphiant.com/docs/graphiant-service-level-agreements-sla
x-trust-center: https://trust.graphiant.com/
x-changelog: https://github.com/Graphiant-Inc/graphiant-sdk-python/blob/main/CHANGELOG.md
- target: $.info
update:
x-apievangelist-artifacts:
authentication: authentication/graphiant-authentication.yml
conventions: conventions/graphiant-conventions.yml
errors: errors/graphiant-problem-types.yml
lifecycle: lifecycle/graphiant-lifecycle.yml
changelog: changelog/graphiant-changelog.yml
data_model: data-model/graphiant-data-model.yml
conformance: conformance/graphiant-conformance.yml
packages: packages/graphiant-packages.yml
cli: cli/graphiant-cli.yml
webhooks: asyncapi/graphiant-notifications-webhooks.yml
mcp: mcp/graphiant-mcp.yml
tool_crosswalk: mcp/graphiant-tool-crosswalk.yml
skills: skills/_index.yml
- target: $.info
update:
x-runtime-semantics:
auth_model: opaque bearer token in the `authorization` header
token_endpoint: POST /v1/auth/login
token_lifetime_seconds: 1800
token_refresh_endpoint: GET /v1/auth/refresh
token_revocation_endpoint: POST /v1/auth/logout
idempotency: none — no Idempotency-Key contract on any unsafe method
pagination: none — list operations return the full collection
rate_limit_signalling: none documented
request_id_header: none
error_envelope: 'proprietary: {errorCode, displayError, detailedError}'
timestamp_encoding: protobuf Timestamp objects {seconds, nanos}, UTC — not RFC 3339
async_writes: device configuration returns {jobId}; HTTP 200 means accepted, not
applied
tenancy: session-scoped enterprise context switched via GET /v1/auth/session
- target: $.info
update:
x-contract-gaps:
operation_ids: 0 of 525 operations declare an operationId
tags: 0 of 525 operations declare a tag; the document declares an empty tags array
summaries: 0 of 525 operations declare a summary
descriptions: 340 of 525 operations declare a description
error_responses: only 24 of 525 operations declare any 4xx or 5xx response
error_schemas: only 4 error responses reference a schema
examples: no request or response examples at the operation level
impact: >-
Without operationIds the generated SDKs fall back to path-derived method names
(v1_edges_summary_get), which become the de-facto operation identifiers used by
the CLI, the SDKs, this catalog and any tool layer built on top. They are stable
only while the path and method are stable.
remediation_for_graphiant: >-
Adding operationId, tags and summary to the source bundle would improve every
downstream generated artifact at once — SDK method names, docs navigation, MCP
tool naming — without any behavioural change to the API.
- target: $.servers[0]
update:
description: Graphiant Portal production API. Returns 403 to every anonymous
request, including /.well-known/* paths.
- target: $.components.securitySchemes.jwtAuth
update:
x-token-endpoint: POST /v1/auth/login
x-token-lifetime-seconds: 1800
x-token-refresh: GET /v1/auth/refresh
x-token-revocation: POST /v1/auth/logout
x-token-format: opaque, `gr-auth-` prefix followed by two UUIDs
x-single-header-warning: >-
send exactly one Authorization header; the generated clients warn that setting
both Configuration.api_key and the per-call authorization argument produces
duplicate headers that some gateways reject with 400
Work with this as data
Every overlay 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 openapi overlays
4 MCP tools reach this
find_overlaysBrowse and filter every overlay 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.
Call it yourself
curl for this page
This overlay
curl "https://apis.io/api/v1/overlays/graphiant-portal-overlay"
All openapi overlays
curl "https://apis.io/api/v1/overlays?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.