Help:Nl:API Documentatie

Search WikiTree's help pages:

Categories: WikiTree Help (NL) | WikiTree Apps Project

Er is een standaard API beschikbaar voor elk WikiTree lid dat via zijn codeervaardigheden een bijdrage wil leveren aan de community. Het ondersteunt query's voor verschillende gegevenselementen in WikiTree profielen.

Als je vragen hebt, voeg jezelf dan toe aan de WikiTree Apps Google Discussiegroep en stel daar je vraag. Bedankt!

Contents

Toegang tot de WikiTree API

De WikiTree API is toegankelijk via HTTP-aanvragen naar poort 80. Aanvragen moeten worden gedaan naar https://api.wikitree.com/api.php

Dit is geen openbare API met volledige functionaliteit. De API is alleen-lezen. Het ondersteunt de volgende functies:

  • getProfile: de functie getProfile retourneert een standaardset velden voor een bepaalde sleutel (WikiTree ID of pagina ID-nummer). Deze standaardset bevat de verschillende naamvelden, geboortedatum/overlijdensdatum, geslacht en de moeder- en vader-ID-waarden. Naast deze standaardwaarden zijn er optionele velden die je kunt opvragen met behulp van de parameter "velden". Deze aanvullende velden zijn: Ouders, kinderen, broers en zussen en echtgenoten. Als je deze velden opvraagt, bevat de geretourneerde JSON persoonsprofielgegevens voor de relevante personen.
  • getPerson: de getPerson functie is grotendeels verouderd ten gunste van de meer flexibele getProfile. Het werkt echter nog steeds en kan nuttig zijn als je toepassing een profiel moet aanroepen met een gebruikers ID, in plaats van het paginanummer dat door getProfile wordt gebruikt (bijvoorbeeld om een moeder/vader ID te gebruiken om de profielgegevens van die ouder te verkrijgen). Het accepteert een "velden" parameter en retourneert gegevens precies zoals getProfile. Het enige verschil is de acceptatie van een gebruikers ID voor de sleutel.
  • getAncestors : Haal de voorouders van een bepaald persoon op.
  • getRelatives: Haal gezinsleden op in alle richtingen, niet alleen de voorouders.
  • getPrivacyLevels: Geeft een samenvatting van de privacy level codes.
  • getDNATestsByTestTaker : geeft als resultaat de lijst met DNA-tests die door een bepaald profiel zijn genomen.
  • searchPerson: Retourneert een lijst met persoonsprofielen die aan bepaalde criteria voldoen.

Als je een directory op de Apps-server voor jezelf wilt maken - of je nu een echte applicatie wilt uploaden of gewoon wilt experimenteren - sluit jezelf dan aan bij het WikiTree Apps Project.

Bibliotheken zijn in ontwikkeling om het gebruik van API te demonstreren in zowel Python als Javascript.

Als je niet weet waar je moet beginnen, hoef je jezelf geen zorgen te maken. E-mail <WikiTreeApps@googlegroups.com> en onze gebruikers gemeenschap zal je helpen.

Gegevens op Apps Server

De API roept gegevens op van de appserver van WikiTree. Dit zorgt ervoor dat apps de normale werking van WikiTree niet kunnen verstoren.

De App-data gegevens moeten in wezen gelijk zijn aan de live data gegevens. Het gebruikt een alleen-lezen kopie van de primaire WikiTree-database. Er zijn momenten dat als er grote wijzigingen worden aangebracht in de live server, de Apps-kopie korte tijd achterblijft (het is een minder capabele machine), maar meestal is het binnen enkele seconden of minder volledig up-to-date met de live data gegevens .

Beveiliging

De WikiTree API breidt het bestaande Vertrouwens lijst beveiligingsmodel van de WikiTree website uit. Informatie die door de API wordt geretourneerd, is beperkt tot alleen datgene wat beschikbaar is voor de huidige aangemelde gebruiker.

Elk WikiTree lid kan inloggen op een app die op apps.wikitree.com wordt uitgevoerd, tenzij u uw toepassing verbergt.

Parameters

De WikiTree API vereist bepaalde parameters om de gewenste resultaten te retourneren. Twee parameters zijn gemeenschappelijk voor alle functies. Dit zijn:

  • actie: De uit te voeren actie/functie (bijvoorbeeld "getProfile").
  • formaat: Het formaat van de geretourneerde gegevens. Dit is "json", voor JSON (JavaScript Object Notation) of "xml" voor XML (Extensible Markup Language). De standaardinstelling is dat gegevens worden geretourneerd in JSON.

