Maps SDK for iOS: Get an API Key

Note: The Google Maps Platform Premium Plan is no longer available for sign up or new customers.

To use the Maps SDK for iOS you must have an API key. The API key is a unique identifier that is used to authenticate requests associated with your project for usage and billing purposes.

Get the API key

You must have at least one API key associated with your project.

To get an API key:

  1. Go to the Google Cloud Platform Console.
  2. Click the project drop-down and select the project created for you when you purchased the Premium Plan. The project name starts with Google Maps APIs for Business or Google Maps for Work or Google Maps.
  3. Note: To have full access to the features in their plan, Premium customers should use the project associated with their Premium account. When you purchased your license, you received the name of your Premium asset in the following format: gme-[company] & proj-[number] ([type]). To ensure you are accessing the correct project, log in to the console as the project owner using console.cloud.google.com/project/number (replace number with your project number). You can locate the project owner in your welcome letter.

  4. Click the menu button and select APIs & Services > Credentials.
  5. On the Credentials page, click Create credentials > API key.
    The API key created dialog displays the newly created API key (an encrypted string).
  6. Click Close.
    The new API key is listed on the Credentials page under API keys.

Add the API key to your app

In the following examples, replace YOUR_API_KEY with your API key.

Swift

Add your API key to your AppDelegate.swift as follows:

  1. Add the following import statement:
    import GoogleMaps
  2. Add the following to your application(_:didFinishLaunchingWithOptions:) method, replacing YOUR_API_KEY with your API key:
    GMSServices.provideAPIKey("YOUR_API_KEY")
  3. If you are also using the Places API, add your key again as shown here:
    GMSPlacesClient.provideAPIKey("YOUR_API_KEY")

Objective-C

Add your API key to your AppDelegate.m as follows:

  1. Add the following import statement:
    @import GoogleMaps;
  2. Add the following to your application:didFinishLaunchingWithOptions: method, replacing YOUR_API_KEY with your API key:
    [GMSServices provideAPIKey:@"YOUR_API_KEY"];
  3. If you are also using the Places API, add your key again as shown here:
    [GMSPlacesClient provideAPIKey:@"YOUR_API_KEY"];

Restrict the API key

We strongly recommend that you restrict your API key. Restrictions provide added security and help ensure only authorized requests are made with your API key. There are two restrictions. You should set both:

  • Application restriction: Limits usage of the API key to either websites (HTTP referrers), web servers (IP addresses), or mobile apps (Android apps or iOS apps). You can select only one restriction from this category, based on the platform of the API or SDK (see GMP APIs by Platform).

    Note: If you need to call web, web service, and/or mobile APIs from the same (client-side) app, create and restrict multiple keys.

  • API restriction: Limits usage of the API key to one or more APIs or SDKs. Requests to an API or SDK associated with the API key will be processed. Requests to an API or SDK not associated with the API key will fail. (The API or SDK must be enabled and must support the application restriction.)

To restrict an API key:

  1. Go to the Google Cloud Platform Console.
  2. Click the project drop-down and select the project that contains the API key you want to secure.
  3. Click the menu button and select APIs & Services > Credentials.
  4. On the Credentials page, click the name of the API key that you want to secure.
  5. On the Restrict and rename API key page, set the restrictions:
    • Application restrictions
      • Select iOS apps.
      • Add your app's bundle identifier.
    • API restrictions
      • Select Restrict key.
      • Click Select APIs and select Google Maps Platform Premium Plan.
        (If the Google Maps Platform Premium Plan is not listed, you need to enable it.)
  6. Click SAVE.