AWS SDK Version 2 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

.NET Framework 3.5
 
Implementation for accessing CognitoSync Amazon Cognito Sync

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.

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 and the Developer Guide for iOS.

Inheritance Hierarchy

System.Object
  Amazon.Runtime.AmazonServiceClient
    Amazon.CognitoSync.AmazonCognitoSyncClient

Namespace: Amazon.CognitoSync
Assembly: AWSSDK.dll
Version: (assembly version)

Syntax

C#
public class AmazonCognitoSyncClient : AmazonServiceClient
         IAmazonCognitoSync, IDisposable

The AmazonCognitoSyncClient type exposes the following members

Constructors

NameDescription
Public Method AmazonCognitoSyncClient() Constructs AmazonCognitoSyncClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSProfileName" value="AWS Default"/>
    </appSettings>
</configuration>
             
Public Method AmazonCognitoSyncClient(RegionEndpoint) Constructs AmazonCognitoSyncClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSProfileName" value="AWS Default"/>
    </appSettings>
</configuration>
             
Public Method AmazonCognitoSyncClient(AmazonCognitoSyncConfig) Constructs AmazonCognitoSyncClient with the credentials loaded from the application's default configuration, and if unsuccessful from the Instance Profile service on an EC2 instance. Example App.config with credentials set.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <appSettings>
        <add key="AWSProfileName" value="AWS Default"/>
    </appSettings>
</configuration>
             
Public Method AmazonCognitoSyncClient(AWSCredentials) Constructs AmazonCognitoSyncClient with AWS Credentials
Public Method AmazonCognitoSyncClient(AWSCredentials, RegionEndpoint) Constructs AmazonCognitoSyncClient with AWS Credentials
Public Method AmazonCognitoSyncClient(AWSCredentials, AmazonCognitoSyncConfig) Constructs AmazonCognitoSyncClient with AWS Credentials and an AmazonCognitoSyncClient Configuration object.
Public Method AmazonCognitoSyncClient(string, string) Constructs AmazonCognitoSyncClient with AWS Access Key ID and AWS Secret Key
Public Method AmazonCognitoSyncClient(string, string, RegionEndpoint) Constructs AmazonCognitoSyncClient with AWS Access Key ID and AWS Secret Key
Public Method AmazonCognitoSyncClient(string, string, AmazonCognitoSyncConfig) Constructs AmazonCognitoSyncClient with AWS Access Key ID, AWS Secret Key and an AmazonCognitoSyncClient Configuration object.
Public Method AmazonCognitoSyncClient(string, string, string) Constructs AmazonCognitoSyncClient with AWS Access Key ID and AWS Secret Key
Public Method AmazonCognitoSyncClient(string, string, string, RegionEndpoint) Constructs AmazonCognitoSyncClient with AWS Access Key ID and AWS Secret Key
Public Method AmazonCognitoSyncClient(string, string, string, AmazonCognitoSyncConfig) Constructs AmazonCognitoSyncClient with AWS Access Key ID, AWS Secret Key and an AmazonCognitoSyncClient Configuration object.

Methods

