MyHeritage has a public API now. It is called the Family Graph API.
The past few years several companies have introduced genealogy APIs.
Genealogy APIs offers a quick overview.
FamilySearch has an API for New FamilySearch (NFS), Geni has the Geni API.
There obviously is some interface between Family Tree Maker and Ancestry.com and the Family Tree Maker SearchService I recently discovered isn't the complete story.
Ancestry.com has some API for their iPad application, and it remains undocumented.
There obviously is some undocumented interface between MyHeritage Family Tree Builder and MyHeritage as well.
Presumably, their FamilyConnect app for Android and iOS uses that same interface.
MyHeritage has a public API now.
It is called the Family Graph API.
Geni has the Geni API, MyHeritage has the Family Graph API.
The Geni API and Family Graph API are different, but do share some technical similarities.
Both are RESTfull API; both are based on a REST architecture, and both return
results in JSON format.
Well, the Geni API can return results in either JSON or XML format.
The practical upshot of the Family Graph API being a RESTfull API is that you can - just as with the Geni API - experiment with it from the address bar of your browser.
Those architectural choices are fairly modern choices, as you would expect for a new API, but not for one that has been in use for years already. It therefore seems that the Family Graph API is a brand new API, and not what Family Tree Builder and FamilyConnect are using. It stands to reason though, that future versions of Family Tree Builder and FamilyConnect will use the Family Graph in favour of any older, private interfaces they may still be using today.
The Family Graph name seems an attempt to associate MyHeritage with the success of FaceBook and its Social Graph API.
Sure enough, the home page states that The Family Graph API is for families what Facebook’s Social Graph API is for friends and LinkedIn’s API is for business.
.
You might expect MyHeritage to document their API on their MyHeritage site.
They'll probably put a link up soon, but they opted to document the API on its own domain.
That is probably a SEO decision;
giving the API its own site keeps that site focused on nothing but the API.
Although the site is brand new, it is already one of the top search results for MyHeritage API
.
MyHeritage leaves no doubt that the Family Graph site is part of MyHeritage; the Family Graph site has the same look and feel as the MyHeritage site.
The site has four tabs: Overview
, Documentation
, Sample applications
, and Get access
.
When you browse to the site, you land on the overview tab.
MyHeritage isn't famed for its modesty.
Despite the fact that MyHeritage has not even announced the Family Graph API on their own blog,
the Family Graph Overview
page already describes the Family Graph by MyHeritage.com
as the primary API on the web for family connections
.
The Documentation
tab provides the actual API documentation.
The Sample applications
page provides several sample applications.
The Get access
is a request form for an application key.; using the API is free, but you need an
so-called application key to use, so that MyHeritage knows which applications are using the service.
When you request an application key, you agree to the terms of service for the Family Graph API,
which includes the terms of service for MyHeritage.com itself.
When Geni introduced the Geni API, the Geni API wasn't done yet.
Geni added quite a few interfaces after the initial introduction of the API.
The current Family Graph API isn't complete yet either.
A quick browse through the current functionality shows that this first version is read-only, download-only.
It is reasonable to expect MyHeritage to update it with the ability to write and upload as well.
Only when Family Graph API allows both reading and writing, both downloading and uploading,
can it replace the private interface MyHeritage is currently using.
The Family Graph API even includesExportGEDCOM
andSmartMatch
functions.
It was the open Geni API that made Real-Time Collaboration decide to start their AncestorSync Beta
with Geni.com, despite their extensive experience with the FamilySearch API.
The MyHeritage API is just as open as the Geni API; publicly documented, no NDAs and no usage fees.
Those choices are consistent with a desire to see broad adoption of the API.
To see really broad adoption, the API will have to offer both read and write capability.
There is only so much you can do with a read-only API.
Perhaps the most relevant case in point is that only when MyHeritage offers both a full access API, will Real-Time Collaboration
be able to create AncestorSync for MyHeritage, surely a product MyHeritage would love to see developed.
I have little doubt that the Family Graph API will evolve into a full API that offers both read and write capabilities.
Other than the fact that it is read-only, the Family Graph API seems quite complete.
It offers access to members and their family trees, to individuals and events, notes,
photos, sources, etcetera. The Family Graph API even includes ExportGEDCOM
and SmartMatch
functions.
The Family Graph documentation is excellent. It certainly is much better than the initial Geni API documentation. Sure, the Geni API documentation has improved since then, but the MyHeritage documentation is remarkably polished.
The Family Graph documentation is excellent.
A menu along the left provides an overview of the function in the Family Graph API.
You can click on a function name to get information on that function.
Each function, or rather object, has its own page. Typically, that page describes the object, enumerates
all its fields, its connections to other objects, and rounds it off with some example.
What makes the Family Graph API documentation particularly good is that they use
a sample tree through and take advantage of the aforementioned RESTfull-ness;
you know the sample code is okay, because you can click the examples to see the results in your browser.
There is example code for each API object helps you understand each individual part of the API.
This is completed by a handful of simple sample application that show how they are used together.
Again, you know the sample code works, because you cannot only download the example code,
but can also click the Run sample
link.
The Family Graph API looks fine, and its documentation is excellent.
The familygraph.com site now has a fifth tab titled Competition
.
All it says is Coming Soon...
.
It seems reasonable to assume that they MyHeritage will try to interest third-party developers in their API by offering some awards.
MyHeritage has finally issued a press release announcing
the Family Graph API.
This press release introduced the Family Graph API logo.
The competition page is live. See MyHeritage App Competition.
The MyHeritage blog has a new blog post, by Caroline, titled New! MyHeritage Family Graph API and Best Family App Competition, which pretends that MyHeritage is releasing the Family Graph API today.
MyHeritage has introduced the MyHeritage app for both iOS and Android. The MyHeritage 1.0 app is read-only, because the Family Graph API is still read-only.
Version 2.0 of the MyHeritage 2.0 app upgrades it from a genealogy viewer to a genealogy editor. That suggests that the Family Graph API supports editing now, but the Family Graph documentation and SDKs do not reflect this major upgrade yet.
Copyright © Tamura Jones. All Rights reserved.