# Cloud Build API . projects . locations . bitbucketServerConfigs

## Instance Methods

Returns the connectedRepositories Resource.

Returns the repos Resource.

Add a Bitbucket Server repository to a given BitbucketServerConfig's connected repositories. This API is experimental.

Close httplib2 connections.

Creates a new `BitbucketServerConfig`. This API is experimental.

Delete a `BitbucketServerConfig`. This API is experimental.

Retrieve a `BitbucketServerConfig`. This API is experimental.

List all `BitbucketServerConfigs` for a given project. This API is experimental.

Retrieves the next page of results.

Updates an existing `BitbucketServerConfig`. This API is experimental.

Remove a Bitbucket Server repository from an given BitbucketServerConfig’s connected repositories. This API is experimental.

### Method Details

`addBitbucketServerConnectedRepository(config, body=None, x__xgafv=None)`

    Add a Bitbucket Server repository to a given BitbucketServerConfig's connected repositories. This API is experimental.

    Args:
      config: string, Required. The name of the `BitbucketServerConfig` to add a connected repository. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{config}` (required)
      body: object, The request body.
        The object takes the form of:

    { # RPC request object accepted by the AddBitbucketServerConnectedRepository RPC method.
      "connectedRepository": { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server. # The connected repository to add.
        "projectKey": "A String", # Required. Identifier for the project storing the repository.
        "repoSlug": "A String", # Required. Identifier for the repository.
        "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # RPC request object returned by the AddBitbucketServerConnectedRepository RPC method.
      "config": "A String", # The name of the `BitbucketServerConfig` that added connected repository. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{config}`
      "connectedRepository": { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server. # The connected repository.
        "projectKey": "A String", # Required. Identifier for the project storing the repository.
        "repoSlug": "A String", # Required. Identifier for the repository.
        "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
      },
    }

`close()`

    Close httplib2 connections.

