Foursquare AWS S3 Data Delivery
Foursquare shares data with clients via Amazon Web Services Simple Storage Service (AWS S3) by hosting the bucket within its AWS organization account. Clients are given access to partner buckets via Identity Access Management (IAM) users and roles. The users and/or roles are created and owned by the clientâs organization or free tier account and are external to Foursquare. Clients are not charged hosting or download fees by Foursquare for accessing data in S3 buckets.
For more information on AWS Free Tier please click here.
For more information on AWS IAM please see this frequently asked questions page.
Client Requirements for Accessing a Foursquare Partner Bucket
- An Amazon Web Services (AWS) account
- An Identity Access Management (IAM) user or role configured with AmazonS3ReadOnlyAccess, OR an explicit Access Policy granting ListBucket and GetObject permissions on the Foursquare partner bucket.
- An Amazon Resource Name (ARN) for the IAM user or role defined in requirement #2
Once the client has met these three requirements the ARN from requirement #3 can be shared with Foursquare for access configuration on the partner bucket.
For Client Organizations that currently use AWS
-
Contact your organizationâs Account Administrator and request an IAM user or role for S3 access. If the organization policy requires explicit Access Policy definitions, a Foursquare customer representative can provide the specific bucket information. The custom Access Policy must include ListBucket and GetObject actions on the foursquare bucket. Please note that Foursquare cannot enable access for root accounts, so a user or role IAM must be created.
-
Request the ARN of the user or role from your Administrator. It will look like this:
arn:aws:iam::123456789012:user/JohnSmith
-
Share the ARN with your Foursquare customer representative.
-
Once Foursquare confirms bucket access configuration for the provided ARN, proceed to download the data with AWS Command Line Interface (AWS CLI) or a S3 client software. The Foursquare partner bucket will not be accessible through the AWS S3 Console in a web browser. We recommend S3Browser for Windows. See the last section of this Guide. Be advised that with either method, the authentication to AWS must be made with the user or role that matches the ARN provided.
For Client Organizations that are new to AWS
This section will guide you through the process of creating the necessary credentials through AWS. In summary, these are the steps that need to be taken:
- Login to Amazon Web Services (AWS). If you donât already have an account, you will have to create one. AWS Free Tier provides sufficient functionality to access Foursquare data.
- Within the AWS Console, create an identity in IAM that can access Amazon S3 buckets. This identity will be shared with Foursquare in the form of an Amazon Resource Name (or ARN).
- Foursquare will create an Amazon S3 bucket, load it with your data set, and attach your ARN to the S3 bucket.
- Using an S3 client or the AWS Command Line Interface (AWS CLI), you will connect to the S3 bucket that Foursquare has configured and download your data set.
Logging in to Amazon Web Services:
To begin, you will need to log into Amazon Web Services (AWS).
- Visit the âAmazon Web Services websiteâ, and click on âSign In to the Consoleâ.
- If you donât have an AWS account, go through the step-by-step instructions to create your own AWS account.
- With your AWS credentials, log into your account and arrive at the Amazon Web Services Console.
Creating an Identity via Amazon Web Services Console
Now that youâve successfully logged into the Amazon Web Services Console, you will now need to create an identity that has the correct policy attached to access Amazon S3 buckets.
-
On the Amazon Web Service Console, click on âIAMâ under âSecurity, Identity, & Complianceâ.
-
Click on âUsersâ in the Left Panel menu, then click âAdd Usersâ. Fill in a user name of your choice, and ensure that âAccess Key - programmatic accessâ is checked. Click âNext: Permissionsâ to proceed.
-
On the next screen, in âSet Permissionsâ, select âAdd User to Groupâ. Then in âAdd user to groupâ click âCreate Groupâ
-
In the Create Group dialog, add a âGroup Nameâ. In the list of available policies, find âAmazonS3ReadOnlyAccessâ and click the checkbox. Then click
âCreate Groupâ -
Back on the User creation page, click on the checkbox next to the Group that was just created. Click on âNext: Tagsâ to proceed.
-
Optionally, add Tags for your reference. Click âNext: Reviewâ
-
After reviewing the User details, permissions and tags, click âCreate Userâ to finalize. On the last page, you can optionally save the Access Key ID and Secret Access Key for later reference. Click âCloseâ to return to the main IAM console page.
-
The last step is to share the ARN for the newly created user. In the IAM console page, click on the user to open its Summary page. The first item in the summary is the User ARN. Please copy this and email your Foursquare customer representative. It should look like this:
Connecting to the Foursquare S3 Bucket
In order to access your Foursquare data bucket on Amazon S3, you will have to use a third-party application to connect to the bucket. We recommend using S3 Browser for Windows.
(Please take note that you wonât be able to access the data via the Amazon Web Services console via your browser. This is due to the fact that the bucket was created by us, and will be an external bucket from your point of view.)
- Visit the âS3 Browser websiteâ and install the client.
- Launch S3 Browser and enter your AWS credentials on the âAdd New Accountâ page.
- On the menu bar, click on âBucketsâ, and then âAdd External Bucketâ. Enter the Foursquare bucket name here, then finish by clicking âAdd External Bucketâ.
Updated almost 3 years ago