ForHosting KIT · Veille et lecture de sites web

URI deep link app mobile

Assemblez un lien qui ouvre votre application plutôt que le navigateur : le schéma myapp, l'hôte product et le chemin /item/42 donnent myapp://product/item/42, avec les paires de la requête encodées après le point d'interrogation. Les caractères interdits dans le schéma sont bloqués. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt

Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.

Les applications mobiles ouvrent du contenu via des schemes URL personnalisés tels que myapp://product/item/42? Les chaînes assemblées à la main dérivent—espaces dans le scheme, esperluettes non échappées, barres manquantes—et cassent les flux d'ouverture dans l'app sur iOS et Android.

Ce qu'est un lien profond à schéma personnalisé

Un lien profond à schéma personnalisé est une adresse que le système du téléphone confie à votre application installée au lieu d'ouvrir le navigateur. Le schéma est la partie placée avant les deux-points et la double barre oblique, comme myapp ou com.example.app, et il suit une grammaire stricte : une lettre d'abord, puis uniquement des lettres, des chiffres, le signe plus, le point ou le trait d'union. Viennent ensuite un hôte facultatif, comme product ou open, un chemin facultatif, comme /item/42, puis les paires de la requête. Le générateur assemble ces éléments toujours dans le même ordre.

Les erreurs qui cassent un lien, et ses usages

Les liens écrits à la main échouent sur des détails : un espace ou un trait de soulignement dans le schéma, une esperluette non encodée, une barre oblique oubliée. Il arrive souvent qu'on colle le nom du produit, avec espace et point d'exclamation, en guise de schéma. Ici, le schéma est vérifié d'abord, et chaque clé et chaque valeur de la requête sont encodées comme le font les navigateurs : un espace ne casse donc rien. Cela sert aux liens personnalisés des campagnes par e-mail, SMS ou publicité, aux codes QR imprimés sur un emballage, qui exigent un texte stable, et aux applications en marque blanche, où chaque marque a son propre schéma.

Où un constructeur d'URI deep link prouve sa valeur

Les pipelines growth et CRM génèrent des liens personnalisés d'ouverture dans l'app pour chaque campagne sans demander aux ingénieurs de réimplémenter le percent-encoding. Les outils QR et d'emballage ont besoin d'une chaîne stable à imprimer ; valider le scheme en amont évite un rappel de production lorsqu'on colle My App! comme scheme.

L'échec de validation ne consomme pas de solde. Conservez les schemes dans une liste blanche documentée de votre côté, rejetez ici les caractères illégaux, et vous obtenez des deep links reproductibles pour SMS, e-mail, publicités et partages in-app sans monter un raccourcisseur de liens ni une pile d'attribution uniquement pour assembler des URI.

Quels caractères de scheme sont autorisés ?

RFC 3986 : une lettre d'abord, puis uniquement lettres, chiffres, plus (+), point (.) ou tiret (-).

Host ou path sont-ils obligatoires ?

Non. Les deux valent vide par défaut. query.

À quoi ressemble le lien sans hôte ?

Avec un hôte vide et le chemin /promo, le lien devient myapp:///promo, avec trois barres obliques. Si l'hôte et le chemin sont tous deux vides, vous obtenez quand même un lien valide comme myapp://, qui ouvre simplement l'application.

Comment sont traités les espaces et les symboles de la requête ?

Chaque clé et chaque valeur sont encodées selon les règles qu'emploient les navigateurs pour les formulaires : un espace devient une séquence d'échappement et une esperluette ne peut pas couper la requête en mauvaises paires.

Combien de paires un lien peut-il contenir ?

