# Apigee API . organizations . environments . sharedflows . deployments

## Instance Methods

Close httplib2 connections.

Lists all deployments of a shared flow in an environment.

### Method Details

`close()`

    Close httplib2 connections.

`list(parent, x__xgafv=None)`

    Lists all deployments of a shared flow in an environment.

    Args:
      parent: string, Required. Name representing a shared flow in an environment in the following format: `organizations/{org}/environments/{env}/sharedflows/{sharedflow}` If the shared flow resource has the `space` attribute set, IAM permissions are checked differently . To learn more, read the [Apigee Spaces Overview](https://cloud.google.com/apigee/docs/api-platform/system-administration/spaces/apigee-spaces-overview). (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        {
      "deployments": [ # List of deployments.
        { # Deployment represents a deployment of an API proxy or shared flow.
          "apiProxy": "A String", # API proxy.
          "deployStartTime": "A String", # Time the API proxy was marked `deployed` in the control plane in millisconds since epoch.
          "environment": "A String", # Environment.
          "errors": [ # Errors reported for this deployment. Populated only when state == ERROR. **Note**: This field is displayed only when viewing deployment status.
            { # 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).
              "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.
            },
          ],
          "instances": [ # Status reported by each runtime instance. **Note**: This field is displayed only when viewing deployment status.
            { # The status of a deployment as reported by a single instance.
              "deployedRevisions": [ # Revisions currently deployed in MPs.
                { # Revisions deployed in the MPs.
                  "percentage": 42, # Percentage of MP replicas reporting this revision.
                  "revision": "A String", # API proxy revision reported as deployed.
                },
              ],
              "deployedRoutes": [ # Current routes deployed in the ingress routing table. A route which is missing will appear in `missing_routes`.
                { # Route deployed in the ingress routing table.
                  "basepath": "A String", # Base path in the routing table.
                  "envgroup": "A String", # Environment group where this route is installed.
                  "environment": "A String", # Destination environment. This will be empty if the route is not yet reported.
                  "percentage": 42, # Percentage of ingress replicas reporting this route.
                },
              ],
              "instance": "A String", # ID of the instance reporting the status.
            },
          ],
          "pods": [ # Status reported by runtime pods. **Note**: **This field is deprecated**. Runtime versions 1.3 and above report instance level status rather than pod status.
            {
              "appVersion": "A String", # Version of the application running in the pod.
              "deploymentStatus": "A String", # Status of the deployment. Valid values include: - `deployed`: Successful. - `error` : Failed. - `pending` : Pod has not yet reported on the deployment.
              "deploymentStatusTime": "A String", # Time the deployment status was reported in milliseconds since epoch.
              "deploymentTime": "A String", # Time the proxy was deployed in milliseconds since epoch.
              "podName": "A String", # Name of the pod which is reporting the status.
              "podStatus": "A String", # Overall status of the pod (not this specific deployment). Valid values include: - `active`: Up to date. - `stale` : Recently out of date. Pods that have not reported status in a long time are excluded from the output.
              "podStatusTime": "A String", # Time the pod status was reported in milliseconds since epoch.
              "statusCode": "A String", # Code associated with the deployment status.
              "statusCodeDetails": "A String", # Human-readable message associated with the status code.
            },
          ],
          "proxyDeploymentType": "A String", # Output only. The type of the deployment (standard or extensible) Deployed proxy revision will be marked as extensible in following 2 cases. 1. The deployed proxy revision uses extensible policies. 2. If a environment supports flowhooks and flow hook is configured.
          "revision": "A String", # API proxy revision.
          "routeConflicts": [ # Conflicts in the desired state routing configuration. The presence of conflicts does not cause the state to be `ERROR`, but it will mean that some of the deployment's base paths are not routed to its environment. If the conflicts change, the state will transition to `PROGRESSING` until the latest configuration is rolled out to all instances. **Note**: This field is displayed only when viewing deployment status.
            { # Describes a routing conflict that may cause a deployment not to receive traffic at some base path.
              "conflictingDeployment": { # Tuple representing a base path and the deployment containing it. # Existing base path/deployment causing the conflict.
                "apiProxy": "A String", # Name of the deployed API proxy revision containing the base path.
                "basepath": "A String", # Base path receiving traffic.
                "environment": "A String", # Name of the environment in which the proxy is deployed.
                "revision": "A String", # Name of the deployed API proxy revision containing the base path.
              },
              "description": "A String", # Human-readable description of this conflict.
              "environmentGroup": "A String", # Name of the environment group in which this conflict exists.
            },
          ],
          "serviceAccount": "A String", # The full resource name of Cloud IAM Service Account that this deployment is using, eg, `projects/-/serviceAccounts/{email}`.
          "state": "A String", # Current state of the deployment. **Note**: This field is displayed only when viewing deployment status.
        },
      ],
    }