In aanvulling op de "actie" en de "indeling" accepteren verschillende API-functies andere parameters.

Authenticatie

Veel bewerkingen met de API kunnen zonder enige authenticatie worden gebruikt. Openbare profielen kunnen worden opgehaald door de actie getProfile te gebruiken. Om echter gegevens op te halen van Privé profielen, zal de gebruiker zich moeten authenticeren via een gebruikersaccount dat op de Trusted List staat voor deze profielen.

Authenticatie is een proces dat uit meerdere stappen bestaat. De gebruiker gaat naar api.wikitree.com waar wordt ingelogd met haar of zijn WikiTree-inloggegevens. Bij het inloggen ontvangt de gebruiker een sessiecookie voor toekomstige verzoeken aan de API en wordt deze vervolgens met een token teruggestuurd naar de applicatie. De applicatie kan vervolgens het token valideren met de API en het gebruikers-ID opslaan. In een beetje meer detail ...

De eerste stap is om de gebruiker te laten authenticeren. Hierdoor kan men inloggen bij WikiTree zonder inloggegevens te verstrekken aan een applicatie van derden. Je moet gebruikers niet rechtstreeks om hun aanmeldingsgegevens vragen.

https://api.wikitree.com/api.php?action=clientLogin&returnURL=[encoded URL of application]

De API stuurt de gebruiker terug naar returnURL met een "authcode"-parameter. De applicatie moet dan posten naar de API-URL met action gelijk aan "clientLogin" en authcode gelijk aan de ontvangen waarde. De geretourneerde gegevens bevatten "result = Success" wanneer de autorisatiecode is bevestigd. Je kunt dan in je applicatie zien dat de gebruiker is ingelogd. Het clientLogin resultaat bevat ook het user_id en user_name van de gebruiker (dat wil zeggen WikiTree ID) die de applicatie kan opslaan voor toekomstig gebruik.

Merk op dat wanneer je een bericht plaatst op de API-URL, je er zeker van moet zijn dat de sessiecookies van de gebruiker worden meegestuurd. In JavaScript wordt dit gedaan door XMLHttpRequest.withCredentials = true. With jQuery, you set "xhrFields: { withCredentials: true }" in the $.ajax call in te stellen.

Het clientLogin-proces wordt in detail gedemonstreerd op de API Demo pagina.

getProfile

De functie getProfile werkt voor persoonsprofielen en vrije ruimte profielen.

key: dit is ofwel de Person.Name (WikiTree ID, bijv. "Adams-35"), de space page_name (bijv. "Space: Allied_POW_camps"), of het integer profiel PageId.

velden: Deze parameter beschrijft welke velden uit het persoonsprofiel je wilt dat de API retourneert. Beschikbare velden zijn onder meer:

Id, Naam, VoorNaam, MiddelsteNaam, MiddelsteInitiaal, LaatsteNaamTijdensGeboorte, LaatsteNaamHuidig, Bijnamen, LaatsteNaamAnder, EchteNaam, Voorvoegsel, Achtervoegsel
Geslacht, Geboortedatum, DatumOverlijden, GeboorteLocatie, OverlijdensLocatie, GeboorteDatumDecenium, OverlijdensDatumDecenium, Foto
Moeder, Vader, Ouders, Kinderen, Broers en Zussen, Echtgenoten
HeeftKinderen, GeenKinderen, Aangeraakt, IsLevend, Privacy, DataStatus
Afgeleide.VerkorteNaam, Verkorte.GeboorteNaamPrivé, Afgeleide.LangeNaamPrivé, Afgeleide.LangeNaam, Afgeleide.Geboorte.Naam
Manager

De GeboorteDatum en de OverlijdensDatum zijn JJJJ-MM-DD en kunnen nullen bevatten voor het jaar of de maand als de datum onvolledig is. De velden GeboorteDatumDecenium en OverlijdensDatumDecenium zijn strings zoals "1960's".

De velden Moeder en vader zijn de ID-waarden voor de ouders van het gevraagde profiel. Die kunnen worden gebruikt om meer profielgegevens op te halen met bijvoorbeeld een andere oproep om getPerson te krijgen. Als de waarde van het veld "Ouders" bevat, worden de profielgegevens voor de moeder en vader samen met het oorspronkelijke profiel geretourneerd. Evenzo kunt u de kinderen, broers en zussen en echtgenoten van een profiel opvragen. De velden die worden geretourneerd voor de profielen van deze extra familieleden zijn gelijk aan de velden die worden geretourneerd voor het gevraagde profiel.