`create(parent, bitbucketServerConfigId=None, body=None, x__xgafv=None)`

    Creates a new `BitbucketServerConfig`. This API is experimental.

    Args:
      parent: string, Required. Name of the parent resource. (required)
      body: object, The request body.
        The object takes the form of:

    { # BitbucketServerConfig represents the configuration for a Bitbucket Server.
      "apiKey": "A String", # Required. Immutable. API Key that will be attached to webhook. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      "connectedRepositories": [ # Output only. Connected Bitbucket Server repositories for this config.
        { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server.
          "projectKey": "A String", # Required. Identifier for the project storing the repository.
          "repoSlug": "A String", # Required. Identifier for the repository.
          "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
        },
      ],
      "createTime": "A String", # Time when the config was created.
      "hostUri": "A String", # Required. Immutable. The URI of the Bitbucket Server host. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      "name": "A String", # The resource name for the config.
      "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the Bitbucket Server instance. The VPC network must be enabled for private service connection. This should be set if the Bitbucket Server instance is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the Bitbucket Server instance will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
      "secrets": { # BitbucketServerSecrets represents the secrets in Secret Manager for a Bitbucket Server. # Required. Secret Manager secrets needed by the config.
        "adminAccessTokenVersionName": "A String", # Required. The resource name for the admin access token's secret version.
        "readAccessTokenVersionName": "A String", # Required. The resource name for the read access token's secret version.
        "webhookSecretVersionName": "A String", # Required. Immutable. The resource name for the webhook secret's secret version. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      },
      "sslCa": "A String", # Optional. SSL certificate to use for requests to Bitbucket Server. The format should be PEM format but the extension can be one of .pem, .cer, or .crt.
      "username": "A String", # Username of the account Cloud Build will use on Bitbucket Server.
      "webhookKey": "A String", # Output only. UUID included in webhook requests. The UUID is used to look up the corresponding config.
    }

      bitbucketServerConfigId: string, Optional. The ID to use for the BitbucketServerConfig, which will become the final component of the BitbucketServerConfig's resource name. bitbucket_server_config_id must meet the following requirements: + They must contain only alphanumeric characters and dashes. + They can be 1-64 characters long. + They must begin and end with an alphanumeric character.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
      "done": True or False, # 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.
      "error": { # 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). # The error result of the operation in case of failure or cancellation.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # 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.
      },
      "metadata": { # 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.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
      "name": "A String", # 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}`.
      "response": { # The normal response of the operation in case of success. 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`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }

`delete(name, x__xgafv=None)`

    Delete a `BitbucketServerConfig`. This API is experimental.

    Args:
      name: string, Required. The config resource name. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
      "done": True or False, # 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.
      "error": { # 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). # The error result of the operation in case of failure or cancellation.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # 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.
      },
      "metadata": { # 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.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
      "name": "A String", # 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}`.
      "response": { # The normal response of the operation in case of success. 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`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }

`get(name, x__xgafv=None)`

    Retrieve a `BitbucketServerConfig`. This API is experimental.

    Args:
      name: string, Required. The config resource name. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # BitbucketServerConfig represents the configuration for a Bitbucket Server.
      "apiKey": "A String", # Required. Immutable. API Key that will be attached to webhook. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      "connectedRepositories": [ # Output only. Connected Bitbucket Server repositories for this config.
        { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server.
          "projectKey": "A String", # Required. Identifier for the project storing the repository.
          "repoSlug": "A String", # Required. Identifier for the repository.
          "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
        },
      ],
      "createTime": "A String", # Time when the config was created.
      "hostUri": "A String", # Required. Immutable. The URI of the Bitbucket Server host. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      "name": "A String", # The resource name for the config.
      "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the Bitbucket Server instance. The VPC network must be enabled for private service connection. This should be set if the Bitbucket Server instance is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the Bitbucket Server instance will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
      "secrets": { # BitbucketServerSecrets represents the secrets in Secret Manager for a Bitbucket Server. # Required. Secret Manager secrets needed by the config.
        "adminAccessTokenVersionName": "A String", # Required. The resource name for the admin access token's secret version.
        "readAccessTokenVersionName": "A String", # Required. The resource name for the read access token's secret version.
        "webhookSecretVersionName": "A String", # Required. Immutable. The resource name for the webhook secret's secret version. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      },
      "sslCa": "A String", # Optional. SSL certificate to use for requests to Bitbucket Server. The format should be PEM format but the extension can be one of .pem, .cer, or .crt.
      "username": "A String", # Username of the account Cloud Build will use on Bitbucket Server.
      "webhookKey": "A String", # Output only. UUID included in webhook requests. The UUID is used to look up the corresponding config.
    }

`list(parent, pageSize=None, pageToken=None, x__xgafv=None)`

    List all `BitbucketServerConfigs` for a given project. This API is experimental.

    Args:
      parent: string, Required. Name of the parent resource. (required)
      pageSize: integer, The maximum number of configs to return. The service may return fewer than this value. If unspecified, at most 50 configs will be returned. The maximum value is 1000; values above 1000 will be coerced to 1000.
      pageToken: string, A page token, received from a previous `ListBitbucketServerConfigsRequest` call. Provide this to retrieve the subsequent page. When paginating, all other parameters provided to `ListBitbucketServerConfigsRequest` must match the call that provided the page token.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # RPC response object returned by ListBitbucketServerConfigs RPC method.
      "bitbucketServerConfigs": [ # A list of BitbucketServerConfigs
        { # BitbucketServerConfig represents the configuration for a Bitbucket Server.
          "apiKey": "A String", # Required. Immutable. API Key that will be attached to webhook. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
          "connectedRepositories": [ # Output only. Connected Bitbucket Server repositories for this config.
            { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server.
              "projectKey": "A String", # Required. Identifier for the project storing the repository.
              "repoSlug": "A String", # Required. Identifier for the repository.
              "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
            },
          ],
          "createTime": "A String", # Time when the config was created.
          "hostUri": "A String", # Required. Immutable. The URI of the Bitbucket Server host. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
          "name": "A String", # The resource name for the config.
          "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the Bitbucket Server instance. The VPC network must be enabled for private service connection. This should be set if the Bitbucket Server instance is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the Bitbucket Server instance will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
          "secrets": { # BitbucketServerSecrets represents the secrets in Secret Manager for a Bitbucket Server. # Required. Secret Manager secrets needed by the config.
            "adminAccessTokenVersionName": "A String", # Required. The resource name for the admin access token's secret version.
            "readAccessTokenVersionName": "A String", # Required. The resource name for the read access token's secret version.
            "webhookSecretVersionName": "A String", # Required. Immutable. The resource name for the webhook secret's secret version. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
          },
          "sslCa": "A String", # Optional. SSL certificate to use for requests to Bitbucket Server. The format should be PEM format but the extension can be one of .pem, .cer, or .crt.
          "username": "A String", # Username of the account Cloud Build will use on Bitbucket Server.
          "webhookKey": "A String", # Output only. UUID included in webhook requests. The UUID is used to look up the corresponding config.
        },
      ],
      "nextPageToken": "A String", # A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages.
    }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`patch(name, body=None, updateMask=None, x__xgafv=None)`

    Updates an existing `BitbucketServerConfig`. This API is experimental.

    Args:
      name: string, The resource name for the config. (required)
      body: object, The request body.
        The object takes the form of:

    { # BitbucketServerConfig represents the configuration for a Bitbucket Server.
      "apiKey": "A String", # Required. Immutable. API Key that will be attached to webhook. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      "connectedRepositories": [ # Output only. Connected Bitbucket Server repositories for this config.
        { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server.
          "projectKey": "A String", # Required. Identifier for the project storing the repository.
          "repoSlug": "A String", # Required. Identifier for the repository.
          "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
        },
      ],
      "createTime": "A String", # Time when the config was created.
      "hostUri": "A String", # Required. Immutable. The URI of the Bitbucket Server host. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      "name": "A String", # The resource name for the config.
      "peeredNetwork": "A String", # Optional. The network to be used when reaching out to the Bitbucket Server instance. The VPC network must be enabled for private service connection. This should be set if the Bitbucket Server instance is hosted on-premises and not reachable by public internet. If this field is left empty, no network peering will occur and calls to the Bitbucket Server instance will be made over the public internet. Must be in the format `projects/{project}/global/networks/{network}`, where {project} is a project number or id and {network} is the name of a VPC network in the project.
      "secrets": { # BitbucketServerSecrets represents the secrets in Secret Manager for a Bitbucket Server. # Required. Secret Manager secrets needed by the config.
        "adminAccessTokenVersionName": "A String", # Required. The resource name for the admin access token's secret version.
        "readAccessTokenVersionName": "A String", # Required. The resource name for the read access token's secret version.
        "webhookSecretVersionName": "A String", # Required. Immutable. The resource name for the webhook secret's secret version. Once this field has been set, it cannot be changed. If you need to change it, please create another BitbucketServerConfig.
      },
      "sslCa": "A String", # Optional. SSL certificate to use for requests to Bitbucket Server. The format should be PEM format but the extension can be one of .pem, .cer, or .crt.
      "username": "A String", # Username of the account Cloud Build will use on Bitbucket Server.
      "webhookKey": "A String", # Output only. UUID included in webhook requests. The UUID is used to look up the corresponding config.
    }

      updateMask: string, Update mask for the resource. If this is set, the server will only update the fields specified in the field mask. Otherwise, a full update of the mutable resource fields will be performed.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # This resource represents a long-running operation that is the result of a network API call.
      "done": True or False, # 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.
      "error": { # 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). # The error result of the operation in case of failure or cancellation.
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "message": "A String", # 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.
      },
      "metadata": { # 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.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
      "name": "A String", # 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}`.
      "response": { # The normal response of the operation in case of success. 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`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }

`removeBitbucketServerConnectedRepository(config, body=None, x__xgafv=None)`

    Remove a Bitbucket Server repository from an given BitbucketServerConfig’s connected repositories. This API is experimental.

    Args:
      config: string, Required. The name of the `BitbucketServerConfig` to remove a connected repository. Format: `projects/{project}/locations/{location}/bitbucketServerConfigs/{config}` (required)
      body: object, The request body.
        The object takes the form of:

    { # RPC request object accepted by RemoveBitbucketServerConnectedRepository RPC method.
      "connectedRepository": { # BitbucketServerRepositoryId identifies a specific repository hosted on a Bitbucket Server. # The connected repository to remove.
        "projectKey": "A String", # Required. Identifier for the project storing the repository.
        "repoSlug": "A String", # Required. Identifier for the repository.
        "webhookId": 42, # Output only. The ID of the webhook that was created for receiving events from this repo. We only create and manage a single webhook for each repo.
      },
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # 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); } The JSON representation for `Empty` is empty JSON object `{}`.
    }