# Apigee API . organizations . sharedflows . revisions

## Instance Methods

Returns the deployments Resource.

Close httplib2 connections.

Deletes a shared flow and all associated policies, resources, and revisions. You must undeploy the shared flow before deleting it.

Gets a revision of a shared flow. To download the shared flow configuration bundle for the specified revision as a zip file, set the `format` query parameter to `bundle`. If you are using curl, specify `-o filename.zip` to save the output to a file; otherwise, it displays to `stdout`. Then, develop the shared flow configuration locally and upload the updated sharedFlow configuration revision, as described in [updateSharedFlowRevision](updateSharedFlowRevision).

Updates a shared flow revision. This operation is only allowed on revisions which have never been deployed. After deployment a revision becomes immutable, even if it becomes undeployed. The payload is a ZIP-formatted shared flow. Content type must be either multipart/form-data or application/octet-stream.

### Method Details

`close()`

    Close httplib2 connections.

`delete(name, x__xgafv=None)`

    Deletes a shared flow and all associated policies, resources, and revisions. You must undeploy the shared flow before deleting it.

    Args:
      name: string, Required. The name of the shared flow revision to delete. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` If the Shared Flow resource has the `space` attribute set, IAM permissions are checked against the Space resource path. 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:

        { # The metadata describing a shared flow revision.
      "configurationVersion": { # Version of the API proxy configuration schema. Currently, only 4.0 is supported. # The version of the configuration schema to which this shared flow conforms. The only supported value currently is majorVersion 4 and minorVersion 0. This setting may be used in the future to enable evolution of the shared flow format.
        "majorVersion": 42, # Major version of the API proxy configuration schema.
        "minorVersion": 42, # Minor version of the API proxy configuration schema.
      },
      "contextInfo": "A String", # A textual description of the shared flow revision.
      "createdAt": "A String", # Time at which this shared flow revision was created, in milliseconds since epoch.
      "description": "A String", # Description of the shared flow revision.
      "displayName": "A String", # The human readable name of this shared flow.
      "entityMetaDataAsProperties": { # A Key-Value map of metadata about this shared flow revision.
        "a_key": "A String",
      },
      "lastModifiedAt": "A String", # Time at which this shared flow revision was most recently modified, in milliseconds since epoch.
      "name": "A String", # The resource ID of the parent shared flow.
      "policies": [ # A list of policy names included in this shared flow revision.
        "A String",
      ],
      "resourceFiles": { # List of resource files. # The resource files included in this shared flow revision.
        "resourceFile": [ # List of resource files.
          { # Metadata about a resource file.
            "name": "A String", # ID of the resource file.
            "type": "A String", # Resource file type. {{ resource_file_type }}
          },
        ],
      },
      "resources": [ # A list of the resources included in this shared flow revision formatted as "{type}://{name}".
        "A String",
      ],
      "revision": "A String", # The resource ID of this revision.
      "sharedFlows": [ # A list of the shared flow names included in this shared flow revision.
        "A String",
      ],
      "type": "A String", # The string "Application"
    }

`get(name, format=None, x__xgafv=None)`

    Gets a revision of a shared flow. To download the shared flow configuration bundle for the specified revision as a zip file, set the `format` query parameter to `bundle`. If you are using curl, specify `-o filename.zip` to save the output to a file; otherwise, it displays to `stdout`. Then, develop the shared flow configuration locally and upload the updated sharedFlow configuration revision, as described in [updateSharedFlowRevision](updateSharedFlowRevision).

    Args:
      name: string, Required. The name of the shared flow revision to get. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` If the Shared Flow resource has the `space` attribute set, IAM permissions are checked against the Space resource path. To learn more, read the [Apigee Spaces Overview](https://cloud.google.com/apigee/docs/api-platform/system-administration/spaces/apigee-spaces-overview). (required)
      format: string, Specify `bundle` to export the contents of the shared flow bundle. Otherwise, the bundle metadata is returned.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Message that represents an arbitrary HTTP body. It should only be used for payload formats that can't be represented as JSON, such as raw binary or an HTML page. This message can be used both in streaming and non-streaming API methods in the request as well as the response. It can be used as a top-level request field, which is convenient if one wants to extract parameters from either the URL or HTTP template into the request fields and also want access to the raw HTTP body. Example: message GetResourceRequest { // A unique request id. string request_id = 1; // The raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service ResourceService { rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming methods: service CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); } Use of this type only changes how the request and response bodies are handled, all other features will continue to work unchanged.
      "contentType": "A String", # The HTTP Content-Type header value specifying the content type of the body.
      "data": "A String", # The HTTP request/response body as raw binary.
      "extensions": [ # Application specific response metadata. Must be set in the first response for streaming APIs.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
    }

`updateSharedFlowRevision(name, body=None, validate=None, x__xgafv=None)`

    Updates a shared flow revision. This operation is only allowed on revisions which have never been deployed. After deployment a revision becomes immutable, even if it becomes undeployed. The payload is a ZIP-formatted shared flow. Content type must be either multipart/form-data or application/octet-stream.

    Args:
      name: string, Required. The name of the shared flow revision to update. Must be of the form: `organizations/{organization_id}/sharedflows/{shared_flow_id}/revisions/{revision_id}` If the resource has the `space` attribute set, IAM permissions are checked against the Space resource path. To learn more, read the [Apigee Spaces Overview](https://cloud.google.com/apigee/docs/api-platform/system-administration/spaces/apigee-spaces-overview). (required)
      body: object, The request body.
        The object takes the form of:

    { # Message that represents an arbitrary HTTP body. It should only be used for payload formats that can't be represented as JSON, such as raw binary or an HTML page. This message can be used both in streaming and non-streaming API methods in the request as well as the response. It can be used as a top-level request field, which is convenient if one wants to extract parameters from either the URL or HTTP template into the request fields and also want access to the raw HTTP body. Example: message GetResourceRequest { // A unique request id. string request_id = 1; // The raw HTTP body is bound to this field. google.api.HttpBody http_body = 2; } service ResourceService { rpc GetResource(GetResourceRequest) returns (google.api.HttpBody); rpc UpdateResource(google.api.HttpBody) returns (google.protobuf.Empty); } Example with streaming methods: service CaldavService { rpc GetCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); rpc UpdateCalendar(stream google.api.HttpBody) returns (stream google.api.HttpBody); } Use of this type only changes how the request and response bodies are handled, all other features will continue to work unchanged.
      "contentType": "A String", # The HTTP Content-Type header value specifying the content type of the body.
      "data": "A String", # The HTTP request/response body as raw binary.
      "extensions": [ # Application specific response metadata. Must be set in the first response for streaming APIs.
        {
          "a_key": "", # Properties of the object. Contains field @type with type URL.
        },
      ],
    }

      validate: boolean, Ignored. All uploads are validated regardless of the value of this field. It is kept for compatibility with existing APIs. Must be `true` or `false` if provided.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # The metadata describing a shared flow revision.
      "configurationVersion": { # Version of the API proxy configuration schema. Currently, only 4.0 is supported. # The version of the configuration schema to which this shared flow conforms. The only supported value currently is majorVersion 4 and minorVersion 0. This setting may be used in the future to enable evolution of the shared flow format.
        "majorVersion": 42, # Major version of the API proxy configuration schema.
        "minorVersion": 42, # Minor version of the API proxy configuration schema.
      },
      "contextInfo": "A String", # A textual description of the shared flow revision.
      "createdAt": "A String", # Time at which this shared flow revision was created, in milliseconds since epoch.
      "description": "A String", # Description of the shared flow revision.
      "displayName": "A String", # The human readable name of this shared flow.
      "entityMetaDataAsProperties": { # A Key-Value map of metadata about this shared flow revision.
        "a_key": "A String",
      },
      "lastModifiedAt": "A String", # Time at which this shared flow revision was most recently modified, in milliseconds since epoch.
      "name": "A String", # The resource ID of the parent shared flow.
      "policies": [ # A list of policy names included in this shared flow revision.
        "A String",
      ],
      "resourceFiles": { # List of resource files. # The resource files included in this shared flow revision.
        "resourceFile": [ # List of resource files.
          { # Metadata about a resource file.
            "name": "A String", # ID of the resource file.
            "type": "A String", # Resource file type. {{ resource_file_type }}
          },
        ],
      },
      "resources": [ # A list of the resources included in this shared flow revision formatted as "{type}://{name}".
        "A String",
      ],
      "revision": "A String", # The resource ID of this revision.
      "sharedFlows": [ # A list of the shared flow names included in this shared flow revision.
        "A String",
      ],
      "type": "A String", # The string "Application"
    }