Qualification et scoring de leads par IA depuis votre CRM

Un agent lit un lead et son entreprise dans un CRM en lecture seule, le note au regard de votre profil de client idéal et propose la prochaine action.

  • Fichiers
  • Connexion en lecture seule
  • Callback
  • Plafond de budget

Regardez une vraie exécution

Une vraie exécution du 7 oct. 2026, rejouée. Modèle : openai/gpt-6-luna.

Entrée
{
  "lead_id": "lead_501"
}
Réussierun_6635489edcf97c044f218cc28b041a6d$0.0036 sur $0.03
  1. En file d'attentebudget de $0.03 réservé
  2. MicroVMmicroVM ready
  3. MicroVMworker started · shell off · web off
  4. Connexioncrm GET /leads/lead_501
  5. Fichierread icp.md
  6. Résultatcrm GET → 200
  7. Connexioncrm GET /accounts/acct_91
  8. Résultatcrm GET → 200
  9. MicroVMmicroVM destroyed
  10. Réussie3 appels au modèle, 4,687 jetonsSortie enregistrée (en anglais)
    json
    {
      "score": 95,
      "tier": "A",
      "reasons": [
        "Company has 1,200 employees, within the 100–5,000 employee ICP range.",
        "VP of Engineering wants to run agents over carrier APIs and requested a demo for 8 engineers.",
        "Lead mentioned a security review and a Q4 budget."
      ],
      "risks": [],
      "next_action": "Contact within a day to follow up on the demo request and discuss the security review."
    }
  11. Worker détruit$0.0036 facturé, $0.0264 libéré
Modèle $0.0004 · Web $0.00 · Calcul $0.0032

Lancez-le vous-même

Ouvrez l'exemple dans le playground avec toute la requête déjà remplie. Il s'exécute sur votre propre compte, dans le budget indiqué, sur les mêmes systèmes d'exemple en lecture seule.

Budget pour cet exemple : $0.03

Fonctionnement

Le profil de client idéal est un fichier que votre équipe commerciale peut modifier. L'agent lit le lead et le compte via une connexion CRM limitée à GET, renvoie un score avec les raisons et les risques, et n'écrit jamais dans le CRM.

Ce que l'agent peut et ne peut pas faire

Les permissions font partie de la requête. Tout ce qui n'est pas listé ici n'est pas disponible pour l'exécution.

ParamètreAutorisé
Connexions
crm : GET uniquement, sur ephemer.al/api/samples/crm-api
WebDésactivé
ShellDésactivé
Fichiersicp.md (lecture seule)
Rétention zéro des donnéesDésactivée : l'historique est conservé 30 jours
Budget$0.03, un plafond strict
Délai60 secondes

Les identifiants n'entrent jamais dans la machine : un broker les ajoute à chaque appel et impose les méthodes ci-dessus.

Le code

Voici la requête exacte envoyée par l'exemple. Définissez EPHEMERAL_API_KEY avec une clé de membre de votre organisation.

curl -X POST $EPHEMERAL_URL/v1/runs \
  -H "Authorization: Bearer $EPHEMERAL_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: $(uuidgen)" \
  -d @request.json

Fichiers de la requête

Transmis en ligne, rien n'est donc importé au préalable. L'agent voit chacun comme un fichier en lecture seule.

icp.md
icp.md
# Ideal customer profile

Good fit (score up):
- Engineering or operations teams at companies with 100 to 5,000 employees.
- Wants to automate work over its own APIs (support, finance operations, monitoring).
- Mentions a security review, data retention needs, a budget or a timeline.
- Role: VP or head of engineering, operations, support or finance; or a founder with budget.

Poor fit (score down):
- Students, hobby projects, no budget or timeline.
- Individuals evaluating for someone else.
- Procurement cycles longer than 6 months for a first purchase.

Score 0 to 100. Tier A (70+): contact within a day. Tier B (40 to 69): nurture. Tier C (below 40): no sales time.
Corps complet de la requête request.json

Le même corps, avec les fichiers en ligne.

request.json
{
  "prompt": "Qualify the CRM lead in input.lead_id. Read the lead with GET /leads/{id} and its company with GET /accounts/{account_id}, then score it against icp.md. Reply with one JSON object and nothing else: {\"score\": number, \"tier\": \"A\"|\"B\"|\"C\", \"reasons\": string[] (max 3), \"risks\": string[] (max 2), \"next_action\": string}. Use only what the data returns and never guess; if a call fails or a field is missing, say so.",
  "input": {
    "lead_id": "lead_501"
  },
  "files": [
    {
      "path": "icp.md",
      "content": "# Ideal customer profile\n\nGood fit (score up):\n- Engineering or operations teams at companies with 100 to 5,000 employees.\n- Wants to automate work over its own APIs (support, finance operations, monitoring).\n- Mentions a security review, data retention needs, a budget or a timeline.\n- Role: VP or head of engineering, operations, support or finance; or a founder with budget.\n\nPoor fit (score down):\n- Students, hobby projects, no budget or timeline.\n- Individuals evaluating for someone else.\n- Procurement cycles longer than 6 months for a first purchase.\n\nScore 0 to 100. Tier A (70+): contact within a day. Tier B (40 to 69): nurture. Tier C (below 40): no sales time.\n"
    }
  ],
  "connections": {
    "crm": {
      "type": "http",
      "url": "https://ephemer.al/api/samples/crm-api",
      "auth": {
        "type": "bearer",
        "token": "sample_read_key"
      },
      "allowed_methods": [
        "GET"
      ],
      "instructions": "A CRM. GET /leads lists leads. GET /leads/{id} returns a lead with notes and activity. GET /accounts/{id} returns the company (industry, employees, country, revenue, tech, customer, open_deals)."
    }
  },
  "shell": false,
  "timeout_seconds": 60,
  "max_cost_micros": 30000
}

En savoir plus

Exemples liés

esc

Aucun résultat pour « ».