# Apigee API . organizations . sharedflows . revisions

## Instance Methods

Returns the deployments Resource.

Deletes a shared flow and all associated policies, resources, and

Gets a revision of a shared flow.

Updates a shared flow revision. This operation is only allowed on revisions

### Method Details

`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}` (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.
        "name": "A String", # The resource ID of the parent shared flow.
        "resourceFiles": { # List of resource files. # The resource files included in this shared flow revision.
          "resourceFile": [ # List of resource files.
            { # Metadata about a resource file.
              "type": "A String", # Resource file type. {{ resource_file_type }}
              "name": "A String", # ID of the resource file.
            },
          ],
        },
        "type": "A String", # The string "Application"
        "configurationVersion": { # Version of the API proxy configuration schema. Currently, only 4.0 is # 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.
            # supported.
          "majorVersion": 42, # Major version of the API proxy configuration schema.
          "minorVersion": 42, # Minor version of the API proxy configuration schema.
        },
        "policies": [ # A list of policy names included in this shared flow revision.
          "A String",
        ],
        "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.
        "createdAt": "A String", # Time at which this shared flow revision was created, in milliseconds since
            # epoch.
        "contextInfo": "A String", # A textual description of the shared flow revision.
        "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",
        ],
        "displayName": "A String", # The human readable name of this shared flow.
        "resources": [ # A list of the resources included in this shared flow revision formatted as
            # "{type}://{name}".
          "A String",
        ],
      }

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

    Gets a revision of a shared flow.

    If `format=bundle` is passed, it instead outputs a shared flow revision as
    a ZIP-formatted bundle of code and config files.

    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}` (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.
          "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.
            },
          ],
          "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.
        }

`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}` (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.
        "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.
          },
        ],
        "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.
      }

      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.
        "name": "A String", # The resource ID of the parent shared flow.
        "resourceFiles": { # List of resource files. # The resource files included in this shared flow revision.
          "resourceFile": [ # List of resource files.
            { # Metadata about a resource file.
              "type": "A String", # Resource file type. {{ resource_file_type }}
              "name": "A String", # ID of the resource file.
            },
          ],
        },
        "type": "A String", # The string "Application"
        "configurationVersion": { # Version of the API proxy configuration schema. Currently, only 4.0 is # 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.
            # supported.
          "majorVersion": 42, # Major version of the API proxy configuration schema.
          "minorVersion": 42, # Minor version of the API proxy configuration schema.
        },
        "policies": [ # A list of policy names included in this shared flow revision.
          "A String",
        ],
        "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.
        "createdAt": "A String", # Time at which this shared flow revision was created, in milliseconds since
            # epoch.
        "contextInfo": "A String", # A textual description of the shared flow revision.
        "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",
        ],
        "displayName": "A String", # The human readable name of this shared flow.
        "resources": [ # A list of the resources included in this shared flow revision formatted as
            # "{type}://{name}".
          "A String",
        ],
      }