Het HasChildren veld betekent dat het profiel kinderen heeft. Het veld NoChildren is het selectie vakje "geen kinderen meer" op de bewerk pagina.

DataStatus bevat de gegevenskwalificaties voor de volgende velden: FirstName, LastNameCurrent, RealName, BirthDate, DeathDate, BirthLocation, DeathLocation, Father, Mother, Spouse, MiddleName, LastNameAtBirth, ColloquialName, Nicknames, Gender, Prefix, Suffix, LastNameOther. Vader en moeder hebben een numerieke code: 30 = bevestigd met DNA, 20 = zeker, 10 = onzeker, 5 = niet-biologisch.

Merk op dat niet alle velden beschikbaar zijn voor alle profielen. Toegang is afhankelijk van de instelling privacy en of de aangemelde gebruiker zich in de Vertrouwenslijst van het profiel bevindt.

Het gedrag met betrekking tot ontbrekende en privé gezinsleden voor alle API functies is als volgt:

  1. Als het startprofiel geen openbare stamboom heeft (privacyniveau < 35) en de gebruiker staat niet op de vertrouwenslijst, sluit dan de velden/

objecten voor familieleden volledig uit.

  1. Als het startprofiel een openbare stamboom heeft (niveau>=35) maar een familielid ontbreekt, retourneer dan een nulwaarde ("0").
  2. Als het familielid bestaat maar het familielid geen openbare stamboom heeft (<35) en de gebruiker staat niet op de vertrouwenslijst van het familielid, retourneer dan een waarde nul/leeg als nabestaande.

Als je "velden" leeg laat, bevatten de geretourneerde gegevens niet de nabestaanden.

Als je "*" gebruikt voor de parameter "velden", worden alle beschikbare gegevens geretourneerd (d.w.z. alle hierboven vermelde velden, inclusief de profielgegevens voor de familieleden).

getBio

De functie getBio haalt de biografie tekst op van een profiel voor één persoon.

key : dit is de Persoon.Naam (WikiTree ID) of de integer van het persoonsprofiel ID (Id).

De geretourneerde velden zijn:

pagina_naam (WikiTree ID), user_id, bio

getWatchlist

De functie getWatchlist retourneert profielen van de Watchlist van de ingelogde gebruiker en vereist daarom dat de gebruiker zich eerst aanmeldt. De geretourneerde lijst met profielen bevat velden die overeenkomen met die van getProfile.

getPerson : Indien ingesteld (1), worden Persoonsprofielen op de Watchlist geretourneerd. Als dit wordt doorgegeven als nul, worden Persoonsprofielen uitgesloten. De standaardinstelling (als u de parameter helemaal niet doorgeeft) is om Persoonsprofielen op te nemen.

getSpace : Indien ingesteld (1), worden de profielprofielen in de volglijst geretourneerd. Als dit wordt doorgegeven als nul, worden Space-profielen uitgesloten. De standaardinstelling (als je de parameter helemaal niet doorgeeft) is om ruimteprofielen op te nemen.

onlyLiving : Indien ingesteld (1), worden alleen persoonsprofielen van levende personen (degenen met IsLiving = true) geretourneerd.

excludeLiving : Indien ingesteld (1), worden Persoonsprofielen waarbij IsLiving = true wordt uitgesloten van de resultaten.

fields : De specifieke velden om te retourneren (zie getPerson).

limit : Beperking van het aantal geretourneerde profielen; de standaardinstelling is 100.

offset : Startwaarde van het eerste geretourneerde record; de standaardwaarde is 0.

order : Sorteervolgorde voor de profielen op de Watchlist. Waarde kan zijn user_id, user_name, user_last_name_current, user_birth_date, user_death_date, of page_touched. De standaard sorteervolgorde is op user_id (Person.Id).

getAncestors

key : De WikiTree-ID of Persoon.Id van het profiel waarvan de voorouders geretourneerd moeten worden.

depth : Hoeveel generaties wil je terug halen. De standaardwaarde is 5. Geldige waarden zijn 1-10.

getRelatives

keys : Een door komma's gescheiden lijst met WikiTree ID of Persoon.Id waarden voor de profielen waarvan familieleden moeten worden geretourneerd.

getParents : Indien juist, worden ouders voor elk persoonsprofiel geretourneerd.

getChildren : Als dit waar is, worden de Kinderen voor elk persoonsprofiel geretourneerd.

