Deep Link-automatisering
Opret automatiseringer programmatisk ved hjælp af URL-skemaer.
Last updated: February 6, 2026
On this page
- Oversigt
- URL-format
- Parameterreference
- Påkrævede parametre
- Grundlæggende konfiguration
- Eksportindstillinger
- Synkroniseringskadence
- HTTP-konfiguration
- Datatypespecifikke indstillinger
- Notifikationer
- Eksempler
- Grundlæggende REST API-automatisering
- Med autentificeringsheadere
- Sundhedsmålinger med specifikke målinger
- Træninger med rutedata
- Komplet konfigurationseksempel
- CSV-formateksempel
- URL-kodning
- Test af deep links
- Fra Safari (iOS)
- Fra Terminal (macOS/iOS Simulator)
- Fra Xcode
- Fra Genveje-appen
- Fejlfinding
- Almindelige problemer
- URL-længdebegrænsninger
- Parameterpræcedens
- Bedste praksis
- Relateret dokumentation
- Support
Deep link-automatiseringer giver dig mulighed for at oprette REST API-automatiseringer programmatisk ved hjælp af URL-skemaer. Dette er ideelt til automatiseringsscripts, konfigurationsstyring eller integration med eksterne systemer, der har brug for at konfigurere eksport af sundhedsdata.
Oversigt
Deep link-automatiseringer bruger et brugerdefineret URL-skema til at oprette og konfigurere REST API-automatiseringer uden manuel indtastning af indstillinger i appen. Når du åbner en deep link-URL, opretter appen automatisk en ny automatisering med den angivne konfiguration.
Anvendelsestilfælde:
- Programmatisk automatiseringsopsætning fra scripts eller værktøjer
- Masse-automatiseringskonfiguration
- Integration med konfigurationsstyringssystemer
- Hurtig opsætning fra eksterne applikationer eller websteder
- Test- og udviklingsarbejdsgange
Nøglefunktioner:
- Opret automatiseringer via URL-skema
- Konfigurer alle REST API-automatiseringsindstillinger
- Typesikker parametervalidering
- Omfattende fejlmeddelelser
Begrænsninger
- Deep links understøtter kun REST API-automatiseringer (ikke Dropbox, Google Drive osv.)
- URL-længdebegrænsninger kan begrænse meget lange parameterlister
- Alle begrænsninger fra REST API-automatiseringer gælder (baggrundsbehandling, adgang til sundhedsdata osv.)
URL-format
Deep link-URL'en følger denne struktur:
com.HealthExport://automation?parameter1=value1¶meter2=value2&...
Base-URL: com.HealthExport://automation
Parametre: Alle parametre er valgfrie undtagen name og url. Parametre er versalufølsomme.
Parameterreference
Påkrævede parametre
url (påkrævet)
- Type: Streng (gyldig URL)
- Beskrivelse: Slutpunkt-URL'en, hvor sundhedsdata vil blive sendt
- Eksempel:
https://api.example.com/health-data - Bemærk: Skal være en gyldig HTTP/HTTPS-URL
name (påkrævet)
- Type: Streng
- Beskrivelse: Et beskrivende navn til automatiseringen
- Eksempel:
My%20Backend%20API(URL-kodet: "My Backend API") - Bemærk: Skal være URL-kodet, hvis den indeholder mellemrum eller specialtegn
Grundlæggende konfiguration
format
- Type: Enum (
json,csv) - Standard:
json - Beskrivelse: Eksportformat til dataene
- Eksempel:
format=jsonellerformat=csv - Bemærk: CSV-format aktiverer automatisk dataaggregering
enabled
- Type: Boolean (
true,false,1,0,yes,no) - Standard:
false - Beskrivelse: Om automatiseringen aktiveres med det samme efter oprettelse
- Eksempel:
enabled=true
datatype
- Type: Enum (se datatyper nedenfor)
- Standard:
healthMetrics - Beskrivelse: Type sundhedsdata, der skal eksporteres
- Eksempel:
datatype=workouts - Bemærk: Kun én datatype kan vælges. Indstilling af dette konfigurerer automatisk de relevante inkluderingsflags.
Gyldige datatyper:
healthMetrics- Sundhedsmålinger (skridt, puls, søvn osv.)workouts- Trænings- og fitnessaktivitetersymptoms- Sundhedssymptomer og tilstandeecg- ElektrokardiogramaflæsningerheartRateNotification- Høje/lave pulshændelserstateOfMind- Humør- og mentale tilstandsindtastninger (iOS 18.0+)cycleTracking- Menstruationscyklus og reproduktive sundhedsdatamedications- Medicinlogfiler og overholdelse (iOS 26.0+)
Eksportindstillinger
period
- Type: Enum
- Standard:
none - Beskrivelse: Datointerval for dataeksport
- Eksempel:
period=today
Gyldige værdier:
none- Standard (hele foregående dag plus aktuel dag)lastsync- Siden sidste synkroniseringtoday- Aktuel dagyesterday- Foregående dagprevious7days- Foregående 7 dagerealtime- Realtidsopdateringer (kræver sekunder synkroniseringsinterval)
interval
- Type: Enum
- Standard:
none - Beskrivelse: Tidsgruppering/aggregeringsinterval (kun gyldigt for healthMetrics-datatype)
- Eksempel:
interval=hours
Gyldige værdier:
none- Standard (ingen aggregering)minutes- Gruppér efter minuthours- Gruppér efter timedays- Gruppér efter dagweeks- Gruppér efter ugemonths- Gruppér efter månedyears- Gruppér efter år
Bemærk: Denne parameter er kun gyldig, når datatype=healthMetrics. CSV-format aggregerer altid data.
aggregatedata
- Type: Boolean
- Standard:
true(for CSV),false(for JSON) - Beskrivelse: Om data skal aggregeres/opsummeres (kun gyldigt for healthMetrics med JSON-format)
- Eksempel:
aggregatedata=true - Bemærk: Indstilles automatisk til
true, nårformat=csv
aggregatesleep
- Type: Boolean
- Standard:
true - Beskrivelse: Om søvndata skal aggregeres
- Eksempel:
aggregatesleep=true
exportversion
- Type: Enum (
v1,v2,1,2) - Standard:
v2 - Beskrivelse: Eksportformatversion
- Eksempel:
exportversion=v2 - Bemærk: Version 2 inkluderer forbedrede træningsdata og mere detaljerede metadata
batchrequests
- Type: Boolean
- Standard:
false - Beskrivelse: Send data i batches over flere anmodninger (kun gyldigt for REST API med JSON-format)
- Eksempel:
batchrequests=true - Bemærk: Kun gyldigt, når
format=jsonogexportDestination=restApi
Synkroniseringskadence
syncinterval
- Type: Enum
- Standard:
minutes - Beskrivelse: Interval for synkroniseringskadence
- Eksempel:
syncinterval=hours
Gyldige værdier:
minutes- Synkroniser hvert N minuthours- Synkroniser hver N timedays- Synkroniser hver N dagweeks- Synkroniser hver N ugeseconds- Kun gyldigt, nårperiod=realtime
Bemærk: For REST API-automatiseringer er kun minutes, hours, days og weeks gyldige, medmindre der bruges realtidseksport.
syncquantity
- Type: Heltal (positivt)
- Standard:
5 - Beskrivelse: Antal intervaller mellem synkroniseringer
- Eksempel:
syncquantity=10(synkroniser hvert 10. minut, hvis syncinterval=minutes) - Bemærk: Skal være større end 0
HTTP-konfiguration
headers
- Type: Streng (kommaseparerede nøgle-værdi-par)
- Standard: Ingen
- Beskrivelse: HTTP-headere til autentificering eller metadata
- Eksempel:
headers=Authorization,Bearer%20token123,X-API-Key,abc123 - Format:
key1,value1,key2,value2,... - Bemærk: Værdier skal være URL-kodede. Hvert header kræver både en nøgle og værdi.
Eksempel-headere:
Authorization, Bearer your-tokenX-API-Key, your-api-keyContent-Type, application/json
requesttimeout
- Type: Heltal (60-86400)
- Standard:
60 - Beskrivelse: Anmodnings-timeout i sekunder
- Eksempel:
requesttimeout=300 - Bemærk: Skal være mellem 60 og 86400 sekunder (1 minut til 24 timer)
Datatypespecifikke indstillinger
Sundhedsmålingsindstillinger
metrics
- Type: Streng (kommaseparerede MetricName rawValues)
- Standard: Alle tilgængelige målinger
- Beskrivelse: Specifikke sundhedsmålinger, der skal inkluderes (kun gyldigt for healthMetrics-datatype)
- Eksempel:
metrics=Step%20Count,Heart%20Rate,Active%20Energy - Bemærk: Skal bruge nøjagtige MetricName rawValues. Hvis ikke angivet, inkluderes alle tilgængelige målinger.
Almindelige målenavne:
Step CountHeart RateActive EnergyApple Exercise TimeSleep AnalysisWalking + Running Distance
Se appens målevælgerskærm for den komplette liste over tilgængelige målinger.
Træningsindstillinger
includeroutes
- Type: Boolean
- Standard:
true - Beskrivelse: Inkluder rutedata for træninger (kun gyldigt for workouts-datatype)
- Eksempel:
includeroutes=true
includeworkoutmetadata
- Type: Boolean
- Standard:
true - Beskrivelse: Inkluder træningsmålinger (puls, kalorier osv.) indsamlet under træninger (kun gyldigt for workouts-datatype)
- Eksempel:
includeworkoutmetadata=true
workoutsmetadatainterval
- Type: Enum (
minutes,seconds) - Standard:
minutes - Beskrivelse: Tidsgruppering for træningsmålinger (kun gyldigt for workouts-datatype med exportVersion v2)
- Eksempel:
workoutsmetadatainterval=seconds - Bemærk: Kun gyldigt, når
datatype=workoutsogexportversion=v2
workouttypes
- Type: Streng (kommaseparerede UInt-værdier)
- Standard: Tom (alle træningstyper)
- Beskrivelse: Specifikke træningstyper, der skal inkluderes (kun gyldigt for workouts-datatype)
- Eksempel:
workouttypes=1,2,3 - Bemærk: Bruger HealthKit-træningstypeidentifikatorer
Notifikationer
notifyonupdate
- Type: Boolean
- Standard:
true - Beskrivelse: Modtag notifikationer, når cachede data opdateres
- Eksempel:
notifyonupdate=true
notifywhenrun
- Type: Boolean
- Standard:
true - Beskrivelse: Modtag notifikationer, hver gang automatiseringen udfører
- Eksempel:
notifywhenrun=false
Eksempler
Grundlæggende REST API-automatisering
com.HealthExport://automation?url=https://api.example.com/health&name=My%20Automation&format=json&enabled=true
Opretter en grundlæggende automatisering, der sender JSON-data til det angivne slutpunkt.
Med autentificeringsheadere
com.HealthExport://automation?url=https://api.example.com/health&name=Authenticated%20API&format=json&headers=Authorization,Bearer%20your-token-here,X-API-Key,abc123&enabled=true
Opretter en automatisering med brugerdefinerede autentificeringsheadere.
Sundhedsmålinger med specifikke målinger
com.HealthExport://automation?url=https://api.example.com/metrics&name=Steps%20and%20Heart%20Rate&format=json&datatype=healthMetrics&metrics=Step%20Count,Heart%20Rate&aggregatedata=true&interval=hours&enabled=true
Opretter en automatisering, der kun eksporterer skridt og puls, aggregeret efter time.
Træninger med rutedata
com.HealthExport://automation?url=https://api.example.com/workouts&name=Workout%20Export&format=json&datatype=workouts&includeroutes=true&includeworkoutmetadata=true&exportversion=v2&workoutsmetadatainterval=minutes&enabled=true
Opretter en automatisering for træninger med rutedata og træningsmålinger ved brug af eksportversion 2.
Komplet konfigurationseksempel
com.HealthExport://automation?url=https://api.example.com/health-data&name=Complete%20Configuration&format=json&datatype=healthMetrics&period=today&interval=hours&aggregatedata=true&aggregatesleep=true&exportversion=v2&syncinterval=hours&syncquantity=2&headers=Authorization,Bearer%20token123&requesttimeout=300&batchrequests=true¬ifyonupdate=true¬ifywhenrun=false&enabled=true
Et omfattende eksempel med alle større parametre konfigureret.
CSV-formateksempel
com.HealthExport://automation?url=https://api.example.com/csv&name=CSV%20Export&format=csv&datatype=healthMetrics&period=yesterday&enabled=true
Opretter en CSV-eksportautomatisering. Bemærk, at CSV-format automatisk aktiverer dataaggregering.
URL-kodning
Specialtegn i parameterværdier skal være URL-kodede. Almindelige kodninger:
- Mellemrum:
%20 - Komma:
%2C - Kolon:
%3A - Semikolon:
%3B - Lig med:
%3D - Ampersand:
%26 - Plus:
%2B
Eksempel:
- Original:
My Automation Name - Kodet:
My%20Automation%20Name
Headere-eksempel:
- Original:
Authorization, Bearer token123 - Kodet:
Authorization,Bearer%20token123
De fleste programmeringssprog og værktøjer leverer URL-kodningsfunktioner:
- Swift:
addingPercentEncoding(withAllowedCharacters:) - JavaScript:
encodeURIComponent() - Python:
urllib.parse.quote()
Test af deep links
Fra Safari (iOS)
- Åbn Safari på din iOS-enhed
- Indtast deep link-URL'en i adresselinjen
- Tryk på Gå
- Appen skal åbne og oprette automatiseringen
Fra Terminal (macOS/iOS Simulator)
xcrun simctl openurl booted "com.HealthExport://automation?url=https://api.example.com/health&name=Test&enabled=true"
Fra Xcode
Tilføj et breakpoint eller brug debugger-konsollen:
let url = URL(string: "com.HealthExport://automation?url=https://api.example.com/health&name=Test&enabled=true")!
try DataModel.shared.handleAPIDeepLink(url)
Fra Genveje-appen
- Opret en ny genvej
- Tilføj "Åbn URL'er"-handling
- Indtast din deep link-URL
- Kør genvejen
Fejlfinding
Almindelige problemer
"Could not parse the URL"
- Bekræft, at URL-skemaet er korrekt:
com.HealthExport://automation - Tjek, at alle parameterværdier er korrekt URL-kodede
- Sørg for, at parameternavne er stavet korrekt (versalufølsomme)
"Invalid URL parameter value"
- Bekræft, at URL'en er en gyldig HTTP/HTTPS-URL
- Tjek for korrekt URL-kodning
- Sørg for, at URL'en ikke indeholder ugyldige tegn
"Invalid data type"
- Brug nøjagtige datatypeværdier:
healthMetrics,workouts,symptoms,ecg,heartRateNotification,stateOfMind,cycleTracking,medications - Tjek stavning og versalfølsning (selvom versalufølsom matching understøttes)
"Invalid sync cadence interval"
- For REST API, brug kun:
minutes,hours,days,weeks - Brug
secondskun, nårperiod=realtime
"Aggregation settings are only valid for healthMetrics data type"
aggregatedataogintervalparametre virker kun meddatatype=healthMetrics- Fjern disse parametre eller skift datatype
"Batch requests are only valid for REST API with JSON format"
batchrequestsvirker kun, nårformat=json- Skift format til JSON eller fjern batchrequests-parameteren
"Workout settings are only valid for workouts data type"
includeroutes,includeworkoutmetadataogworkoutsmetadataintervalvirker kun meddatatype=workouts- Skift datatype til workouts eller fjern disse parametre
"Metrics parameter is only valid for healthMetrics data type"
metricsparameter virker kun meddatatype=healthMetrics- Skift datatype eller fjern metrics-parameteren
"Invalid metric name"
- Brug nøjagtige MetricName rawValues (f.eks. "Step Count", "Heart Rate")
- Tjek stavning og versalfølsning
- Se appens målevælgerskærm for gyldige navne
"Invalid request timeout"
- Skal være mellem 60 og 86400 sekunder
- Brug en værdi inden for dette interval
"A name is required for the automation"
- Sørg for, at
name-parameteren er inkluderet - Tjek, at værdien ikke er tom efter URL-afkodning
URL-længdebegrænsninger
Meget lange URL'er (især med mange målinger eller headere) kan overstige systemgrænser. Overvej:
- Brug af færre målinger i
metrics-parameteren - Reduktion af antallet af headere
- Brug af kortere parameterværdier, hvor det er muligt
- Opdeling af komplekse konfigurationer i flere enklere automatiseringer
Parameterpræcedens
Når flere parametre er i konflikt:
- Datatypevalg (
datatype) nulstiller automatisk inkluderingsflags - CSV-format (
format=csv) indstiller automatiskaggregatedata=true - Realtidsperiode (
period=realtime) kræversyncinterval=seconds - Valideringsfejl vil blive kastet for inkompatible kombinationer
Bedste praksis
- Altid URL-kod parameterværdier med specialtegn
- Test med simple URL'er først, tilføj derefter kompleksitet
- Brug beskrivende navne for lettere identifikation
- Valider URL'er før oprettelse af deep links programmatisk
- Håndter fejl elegant, når deep links parses
- Dokumenter dine deep link-formater, hvis du bygger værktøjer, der genererer dem
- Overvej URL-længde, når der inkluderes mange målinger eller headere
- Test på faktiske enheder samt simulatorer
Relateret dokumentation
- REST API-automatiseringsvejledning - Detaljeret information om REST API-automatiseringer
- Automatiseringsoversigt - Generelle automatiseringskoncepter
- Manuel eksportvejledning - Sådan eksporteres data manuelt
Support
Hvis du støder på problemer, der ikke er dækket i denne vejledning:
- Tjek fejlmeddelelsen for specifikke parameterproblemer
- Bekræft, at din URL-kodning er korrekt
- Test med en minimal URL først
- Brug knappen Chat Support i appen for at få hjælp