Providers

The Providers catalog tracks the external infrastructure and dependencies a customer’s system relies on — clouds (AWS, GCP), databases (Postgres, MySQL, ClickHouse), AI APIs (Anthropic, OpenAI), and the like. A Provider is a sibling to a Service: it carries a human description, an agent-authored deep-dive context, and its own observability surface (Objectives and triggered Investigations).

Service: firetiger.observability.v1.ProviderCatalogService

Resource name pattern: providers/{provider_id}

Access: Read-write

Methods

The standard AIP-compliant CRUD surface plus a recommendation-lifecycle surface is available. Request/response shapes are in proto/firetiger/observability/v1/providers.proto and follow the same patterns as other resources documented here (e.g. Services).

RPC HTTP
CreateProvider POST /v1/catalog/providers
GetProvider GET /v1/catalog/{name=providers/*}
ListProviders GET /v1/catalog/providers
UpdateProvider PATCH /v1/catalog/{provider.name=providers/*}
DeleteProvider DELETE /v1/catalog/{name=providers/*}
RecommendProvider POST /v1/catalog/providers:recommend
AcceptProvider POST /v1/catalog/{name=providers/*}:accept
ArchiveProvider POST /v1/catalog/{name=providers/*}:archive
RestoreProvider POST /v1/catalog/{name=providers/*}:restore
GetProviderRecommendations GET /v1/catalog/{name=providers/*}/recommendations
RecreateProviderExpertSession POST /v1/catalog/{name=providers/*}:recreateExpertSession

Recommendation lifecycle

Providers are first-class catalog resources that carry a state and flow through the same recommendation lifecycle as Services:

  • Detection stores newly-discovered Providers via RecommendProvider. The recommended Provider is persisted as a real resource in PROVIDER_STATE_RECOMMENDED and its Provider Expert is provisioned (best-effort) to answer questions and review coverage.
  • A customer accepts a recommendation (AcceptProvider) to promote it to PROVIDER_STATE_ACTIVE, or archives it (ArchiveProvider) to dismiss it into PROVIDER_STATE_ARCHIVED. Restore (RestoreProvider) brings an archived Provider back. User-created Providers default to PROVIDER_STATE_ACTIVE.

A Provider’s Objectives are ordinary Objectives that set owner_resource to the Provider’s name (providers/{provider}). Beyond the lifecycle RPCs, GetProviderRecommendations (see Recommended Connections) surfaces the Connection(s) recommended to observe a Provider. Provider Monitoring (running checks against a Provider) is a separate follow-up and not yet part of this API.

Recommendation metadata is carried on the resource itself: recommendation_confidence and recommendation_reasoning (see field table below).

GetProviderRecommendations (no side effects) returns, for the Provider’s provider_type, the Connection(s) recommended to observe it:

  • recommended_connection_typesConnectionType enum string keys (e.g. "CONNECTION_TYPE_POSTGRES") for the Connection(s) Firetiger needs to observe the Provider. Empty for “context only” Providers whose type Firetiger can’t yet connect to. String keys, not the typed enum, keep observability.v1 decoupled from connections.v1.

Provider Monitoring — running connection-gated health checks against a Provider — is a separate follow-up and is not yet exposed on this service.

Provider resource

Field Type Behavior Description
name string Output only Format: providers/{provider}
display_name string Required Short, scannable label shown in headers and Provider lists (1–200 chars)
description string Optional One-paragraph, human-facing overview of what the Provider is
context string Optional Long-form Markdown deep-dive read by agents (which Services depend on it, telemetry hints, known gotchas). Agent-proposed at recommend time; customer-editable
expert_session string Output only The per-Provider provider-expert agent session that answers questions and periodically reviews this Provider’s dependencies, Connections, telemetry, and Objectives. Format: agents/{agent}/sessions/{session}
provider_type ProviderType Optional The kind of Provider (AWS, Postgres, Anthropic, …). The typed join key to the brand logo and recommended Connections, resolved through a registry. See ProviderType
state ProviderState Output only Lifecycle state. User-created Providers default to PROVIDER_STATE_ACTIVE; detected Providers persist in PROVIDER_STATE_RECOMMENDED until accepted or archived. See ProviderState
recommendation_confidence RecommendationConfidence Optional Agent’s confidence in this recommendation. See RecommendationConfidence
recommendation_reasoning string Optional Free-text rationale for why this Provider was recommended
etag string Output only Optimistic-concurrency token returned by Get and required on Update; stale etags fail with ABORTED
create_time / update_time / delete_time timestamp Output only Standard AIP lifecycle timestamps

UpdateProvider is field-masked: send the Provider with an update_mask listing the paths to write (e.g. context). state, expert_session, and the other output-only fields are server-managed and ignored on Create/Update.

Enums

ProviderState

Value Description
PROVIDER_STATE_UNSPECIFIED Default zero value; not a valid persisted state
PROVIDER_STATE_RECOMMENDED Detected Provider awaiting accept/archive
PROVIDER_STATE_ACTIVE Accepted (or user-created) Provider
PROVIDER_STATE_ARCHIVED Dismissed recommendation; hidden from active views

RecommendationConfidence

Value Description
RECOMMENDATION_CONFIDENCE_UNSPECIFIED Confidence not set
RECOMMENDATION_CONFIDENCE_HIGH High confidence
RECOMMENDATION_CONFIDENCE_MEDIUM Medium confidence
RECOMMENDATION_CONFIDENCE_LOW Low confidence

ProviderType

The bounded taxonomy of Provider kinds. Independent of firetiger.connections.v1.ConnectionType — the ProviderType → ConnectionType / logo / catalog mapping lives in a registry. New kinds are added here as detection grows.

Group Values
Clouds / PaaS PROVIDER_TYPE_AWS, PROVIDER_TYPE_GCP, PROVIDER_TYPE_VERCEL, PROVIDER_TYPE_SUPABASE
Databases / data stores PROVIDER_TYPE_POSTGRES, PROVIDER_TYPE_MYSQL, PROVIDER_TYPE_CLICKHOUSE, PROVIDER_TYPE_ELASTICSEARCH
AI APIs PROVIDER_TYPE_ANTHROPIC, PROVIDER_TYPE_OPENAI, PROVIDER_TYPE_TOGETHER_AI

Notes

  • A Provider mirrors a Service’s recommendation shape, minus the Service-only breakdown Dimensions.
  • The Provider lifecycle RPCs manage the Provider resource only; provider Objectives and their triaged Investigations are owned by the provider monitoring work.

This site uses Just the Docs, a documentation theme for Jekyll.