Get Started Developing with FamilySearch
The FamilySearch API is a RESTful Web service that can be used to enable your apps to read and write data in various FamilySearch resources. Follow the steps in this guide to get started on the FamilySearch platform.
Important Note Before beginning any development please click and read the document App Approval Considerations.
Join the FamilySearch Solutions Program
Learn more about the FamilySearch Solutions Program here .
Create a Developer Account
After acceptance into the Solution Compatible Program or the Solution Innovator Program, the developer will be granted access to the Solutions Community where application features and Solution Gallery listings can be created and maintained.
Create Your App and Receive an App Key
After enrollment and acceptance in the Solution Provider program you will be able to register your app with FamilySearch Integration Server ("Sandbox") by clicking the "New Application Solution" button on the Solution Community website. Be prepared with the following information:
Decide on a name for your app. This name will be made publicly visible to users of the Solution Gallery after you apply and are accepted as a Compatible Solution Provider.
Your app type options are Web, Mobile iOS, Mobile Android, Desktop or Mac. You need a separate app key for each type of the app that you develop.
One of the related items for the application is the Redirect URIs. Your redirect URI should be an absolute URI that points to the location of your app in order to complete the authentication flow. Depending on the server address that is running your app, your redirect URI may look something like one of the following:
You can add multiple redirect URIs.
You must click the Save Changes button to save your app.
Your App Key
A unique app key is assigned to your app and is shown on the Application Details page of each app. You must use this app key to access the FamilySearch API calls you make. Your app key is automatically enabled to access integration (formally called “sandbox”). Beta and Production access have additional requirements. These services can be enabled by special request.
Used for development and testing. Developers are automatically granted access to this system after creating a developer account. Integration only contains test data that was added by other developers. You may use the Integration Data Copy tool to populate it with realistic data.
This is an old snapshot of production data. It’s used for testing in a production-like environment. This system is not always available. Contact email@example.com to request access.
After you are accepted in the Compatible Solution Program and completed the app compatibility process, your app key will be enabled to access the production FamilySearch data.
Get An Access Token Using OAuth 2
The first step your app must do is to authenticate with FamilySearch by obtaining an access token. This access token is required for every other FamilySearch resource request. Read the Authentication guide to become familiar with the FamilySearch authentication process.
Develop Your App
The next step is to proceed with developing your code. The FamilySearch developer website includes the following resources to help you with your coding efforts.
- Tools for various programming languages.
- Community Support you can use to get answers to your development questions.
- API Resource specifications with links to sample code.
- Data Formats specifications.
- Feature Implmentation Guides with suggested user interface flows, programming steps, best practices, and related topics.
- Compatibility Checklist that provides the requirements for each feature set that can be considered compatible.
Take a look at the Resources list, find the data you need, and follow the example in the example request. For example, if you want to read the current person, use the Current User resource and follow the Read Current User example request. If you want to read the memories of a person, use the Memory resource.