getSpouses : Als waar, dan woorden de echtgenoten van elk persoonsprofiel geretourneerd.

getSiblings : Als dit waar is, worden broers en zussen voor elk persoonsprofiel geretourneerd.

getDNATestsByTestTaker

De getDNATestsByTestTaker retourneert de lijst met DNA testen die door een specifiek profiel uitgevoerd zijn..

key : dit is de Persoon.Naam (WikiTree ID) of de integer van het persoonsprofiel ID (Id).

getConnectedProfilesByDNATest

De getConnectedProfilesByDNATest retourneert een lijst van profielen die door een specifieke test met elkaar verbonden zijn..

key : dit is de WikiTree-ID of het (integer) profiel ID-nummer (Id) van de testpersoon.

dna_id : dit is een geheel getal dat een specifiek type DNA-test specificeert. De opties zijn:

123andMe
2AncestryDNA
3AncestryDNA Paternal Lineage
4AncestryDNA Maternal Lineage
6Family Tree DNA Family Finder
7Family Tree DNA mtDNA
8Family Tree DNA yDNA
9Other auDNA
10Other mtDNA
11Other yDNA
12MyHeritage DNA
13Living DNA

getConnectedDNATestsByProfile

De getConnectedDNATestsByProfile functie retourneert de lijst van testen welke zichtbaar zijn onder de "DNA Tested" sectie op een profiel.

key : Dit is de WikiTree-ID of het integer profiel-ID nummer (Id) van het profiel.

zoekPersoon

Deze komen meestal overeen met de velden op Special:SearchPerson.

Voornaam : Voornaam

Achternaam : Achternaam

GeboorteDatum : Geboorte datum (YYYY-MM-DD)

OverlijdensDatum : Overlijdensdatum (YYYY-MM-DD)

RoepNaam : Roepnaam

AchterNaamHuidig : Huidige achternaam

GeboortePlaats : Geboorte Plaats trefwoord(en)

OverlijdensPlaats : Overlijdensplaats trefwoord(en)

Geslacht: geslacht (mannelijk, vrouwelijk)


VadersVoorNaam : Vaders Voornaam

vadersAchterNaam : Vaders Achternaam

moedersVoorNaam : Moeders Voornaam

moedersAchterNaam : Moeders Achternaam


watchList: profielen in relatie tot de watchlist van de aanvrager (in, uit, elke)

datumOpgenomen: indien ingesteld (beide), zijn datums voor overeenkomsten vereist. Indien ingesteld (geen van beide), worden overeenkomsten zonder datums opgenomen.

datumSpreiding : Jaar bereik voor matching (1 - 20)

eeuwTypo : indien ingesteld (1), worden mogelijke eeuw type fouten in de datums opgenomen in de resultaten.

isLevend : Indien ingesteld (1), zijn overeenkomsten beperkt tot de profielen van levende mensen.

slaVariantenOver : Indien ingesteld (1), worden varianten op de achternaam niet in overweging genomen en worden alleen exacte overeenkomsten voor de achternaam geretourneerd.

acherNaamOvereenkomst : opties voor achternaamovereenkomst (alles, huidig, geboorte, streng)


sorteer : Sorteervolgorde (eerste, laatste, geboorte, overlijden, manager)

secondaireSorteervolgorde : Secundaire sorteervolgorde (eerste, laatste, geboorte, overlijden, manager)

limiet : aantal te retourneren resultaten (1 - 100, standaard 10)

start : start offset van resultaten (standaard 0)

velden : een door komma's gescheiden lijst met op te halen profielgegevensvelden. Zie getProfile.

Voorbeelden & bronnen

Een demonstratie van het raamwerk van de API-functies is beschikbaar op: https://apps.wikitree.com/apps/api_demo.php

Een JavaScript-SDK met enkele handige functies voor het werken met de API-aanvragen is beschikbaar op: https://github.com/wikitree/wikitree-javascript-sdk. Dit wordt gedemonstreerd in de API-demo hierboven, die de SDK gebruikt.

Voor vragen over de nieuwste beschikbare acties en de bijbehorende syntaxis kunt u een e-mail sturen naar <WikiTreeApps@googlegroups.com>

Zie ook:


Taal: en | de | nl
Vrijwaring: Dit is een niet-officiële vertaling. De Engelstalige versies zijn de officiële hulppagina's.
Vertaald: MB


This page was last modified 14:02, 28 November 2020. This page has been accessed 651 times.