Cloud Private Catalog icon

Cloud Private Catalog

Enable cloud users to discover enterprise catalogs and products in their organizations

COMMUNITYBEARER0 INSTALLS
API Docs
OpenAPI Specificationv3.0
{
  "openapi": "3.0.0",
  "servers": [
    {
      "url": "https://cloudprivatecatalog.googleapis.com/"
    }
  ],
  "info": {
    "contact": {
      "name": "Google",
      "url": "https://google.com"
    },
    "description": "Enable cloud users to discover enterprise catalogs and products in their organizations.",
    "license": {
      "name": "Creative Commons Attribution 3.0",
      "url": "http://creativecommons.org/licenses/by/3.0/"
    },
    "termsOfService": "https://developers.google.com/terms/",
    "title": "Cloud Private Catalog",
    "version": "v1beta1",
    "x-apiClientRegistration": {
      "url": "https://console.developers.google.com"
    },
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_www.google.com_images_branding_googlelogo_2x_googlelogo_color_272x92dp.png"
    },
    "x-origin": [
      {
        "converter": {
          "url": "https://github.com/lucybot/api-spec-converter",
          "version": "2.7.31"
        },
        "format": "google",
        "url": "https://cloudprivatecatalog.googleapis.com/$discovery/rest?version=v1beta1",
        "version": "v1"
      }
    ],
    "x-providerName": "googleapis.com",
    "x-serviceName": "cloudprivatecatalog"
  },
  "externalDocs": {
    "url": "https://cloud.google.com/private-catalog/"
  },
  "tags": [
    {
      "name": "folders"
    },
    {
      "name": "projects"
    },
    {
      "name": "organizations"
    }
  ],
  "paths": {
    "/v1beta1/{resource}/catalogs:search": {
      "get": {
        "description": "Search Catalog resources that consumers have access to, within the\nscope of the consumer cloud resource hierarchy context.",
        "operationId": "cloudprivatecatalog.organizations.catalogs.search",
        "parameters": [
          {
            "description": "Required. The name of the resource context. It can be in following formats:\n\n* `projects/{project_id}`\n* `folders/{folder_id}`\n* `organizations/{organization_id}`",
            "in": "path",
            "name": "resource",
            "required": true,
            "schema": {
              "type": "string"
            },
            "x-reservedExpansion": true
          },
          {
            "description": "The maximum number of entries that are requested.",
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "A pagination token returned from a previous call to SearchCatalogs that\nindicates where this listing should continue from.\nThis field is optional.",
            "in": "query",
            "name": "pageToken",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The query to filter the catalogs. The supported queries are:\n\n* Get a single catalog: `name=catalogs/{catalog_id}`",
            "in": "query",
            "name": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleCloudPrivatecatalogV1beta1SearchCatalogsResponse"
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Oauth2": [
              "https://www.googleapis.com/auth/cloud-platform"
            ],
            "Oauth2c": [
              "https://www.googleapis.com/auth/cloud-platform"
            ]
          }
        ],
        "tags": [
          "organizations"
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/_.xgafv"
        },
        {
          "$ref": "#/components/parameters/oauth_token"
        },
        {
          "$ref": "#/components/parameters/callback"
        },
        {
          "$ref": "#/components/parameters/alt"
        },
        {
          "$ref": "#/components/parameters/key"
        },
        {
          "$ref": "#/components/parameters/access_token"
        },
        {
          "$ref": "#/components/parameters/upload_protocol"
        },
        {
          "$ref": "#/components/parameters/prettyPrint"
        },
        {
          "$ref": "#/components/parameters/quotaUser"
        },
        {
          "$ref": "#/components/parameters/fields"
        },
        {
          "$ref": "#/components/parameters/uploadType"
        }
      ]
    },
    "/v1beta1/{resource}/products:search": {
      "get": {
        "description": "Search Product resources that consumers have access to, within the\nscope of the consumer cloud resource hierarchy context.",
        "operationId": "cloudprivatecatalog.organizations.products.search",
        "parameters": [
          {
            "description": "Required. The name of the resource context. See\nSearchCatalogsRequest.resource for details.",
            "in": "path",
            "name": "resource",
            "required": true,
            "schema": {
              "type": "string"
            },
            "x-reservedExpansion": true
          },
          {
            "description": "The maximum number of entries that are requested.",
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "A pagination token returned from a previous call to SearchProducts that\nindicates where this listing should continue from.\nThis field is optional.",
            "in": "query",
            "name": "pageToken",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The query to filter the products.\n\nThe supported queries are:\n* List products of all catalogs: empty\n* List products under a catalog: `parent=catalogs/{catalog_id}`\n* Get a product by name:\n`name=catalogs/{catalog_id}/products/{product_id}`",
            "in": "query",
            "name": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleCloudPrivatecatalogV1beta1SearchProductsResponse"
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Oauth2": [
              "https://www.googleapis.com/auth/cloud-platform"
            ],
            "Oauth2c": [
              "https://www.googleapis.com/auth/cloud-platform"
            ]
          }
        ],
        "tags": [
          "organizations"
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/_.xgafv"
        },
        {
          "$ref": "#/components/parameters/oauth_token"
        },
        {
          "$ref": "#/components/parameters/callback"
        },
        {
          "$ref": "#/components/parameters/alt"
        },
        {
          "$ref": "#/components/parameters/key"
        },
        {
          "$ref": "#/components/parameters/access_token"
        },
        {
          "$ref": "#/components/parameters/upload_protocol"
        },
        {
          "$ref": "#/components/parameters/prettyPrint"
        },
        {
          "$ref": "#/components/parameters/quotaUser"
        },
        {
          "$ref": "#/components/parameters/fields"
        },
        {
          "$ref": "#/components/parameters/uploadType"
        }
      ]
    },
    "/v1beta1/{resource}/versions:search": {
      "get": {
        "description": "Search Version resources that consumers have access to, within the\nscope of the consumer cloud resource hierarchy context.",
        "operationId": "cloudprivatecatalog.organizations.versions.search",
        "parameters": [
          {
            "description": "Required. The name of the resource context. See\nSearchCatalogsRequest.resource for details.",
            "in": "path",
            "name": "resource",
            "required": true,
            "schema": {
              "type": "string"
            },
            "x-reservedExpansion": true
          },
          {
            "description": "The maximum number of entries that are requested.",
            "in": "query",
            "name": "pageSize",
            "schema": {
              "type": "integer"
            }
          },
          {
            "description": "A pagination token returned from a previous call to SearchVersions\nthat indicates where this listing should continue from.\nThis field is optional.",
            "in": "query",
            "name": "pageToken",
            "schema": {
              "type": "string"
            }
          },
          {
            "description": "The query to filter the versions. Required.\n\nThe supported queries are:\n* List versions under a product:\n`parent=catalogs/{catalog_id}/products/{product_id}`\n* Get a version by name:\n`name=catalogs/{catalog_id}/products/{product_id}/versions/{version_id}`",
            "in": "query",
            "name": "query",
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "content": {
              "*/*": {
                "schema": {
                  "$ref": "#/components/schemas/GoogleCloudPrivatecatalogV1beta1SearchVersionsResponse"
                }
              }
            },
            "description": "Successful response"
          }
        },
        "security": [
          {
            "Oauth2": [
              "https://www.googleapis.com/auth/cloud-platform"
            ],
            "Oauth2c": [
              "https://www.googleapis.com/auth/cloud-platform"
            ]
          }
        ],
        "tags": [
          "organizations"
        ]
      },
      "parameters": [
        {
          "$ref": "#/components/parameters/_.xgafv"
        },
        {
          "$ref": "#/components/parameters/oauth_token"
        },
        {
          "$ref": "#/components/parameters/callback"
        },
        {
          "$ref": "#/components/parameters/alt"
        },
        {
          "$ref": "#/components/parameters/key"
        },
        {
          "$ref": "#/components/parameters/access_token"
        },
        {
          "$ref": "#/components/parameters/upload_protocol"
        },
        {
          "$ref": "#/components/parameters/prettyPrint"
        },
        {
          "$ref": "#/components/parameters/quotaUser"
        },
        {
          "$ref": "#/components/parameters/fields"
        },
        {
          "$ref": "#/components/parameters/uploadType"
        }
      ]
    }
  },
  "components": {
    "parameters": {
      "_.xgafv": {
        "description": "V1 error format.",
        "in": "query",
        "name": "$.xgafv",
        "schema": {
          "enum": [
            "1",
            "2"
          ],
          "type": "string"
        }
      },
      "access_token": {
        "description": "OAuth access token.",
        "in": "query",
        "name": "access_token",
        "schema": {
          "type": "string"
        }
      },
      "alt": {
        "description": "Data format for response.",
        "in": "query",
        "name": "alt",
        "schema": {
          "default": "json",
          "enum": [
            "json",
            "media",
            "proto"
          ],
          "type": "string"
        }
      },
      "callback": {
        "description": "JSONP",
        "in": "query",
        "name": "callback",
        "schema": {
          "type": "string"
        }
      },
      "fields": {
        "description": "Selector specifying which fields to include in a partial response.",
        "in": "query",
        "name": "fields",
        "schema": {
          "type": "string"
        }
      },
      "key": {
        "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
        "in": "query",
        "name": "key",
        "schema": {
          "type": "string"
        }
      },
      "oauth_token": {
        "description": "OAuth 2.0 token for the current user.",
        "in": "query",
        "name": "oauth_token",
        "schema": {
          "type": "string"
        }
      },
      "prettyPrint": {
        "description": "Returns response with indentations and line breaks.",
        "in": "query",
        "name": "prettyPrint",
        "schema": {
          "default": true,
          "type": "boolean"
        }
      },
      "quotaUser": {
        "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
        "in": "query",
        "name": "quotaUser",
        "schema": {
          "type": "string"
        }
      },
      "uploadType": {
        "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
        "in": "query",
        "name": "uploadType",
        "schema": {
          "type": "string"
        }
      },
      "upload_protocol": {
        "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
        "in": "query",
        "name": "upload_protocol",
        "schema": {
          "type": "string"
        }
      }
    },
    "schemas": {
      "GoogleCloudPrivatecatalogV1beta1Catalog": {
        "description": "The readonly representation of a catalog computed with a given resource\ncontext.",
        "properties": {
          "createTime": {
            "description": "Output only. The time when the catalog was created.",
            "format": "google-datetime",
            "type": "string"
          },
          "description": {
            "description": "Output only. The description of the catalog.",
            "type": "string"
          },
          "displayName": {
            "description": "Output only. The descriptive name of the catalog as it appears in UIs.",
            "type": "string"
          },
          "name": {
            "description": "Output only. The resource name of the target catalog, in the format of\n`catalogs/{catalog_id}'.",
            "type": "string"
          },
          "updateTime": {
            "description": "Output only. The time when the catalog was last updated.",
            "format": "google-datetime",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleCloudPrivatecatalogV1beta1Product": {
        "description": "The readonly representation of a product computed with a given resource\ncontext.",
        "properties": {
          "assetType": {
            "description": "Output only. The type of the product asset. It can be one of the\nfollowing values:\n\n* `google.deploymentmanager.Template`\n* `google.cloudprivatecatalog.ListingOnly`",
            "type": "string"
          },
          "createTime": {
            "description": "Output only. The time when the product was created.",
            "format": "google-datetime",
            "type": "string"
          },
          "displayMetadata": {
            "additionalProperties": {
              "description": "Properties of the object."
            },
            "description": "Output only. The display metadata to describe the product.\nThe JSON schema of the metadata differs by Product.asset_type.\nWhen the type is `google.deploymentmanager.Template`, the schema is as\nfollows:\n\n```\n\"$schema\": http://json-schema.org/draft-04/schema#\ntype: object\nproperties:\n  name:\n    type: string\n    minLength: 1\n    maxLength: 64\n  description:\n    type: string\n    minLength: 1\n    maxLength: 2048\n  tagline:\n    type: string\n    minLength: 1\n    maxLength: 100\n  support_info:\n    type: string\n    minLength: 1\n    maxLength: 2048\n  creator:\n    type: string\n    minLength: 1\n    maxLength: 100\n  documentation:\n    type: array\n    items:\n      type: object\n      properties:\n        url:\n          type: string\n          pattern:\n          \"^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]\"\n        title:\n          type: string\n          minLength: 1\n          maxLength: 64\n        description:\n          type: string\n          minLength: 1\n          maxLength: 2048\nrequired:\n- name\n- description\nadditionalProperties: false\n\n```\n\nWhen the asset type is `google.cloudprivatecatalog.ListingOnly`, the schema\nis as follows:\n\n```\n\"$schema\": http://json-schema.org/draft-04/schema#\ntype: object\nproperties:\n  name:\n    type: string\n    minLength: 1\n    maxLength: 64\n  description:\n    type: string\n    minLength: 1\n    maxLength: 2048\n  tagline:\n    type: string\n    minLength: 1\n    maxLength: 100\n  support_info:\n    type: string\n    minLength: 1\n    maxLength: 2048\n  creator:\n    type: string\n    minLength: 1\n    maxLength: 100\n  documentation:\n    type: array\n    items:\n      type: object\n      properties:\n        url:\n          type: string\n          pattern:\n          \"^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]\"\n        title:\n          type: string\n          minLength: 1\n          maxLength: 64\n        description:\n          type: string\n          minLength: 1\n          maxLength: 2048\n  signup_url:\n    type: string\n    pattern:\n    \"^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]\"\nrequired:\n- name\n- description\n- signup_url\nadditionalProperties: false\n```",
            "type": "object"
          },
          "iconUri": {
            "description": "Output only. The icon URI of the product.",
            "type": "string"
          },
          "name": {
            "description": "Output only. The resource name of the target product, in the format of\n`products/a-z*[a-z0-9]'.\n\nA unique identifier for the product under a catalog.",
            "type": "string"
          },
          "updateTime": {
            "description": "Output only. The time when the product was last updated.",
            "format": "google-datetime",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleCloudPrivatecatalogV1beta1SearchCatalogsResponse": {
        "description": "Response message for PrivateCatalog.SearchCatalogs.",
        "properties": {
          "catalogs": {
            "description": "The `Catalog`s computed from the resource context.",
            "items": {
              "$ref": "#/components/schemas/GoogleCloudPrivatecatalogV1beta1Catalog"
            },
            "type": "array"
          },
          "nextPageToken": {
            "description": "A pagination token returned from a previous call to SearchCatalogs that\nindicates from where listing should continue.\nThis field is optional.",
            "type": "string"
          }
        },
        "type": "object"
      },
      "GoogleCloudPrivatecatalogV1beta1SearchProductsResponse": {
        "description": "Response message for PrivateCatalog.SearchProducts.",
        "properties": {
          "nextPageToken": {
            "description": "A pagination token returned from a previous call to SearchProducts that\nindicates from where listing should continue.\nThis field is optional.",
            "type": "string"
          },
          "products": {
            "description": "The `Product` resources computed from the resource context.",
            "items": {
              "$ref": "#/components/schemas/GoogleCloudPrivatecatalogV1beta1Product"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleCloudPrivatecatalogV1beta1SearchVersionsResponse": {
        "description": "Response message for PrivateCatalog.SearchVersions.",
        "properties": {
          "nextPageToken": {
            "description": "A pagination token returned from a previous call to SearchVersions that\nindicates from where the listing should continue.\nThis field is optional.",
            "type": "string"
          },
          "versions": {
            "description": "The `Version` resources computed from the resource context.",
            "items": {
              "$ref": "#/components/schemas/GoogleCloudPrivatecatalogV1beta1Version"
            },
            "type": "array"
          }
        },
        "type": "object"
      },
      "GoogleCloudPrivatecatalogV1beta1Version": {
        "description": "The consumer representation of a version which is a child resource under a\n`Product` with asset data.",
        "properties": {
          "asset": {
            "additionalProperties": {
              "description": "Properties of the object."
            },
            "description": "Output only. The asset which has been validated and is ready to be\nprovisioned. See\ngoogle.cloud.privatecatalogproducer.v1beta.Version.asset for details.",
            "type": "object"
          },
          "createTime": {
            "description": "Output only. The time when the version was created.",
            "format": "google-datetime",
            "type": "string"
          },
          "description": {
            "description": "Output only. The user-supplied description of the version. Maximum of 256\ncharacters.",
            "type": "string"
          },
          "name": {
            "description": "Output only. The resource name of the version, in the format\n`catalogs/{catalog_id}/products/{product_id}/versions/a-z*[a-z0-9]'.\n\nA unique identifier for the version under a product.",
            "type": "string"
          },
          "updateTime": {
            "description": "Output only. The time when the version was last updated.",
            "format": "google-datetime",
            "type": "string"
          }
        },
        "type": "object"
      }
    },
    "securitySchemes": {
      "Oauth2": {
        "description": "Oauth 2.0 implicit authentication",
        "flows": {
          "implicit": {
            "authorizationUrl": "https://accounts.google.com/o/oauth2/auth",
            "scopes": {
              "https://www.googleapis.com/auth/cloud-platform": "View and manage your data across Google Cloud Platform services"
            }
          }
        },
        "type": "oauth2"
      },
      "Oauth2c": {
        "description": "Oauth 2.0 accessCode authentication",
        "flows": {
          "authorizationCode": {
            "authorizationUrl": "https://accounts.google.com/o/oauth2/auth",
            "scopes": {
              "https://www.googleapis.com/auth/cloud-platform": "View and manage your data across Google Cloud Platform services"
            },
            "tokenUrl": "https://accounts.google.com/o/oauth2/token"
          }
        },
        "type": "oauth2"
      }
    }
  }
}