R/cognitosync_service.R

Defines functions service cognitosync

Documented in cognitosync

# This file is generated by make.paws. Please do not edit here.
#' @importFrom paws.common new_handlers new_service set_config merge_config
NULL

#' Amazon Cognito Sync
#'
#' @description
#' Amazon Cognito Sync provides an AWS service and client library that
#' enable cross-device syncing of application-related user data. High-level
#' client libraries are available for both iOS and Android. You can use
#' these libraries to persist data locally so that it's available even if
#' the device is offline. Developer credentials don't need to be stored on
#' the mobile device to access the service. You can use Amazon Cognito to
#' obtain a normalized user ID and credentials. User data is persisted in a
#' dataset that can store up to 1 MB of key-value pairs, and you can have
#' up to 20 datasets per user identity.
#' 
#' With Amazon Cognito Sync, the data stored for each identity is
#' accessible only to credentials assigned to that identity. In order to
#' use the Cognito Sync service, you need to make API calls using
#' credentials retrieved with [Amazon Cognito Identity
#' service](https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/Welcome.html).
#' 
#' If you want to use Cognito Sync in an Android or iOS application, you
#' will probably want to make API calls via the AWS Mobile SDK. To learn
#' more, see the [Developer Guide for
#' Android](https://docs.amplify.aws/start/q/integration/android/) and the
#' [Developer Guide for
#' iOS](https://docs.amplify.aws/start/q/integration/ios/).
#'
#' @param
#' config
#' Optional configuration of credentials, endpoint, and/or region.
#' \itemize{
#' \item{\strong{credentials}:} {\itemize{
#' \item{\strong{creds}:} {\itemize{
#' \item{\strong{access_key_id}:} {AWS access key ID}
#' \item{\strong{secret_access_key}:} {AWS secret access key}
#' \item{\strong{session_token}:} {AWS temporary session token}
#' }}
#' \item{\strong{profile}:} {The name of a profile to use. If not given, then the default profile is used.}
#' \item{\strong{anonymous}:} {Set anonymous credentials.}
#' \item{\strong{endpoint}:} {The complete URL to use for the constructed client.}
#' \item{\strong{region}:} {The AWS Region used in instantiating the client.}
#' }}
#' \item{\strong{close_connection}:} {Immediately close all HTTP connections.}
#' \item{\strong{timeout}:} {The time in seconds till a timeout exception is thrown when attempting to make a connection. The default is 60 seconds.}
#' \item{\strong{s3_force_path_style}:} {Set this to `true` to force the request to use path-style addressing, i.e. `http://s3.amazonaws.com/BUCKET/KEY`.}
#' \item{\strong{sts_regional_endpoint}:} {Set sts regional endpoint resolver to regional or legacy \url{https://docs.aws.amazon.com/sdkref/latest/guide/feature-sts-regionalized-endpoints.html}}
#' }
#' @param
#' credentials
#' Optional credentials shorthand for the config parameter
#' \itemize{
#' \item{\strong{creds}:} {\itemize{
#' \item{\strong{access_key_id}:} {AWS access key ID}
#' \item{\strong{secret_access_key}:} {AWS secret access key}
#' \item{\strong{session_token}:} {AWS temporary session token}
#' }}
#' \item{\strong{profile}:} {The name of a profile to use. If not given, then the default profile is used.}
#' \item{\strong{anonymous}:} {Set anonymous credentials.}
#' }
#' @param
#' endpoint
#' Optional shorthand for complete URL to use for the constructed client.
#' @param
#' region
#' Optional shorthand for AWS Region used in instantiating the client.
#'
#' @section Service syntax:
#' ```
#' svc <- cognitosync(
#'   config = list(
#'     credentials = list(
#'       creds = list(
#'         access_key_id = "string",
#'         secret_access_key = "string",
#'         session_token = "string"
#'       ),
#'       profile = "string",
#'       anonymous = "logical"
#'     ),
#'     endpoint = "string",
#'     region = "string",
#'     close_connection = "logical",
#'     timeout = "numeric",
#'     s3_force_path_style = "logical",
#'     sts_regional_endpoint = "string"
#'   ),
#'   credentials = list(
#'     creds = list(
#'       access_key_id = "string",
#'       secret_access_key = "string",
#'       session_token = "string"
#'     ),
#'     profile = "string",
#'     anonymous = "logical"
#'   ),
#'   endpoint = "string",
#'   region = "string"
#' )
#' ```
#'
#' @examples
#' \dontrun{
#' svc <- cognitosync()
#' svc$bulk_publish(
#'   Foo = 123
#' )
#' }
#'
#' @section Operations:
#' \tabular{ll}{
#'  \link[=cognitosync_bulk_publish]{bulk_publish} \tab Initiates a bulk publish of all existing datasets for an Identity Pool to the configured stream\cr
#'  \link[=cognitosync_delete_dataset]{delete_dataset} \tab Deletes the specific dataset\cr
#'  \link[=cognitosync_describe_dataset]{describe_dataset} \tab Gets meta data about a dataset by identity and dataset name\cr
#'  \link[=cognitosync_describe_identity_pool_usage]{describe_identity_pool_usage} \tab Gets usage details (for example, data storage) about a particular identity pool\cr
#'  \link[=cognitosync_describe_identity_usage]{describe_identity_usage} \tab Gets usage information for an identity, including number of datasets and data usage\cr
#'  \link[=cognitosync_get_bulk_publish_details]{get_bulk_publish_details} \tab Get the status of the last BulkPublish operation for an identity pool\cr
#'  \link[=cognitosync_get_cognito_events]{get_cognito_events} \tab Gets the events and the corresponding Lambda functions associated with an identity pool\cr
#'  \link[=cognitosync_get_identity_pool_configuration]{get_identity_pool_configuration} \tab Gets the configuration settings of an identity pool\cr
#'  \link[=cognitosync_list_datasets]{list_datasets} \tab Lists datasets for an identity\cr
#'  \link[=cognitosync_list_identity_pool_usage]{list_identity_pool_usage} \tab Gets a list of identity pools registered with Cognito\cr
#'  \link[=cognitosync_list_records]{list_records} \tab Gets paginated records, optionally changed after a particular sync count for a dataset and identity\cr
#'  \link[=cognitosync_register_device]{register_device} \tab Registers a device to receive push sync notifications\cr
#'  \link[=cognitosync_set_cognito_events]{set_cognito_events} \tab Sets the AWS Lambda function for a given event type for an identity pool\cr
#'  \link[=cognitosync_set_identity_pool_configuration]{set_identity_pool_configuration} \tab Sets the necessary configuration for push sync\cr
#'  \link[=cognitosync_subscribe_to_dataset]{subscribe_to_dataset} \tab Subscribes to receive notifications when a dataset is modified by another device\cr
#'  \link[=cognitosync_unsubscribe_from_dataset]{unsubscribe_from_dataset} \tab Unsubscribes from receiving notifications when a dataset is modified by another device\cr
#'  \link[=cognitosync_update_records]{update_records} \tab Posts updates to records and adds and deletes records for a dataset and user
#' }
#'
#' @return
#' A client for the service. You can call the service's operations using
#' syntax like `svc$operation(...)`, where `svc` is the name you've assigned
#' to the client. The available operations are listed in the
#' Operations section.
#'
#' @rdname cognitosync
#' @export
cognitosync <- function(config = list(), credentials = list(), endpoint = NULL, region = NULL) {
  config <- merge_config(
    config,
    list(
      credentials = credentials,
      endpoint = endpoint,
      region = region
    )
  )
  svc <- .cognitosync$operations
  svc <- set_config(svc, config)
  return(svc)
}

# Private API objects: metadata, handlers, interfaces, etc.
.cognitosync <- list()

.cognitosync$operations <- list()

.cognitosync$metadata <- list(
  service_name = "cognito-sync",
  endpoints = list("*" = list(endpoint = "cognito-sync.{region}.amazonaws.com", global = FALSE), "cn-*" = list(endpoint = "cognito-sync.{region}.amazonaws.com.cn", global = FALSE), "us-iso-*" = list(endpoint = "cognito-sync.{region}.c2s.ic.gov", global = FALSE), "us-isob-*" = list(endpoint = "cognito-sync.{region}.sc2s.sgov.gov", global = FALSE)),
  service_id = "Cognito Sync",
  api_version = "2014-06-30",
  signing_name = "cognito-sync",
  json_version = "1.1",
  target_prefix = ""
)

.cognitosync$service <- function(config = list()) {
  handlers <- new_handlers("restjson", "v4")
  new_service(.cognitosync$metadata, handlers, config)
}

Try the paws.security.identity package in your browser

Any scripts or data that you put into this service are public.

paws.security.identity documentation built on Sept. 12, 2023, 1:10 a.m.