---
title: "GET /v1/projects/{projectsId}/locations/{locationsId}/discoveredApiObservations/{discoveredApiObservationsId}/discoveredApiOperations/{discoveredApiOperationsId}"
method: GET
path: "/v1/projects/{projectsId}/locations/{locationsId}/discoveredApiObservations/{discoveredApiObservationsId}/discoveredApiOperations/{discoveredApiOperationsId}"
tags: ["projects"]
---

# GET /v1/projects/{projectsId}/locations/{locationsId}/discoveredApiObservations/{discoveredApiObservationsId}/discoveredApiOperations/{discoveredApiOperationsId}

`GET /v1/projects/{projectsId}/locations/{locationsId}/discoveredApiObservations/{discoveredApiObservationsId}/discoveredApiOperations/{discoveredApiOperationsId}`

## Request

- Base URL: `https://apihub.googleapis.com`
- URL: `https://apihub.googleapis.com/v1/projects/{projectsId}/locations/{locationsId}/discoveredApiObservations/{discoveredApiObservationsId}/discoveredApiOperations/{discoveredApiOperationsId}`
- Auth: one of:
  - OAuth 2 and OAuth 2
    - Implicit: `https://accounts.google.com/o/oauth2/auth`
    - Scopes: `https://www.googleapis.com/auth/apihub.readonly`
    - Authorization code: `https://accounts.google.com/o/oauth2/auth`
    - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/apihub.readonly`
  - OAuth 2 and OAuth 2
    - Implicit: `https://accounts.google.com/o/oauth2/auth`
    - Scopes: `https://www.googleapis.com/auth/apihub.readwrite`
    - Authorization code: `https://accounts.google.com/o/oauth2/auth`
    - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/apihub.readwrite`
  - OAuth 2 and OAuth 2
    - Implicit: `https://accounts.google.com/o/oauth2/auth`
    - Scopes: `https://www.googleapis.com/auth/cloud-platform`
    - Authorization code: `https://accounts.google.com/o/oauth2/auth`
    - Token URL: `https://accounts.google.com/o/oauth2/token` scopes: `https://www.googleapis.com/auth/cloud-platform`
- TypeScript: <https://skmtc.dev/google/apis/apihub/docs/v1/projects/:projectsId/locations/:locationsId/discoveredApiObservations/:discoveredApiObservationsId/discoveredApiOperations/:discoveredApiOperationsId/get.ts> (a function with typed inputs; its response is checked against the schema)

Gets a DiscoveredAPIOperation in a given project, location, ApiObservation and ApiOperation.

## Path parameters

- `projectsId` string, required
- `locationsId` string, required
- `discoveredApiObservationsId` string, required
- `discoveredApiOperationsId` string, required

## Response `200`

Successful response