NameDescription
Public Method BeginBulkPublish(BulkPublishRequest, AsyncCallback, object) Initiates the asynchronous execution of the BulkPublish operation.
Public Method BeginDeleteDataset(DeleteDatasetRequest, AsyncCallback, object) Initiates the asynchronous execution of the DeleteDataset operation.
Public Method BeginDescribeDataset(DescribeDatasetRequest, AsyncCallback, object) Initiates the asynchronous execution of the DescribeDataset operation.
Public Method BeginDescribeIdentityPoolUsage(DescribeIdentityPoolUsageRequest, AsyncCallback, object) Initiates the asynchronous execution of the DescribeIdentityPoolUsage operation.
Public Method BeginDescribeIdentityUsage(DescribeIdentityUsageRequest, AsyncCallback, object) Initiates the asynchronous execution of the DescribeIdentityUsage operation.
Public Method BeginGetBulkPublishDetails(GetBulkPublishDetailsRequest, AsyncCallback, object) Initiates the asynchronous execution of the GetBulkPublishDetails operation.
Public Method BeginGetCognitoEvents(GetCognitoEventsRequest, AsyncCallback, object) Initiates the asynchronous execution of the GetCognitoEvents operation.
Public Method BeginGetIdentityPoolConfiguration(GetIdentityPoolConfigurationRequest, AsyncCallback, object) Initiates the asynchronous execution of the GetIdentityPoolConfiguration operation.
Public Method BeginListDatasets(ListDatasetsRequest, AsyncCallback, object) Initiates the asynchronous execution of the ListDatasets operation.
Public Method BeginListIdentityPoolUsage(ListIdentityPoolUsageRequest, AsyncCallback, object) Initiates the asynchronous execution of the ListIdentityPoolUsage operation.
Public Method BeginListRecords(ListRecordsRequest, AsyncCallback, object) Initiates the asynchronous execution of the ListRecords operation.
Public Method BeginRegisterDevice(RegisterDeviceRequest, AsyncCallback, object) Initiates the asynchronous execution of the RegisterDevice operation.
Public Method BeginSetCognitoEvents(SetCognitoEventsRequest, AsyncCallback, object) Initiates the asynchronous execution of the SetCognitoEvents operation.
Public Method BeginSetIdentityPoolConfiguration(SetIdentityPoolConfigurationRequest, AsyncCallback, object) Initiates the asynchronous execution of the SetIdentityPoolConfiguration operation.
Public Method BeginSubscribeToDataset(SubscribeToDatasetRequest, AsyncCallback, object) Initiates the asynchronous execution of the SubscribeToDataset operation.
Public Method BeginUnsubscribeFromDataset(UnsubscribeFromDatasetRequest, AsyncCallback, object) Initiates the asynchronous execution of the UnsubscribeFromDataset operation.
Public Method BeginUpdateRecords(UpdateRecordsRequest, AsyncCallback, object) Initiates the asynchronous execution of the UpdateRecords operation.
Public Method BulkPublish(BulkPublishRequest) Initiates a bulk publish of all existing datasets for an Identity Pool to the configured stream. Customers are limited to one successful bulk publish per 24 hours. Bulk publish is an asynchronous request, customers can see the status of the request via the GetBulkPublishDetails operation.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method DeleteDataset(DeleteDatasetRequest) Deletes the specific dataset. The dataset will be deleted permanently, and the action can't be undone. Datasets that this dataset was merged with will no longer report the merge. Any subsequent operation on this dataset will result in a ResourceNotFoundException.

This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.

Public Method DescribeDataset(DescribeDatasetRequest) Gets meta data about a dataset by identity and dataset name. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.

This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.

Public Method DescribeIdentityPoolUsage(string) Gets usage details (for example, data storage) about a particular identity pool.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method DescribeIdentityPoolUsage(DescribeIdentityPoolUsageRequest) Gets usage details (for example, data storage) about a particular identity pool.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method DescribeIdentityUsage(DescribeIdentityUsageRequest) Gets usage information for an identity, including number of datasets and data usage.

This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.

Public Method Dispose() Inherited from Amazon.Runtime.AmazonServiceClient.
Public Method EndBulkPublish(IAsyncResult) Finishes the asynchronous execution of the BulkPublish operation.
Public Method EndDeleteDataset(IAsyncResult) Finishes the asynchronous execution of the DeleteDataset operation.
Public Method EndDescribeDataset(IAsyncResult) Finishes the asynchronous execution of the DescribeDataset operation.
Public Method EndDescribeIdentityPoolUsage(IAsyncResult) Finishes the asynchronous execution of the DescribeIdentityPoolUsage operation.
Public Method EndDescribeIdentityUsage(IAsyncResult) Finishes the asynchronous execution of the DescribeIdentityUsage operation.
Public Method EndGetBulkPublishDetails(IAsyncResult) Finishes the asynchronous execution of the GetBulkPublishDetails operation.
Public Method EndGetCognitoEvents(IAsyncResult) Finishes the asynchronous execution of the GetCognitoEvents operation.
Public Method EndGetIdentityPoolConfiguration(IAsyncResult) Finishes the asynchronous execution of the GetIdentityPoolConfiguration operation.
Public Method EndListDatasets(IAsyncResult) Finishes the asynchronous execution of the ListDatasets operation.
Public Method EndListIdentityPoolUsage(IAsyncResult) Finishes the asynchronous execution of the ListIdentityPoolUsage operation.
Public Method EndListRecords(IAsyncResult) Finishes the asynchronous execution of the ListRecords operation.
Public Method EndRegisterDevice(IAsyncResult) Finishes the asynchronous execution of the RegisterDevice operation.
Public Method EndSetCognitoEvents(IAsyncResult) Finishes the asynchronous execution of the SetCognitoEvents operation.
Public Method EndSetIdentityPoolConfiguration(IAsyncResult) Finishes the asynchronous execution of the SetIdentityPoolConfiguration operation.
Public Method EndSubscribeToDataset(IAsyncResult) Finishes the asynchronous execution of the SubscribeToDataset operation.
Public Method EndUnsubscribeFromDataset(IAsyncResult) Finishes the asynchronous execution of the UnsubscribeFromDataset operation.
Public Method EndUpdateRecords(IAsyncResult) Finishes the asynchronous execution of the UpdateRecords operation.
Public Method GetBulkPublishDetails(GetBulkPublishDetailsRequest) Get the status of the last BulkPublish operation for an identity pool.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method GetCognitoEvents(GetCognitoEventsRequest) Gets the events and the corresponding Lambda functions associated with an identity pool.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method GetIdentityPoolConfiguration(string) Gets the configuration settings of an identity pool.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method GetIdentityPoolConfiguration(GetIdentityPoolConfigurationRequest) Gets the configuration settings of an identity pool.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method ListDatasets(ListDatasetsRequest) Lists datasets for an identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.

