generated/google/apis/cloudresourcemanager_v1beta1/classes.rb in google-api-client-0.12.0 vs generated/google/apis/cloudresourcemanager_v1beta1/classes.rb in google-api-client-0.13.0

- old
+ new

@@ -20,10 +20,290 @@ module Google module Apis module CloudresourcemanagerV1beta1 + # The request sent to the + # GetAncestry + # method. + class GetAncestryRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # A Project is a high-level Google Cloud Platform entity. It is a + # container for ACLs, APIs, App Engine Apps, VMs, and other + # Google Cloud Platform resources. + class Project + include Google::Apis::Core::Hashable + + # The number uniquely identifying the project. + # Example: <code>415104041262</code> + # Read-only. + # Corresponds to the JSON property `projectNumber` + # @return [Fixnum] + attr_accessor :project_number + + # A container to reference an id for any resource type. A `resource` in Google + # Cloud Platform is a generic term for something you (a developer) may want to + # interact with through one of our API's. Some examples are an App Engine app, + # a Compute Engine instance, a Cloud SQL database, and so on. + # Corresponds to the JSON property `parent` + # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId] + attr_accessor :parent + + # Creation time. + # Read-only. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The labels associated with this Project. + # Label keys must be between 1 and 63 characters long and must conform + # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. + # Label values must be between 0 and 63 characters long and must conform + # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. + # No more than 256 labels can be associated with a given resource. + # Clients should store labels in a representation such as JSON that does not + # depend on specific characters being disallowed. + # Example: <code>"environment" : "dev"</code> + # Read-write. + # Corresponds to the JSON property `labels` + # @return [Hash<String,String>] + attr_accessor :labels + + # The user-assigned display name of the Project. + # It must be 4 to 30 characters. + # Allowed characters are: lowercase and uppercase letters, numbers, + # hyphen, single-quote, double-quote, space, and exclamation point. + # Example: <code>My Project</code> + # Read-write. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The unique, user-assigned ID of the Project. + # It must be 6 to 30 lowercase letters, digits, or hyphens. + # It must start with a letter. + # Trailing hyphens are prohibited. + # Example: <code>tokyo-rain-123</code> + # Read-only after creation. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The Project lifecycle state. + # Read-only. + # Corresponds to the JSON property `lifecycleState` + # @return [String] + attr_accessor :lifecycle_state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @project_number = args[:project_number] if args.key?(:project_number) + @parent = args[:parent] if args.key?(:parent) + @create_time = args[:create_time] if args.key?(:create_time) + @labels = args[:labels] if args.key?(:labels) + @name = args[:name] if args.key?(:name) + @project_id = args[:project_id] if args.key?(:project_id) + @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array<String>] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Metadata describing a long running folder operation + class FolderOperation + include Google::Apis::Core::Hashable + + # The type of this operation. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The display name of the folder. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The resource name of the folder's parent. + # Only applicable when the operation_type is MOVE. + # Corresponds to the JSON property `sourceParent` + # @return [String] + attr_accessor :source_parent + + # The resource name of the folder or organization we are either creating + # the folder under or moving the folder to. + # Corresponds to the JSON property `destinationParent` + # @return [String] + attr_accessor :destination_parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @display_name = args[:display_name] if args.key?(:display_name) + @source_parent = args[:source_parent] if args.key?(:source_parent) + @destination_parent = args[:destination_parent] if args.key?(:destination_parent) + end + end + + # Defines an Identity and Access Management (IAM) policy. It is used to + # specify access control policies for Cloud Platform resources. + # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of + # `members` to a `role`, where the members can be user accounts, Google groups, + # Google domains, and service accounts. A `role` is a named list of permissions + # defined by IAM. + # **Example** + # ` + # "bindings": [ + # ` + # "role": "roles/owner", + # "members": [ + # "user:mike@example.com", + # "group:admins@example.com", + # "domain:google.com", + # "serviceAccount:my-other-app@appspot.gserviceaccount.com", + # ] + # `, + # ` + # "role": "roles/viewer", + # "members": ["user:sean@example.com"] + # ` + # ] + # ` + # For a description of IAM and its features, see the + # [IAM developer's guide](https://cloud.google.com/iam). + class Policy + include Google::Apis::Core::Hashable + + # `etag` is used for optimistic concurrency control as a way to help + # prevent simultaneous updates of a policy from overwriting each other. + # It is strongly suggested that systems make use of the `etag` in the + # read-modify-write cycle to perform policy updates in order to avoid race + # conditions: An `etag` is returned in the response to `getIamPolicy`, and + # systems are expected to put that etag in the request to `setIamPolicy` to + # ensure that their change will be applied to the same version of the policy. + # If no `etag` is provided in the call to `setIamPolicy`, then the existing + # policy is overwritten blindly. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::AuditConfig>] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Binding>] + attr_accessor :bindings + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + end + end + + # A classification of the Folder Operation error. + class FolderOperationError + include Google::Apis::Core::Hashable + + # The type of operation error experienced. + # Corresponds to the JSON property `errorMessageId` + # @return [String] + attr_accessor :error_message_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_message_id = args[:error_message_id] if args.key?(:error_message_id) + end + end + + # A container to reference an id for any resource type. A `resource` in Google + # Cloud Platform is a generic term for something you (a developer) may want to + # interact with through one of our API's. Some examples are an App Engine app, + # a Compute Engine instance, a Cloud SQL database, and so on. + class ResourceId + include Google::Apis::Core::Hashable + + # Required field representing the resource type this id is for. + # At present, the valid types are "project" and "organization". + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Required field for the type-specific id. This should correspond to the id + # used in the type-specific API's. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @type = args[:type] if args.key?(:type) + @id = args[:id] if args.key?(:id) + end + end + # Specifies the audit configuration for a service. # The configuration determines which permission types are logged, and what # identities, if any, are exempted from logging. # An AuditConfig must have one or more AuditLogConfigs. # If there are AuditConfigs for both `allServices` and a specific service, @@ -70,31 +350,31 @@ # logging. It also exempts foo@gmail.com from DATA_READ logging, and # bar@gmail.com from DATA_WRITE logging. class AuditConfig include Google::Apis::Core::Hashable - # The configuration for logging of each type of permission. - # Next ID: 4 - # Corresponds to the JSON property `auditLogConfigs` - # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::AuditLogConfig>] - attr_accessor :audit_log_configs - # Specifies a service that will be enabled for audit logging. # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. # `allServices` is a special value that covers all services. # Corresponds to the JSON property `service` # @return [String] attr_accessor :service + # The configuration for logging of each type of permission. + # Next ID: 4 + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::AuditLogConfig>] + attr_accessor :audit_log_configs + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) @service = args[:service] if args.key?(:service) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) end end # Identifying information for a single ancestor of a project. class Ancestor @@ -116,39 +396,10 @@ def update!(**args) @resource_id = args[:resource_id] if args.key?(:resource_id) end end - # The response returned from the `ListOrganizations` method. - class ListOrganizationsResponse - include Google::Apis::Core::Hashable - - # A pagination token to be used to retrieve the next page of results. If the - # result is too large to fit within the page size specified in the request, - # this field will be set with a token that can be used to fetch the next page - # of results. If this field is empty, it indicates that this response - # contains the last page of results. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - # The list of Organizations that matched the list query, possibly paginated. - # Corresponds to the JSON property `organizations` - # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Organization>] - attr_accessor :organizations - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @organizations = args[:organizations] if args.key?(:organizations) - end - end - # Request message for `SetIamPolicy` method. class SetIamPolicyRequest include Google::Apis::Core::Hashable # Defines an Identity and Access Management (IAM) policy. It is used to @@ -199,10 +450,39 @@ @policy = args[:policy] if args.key?(:policy) @update_mask = args[:update_mask] if args.key?(:update_mask) end end + # The response returned from the `ListOrganizations` method. + class ListOrganizationsResponse + include Google::Apis::Core::Hashable + + # A pagination token to be used to retrieve the next page of results. If the + # result is too large to fit within the page size specified in the request, + # this field will be set with a token that can be used to fetch the next page + # of results. If this field is empty, it indicates that this response + # contains the last page of results. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # The list of Organizations that matched the list query, possibly paginated. + # Corresponds to the JSON property `organizations` + # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Organization>] + attr_accessor :organizations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @organizations = args[:organizations] if args.key?(:organizations) + end + end + # Associates `members` with a `role`. class Binding include Google::Apis::Core::Hashable # Specifies the identities requesting access for a Cloud Platform resource. @@ -258,21 +538,29 @@ # Update properties of this object def update!(**args) end end + # The request sent to the UndeleteProject + # method. + class UndeleteProjectRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + # The root node in the resource hierarchy to which a particular entity's # (e.g., company) resources belong. class Organization include Google::Apis::Core::Hashable - # Timestamp when the Organization was created. Assigned by the server. - # @OutputOnly - # Corresponds to the JSON property `creationTime` - # @return [String] - attr_accessor :creation_time - # The entity that owns an Organization. The lifetime of the Organization and # all of its descendants are bound to the `OrganizationOwner`. If the # `OrganizationOwner` is deleted, the Organization and all its descendants will # be deleted. # Corresponds to the JSON property `owner` @@ -306,51 +594,37 @@ # @OutputOnly # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name + # Timestamp when the Organization was created. Assigned by the server. + # @OutputOnly + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @creation_time = args[:creation_time] if args.key?(:creation_time) @owner = args[:owner] if args.key?(:owner) @name = args[:name] if args.key?(:name) @organization_id = args[:organization_id] if args.key?(:organization_id) @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) @display_name = args[:display_name] if args.key?(:display_name) + @creation_time = args[:creation_time] if args.key?(:creation_time) end end - # The request sent to the UndeleteProject - # method. - class UndeleteProjectRequest - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - # A status object which is used as the `metadata` field for the Operation # returned by CreateProject. It provides insight for when significant phases of # Project creation have completed. class ProjectCreationStatus include Google::Apis::Core::Hashable - # True if the project creation process is complete. - # Corresponds to the JSON property `ready` - # @return [Boolean] - attr_accessor :ready - alias_method :ready?, :ready - # Creation time of the project creation workflow. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time @@ -360,52 +634,58 @@ # Corresponds to the JSON property `gettable` # @return [Boolean] attr_accessor :gettable alias_method :gettable?, :gettable + # True if the project creation process is complete. + # Corresponds to the JSON property `ready` + # @return [Boolean] + attr_accessor :ready + alias_method :ready?, :ready + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @ready = args[:ready] if args.key?(:ready) @create_time = args[:create_time] if args.key?(:create_time) @gettable = args[:gettable] if args.key?(:gettable) + @ready = args[:ready] if args.key?(:ready) end end - # Response message for `TestIamPermissions` method. - class TestIamPermissionsResponse + # Request message for `GetIamPolicy` method. + class GetIamPolicyRequest include Google::Apis::Core::Hashable - # A subset of `TestPermissionsRequest.permissions` that the caller is - # allowed. - # Corresponds to the JSON property `permissions` - # @return [Array<String>] - attr_accessor :permissions - def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) - @permissions = args[:permissions] if args.key?(:permissions) end end - # Request message for `GetIamPolicy` method. - class GetIamPolicyRequest + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse include Google::Apis::Core::Hashable + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array<String>] + attr_accessor :permissions + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) end end # Response from the GetAncestry method. class GetAncestryResponse @@ -526,290 +806,9 @@ # Update properties of this object def update!(**args) @projects = args[:projects] if args.key?(:projects) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # The request sent to the - # GetAncestry - # method. - class GetAncestryRequest - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # A Project is a high-level Google Cloud Platform entity. It is a - # container for ACLs, APIs, App Engine Apps, VMs, and other - # Google Cloud Platform resources. - class Project - include Google::Apis::Core::Hashable - - # The Project lifecycle state. - # Read-only. - # Corresponds to the JSON property `lifecycleState` - # @return [String] - attr_accessor :lifecycle_state - - # The number uniquely identifying the project. - # Example: <code>415104041262</code> - # Read-only. - # Corresponds to the JSON property `projectNumber` - # @return [Fixnum] - attr_accessor :project_number - - # A container to reference an id for any resource type. A `resource` in Google - # Cloud Platform is a generic term for something you (a developer) may want to - # interact with through one of our API's. Some examples are an App Engine app, - # a Compute Engine instance, a Cloud SQL database, and so on. - # Corresponds to the JSON property `parent` - # @return [Google::Apis::CloudresourcemanagerV1beta1::ResourceId] - attr_accessor :parent - - # Creation time. - # Read-only. - # Corresponds to the JSON property `createTime` - # @return [String] - attr_accessor :create_time - - # The labels associated with this Project. - # Label keys must be between 1 and 63 characters long and must conform - # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?. - # Label values must be between 0 and 63 characters long and must conform - # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?. - # No more than 256 labels can be associated with a given resource. - # Clients should store labels in a representation such as JSON that does not - # depend on specific characters being disallowed. - # Example: <code>"environment" : "dev"</code> - # Read-write. - # Corresponds to the JSON property `labels` - # @return [Hash<String,String>] - attr_accessor :labels - - # The user-assigned display name of the Project. - # It must be 4 to 30 characters. - # Allowed characters are: lowercase and uppercase letters, numbers, - # hyphen, single-quote, double-quote, space, and exclamation point. - # Example: <code>My Project</code> - # Read-write. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # The unique, user-assigned ID of the Project. - # It must be 6 to 30 lowercase letters, digits, or hyphens. - # It must start with a letter. - # Trailing hyphens are prohibited. - # Example: <code>tokyo-rain-123</code> - # Read-only after creation. - # Corresponds to the JSON property `projectId` - # @return [String] - attr_accessor :project_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) - @project_number = args[:project_number] if args.key?(:project_number) - @parent = args[:parent] if args.key?(:parent) - @create_time = args[:create_time] if args.key?(:create_time) - @labels = args[:labels] if args.key?(:labels) - @name = args[:name] if args.key?(:name) - @project_id = args[:project_id] if args.key?(:project_id) - end - end - - # Request message for `TestIamPermissions` method. - class TestIamPermissionsRequest - include Google::Apis::Core::Hashable - - # The set of permissions to check for the `resource`. Permissions with - # wildcards (such as '*' or 'storage.*') are not allowed. For more - # information see - # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). - # Corresponds to the JSON property `permissions` - # @return [Array<String>] - attr_accessor :permissions - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @permissions = args[:permissions] if args.key?(:permissions) - end - end - - # Defines an Identity and Access Management (IAM) policy. It is used to - # specify access control policies for Cloud Platform resources. - # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of - # `members` to a `role`, where the members can be user accounts, Google groups, - # Google domains, and service accounts. A `role` is a named list of permissions - # defined by IAM. - # **Example** - # ` - # "bindings": [ - # ` - # "role": "roles/owner", - # "members": [ - # "user:mike@example.com", - # "group:admins@example.com", - # "domain:google.com", - # "serviceAccount:my-other-app@appspot.gserviceaccount.com", - # ] - # `, - # ` - # "role": "roles/viewer", - # "members": ["user:sean@example.com"] - # ` - # ] - # ` - # For a description of IAM and its features, see the - # [IAM developer's guide](https://cloud.google.com/iam). - class Policy - include Google::Apis::Core::Hashable - - # Version of the `Policy`. The default version is 0. - # Corresponds to the JSON property `version` - # @return [Fixnum] - attr_accessor :version - - # Specifies cloud audit logging configuration for this policy. - # Corresponds to the JSON property `auditConfigs` - # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::AuditConfig>] - attr_accessor :audit_configs - - # Associates a list of `members` to a `role`. - # Multiple `bindings` must not be specified for the same `role`. - # `bindings` with no members will result in an error. - # Corresponds to the JSON property `bindings` - # @return [Array<Google::Apis::CloudresourcemanagerV1beta1::Binding>] - attr_accessor :bindings - - # `etag` is used for optimistic concurrency control as a way to help - # prevent simultaneous updates of a policy from overwriting each other. - # It is strongly suggested that systems make use of the `etag` in the - # read-modify-write cycle to perform policy updates in order to avoid race - # conditions: An `etag` is returned in the response to `getIamPolicy`, and - # systems are expected to put that etag in the request to `setIamPolicy` to - # ensure that their change will be applied to the same version of the policy. - # If no `etag` is provided in the call to `setIamPolicy`, then the existing - # policy is overwritten blindly. - # Corresponds to the JSON property `etag` - # NOTE: Values are automatically base64 encoded/decoded in the client library. - # @return [String] - attr_accessor :etag - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @version = args[:version] if args.key?(:version) - @audit_configs = args[:audit_configs] if args.key?(:audit_configs) - @bindings = args[:bindings] if args.key?(:bindings) - @etag = args[:etag] if args.key?(:etag) - end - end - - # Metadata describing a long running folder operation - class FolderOperation - include Google::Apis::Core::Hashable - - # The display name of the folder. - # Corresponds to the JSON property `displayName` - # @return [String] - attr_accessor :display_name - - # The resource name of the folder's parent. - # Only applicable when the operation_type is MOVE. - # Corresponds to the JSON property `sourceParent` - # @return [String] - attr_accessor :source_parent - - # The resource name of the folder or organization we are either creating - # the folder under or moving the folder to. - # Corresponds to the JSON property `destinationParent` - # @return [String] - attr_accessor :destination_parent - - # The type of this operation. - # Corresponds to the JSON property `operationType` - # @return [String] - attr_accessor :operation_type - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @display_name = args[:display_name] if args.key?(:display_name) - @source_parent = args[:source_parent] if args.key?(:source_parent) - @destination_parent = args[:destination_parent] if args.key?(:destination_parent) - @operation_type = args[:operation_type] if args.key?(:operation_type) - end - end - - # A classification of the Folder Operation error. - class FolderOperationError - include Google::Apis::Core::Hashable - - # The type of operation error experienced. - # Corresponds to the JSON property `errorMessageId` - # @return [String] - attr_accessor :error_message_id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @error_message_id = args[:error_message_id] if args.key?(:error_message_id) - end - end - - # A container to reference an id for any resource type. A `resource` in Google - # Cloud Platform is a generic term for something you (a developer) may want to - # interact with through one of our API's. Some examples are an App Engine app, - # a Compute Engine instance, a Cloud SQL database, and so on. - class ResourceId - include Google::Apis::Core::Hashable - - # Required field representing the resource type this id is for. - # At present, the valid types are "project" and "organization". - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - - # Required field for the type-specific id. This should correspond to the id - # used in the type-specific API's. - # Corresponds to the JSON property `id` - # @return [String] - attr_accessor :id - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @type = args[:type] if args.key?(:type) - @id = args[:id] if args.key?(:id) end end end end end