# SAS Portal API (Testing) . customers

## Instance Methods

Returns the deployments Resource.

Returns the devices Resource.

Returns the nodes Resource.

Close httplib2 connections.

Returns a requested customer.

Returns a list of requested customers.

Returns a list of SAS deployments associated with current GCP project. Includes whether SAS analytics has been enabled or not.

Returns a list of legacy organizations.

Retrieves the next page of results.

Migrates a SAS organization to the cloud. This will create GCP projects for each deployment and associate them. The SAS Organization is linked to the gcp project that called the command. go/sas-legacy-customer-migration

Updates an existing customer.

Creates a new SAS deployment through the GCP workflow. Creates a SAS organization if an organization match is not found.

Setups the a GCP Project to receive SAS Analytics messages via GCP Pub/Sub with a subscription to BigQuery. All the Pub/Sub topics and BigQuery tables are created automatically as part of this service.

### Method Details

`close()`

    Close httplib2 connections.

`get(name, x__xgafv=None)`

    Returns a requested customer.

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

    Returns:
      An object of the form:

        { # Entity representing a SAS customer.
      "displayName": "A String", # Required. Name of the organization that the customer entity represents.
      "name": "A String", # Output only. Resource name of the customer.
      "sasUserIds": [ # User IDs used by the devices belonging to this customer.
        "A String",
      ],
    }

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

    Returns a list of requested customers.

    Args:
      pageSize: integer, The maximum number of customers to return in the response.
      pageToken: string, A pagination token returned from a previous call to ListCustomers that indicates where this listing should continue from.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response for `ListCustomers`.
      "customers": [ # The list of customers that match the request.
        { # Entity representing a SAS customer.
          "displayName": "A String", # Required. Name of the organization that the customer entity represents.
          "name": "A String", # Output only. Resource name of the customer.
          "sasUserIds": [ # User IDs used by the devices belonging to this customer.
            "A String",
          ],
        },
      ],
      "nextPageToken": "A String", # A pagination token returned from a previous call to ListCustomers that indicates from where listing should continue. If the field is missing or empty, it means there are no more customers.
    }

`listGcpProjectDeployments(x__xgafv=None)`

    Returns a list of SAS deployments associated with current GCP project. Includes whether SAS analytics has been enabled or not.

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

    Returns:
      An object of the form:

        { # Response for [ListGcpProjectDeployments].
      "deployments": [ # Optional. Deployments associated with the GCP project
        { # Deployment associated with the GCP project. Includes whether SAS analytics has been enabled or not.
          "deployment": { # The Deployment. # Deployment associated with the GCP project.
            "displayName": "A String", # The deployment's display name.
            "frns": [ # Output only. The FCC Registration Numbers (FRNs) copied from its direct parent.
              "A String",
            ],
            "name": "A String", # Output only. Resource name.
            "sasUserIds": [ # User ID used by the devices belonging to this deployment. Each deployment should be associated with one unique user ID.
              "A String",
            ],
          },
          "hasEnabledAnalytics": True or False, # Whether SAS analytics has been enabled.
        },
      ],
    }

`listLegacyOrganizations(x__xgafv=None)`

    Returns a list of legacy organizations.

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

    Returns:
      An object of the form:

        { # Response for [ListLegacyOrganizations]. [spectrum.sas.portal.v1alpha1.Provisioning.ListLegacyOrganizations].
      "organizations": [ # Optional. Legacy SAS organizations.
        { # Organization details.
          "displayName": "A String", # Name of organization
          "id": "A String", # Id of organization
        },
      ],
    }

`list_next()`

    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.

`migrateOrganization(body=None, x__xgafv=None)`

    Migrates a SAS organization to the cloud. This will create GCP projects for each deployment and associate them. The SAS Organization is linked to the gcp project that called the command. go/sas-legacy-customer-migration

    Args:
      body: object, The request body.
        The object takes the form of:

    { # Request for [MigrateOrganization]. [spectrum.sas.portal.v1alpha1.Provisioning.MigrateOrganization]. GCP Project, Organization Info, and caller's GAIA ID should be retrieved from the RPC handler, and used to check authorization on SAS Portal organization and to create GCP Projects.
      "organizationId": "A String", # Required. Id of the SAS organization to be migrated.
    }

      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, 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`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }

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

    Updates an existing customer.

    Args:
      name: string, Output only. Resource name of the customer. (required)
      body: object, The request body.
        The object takes the form of:

    { # Entity representing a SAS customer.
      "displayName": "A String", # Required. Name of the organization that the customer entity represents.
      "name": "A String", # Output only. Resource name of the customer.
      "sasUserIds": [ # User IDs used by the devices belonging to this customer.
        "A String",
      ],
    }

      updateMask: string, Fields to be updated.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Entity representing a SAS customer.
      "displayName": "A String", # Required. Name of the organization that the customer entity represents.
      "name": "A String", # Output only. Resource name of the customer.
      "sasUserIds": [ # User IDs used by the devices belonging to this customer.
        "A String",
      ],
    }

`provisionDeployment(body=None, x__xgafv=None)`

    Creates a new SAS deployment through the GCP workflow. Creates a SAS organization if an organization match is not found.

    Args:
      body: object, The request body.
        The object takes the form of:

    { # Request for [ProvisionDeployment]. [spectrum.sas.portal.v1alpha1.Provisioning.ProvisionDeployment]. GCP Project, Organization Info, and caller’s GAIA ID should be retrieved from the RPC handler, and used as inputs to create a new SAS organization (if not exists) and a new SAS deployment.
      "newDeploymentDisplayName": "A String", # Optional. If this field is set, and a new SAS Portal Deployment needs to be created, its display name will be set to the value of this field.
      "newOrganizationDisplayName": "A String", # Optional. If this field is set, and a new SAS Portal Organization needs to be created, its display name will be set to the value of this field.
      "organizationId": "A String", # Optional. If this field is set then a new deployment will be created under the organization specified by this id.
    }

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

    Returns:
      An object of the form:

        { # Response for [ProvisionDeployment]. [spectrum.sas.portal.v1alpha1.Provisioning.ProvisionDeployment].
      "errorMessage": "A String", # Optional. Optional error message if the provisioning request is not successful.
    }

`setupSasAnalytics(body=None, x__xgafv=None)`

    Setups the a GCP Project to receive SAS Analytics messages via GCP Pub/Sub with a subscription to BigQuery. All the Pub/Sub topics and BigQuery tables are created automatically as part of this service.

    Args:
      body: object, The request body.
        The object takes the form of:

    { # Request for the SetupSasAnalytics rpc.
      "userId": "A String", # Optional. User id to setup analytics for, if not provided the user id associated with the project is used. optional
    }

      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, 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`.
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    }