Deep link-automatisering

Opprett automatiseringer programmatisk med URL-skjemaer.

Last updated: April 5, 2026

På denne siden

Deep link-automatiseringer lar deg opprette REST API-automatiseringer programmatisk med URL-skjemaer. Dette passer for automatiseringsskript, konfigurasjonsstyring eller integrasjon med eksterne systemer som må konfigurere eksport av helse­data.

Oversikt

Deep link-automatiseringer bruker et egendefinert URL-skjema for å opprette og konfigurere REST API-automatiseringer uten å legge inn innstillinger manuelt i appen. Når du åpner en deep link-URL, oppretter appen automatisk en ny automatisering med den angitte konfigurasjonen.

Brukseksempler:

  • Programmatisk oppsett av automatiseringer fra skript eller verktøy
  • Massekonfigurasjon av automatiseringer
  • Integrasjon med konfigurasjonsstyringssystemer
  • Rask oppsett fra eksterne apper eller nettsteder
  • Test- og utviklingsarbeidsflyter

Hovedfunksjoner:

  • Opprett automatiseringer via URL-skjema
  • Konfigurer alle innstillinger for REST API-automatisering
  • Typesikker parametervalidering
  • Utfyllende feilmeldinger

Begrensninger

  • Deep links støtter bare REST API-automatiseringer (ikke Dropbox, Google Drive osv.)
  • URL-lengdegrenser kan begrense veldig lange parameterlister
  • Alle begrensninger fra REST API-automatiseringer gjelder (bakgrunnsbehandling, tilgang til helse­data osv.)

URL-format

Deep link-URL-en følger denne strukturen:

com.HealthExport://automation?parameter1=value1&parameter2=value2&...

Basis-URL: com.HealthExport://automation

Parametere: Alle parametere er valgfrie unntatt name og url. Parameternavn skilles ikke mellom store og små bokstaver.

Parameterreferanse

Obligatoriske parametere

url (obligatorisk)

  • Type: Streng (gyldig URL)
  • Beskrivelse: Slutt­punkt-URL der helse­data sendes
  • Eksempel: https://api.example.com/health-data
  • Merk: Må være en gyldig HTTP/HTTPS-URL

name (obligatorisk)

  • Type: Streng
  • Beskrivelse: Et beskrivende navn på automatiseringen
  • Eksempel: My%20Backend%20API (URL-kodet: «My Backend API»)
  • Merk: Må URL-kodes hvis navnet inneholder mellomrom eller spesialtegn

Grunnleggende konfigurasjon

format

  • Type: Enum (json, csv)
  • Standard: json
  • Beskrivelse: Eksportformat for dataene
  • Eksempel: format=json eller format=csv
  • Merk: CSV-format aktiverer automatisk dataaggregering

enabled

  • Type: Boolsk (true, false, 1, 0, yes, no)
  • Standard: false
  • Beskrivelse: Om automatiseringen skal være aktivert umiddelbart etter opprettelse
  • Eksempel: enabled=true

datatype

  • Type: Enum (se datatyper nedenfor)
  • Standard: healthMetrics
  • Beskrivelse: Type helse­data som skal eksporteres
  • Eksempel: datatype=workouts
  • Merk: Bare én datatype kan velges. Dette setter automatisk riktige inkluderingsflagg.

Gyldige datatyper:

  • healthMetrics – Helse­metrikker (skritt, puls, søvn osv.)
  • workouts – Trening og aktiviteter
  • symptoms – Symptomer og helsetilstander
  • ecg – EKG-målinger
  • heartRateNotification – Hendelser med høy/lav puls
  • stateOfMind – Humør og mental tilstand (iOS 18.0+)
  • cycleTracking – Menstruasjonssyklus og reproduktiv helse
  • medications – Medisinlogger og etterlevelse (iOS 26.0+)

Eksportinnstillinger

period

  • Type: Enum
  • Standard: none
  • Beskrivelse: Datointervall for dataeksport
  • Eksempel: period=today

Gyldige verdier:

  • none – Standard (hele forrige dag pluss inneværende dag)
  • lastsync – Siden forrige synkronisering
  • today – I dag
  • yesterday – I går
  • previous7days – Siste 7 dager
  • realtime – Sanntidsoppdateringer (krever synkroniseringsintervall i sekunder)