Jusqu'à 50. Chaque clé doit contenir du texte une fois les espaces des bords retirés, et les valeurs peuvent être du texte, des nombres ou vrai et faux, tous convertis en texte avant l'encodage.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/web/deep-link-scheme-build

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/web/deep-link-scheme-build \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"scheme":"myapp"}'
{
  "scheme": "myapp"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "web.deep_link_scheme_build",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

timeout_sec30
max_crawl_pages25
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

ref=email. Les équipes produit, growth et ingénierie ont besoin que ces URI de deep link soient bien formées à chaque fois : un jeton de scheme légal, un host et un path prévisibles, et des paires de requête percent-encoded qui survivent au copier-coller dans les payloads push, SMS, codes QR et destinations publicitaires. Cette capacité accepte un scheme personnalisé, un host optionnel, un path optionnel et une liste optionnelle de paires clé/valeur de requête, valide le scheme contre la production RFC 3986, normalise le path, encode la query et renvoie la chaîne deep_link terminée plus des champs d'écho structurés. Les caractères de scheme invalides échouent avec invalid_input au lieu d'émettre une URI cassée en silence.

Qu'est-ce qu'un deep link à scheme personnalisé et comment l'URI est assemblée

Un deep link mobile à scheme personnalisé est une URI que le système d'exploitation achemine vers votre application installée plutôt que vers le navigateur. Le scheme est le jeton avant les deux-points et la double barre—myapp, com.example.app ou my-app+v2—et doit suivre la grammaire des schemes URI : une lettre d'abord, puis uniquement lettres, chiffres, plus, point ou tiret. Espaces, underscores, deux-points et barres à l'intérieur du scheme sont illégaux et constituent les erreurs de copier-coller les plus fréquentes lorsqu'un nom de produit sert de scheme sans assainissement. Les clés et valeurs de requête sont percent-encoded avec les mêmes règles que les navigateurs pour les composants style application/x-www-form-urlencoded, de sorte que les espaces deviennent des échappements style %20 et les caractères réservés ne peuvent pas scinder la query. Après scheme:// vient un host optionnel (parfois appelé authority), comme product, open ou auth, puis un path optionnel comme /item/42, puis une chaîne de requête optionnelle de paires clé égale valeur jointes par des esperluettes. Ce constructeur concatène ces pièces dans un ordre fixe : scheme, littéral ://, host (peut être vide), un path qui reçoit toujours une seule barre initiale lorsqu'il est non vide, et une chaîne de requête uniquement lorsqu'au moins un paramètre est présent. Lorsque le host est vide et le path est /promo, le résultat ressemble à myapp:///promo ; lorsque host et path sont vides, vous obtenez encore une coque légale scheme:// utile comme intent bare d'ouverture d'app. La réponse fait écho de scheme, host, path, query_params, query_string, deep_link et has_query afin que les clients journalisent des parties structurées sans reparser l'URI. Comme l'algorithme est pur et déterministe, les mêmes entrées produisent toujours le même deep_link octet pour octet sur le chemin gratuit du navigateur et sur le chemin API payant.

Contrat d'entrée, règles de validation et comportement d'erreur

Au plus cinquante paires sont acceptées. Envoyez en POST un corps JSON avec scheme comme seul champ strictement obligatoire : une chaîne non vide après trim qui correspond au motif lettre puis lettres, chiffres, plus, point ou tiret. Les alias url_scheme, custom_scheme et protocol sont acceptés. host est optionnel et vaut par défaut la chaîne vide ; lorsqu'il est fourni il ne doit pas contenir d'espaces, de barre, de point d'interrogation ni de dièse. path est optionnel ; lorsqu'il est non vide il ne doit pas contenir d'espaces, de point d'interrogation ni de dièse, et une barre initiale est insérée si vous l'omettez, de sorte que item/42 devient /item/42. query_params est un tableau optionnel d'objets, chacun avec une key obligatoire et une value optionnelle (défaut chaîne vide) ; les alias query, params et search_params fonctionnent de même. Chaque key doit être non vide après trim ; les valeurs peuvent être chaînes, nombres ou booléens et sont converties en chaîne avant encodage. scheme manquant ou vide, scheme avec caractères invalides, caractères illégaux dans host ou path, query_params non tableau ou keys vides échouent avec invalid_input et un message clair nommant le problème—ces échecs ne sont pas facturés. En cas de succès vous recevez scheme, host et path normalisés ; la liste query_params normalisée ; query_string sans point d'interrogation initial ; deep_link comme URI complète ; et has_query comme booléen. Exemple : scheme myapp, host product, path /item/42, et query_params ref égal email plus utm_source égal newsletter produit myapp://product/item/42? ref=email&utm_source=newsletter. Associez deep_link aux domaines associés ou intent filters de votre app côté client ; ce point de terminaison construit uniquement la chaîne URI et n'enregistre pas les schemes auprès de l'OS ni ne vérifie que l'app est installée.

Où un constructeur d'URI deep link prouve sa valeur

Les backends de notifications push composent scheme, host d'écran et id d'entité en un seul champ deep_link que le client mobile peut analyser au cold start. Les apps white-label multi-tenant associent chaque marque à son propre jeton de scheme et partagent encore un constructeur pour les conventions de path et de query. Comme l'implémentation est parse pur tier A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle et sans réseau sortant.

Liens campagne et CRM d'ouverture dans l'app

Construisez des deep links personnalisés myapp://host/path?utm… pour e-mail, SMS et publicités à partir d'un scheme validé et d'une carte de query.

Cibles dans le payload de notification push

Composez scheme, host d'écran et path d'entité en une seule chaîne deep_link que le client mobile ouvre au tap sur la notification.

QR, emballage et goldens QA

Générez des URI deep link imprimables et figez des valeurs deep_link stables dans les tests pour que les schemes illégaux ne partent jamais en production.

Comment construire une URI deep link d'app mobile ?

Envoyez un scheme personnalisé (obligatoire), host et path optionnels, et query_params optionnels comme paires {key, value}. L'API renvoie deep_link sous la forme scheme://host/path?query avec paramètres percent-encoded.

Que se passe-t-il si le scheme a des caractères invalides ?

La tâche échoue avec invalid_input et un message qui nomme le scheme invalide. Aucun deep_link n'est renvoyé et l'appel n'est pas facturé.

Combien coûte le constructeur d'URI deep link ?

L'outil navigateur est gratuit. Les requêtes API utilisent le solde KIT prépayé à $0.002 par appel réussi ; l'entrée invalide n'est pas facturée.

Consulter la documentation complète du KIT →