Connectez votre agent IA avec OAuth. Pour l’automatisation sans intervention, utilisez un client machine ou compte de service et conservez son secret dans des variables d’environnement protégées ou un coffre de secrets.

Argus ne génère ni décisions d’investissement ni ordres, mais ne limite pas l’analyse et la sortie indépendantes de l’agent client à partir de données obtenues légalement.

REST et API

  1. Utilisez le document OpenAPI autoritatif pour les schémas REST actuels.
  2. Envoyez un OAuth Bearer token ; machine clients et service accounts peuvent utiliser X-Argus-API-Key.
  3. Validez la réponse HTTP structurée et le code d’état selon le contrat OpenAPI.
  4. 400/422 indiquent la requête, 401 l’authentification, 403 le refus et 500/503 le service.
  5. Conservez audit_id et ne répétez de façon bornée que les échecs réessayables.
# First run: argus auth login
import json
from urllib.request import Request, HTTPRedirectHandler, build_opener
from argus.cli.oauth import CliOAuthProfile

profile = CliOAuthProfile()
token = profile.client().access_token()
if token is None:
    raise RuntimeError("Run argus auth login first")

class NoRedirect(HTTPRedirectHandler):
    def redirect_request(self, *args, **kwargs):
        return None

request = Request(
    profile.api_base_url + "/v1/entity-resolve",
    data=json.dumps(json.loads(r'''{"identifier_type":"lei","identifier_value":"HWUPKR0MPOU8FGXBT394","purpose":"factual_lookup","requires_redistribution":false}''')).encode(),
    headers={"Authorization": f"Bearer {token}",
             "Content-Type": "application/json", "User-Agent": "Argus REST client"},
    method="POST",
)
with build_opener(NoRedirect()).open(request, timeout=30) as response:
    envelope = json.load(response)
    print(json.dumps(envelope, indent=2))

Lire l’inventaire REST et le contrat d’erreur.