interval

  • Type: Enum
  • Standard: none
  • Beskrivelse: Tidsgruppering/aggregeringsintervall (bare gyldig for datatype healthMetrics)
  • Eksempel: interval=hours

Gyldige verdier:

  • none – Standard (ingen aggregering)
  • minutes – Grupper per minutt
  • hours – Grupper per time
  • days – Grupper per dag
  • weeks – Grupper per uke
  • months – Grupper per måned
  • years – Grupper per år

Merk: Denne parameteren er bare gyldig når datatype=healthMetrics. CSV-format aggregerer alltid data.

aggregatedata

  • Type: Boolsk
  • Standard: true (for CSV), false (for JSON)
  • Beskrivelse: Om data skal aggregeres/oppsummeres (bare gyldig for healthMetrics med JSON-format)
  • Eksempel: aggregatedata=true
  • Merk: Settes automatisk til true når format=csv

aggregatesleep

  • Type: Boolsk
  • Standard: true
  • Beskrivelse: Om søvndata skal aggregeres
  • Eksempel: aggregatesleep=true

exportversion

  • Type: Enum (v1, v2, 1, 2)
  • Standard: v2
  • Beskrivelse: Versjon av eksportformatet
  • Eksempel: exportversion=v2
  • Merk: Versjon 2 inkluderer utvidet treningsdata og mer detaljerte metadata

batchrequests

  • Type: Boolsk
  • Standard: false
  • Beskrivelse: Send data i batcher over flere forespørsler (bare gyldig for REST API med JSON-format)
  • Eksempel: batchrequests=true
  • Merk: Bare gyldig når format=json og exportDestination=restApi

Synkroniseringsfrekvens

syncinterval

  • Type: Enum
  • Standard: minutes
  • Beskrivelse: Intervall for synkroniseringsfrekvens
  • Eksempel: syncinterval=hours

Gyldige verdier:

  • minutes – Synkroniser hvert N. minutt
  • hours – Synkroniser hver N. time
  • days – Synkroniser hver N. dag
  • weeks – Synkroniser hver N. uke
  • seconds – Bare gyldig når period=realtime

Merk: For REST API-automatiseringer er bare minutes, hours, days og weeks gyldige med mindre du bruker sanntidseksport.

syncquantity

  • Type: Heltall (positivt)
  • Standard: 5
  • Beskrivelse: Antall intervaller mellom synkroniseringer
  • Eksempel: syncquantity=10 (synkroniser hvert 10. minutt hvis syncinterval=minutes)
  • Merk: Må være større enn 0

HTTP-konfigurasjon

headers

  • Type: Streng (kommaseparerte nøkkel-verdi-par)
  • Standard: Ingen
  • Beskrivelse: HTTP-overskrifter for autentisering eller metadata
  • Eksempel: headers=Authorization,Bearer%20token123,X-API-Key,abc123
  • Format: key1,value1,key2,value2,...
  • Merk: Verdier bør URL-kodes. Hver overskrift krever både nøkkel og verdi.

Eksempel på overskrifter:

  • Authorization, Bearer your-token
  • X-API-Key, your-api-key
  • Content-Type, application/json

requesttimeout

  • Type: Heltall (60–86400)
  • Standard: 60
  • Beskrivelse: Tidsavbrudd for forespørsel i sekunder
  • Eksempel: requesttimeout=300
  • Merk: Må være mellom 60 og 86400 sekunder (1 minutt til 24 timer)

Innstillinger per datatype

Innstillinger for helse­metrikker

metrics
  • Type: Streng (kommaseparerte MetricName rawValues)
  • Standard: Alle tilgjengelige metrikker
  • Beskrivelse: Bestemte helse­metrikker som skal inkluderes (bare gyldig for datatype healthMetrics)
  • Eksempel: metrics=Step%20Count,Heart%20Rate,Active%20Energy
  • Merk: Bruk nøyaktige MetricName rawValues. Hvis utelatt, inkluderes alle tilgjengelige metrikker.

Vanlige metrikknavn:

  • Step Count
  • Heart Rate
  • Active Energy
  • Apple Exercise Time
  • Sleep Analysis
  • Walking + Running Distance

