Current section
Files
Jump to
Current section
Files
lib/google_api/surveys/v2/model/survey.ex
# Copyright 2019 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# NOTE: This class is auto generated by the elixir code generator program.
# Do not edit the class manually.
defmodule GoogleApi.Surveys.V2.Model.Survey do
@moduledoc """
Representation of an individual survey object.
## Attributes
* `audience` (*type:* `GoogleApi.Surveys.V2.Model.SurveyAudience.t`, *default:* `nil`) - Targeting-criteria message containing demographic information
* `cost` (*type:* `GoogleApi.Surveys.V2.Model.SurveyCost.t`, *default:* `nil`) - Cost to run the survey and collect the necessary number of responses.
* `customerData` (*type:* `String.t`, *default:* `nil`) - Additional information to store on behalf of the API consumer and associate with this question. This binary blob is treated as opaque. This field is limited to 64K bytes.
* `description` (*type:* `String.t`, *default:* `nil`) - Text description of the survey.
* `owners` (*type:* `list(String.t)`, *default:* `nil`) - List of email addresses for survey owners. Must contain at least the address of the user making the API call.
* `questions` (*type:* `list(GoogleApi.Surveys.V2.Model.SurveyQuestion.t)`, *default:* `nil`) - List of questions defining the survey.
* `rejectionReason` (*type:* `GoogleApi.Surveys.V2.Model.SurveyRejection.t`, *default:* `nil`) - Reason for the survey being rejected. Only present if the survey state is rejected.
* `state` (*type:* `String.t`, *default:* `nil`) - State that the survey is in.
* `surveyUrlId` (*type:* `String.t`, *default:* `nil`) - Unique survey ID, that is viewable in the URL of the Survey Creator UI
* `title` (*type:* `String.t`, *default:* `nil`) - Optional name that will be given to the survey.
* `wantedResponseCount` (*type:* `integer()`, *default:* `nil`) - Number of responses desired for the survey.
"""
use GoogleApi.Gax.ModelBase
@type t :: %__MODULE__{
:audience => GoogleApi.Surveys.V2.Model.SurveyAudience.t(),
:cost => GoogleApi.Surveys.V2.Model.SurveyCost.t(),
:customerData => String.t(),
:description => String.t(),
:owners => list(String.t()),
:questions => list(GoogleApi.Surveys.V2.Model.SurveyQuestion.t()),
:rejectionReason => GoogleApi.Surveys.V2.Model.SurveyRejection.t(),
:state => String.t(),
:surveyUrlId => String.t(),
:title => String.t(),
:wantedResponseCount => integer()
}
field(:audience, as: GoogleApi.Surveys.V2.Model.SurveyAudience)
field(:cost, as: GoogleApi.Surveys.V2.Model.SurveyCost)
field(:customerData)
field(:description)
field(:owners, type: :list)
field(:questions, as: GoogleApi.Surveys.V2.Model.SurveyQuestion, type: :list)
field(:rejectionReason, as: GoogleApi.Surveys.V2.Model.SurveyRejection)
field(:state)
field(:surveyUrlId)
field(:title)
field(:wantedResponseCount)
end
defimpl Poison.Decoder, for: GoogleApi.Surveys.V2.Model.Survey do
def decode(value, options) do
GoogleApi.Surveys.V2.Model.Survey.decode(value, options)
end
end
defimpl Poison.Encoder, for: GoogleApi.Surveys.V2.Model.Survey do
def encode(value, options) do
GoogleApi.Gax.ModelBase.encode(value, options)
end
end