...

Text file src/google.golang.org/api/firebaseml/v1beta2/firebaseml-api.json

Documentation: google.golang.org/api/firebaseml/v1beta2

     1{
     2  "auth": {
     3    "oauth2": {
     4      "scopes": {
     5        "https://www.googleapis.com/auth/cloud-platform": {
     6          "description": "See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account."
     7        }
     8      }
     9    }
    10  },
    11  "basePath": "",
    12  "baseUrl": "https://firebaseml.googleapis.com/",
    13  "batchPath": "batch",
    14  "canonicalName": "Firebase ML",
    15  "description": "Access custom machine learning models hosted via Firebase ML.",
    16  "discoveryVersion": "v1",
    17  "documentationLink": "https://firebase.google.com",
    18  "fullyEncodeReservedExpansion": true,
    19  "icons": {
    20    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    21    "x32": "http://www.google.com/images/icons/product/search-32.gif"
    22  },
    23  "id": "firebaseml:v1beta2",
    24  "kind": "discovery#restDescription",
    25  "mtlsRootUrl": "https://firebaseml.mtls.googleapis.com/",
    26  "name": "firebaseml",
    27  "ownerDomain": "google.com",
    28  "ownerName": "Google",
    29  "parameters": {
    30    "$.xgafv": {
    31      "description": "V1 error format.",
    32      "enum": [
    33        "1",
    34        "2"
    35      ],
    36      "enumDescriptions": [
    37        "v1 error format",
    38        "v2 error format"
    39      ],
    40      "location": "query",
    41      "type": "string"
    42    },
    43    "access_token": {
    44      "description": "OAuth access token.",
    45      "location": "query",
    46      "type": "string"
    47    },
    48    "alt": {
    49      "default": "json",
    50      "description": "Data format for response.",
    51      "enum": [
    52        "json",
    53        "media",
    54        "proto"
    55      ],
    56      "enumDescriptions": [
    57        "Responses with Content-Type of application/json",
    58        "Media download with context-dependent Content-Type",
    59        "Responses with Content-Type of application/x-protobuf"
    60      ],
    61      "location": "query",
    62      "type": "string"
    63    },
    64    "callback": {
    65      "description": "JSONP",
    66      "location": "query",
    67      "type": "string"
    68    },
    69    "fields": {
    70      "description": "Selector specifying which fields to include in a partial response.",
    71      "location": "query",
    72      "type": "string"
    73    },
    74    "key": {
    75      "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.",
    76      "location": "query",
    77      "type": "string"
    78    },
    79    "oauth_token": {
    80      "description": "OAuth 2.0 token for the current user.",
    81      "location": "query",
    82      "type": "string"
    83    },
    84    "prettyPrint": {
    85      "default": "true",
    86      "description": "Returns response with indentations and line breaks.",
    87      "location": "query",
    88      "type": "boolean"
    89    },
    90    "quotaUser": {
    91      "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.",
    92      "location": "query",
    93      "type": "string"
    94    },
    95    "uploadType": {
    96      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
    97      "location": "query",
    98      "type": "string"
    99    },
   100    "upload_protocol": {
   101      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
   102      "location": "query",
   103      "type": "string"
   104    }
   105  },
   106  "protocol": "rest",
   107  "resources": {
   108    "projects": {
   109      "resources": {
   110        "models": {
   111          "methods": {
   112            "create": {
   113              "description": "Creates a model in Firebase ML. The longrunning operation will eventually return a Model",
   114              "flatPath": "v1beta2/projects/{projectsId}/models",
   115              "httpMethod": "POST",
   116              "id": "firebaseml.projects.models.create",
   117              "parameterOrder": [
   118                "parent"
   119              ],
   120              "parameters": {
   121                "parent": {
   122                  "description": "Required. The parent project resource where the model is to be created. The parent must have the form `projects/{project_id}`",
   123                  "location": "path",
   124                  "pattern": "^projects/[^/]+$",
   125                  "required": true,
   126                  "type": "string"
   127                }
   128              },
   129              "path": "v1beta2/{+parent}/models",
   130              "request": {
   131                "$ref": "Model"
   132              },
   133              "response": {
   134                "$ref": "Operation"
   135              },
   136              "scopes": [
   137                "https://www.googleapis.com/auth/cloud-platform"
   138              ]
   139            },
   140            "delete": {
   141              "description": "Deletes a model",
   142              "flatPath": "v1beta2/projects/{projectsId}/models/{modelsId}",
   143              "httpMethod": "DELETE",
   144              "id": "firebaseml.projects.models.delete",
   145              "parameterOrder": [
   146                "name"
   147              ],
   148              "parameters": {
   149                "name": {
   150                  "description": "Required. The name of the model to delete. The name must have the form `projects/{project_id}/models/{model_id}`",
   151                  "location": "path",
   152                  "pattern": "^projects/[^/]+/models/[^/]+$",
   153                  "required": true,
   154                  "type": "string"
   155                }
   156              },
   157              "path": "v1beta2/{+name}",
   158              "response": {
   159                "$ref": "Empty"
   160              },
   161              "scopes": [
   162                "https://www.googleapis.com/auth/cloud-platform"
   163              ]
   164            },
   165            "download": {
   166              "description": "Gets Download information for a model. This is meant for downloading model resources onto devices. It gives very limited information about the model.",
   167              "flatPath": "v1beta2/projects/{projectsId}/models/{modelsId}:download",
   168              "httpMethod": "GET",
   169              "id": "firebaseml.projects.models.download",
   170              "parameterOrder": [
   171                "name"
   172              ],
   173              "parameters": {
   174                "name": {
   175                  "description": "Required. The name of the model to download. The name must have the form `projects/{project}/models/{model}`",
   176                  "location": "path",
   177                  "pattern": "^projects/[^/]+/models/[^/]+$",
   178                  "required": true,
   179                  "type": "string"
   180                }
   181              },
   182              "path": "v1beta2/{+name}:download",
   183              "response": {
   184                "$ref": "DownloadModelResponse"
   185              }
   186            },
   187            "get": {
   188              "description": "Gets a model resource.",
   189              "flatPath": "v1beta2/projects/{projectsId}/models/{modelsId}",
   190              "httpMethod": "GET",
   191              "id": "firebaseml.projects.models.get",
   192              "parameterOrder": [
   193                "name"
   194              ],
   195              "parameters": {
   196                "name": {
   197                  "description": "Required. The name of the model to get. The name must have the form `projects/{project_id}/models/{model_id}`",
   198                  "location": "path",
   199                  "pattern": "^projects/[^/]+/models/[^/]+$",
   200                  "required": true,
   201                  "type": "string"
   202                }
   203              },
   204              "path": "v1beta2/{+name}",
   205              "response": {
   206                "$ref": "Model"
   207              },
   208              "scopes": [
   209                "https://www.googleapis.com/auth/cloud-platform"
   210              ]
   211            },
   212            "list": {
   213              "description": "Lists the models",
   214              "flatPath": "v1beta2/projects/{projectsId}/models",
   215              "httpMethod": "GET",
   216              "id": "firebaseml.projects.models.list",
   217              "parameterOrder": [
   218                "parent"
   219              ],
   220              "parameters": {
   221                "filter": {
   222                  "description": "A filter for the list e.g. 'tags: abc' to list models which are tagged with \"abc\"",
   223                  "location": "query",
   224                  "type": "string"
   225                },
   226                "pageSize": {
   227                  "description": "The maximum number of items to return",
   228                  "format": "int32",
   229                  "location": "query",
   230                  "type": "integer"
   231                },
   232                "pageToken": {
   233                  "description": "The next_page_token value returned from a previous List request, if any.",
   234                  "location": "query",
   235                  "type": "string"
   236                },
   237                "parent": {
   238                  "description": "Required. The name of the parent to list models for. The parent must have the form `projects/{project_id}'",
   239                  "location": "path",
   240                  "pattern": "^projects/[^/]+$",
   241                  "required": true,
   242                  "type": "string"
   243                }
   244              },
   245              "path": "v1beta2/{+parent}/models",
   246              "response": {
   247                "$ref": "ListModelsResponse"
   248              },
   249              "scopes": [
   250                "https://www.googleapis.com/auth/cloud-platform"
   251              ]
   252            },
   253            "patch": {
   254              "description": "Updates a model. The longrunning operation will eventually return a Model.",
   255              "flatPath": "v1beta2/projects/{projectsId}/models/{modelsId}",
   256              "httpMethod": "PATCH",
   257              "id": "firebaseml.projects.models.patch",
   258              "parameterOrder": [
   259                "name"
   260              ],
   261              "parameters": {
   262                "name": {
   263                  "description": "The resource name of the Model. Model names have the form `projects/{project_id}/models/{model_id}` The name is ignored when creating a model.",
   264                  "location": "path",
   265                  "pattern": "^projects/[^/]+/models/[^/]+$",
   266                  "required": true,
   267                  "type": "string"
   268                },
   269                "updateMask": {
   270                  "description": "The update mask",
   271                  "format": "google-fieldmask",
   272                  "location": "query",
   273                  "type": "string"
   274                }
   275              },
   276              "path": "v1beta2/{+name}",
   277              "request": {
   278                "$ref": "Model"
   279              },
   280              "response": {
   281                "$ref": "Operation"
   282              },
   283              "scopes": [
   284                "https://www.googleapis.com/auth/cloud-platform"
   285              ]
   286            }
   287          }
   288        },
   289        "operations": {
   290          "methods": {
   291            "get": {
   292              "description": "Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.",
   293              "flatPath": "v1beta2/projects/{projectsId}/operations/{operationsId}",
   294              "httpMethod": "GET",
   295              "id": "firebaseml.projects.operations.get",
   296              "parameterOrder": [
   297                "name"
   298              ],
   299              "parameters": {
   300                "name": {
   301                  "description": "The name of the operation resource.",
   302                  "location": "path",
   303                  "pattern": "^projects/[^/]+/operations/[^/]+$",
   304                  "required": true,
   305                  "type": "string"
   306                }
   307              },
   308              "path": "v1beta2/{+name}",
   309              "response": {
   310                "$ref": "Operation"
   311              },
   312              "scopes": [
   313                "https://www.googleapis.com/auth/cloud-platform"
   314              ]
   315            }
   316          }
   317        }
   318      }
   319    }
   320  },
   321  "revision": "20230802",
   322  "rootUrl": "https://firebaseml.googleapis.com/",
   323  "schemas": {
   324    "DownloadModelResponse": {
   325      "description": "The response for downloading a model to device.",
   326      "id": "DownloadModelResponse",
   327      "properties": {
   328        "downloadUri": {
   329          "description": "Output only. A download URI for the model/zip file.",
   330          "readOnly": true,
   331          "type": "string"
   332        },
   333        "expireTime": {
   334          "description": "Output only. The time that the download URI link expires. If the link has expired, the REST call must be repeated.",
   335          "format": "google-datetime",
   336          "readOnly": true,
   337          "type": "string"
   338        },
   339        "modelFormat": {
   340          "description": "Output only. The format of the model being downloaded.",
   341          "enum": [
   342            "MODEL_FORMAT_UNSPECIFIED",
   343            "TFLITE"
   344          ],
   345          "enumDescriptions": [
   346            "Unknown format",
   347            "TFLite model"
   348          ],
   349          "readOnly": true,
   350          "type": "string"
   351        },
   352        "sizeBytes": {
   353          "description": "Output only. The size of the file(s), if this information is available.",
   354          "format": "int64",
   355          "readOnly": true,
   356          "type": "string"
   357        }
   358      },
   359      "type": "object"
   360    },
   361    "Empty": {
   362      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
   363      "id": "Empty",
   364      "properties": {},
   365      "type": "object"
   366    },
   367    "ListModelsResponse": {
   368      "description": "The response for list models",
   369      "id": "ListModelsResponse",
   370      "properties": {
   371        "models": {
   372          "description": "The list of models",
   373          "items": {
   374            "$ref": "Model"
   375          },
   376          "type": "array"
   377        },
   378        "nextPageToken": {
   379          "description": "Token to retrieve the next page of results, or empty if there are no more results in the list.",
   380          "type": "string"
   381        }
   382      },
   383      "type": "object"
   384    },
   385    "Model": {
   386      "description": "An ML model hosted in Firebase ML",
   387      "id": "Model",
   388      "properties": {
   389        "activeOperations": {
   390          "description": "Output only. Lists operation ids associated with this model whose status is NOT done.",
   391          "items": {
   392            "$ref": "Operation"
   393          },
   394          "readOnly": true,
   395          "type": "array"
   396        },
   397        "createTime": {
   398          "description": "Output only. Timestamp when this model was created in Firebase ML.",
   399          "format": "google-datetime",
   400          "readOnly": true,
   401          "type": "string"
   402        },
   403        "displayName": {
   404          "description": "Required. The name of the model to create. The name can be up to 32 characters long and can consist only of ASCII Latin letters A-Z and a-z, underscores(_) and ASCII digits 0-9. It must start with a letter.",
   405          "type": "string"
   406        },
   407        "etag": {
   408          "description": "Output only. See RFC7232 https://tools.ietf.org/html/rfc7232#section-2.3",
   409          "readOnly": true,
   410          "type": "string"
   411        },
   412        "modelHash": {
   413          "description": "Output only. The model_hash will change if a new file is available for download.",
   414          "readOnly": true,
   415          "type": "string"
   416        },
   417        "name": {
   418          "description": "The resource name of the Model. Model names have the form `projects/{project_id}/models/{model_id}` The name is ignored when creating a model.",
   419          "type": "string"
   420        },
   421        "state": {
   422          "$ref": "ModelState",
   423          "description": "State common to all model types. Includes publishing and validation information."
   424        },
   425        "tags": {
   426          "description": "User defined tags which can be used to group/filter models during listing",
   427          "items": {
   428            "type": "string"
   429          },
   430          "type": "array"
   431        },
   432        "tfliteModel": {
   433          "$ref": "TfLiteModel",
   434          "description": "A TFLite Model"
   435        },
   436        "updateTime": {
   437          "description": "Output only. Timestamp when this model was updated in Firebase ML.",
   438          "format": "google-datetime",
   439          "readOnly": true,
   440          "type": "string"
   441        }
   442      },
   443      "type": "object"
   444    },
   445    "ModelOperationMetadata": {
   446      "description": "This is returned in the longrunning operations for create/update.",
   447      "id": "ModelOperationMetadata",
   448      "properties": {
   449        "basicOperationStatus": {
   450          "enum": [
   451            "BASIC_OPERATION_STATUS_UNSPECIFIED",
   452            "BASIC_OPERATION_STATUS_UPLOADING",
   453            "BASIC_OPERATION_STATUS_VERIFYING"
   454          ],
   455          "enumDescriptions": [
   456            "The status is unspecified",
   457            "The model file is being uploaded",
   458            "The model file is being verified"
   459          ],
   460          "type": "string"
   461        },
   462        "name": {
   463          "description": "The name of the model we are creating/updating The name must have the form `projects/{project_id}/models/{model_id}`",
   464          "type": "string"
   465        }
   466      },
   467      "type": "object"
   468    },
   469    "ModelState": {
   470      "description": "State common to all model types. Includes publishing and validation information.",
   471      "id": "ModelState",
   472      "properties": {
   473        "published": {
   474          "description": "Indicates if this model has been published.",
   475          "type": "boolean"
   476        },
   477        "validationError": {
   478          "$ref": "Status",
   479          "description": "Output only. Indicates the latest validation error on the model if any. A model may have validation errors if there were problems during the model creation/update. e.g. in the case of a TfLiteModel, if a tflite model file was missing or in the wrong format. This field will be empty for valid models.",
   480          "readOnly": true
   481        }
   482      },
   483      "type": "object"
   484    },
   485    "Operation": {
   486      "description": "This resource represents a long-running operation that is the result of a network API call.",
   487      "id": "Operation",
   488      "properties": {
   489        "done": {
   490          "description": "If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.",
   491          "type": "boolean"
   492        },
   493        "error": {
   494          "$ref": "Status",
   495          "description": "The error result of the operation in case of failure or cancellation."
   496        },
   497        "metadata": {
   498          "additionalProperties": {
   499            "description": "Properties of the object. Contains field @type with type URL.",
   500            "type": "any"
   501          },
   502          "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.",
   503          "type": "object"
   504        },
   505        "name": {
   506          "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.",
   507          "type": "string"
   508        },
   509        "response": {
   510          "additionalProperties": {
   511            "description": "Properties of the object. Contains field @type with type URL.",
   512            "type": "any"
   513          },
   514          "description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
   515          "type": "object"
   516        }
   517      },
   518      "type": "object"
   519    },
   520    "Status": {
   521      "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors).",
   522      "id": "Status",
   523      "properties": {
   524        "code": {
   525          "description": "The status code, which should be an enum value of google.rpc.Code.",
   526          "format": "int32",
   527          "type": "integer"
   528        },
   529        "details": {
   530          "description": "A list of messages that carry the error details. There is a common set of message types for APIs to use.",
   531          "items": {
   532            "additionalProperties": {
   533              "description": "Properties of the object. Contains field @type with type URL.",
   534              "type": "any"
   535            },
   536            "type": "object"
   537          },
   538          "type": "array"
   539        },
   540        "message": {
   541          "description": "A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.",
   542          "type": "string"
   543        }
   544      },
   545      "type": "object"
   546    },
   547    "TfLiteModel": {
   548      "description": "Information that is specific to TfLite models.",
   549      "id": "TfLiteModel",
   550      "properties": {
   551        "automlModel": {
   552          "description": "The AutoML model id referencing a model you created with the AutoML API. The name should have format 'projects//locations//models/' (This is the model resource name returned from the AutoML API)",
   553          "type": "string"
   554        },
   555        "gcsTfliteUri": {
   556          "description": "The TfLite file containing the model. (Stored in Google Cloud). The gcs_tflite_uri should have form: gs://some-bucket/some-model.tflite Note: If you update the file in the original location, it is necessary to call UpdateModel for ML to pick up and validate the updated file.",
   557          "type": "string"
   558        },
   559        "sizeBytes": {
   560          "description": "Output only. The size of the TFLite model",
   561          "readOnly": true,
   562          "type": "string"
   563        }
   564      },
   565      "type": "object"
   566    }
   567  },
   568  "servicePath": "",
   569  "title": "Firebase ML API",
   570  "version": "v1beta2",
   571  "version_module": true
   572}

View as plain text