Se appens skjerm for valg av metrikker for full liste.

Innstillinger for trening

includeroutes
  • Type: Boolsk
  • Standard: true
  • Beskrivelse: Inkluder rutedata for treningsøkter (bare gyldig for datatype workouts)
  • Eksempel: includeroutes=true
includeworkoutmetadata
  • Type: Boolsk
  • Standard: true
  • Beskrivelse: Inkluder treningsmetrikker (puls, kalorier osv.) samlet under øktene (bare gyldig for datatype workouts)
  • Eksempel: includeworkoutmetadata=true
workoutsmetadatainterval
  • Type: Enum (minutes, seconds)
  • Standard: minutes
  • Beskrivelse: Tidsgruppering for treningsmetrikker (bare gyldig for datatype workouts med eksportversjon v2)
  • Eksempel: workoutsmetadatainterval=seconds
  • Merk: Bare gyldig når datatype=workouts og exportversion=v2
workouttypes
  • Type: Streng (kommaseparerte UInt-verdier)
  • Standard: Tom (alle trenings­typer)
  • Beskrivelse: Bestemte trenings­typer som skal inkluderes (bare gyldig for datatype workouts)
  • Eksempel: workouttypes=1,2,3
  • Merk: Bruker HealthKit-identifikatorer for trenings­type

Varsler

notifyonupdate

  • Type: Boolsk
  • Standard: true
  • Beskrivelse: Motta varsler når bufrede data oppdateres
  • Eksempel: notifyonupdate=true

notifywhenrun

  • Type: Boolsk
  • Standard: true
  • Beskrivelse: Motta varsler hver gang automatiseringen kjører
  • Eksempel: notifywhenrun=false

Eksempler

Enkel REST API-automatisering

com.HealthExport://automation?url=https://api.example.com/health&name=My%20Automation&format=json&enabled=true

Oppretter en enkel automatisering som sender JSON-data til det angitte slutt­punktet.

Med autentiseringsoverskrifter

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

Oppretter en automatisering med egendefinerte autentiseringsoverskrifter.

Helse­metrikker med bestemte metrikker

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

Oppretter en automatisering som bare eksporterer skritt og puls, aggregert per time.

Trening 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

Oppretter en automatisering for trening med rutedata og treningsmetrikker, med eksportversjon 2.

Komplett konfigurasjonseksempel

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&notifyonupdate=true&notifywhenrun=false&enabled=true

Et omfattende eksempel med alle hovedparametere satt.

CSV-formateksempel

com.HealthExport://automation?url=https://api.example.com/csv&name=CSV%20Export&format=csv&datatype=healthMetrics&period=yesterday&enabled=true

Oppretter en CSV-eksportautomatisering. CSV-format aktiverer automatisk dataaggregering.

URL-koding

Spesialtegn i parameterverdier må URL-kodes. Vanlige kodinger:

  • Mellomrom: %20
  • Komma: %2C
  • Kolon: %3A
  • Semikolon: %3B
  • Likhetstegn: %3D
  • Og-tegn: %26
  • Pluss: %2B

Eksempel:

  • Opprinnelig: My Automation Name
  • Kodet: My%20Automation%20Name

Eksempel med overskrifter:

  • Opprinnelig: Authorization, Bearer token123
  • Kodet: Authorization,Bearer%20token123

De fleste programmeringsspråk og verktøy har funksjoner for URL-koding:

  • Swift: addingPercentEncoding(withAllowedCharacters:)
  • JavaScript: encodeURIComponent()
  • Python: urllib.parse.quote()

Fra Safari (iOS)

  1. Åpne Safari på iOS-enheten
  2. Skriv inn deep link-URL-en i adressefeltet
  3. Trykk Gå
  4. Appen skal åpne og opprette 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

Legg inn et brytepunkt eller bruk debuggerkonsollen:

let url = URL(string: "com.HealthExport://automation?url=https://api.example.com/health&name=Test&enabled=true")!
try DataModel.shared.handleAPIDeepLink(url)

Fra Snarveier-appen

  1. Opprett en ny snarvei
  2. Legg til handlingen «Åpne URL-er»
  3. Skriv inn deep link-URL-en
  4. Kjør snarveien

