CET Compatibility
Introduction
This document details the compatibility requirements for integrating software with CET. It is aimed at developers and technical teams.
Review Process
The integration process includes a review conducted through a web conference call with a member of the FamilySearch team to verify that all compatibility requirements are met. Developers should be prepared to demonstrate and discuss their technical approach during this review.
Integration Requirements
Prerequisites
- Ensure authentication compatibility by implementing OAuth2 to obtain an access token. The software should guide the user through the Authorization flow.
Tree Creation and Upload
Tree Creation
When creating a tree, make sure the interface allows the user to:
- Set the name, description, and optionally, a code of conduct. The name and description should be set on both the group and the tree. See Uploading a Tree to CET guide for details.
- Designate a Starting Person for the tree.
- Choose a privacy setting. This should default to public, with the option to set it as private.
- If the user selects the public option, the tree’s
private
attribute is set tofalse
for public visibility after the upload. - If the user selects the private option, the user must see and agree to the conditions of setting a tree as private. See the Privacy Model document for the exact wording of the privacy terms.
- If the user selects the public option, the tree’s
The software should set the ownerAccess
and groupAccess
settings on the tree according to the desired API Access Model.
After the tree is created, the user interface should link to the group settings page on FamilySearch.org for managing group invitations and role assignments. This link should use the appropriate URL template.
Tree Upload
When trees are uploaded from your application they should include data that includes:
- Persons, events, facts, relationships, and sources.
Post-upload, verify:
- The `hidden` state of the Tree is set to false. This enables the tree to be viewed in the FamilySearch.org user interface.
- The `private` attribute is set to
false
if public privacy was selected. - The starting person is set to the
pid
of the selected person. - The tree settings are correctly reflected on FamilySearch.
Tree Import
Your application should allow users to import a tree from CET.
When importing a tree, a user should be able to:
- View a list of CET trees that are accessible to the user through your application.
- Select a tree to import.
- Import the data into a local tree database.
Tree Updates and Synchronization
Ensure your application makes it as simple as possible for a user to keep data in sync between their local tree and the CET tree. Your process may include manual steps but should automate as much as possible. If the process you implement is too cumbersome, users will abandon the idea of keeping data up to date.
For changes to the CET tree, your software should:
- Use the Tree Change History endpoint to discover changes made to the CET.
- Assist the user in making changes to the local tree.
- Provide an interface for the user to resolve changes that conflict.
For changes to the local tree, your software should:
- Identify changes made to the local tree that haven’t been applied to the CET.
- Assist the user in making changes to the CET tree.
- Provide an interface for the user to resolve changes that conflict.
Note: Make sure to implement safety features to ensure that users are prompted to verify major changes. This is especially important when considering changes that would delete data on either side.
Memories
- If your integration supports synchronization of photos, stories, and audio, it will need to meet the Memories Write compatibility requirements.
Record Hints
When working with record hints, ensure that your software can:
- Display hints.
- Link to the Record Details page or Source Linker page. This should use the appropriate URL template that will enable the correct tree to be selected for attachment on the FamilySearch.org website.
- Attach sources and add information to FamilySearch.
- Sync attached sources and information back to the local tree.
Updated 7 days ago