ListDatasets can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use the Cognito Identity credentials to make this API call.

Public Method ListIdentityPoolUsage(ListIdentityPoolUsageRequest) Gets a list of identity pools registered with Cognito.

ListIdentityPoolUsage can only be called with developer credentials. You cannot make this API call with the temporary user credentials provided by Cognito Identity.

Public Method ListRecords(ListRecordsRequest) Gets paginated records, optionally changed after a particular sync count for a dataset and identity. With Amazon Cognito Sync, each identity has access only to its own data. Thus, the credentials used to make this API call need to have access to the identity data.

ListRecords can be called with temporary user credentials provided by Cognito Identity or with developer credentials. You should use Cognito Identity credentials to make this API call.

Public Method RegisterDevice(RegisterDeviceRequest) Registers a device to receive push sync notifications.

This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.

Public Method SetCognitoEvents(SetCognitoEventsRequest) Sets the AWS Lambda function for a given event type for an identity pool. This request only updates the key/value pair specified. Other key/values pairs are not updated. To remove a key value pair, pass a empty value for the particular key.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method SetIdentityPoolConfiguration(SetIdentityPoolConfigurationRequest) Sets the necessary configuration for push sync.

This API can only be called with developer credentials. You cannot call this API with the temporary user credentials provided by Cognito Identity.

Public Method SubscribeToDataset(SubscribeToDatasetRequest) Subscribes to receive notifications when a dataset is modified by another device.

This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.

Public Method UnsubscribeFromDataset(UnsubscribeFromDatasetRequest) Unsubscribes from receiving notifications when a dataset is modified by another device.

This API can only be called with temporary credentials provided by Cognito Identity. You cannot call this API with developer credentials.

Public Method UpdateRecords(UpdateRecordsRequest) Posts updates to records and adds and deletes records for a dataset and user.

The sync count in the record patch is your last known sync count for that record. The server will reject an UpdateRecords request with a ResourceConflictException if you try to patch a record with a new value but a stale sync count.

For example, if the sync count on the server is 5 for a key called highScore and you try and submit a new highScore with sync count of 4, the request will be rejected. To obtain the current sync count for a record, call ListRecords. On a successful update of the record, the response returns the new sync count for that record. You should present that sync count the next time you try to update that same record. When the record does not exist, specify the sync count as 0.

This API can be called with temporary user credentials provided by Cognito Identity or with developer credentials.

Events

NameDescription
Event AfterResponseEvent Inherited from Amazon.Runtime.AmazonServiceClient.
Event BeforeRequestEvent Inherited from Amazon.Runtime.AmazonServiceClient.
Event ExceptionEvent Inherited from Amazon.Runtime.AmazonServiceClient.

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

.NET for Windows Store apps:
Supported in: Windows 8.1, Windows 8

.NET for Windows Phone:
Supported in: Windows Phone 8.1, Windows Phone 8