Feilsøking

Vanlige problemer

"Could not parse the URL"

  • Kontroller at URL-skjemaet er riktig: com.HealthExport://automation
  • Sjekk at alle parameterverdier er korrekt URL-kodet
  • Kontroller stavemåten på parameternavn (store/små bokstaver spiller ikke rolle)

"Invalid URL parameter value"

  • Kontroller at URL-en er en gyldig HTTP/HTTPS-URL
  • Sjekk URL-koding
  • Sørg for at URL-en ikke inneholder ugyldige tegn

"Invalid data type"

  • Bruk nøyaktige datatypeverdier: healthMetrics, workouts, symptoms, ecg, heartRateNotification, stateOfMind, cycleTracking, medications
  • Kontroller stavemåte (tilsvar uansett store/små bokstaver)

"Invalid sync cadence interval"

  • For REST API, bruk bare: minutes, hours, days, weeks
  • Bruk seconds bare når period=realtime

"Aggregation settings are only valid for healthMetrics data type"

  • Parametrene aggregatedata og interval gjelder bare med datatype=healthMetrics
  • Fjern disse parametrene eller endre datatype

"Batch requests are only valid for REST API with JSON format"

  • batchrequests fungerer bare når format=json
  • Endre format til JSON eller fjern batchrequests

"Workout settings are only valid for workouts data type"

  • includeroutes, includeworkoutmetadata og workoutsmetadatainterval gjelder bare med datatype=workouts
  • Endre datatype til workouts eller fjern disse parametrene

"Metrics parameter is only valid for healthMetrics data type"

  • metrics gjelder bare med datatype=healthMetrics
  • Endre datatype eller fjern metrics

"Invalid metric name"

  • Bruk nøyaktige MetricName rawValues (f.eks. «Step Count», «Heart Rate»)
  • Kontroller stavemåte og store/små bokstaver
  • Se appens metrikkvalg for gyldige navn

"Invalid request timeout"

  • Må være mellom 60 og 86400 sekunder
  • Bruk en verdi innenfor dette området

"A name is required for the automation"

  • Sørg for at parameteren name er med
  • Kontroller at verdien ikke er tom etter URL-dekoding

Begrensninger for URL-lengde

Veldig lange URL-er (særlig med mange metrikker eller overskrifter) kan overskride systemgrenser. Vurder:

  • Færre metrikker i parametern metrics
  • Færre overskrifter
  • Kortere parameterverder der det er mulig
  • Å dele komplekse oppsett i flere enklere automatiseringer

Prioritet mellom parametere

Når flere parametere er i konflikt:

  1. Valg av datatype (datatype) tilbakestiller automatisk inkluderingsflagg
  2. CSV-format (format=csv) setter automatisk aggregatedata=true
  3. Sanntidsperiode (period=realtime) krever syncinterval=seconds
  4. Valideringsfeil kastes for inkompatible kombinasjoner

Beste praksis

  1. Automatisk synkronisering (når automatiseringer utløses via deep links):

    • Lad enheten og bruk iPhone-speiling
      • Når enheten lader, setter iOS færre begrensninger på ytelse, slik at data kan synkroniseres oftere
      • Med iPhone-speiling oppfører enheten seg som om den var ulåst, slik at Health Auto Export kan få tilgang til helse­data for automatiserte handlinger
  2. URL-kod alltid parameterverdier som inneholder spesialtegn

  3. Test med enkle URL-er først, og øk deretter kompleksiteten

  4. Bruk beskrivende navn for enklere gjenkjenning

  5. Valider URL-er før du oppretter deep links programmatisk

  6. Håndter feil på en trygg måte ved parsing av deep links

  7. Dokumenter deep link-formatene hvis du bygger verktøy som genererer dem

  8. Tenk på URL-lengde når du inkluderer mange metrikker eller overskrifter

  9. Test på fysiske enheter i tillegg til simulatorer

Relatert dokumentasjon

Brukerstøtte

Hvis du støter på problemer som ikke dekkes i denne veiledningen:

  1. Les feilmeldingen for spesifikke parameterproblemer
  2. Kontroller at URL-kodingen er riktig
  3. Test først med en minimal URL
  4. Bruk knappen Chat-støtte i appen for hjelp