- GoogleCloudApihubV1DiscoveredApiOperation: DiscoveredApiOperation represents an API Operation observed in one of the sources.
  - `classification` 'CLASSIFICATION_UNSPECIFIED' | 'KNOWN' | 'UNKNOWN': Output only. The classification of the discovered API operation.
  - `count` string, int64: Optional. The number of occurrences of this API Operation.
  - `createTime` string, google-datetime: Output only. Create time stamp of the discovered API operation in API Hub.
  - `firstSeenTime` string, google-datetime: Optional. First seen time stamp
  - `httpOperation` GoogleCloudApihubV1HttpOperationDetails: An HTTP-based API Operation, sometimes called a "REST" Operation.
    - `httpOperation` GoogleCloudApihubV1HttpOperation: The HTTP Operation.
      - `method` 'METHOD_UNSPECIFIED' | 'GET' | 'PUT' | 'POST' | 'DELETE' | 'OPTIONS' | 'HEAD' | 'PATCH' | 'TRACE': Optional. Operation method Note: Even though this field is optional, it is required for CreateApiOperation API and we will fail the request if not provided.
      - `path` GoogleCloudApihubV1Path: The path details derived from the spec.
        - `description` string: Optional. A short description for the path applicable to all operations.
        - `path` string: Optional. Complete path relative to server endpoint. Note: Even though this field is optional, it is required for CreateApiOperation API and we will fail the request if not provided.
    - `pathParams` GoogleCloudApihubV1PathParam[]: Optional. Path params of HttpOperation
      - `dataType` 'DATA_TYPE_UNSPECIFIED' | 'BOOL' | 'INTEGER' | 'FLOAT' | 'STRING' | 'UUID': Optional. Data type of path param
      - `position` integer: Optional. Segment location in the path, 1-indexed
    - `queryParams` object: Optional. Query params of HttpOperation
    - `request` GoogleCloudApihubV1HttpRequest: An aggregation of HTTP requests.
      - `headers` object: Optional. Unordered map from header name to header metadata
    - `response` GoogleCloudApihubV1HttpResponse: An aggregation of HTTP responses.
      - `headers` object: Optional. Unordered map from header name to header metadata
      - `responseCodes` object: Optional. Map of status code to observed count
  - `lastSeenTime` string, google-datetime: Optional. Last seen time stamp
  - `matchResults` GoogleCloudApihubV1MatchResult[]: Output only. The list of matched results for the discovered API operation. This will be populated only if the classification is known. The current usecase is for a single match. Keeping it repeated to support multiple matches in future.
    - `name` string: Output only. The name of the matched API Operation. Format: `projects/{project}/locations/{location}/apis/{api}/versions/{version}/operations/{operation}`
  - `name` string: Identifier. The name of the discovered API Operation. Format: `projects/{project}/locations/{location}/discoveredApiObservations/{discovered_api_observation}/discoveredApiOperations/{discovered_api_operation}`
  - `sourceMetadata` GoogleCloudApihubV1SourceMetadata: SourceMetadata represents the metadata for a resource at the source.
    - `originalResourceCreateTime` string, google-datetime: Output only. The time at which the resource was created at the source.
    - `originalResourceId` string: Output only. The unique identifier of the resource at the source.
    - `originalResourceUpdateTime` string, google-datetime: Output only. The time at which the resource was last updated at the source.
    - `pluginInstanceActionSource` GoogleCloudApihubV1PluginInstanceActionSource: PluginInstanceActionSource represents the plugin instance action source.
      - `actionId` string: Output only. The id of the plugin instance action.
      - `pluginInstance` string: Output only. The resource name of the source plugin instance. Format is `projects/{project}/locations/{location}/plugins/{plugin}/instances/{instance}`
    - `sourceType` 'SOURCE_TYPE_UNSPECIFIED' | 'PLUGIN': Output only. The type of the source.
  - `updateTime` string, google-datetime: Output only. Update time stamp of the discovered API operation in API Hub.

## Changes

- **2026-11-08** `09b6c7d2247b`: 4 info
  - the security scope `https://www.googleapis.com/auth/apihub.readonly` was added to the endpoint's security scheme `Oauth2`
  - the security scope `https://www.googleapis.com/auth/apihub.readonly` was added to the endpoint's security scheme `Oauth2c`
  - the security scope `https://www.googleapis.com/auth/cloud-platform` was removed from the endpoint's security scheme `Oauth2`
  - the security scope `https://www.googleapis.com/auth/cloud-platform` was removed from the endpoint's security scheme `Oauth2c`

[Operation history](https://skmtc.dev/google/apis/apihub/changes/v1/projects/:projectsId/locations/:locationsId/discoveredApiObservations/:discoveredApiObservationsId/discoveredApiOperations/:discoveredApiOperationsId/get.md)

---

[API](https://skmtc.dev/google/apis/apihub.md) - [All operations](https://skmtc.dev/google/apis/apihub/llms.txt) - [OpenAPI document](https://skmtc.dev/google/apis/apihub/revisions/09b6c7d2247b?raw)
