Welcome to our resources for Cognito developers. Here you will find technical materials that describe how to accomplish a specific task with code samples you can re-use in your app. The first set of guides below teach you the essentials for Cognito User Pools, Cognito Identity Pools, and AWS AppSync development. If you're a new to Cognito, you should start from "Creating your first project".
Creating your first project
Cognito User Pools:
Amazon Cognito User Pools makes it easy to create and maintain a user directory and add sign-up (user on-boarding) and sign-in to your mobile or web application for authentication, authorization, and resource access and control.
- Getting Started with Amazon Cognito User Pools
- Set up the sample app: iOS (Objective C) | Android | JavaScript (Angular 2)
Cognito Identity Pools:
With Amazon Cognito Identity Pools, you can create unique identities and assign permissions for users. You can also sign in users through social identity providers, such as Facebook, Google, or Apple, or through corporate identity providers with SAML or OIDC and control access to your backend resources.
AWS AppSync:
If you're new to Amazon Cognito Sync, use AWS AppSync. Like Amazon Cognito Sync, AWS AppSync is a service for synchronizing application data across devices.
It enables user data like app preferences or game state to be synchronized. It also extends these capabilities by allowing multiple users to synchronize and collaborate in real time on shared data.
AWS AppSync simplifies application development by letting you create a flexible API to securely access, manipulate, and combine data from one or more data sources. AppSync is a managed service that uses GraphQL to make it easy for applications to get exactly the data they need.
- AWS AppSync - Get started by platform
- For existing customers of Cognito Sync, here is a reference to get started with Amazon Cognito Sync
Documentation, SDKs, and sample apps
Cognito User Pools:
- Developer Guide | API Reference
- JavaScript: SDK | Sample App (Angular 2) | Tutorial
- iOS: SDK | Sample App (Objective C) | Tutorial
- Android: SDK | Sample App | Tutorial
- Java: Sample App
- .NET: Sample App
- Ionic 2: Sample App
- AWS BeanStalk: Sample App
Cognito Sync:
- Developer Guide | API Reference
- iOS: SDK
- Android: SDK
Cognito Identity Pools:
- Developer Guide | API Reference
- iOS: SDK | Developer Guide (Objective C) | Sample App (Objective C)
- Android: SDK | Sample App
Low Level APIs:
In addition to using the higher-level mobile and JavaScript SDKs, you can also use the lower-level APIs available via the following AWS SDKs to integrate all Amazon Cognito functionality in your applications.
- Java: Install | Documentation | Learn more
- .NET: Install | Documentation | Learn more
- Node.js: Install | Documentation | Learn more
- Python: Install | Documentation | Learn more
- PHP: Install | Documentation | Learn more
- Ruby: Install | Documentation | Learn more
Technical slides
- Serverless Authentication and Authorization
- Multi-Channel User Engagement using Amazon Pinpoint and Amazon Cognito
- Deep Dive on Amazon Cognito - March 2017 AWS Online Tech Talks
- AWS re:Invent 2016: Add User Sign-In, User Management, and Security to your Mobile and Web Applications with Amazon Cognito (MBL310)
- AWS re:Invent 2016: Serverless Authentication and Authorization: Identity Management for Serverless Architectures (MBL306)
Videos
Blog posts & articles

Get started building with Amazon Cognito in the AWS Management Console.