gogol-firebaseremoteconfig-0.4.0: Google Firebase Remote Config SDK.

Copyright(c) 2015-2016 Brendan Hay
LicenseMozilla Public License, v. 2.0.
MaintainerBrendan Hay <brendan.g.hay@gmail.com>
Stabilityauto-generated
Portabilitynon-portable (GHC extensions)
Safe HaskellNone
LanguageHaskell2010

Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

Contents

Description

Update a RemoteConfig. We treat this as an always-existing resource (when it is not found in our data store, we treat it as version 0, a template with zero conditions and zero parameters). Hence there are no Create or Delete operations. Returns the updated template when successful (and the updated eTag as a response header), or an error if things go wrong. Possible error messages: * VALIDATION_ERROR (HTTP status 400) with additional details if the template being passed in can not be validated. * AUTHENTICATION_ERROR (HTTP status 401) if the request can not be authenticate (e.g. no access token, or invalid access token). * AUTHORIZATION_ERROR (HTTP status 403) if the request can not be authorized (e.g. the user has no access to the specified project id). * VERSION_MISMATCH (HTTP status 412) when trying to update when the expected eTag (passed in via the "If-match" header) is not specified, or is specified but does does not match the current eTag. * Internal error (HTTP status 500) for Database problems or other internal errors.

See: Firebase Remote Config API Reference for firebaseremoteconfig.projects.updateRemoteConfig.

Synopsis

REST Resource

type ProjectsUpdateRemoteConfigResource = "v1" :> (Capture "project" Text :> ("remoteConfig" :> (QueryParam "$.xgafv" Xgafv :> (QueryParam "validateOnly" Bool :> (QueryParam "upload_protocol" Text :> (QueryParam "pp" Bool :> (QueryParam "access_token" Text :> (QueryParam "uploadType" Text :> (QueryParam "bearer_token" Text :> (QueryParam "callback" Text :> (QueryParam "alt" AltJSON :> (ReqBody '[JSON] RemoteConfig :> Put '[JSON] RemoteConfig)))))))))))) Source #

A resource alias for firebaseremoteconfig.projects.updateRemoteConfig method which the ProjectsUpdateRemoteConfig request conforms to.

Creating a Request

data ProjectsUpdateRemoteConfig Source #

Update a RemoteConfig. We treat this as an always-existing resource (when it is not found in our data store, we treat it as version 0, a template with zero conditions and zero parameters). Hence there are no Create or Delete operations. Returns the updated template when successful (and the updated eTag as a response header), or an error if things go wrong. Possible error messages: * VALIDATION_ERROR (HTTP status 400) with additional details if the template being passed in can not be validated. * AUTHENTICATION_ERROR (HTTP status 401) if the request can not be authenticate (e.g. no access token, or invalid access token). * AUTHORIZATION_ERROR (HTTP status 403) if the request can not be authorized (e.g. the user has no access to the specified project id). * VERSION_MISMATCH (HTTP status 412) when trying to update when the expected eTag (passed in via the "If-match" header) is not specified, or is specified but does does not match the current eTag. * Internal error (HTTP status 500) for Database problems or other internal errors.

See: projectsUpdateRemoteConfig smart constructor.

Instances
Eq ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

Data ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ProjectsUpdateRemoteConfig -> c ProjectsUpdateRemoteConfig #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ProjectsUpdateRemoteConfig #

toConstr :: ProjectsUpdateRemoteConfig -> Constr #

dataTypeOf :: ProjectsUpdateRemoteConfig -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ProjectsUpdateRemoteConfig) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ProjectsUpdateRemoteConfig) #

gmapT :: (forall b. Data b => b -> b) -> ProjectsUpdateRemoteConfig -> ProjectsUpdateRemoteConfig #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ProjectsUpdateRemoteConfig -> r #

gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ProjectsUpdateRemoteConfig -> r #

gmapQ :: (forall d. Data d => d -> u) -> ProjectsUpdateRemoteConfig -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ProjectsUpdateRemoteConfig -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ProjectsUpdateRemoteConfig -> m ProjectsUpdateRemoteConfig #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ProjectsUpdateRemoteConfig -> m ProjectsUpdateRemoteConfig #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ProjectsUpdateRemoteConfig -> m ProjectsUpdateRemoteConfig #

Show ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

Generic ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

Associated Types

type Rep ProjectsUpdateRemoteConfig :: Type -> Type #

GoogleRequest ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

type Rep ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

type Rep ProjectsUpdateRemoteConfig = D1 (MetaData "ProjectsUpdateRemoteConfig" "Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig" "gogol-firebaseremoteconfig-0.4.0-2lmPeOQx2oOKMaSe815MP3" False) (C1 (MetaCons "ProjectsUpdateRemoteConfig'" PrefixI True) (((S1 (MetaSel (Just "_purcXgafv") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Xgafv)) :*: S1 (MetaSel (Just "_purcValidateOnly") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Bool))) :*: (S1 (MetaSel (Just "_purcUploadProtocol") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: (S1 (MetaSel (Just "_purcProject") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Text) :*: S1 (MetaSel (Just "_purcPp") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 Bool)))) :*: ((S1 (MetaSel (Just "_purcAccessToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_purcUploadType") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text))) :*: (S1 (MetaSel (Just "_purcPayload") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 RemoteConfig) :*: (S1 (MetaSel (Just "_purcBearerToken") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)) :*: S1 (MetaSel (Just "_purcCallback") NoSourceUnpackedness SourceStrict DecidedStrict) (Rec0 (Maybe Text)))))))
type Scopes ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

type Rs ProjectsUpdateRemoteConfig Source # 
Instance details

Defined in Network.Google.Resource.FirebaseRemoteConfig.Projects.UpdateRemoteConfig

Request Lenses

purcValidateOnly :: Lens' ProjectsUpdateRemoteConfig (Maybe Bool) Source #

Optional. Defaults to false (UpdateRemoteConfig call should update the backend if there are no validation/interal errors). May be set to true to indicate that, should no validation errors occur, the call should return a "200 OK" instead of performing the update. Note that other error messages (500 Internal Error, 412 Version Mismatch, etc) may still result after flipping to false, even if getting a "200 OK" when calling with true.

purcUploadProtocol :: Lens' ProjectsUpdateRemoteConfig (Maybe Text) Source #

Upload protocol for media (e.g. "raw", "multipart").

purcProject :: Lens' ProjectsUpdateRemoteConfig Text Source #

The GMP project identifier. Required. See note at the beginning of this file regarding project ids.

purcUploadType :: Lens' ProjectsUpdateRemoteConfig (Maybe Text) Source #

Legacy upload protocol for media (e.g. "media", "multipart").