Python 88.3%
TypeScript 7.6%
Shell 4.1%
1#!/usr/bin/env python32"""STATUS: LIVE_VERIFIED 2026-09-18 — create a session (inline agent, environment none, initial input), poll to idle, read items, delete.3Cost ≈ $0.0012 per run (gpt-5.6-luna). Set KEEP=1 to keep the session (prints SESSION_ID) for the other examples."""4import json, os, sys, time5sys.path.insert(0, os.path.join(os.path.dirname(__file__), "..", "..", ".."))6from scripts import live78H = {"OpenAI-Beta": "agents=v1"}9body = {10 "agent": {"model": os.environ.get("AGENTS_MODEL", "gpt-5.6-luna"), "instructions": "Reply with OK.", "reasoning": {"effort": "low"}},11 "environment": {"type": "none"}, # none | openai_hosted{...} | self_hosted{workspace_directory}12 "input": "Reply with OK.", # required when environment.type == "none"; string == one user message13 "metadata": {"source": "api-atlas"},14}15st, sess, _ = live.openai_request("POST", "/v1/agents/sessions", body, extra_headers=H, est_cost_usd=0.0012, note="example create_session")16print(st, sess.get("id"), sess.get("status")); assert st == 201, sess17for _ in range(40): # turns run asynchronously: poll (or stream / webhooks)18 st, cur, _ = live.openai_request("GET", f"/v1/agents/sessions/{sess['id']}", extra_headers=H, note="example poll session")19 if cur["status"] in ("idle", "failed", "requires_action"): break20 time.sleep(2)21print("final status:", cur["status"], "required_actions:", cur["required_actions"])22st, items, _ = live.openai_request("GET", f"/v1/agents/sessions/{sess['id']}/items?order=asc", extra_headers=H, note="example list items")23for it in items["data"]:24 print(" item", it["type"], it.get("role"), json.dumps(it.get("content"))[:120], it.get("phase"))25if os.environ.get("KEEP") == "1":26 print("SESSION_ID=" + sess["id"])27else:28 st, d, _ = live.openai_request("DELETE", f"/v1/agents/sessions/{sess['id']}", extra_headers=H, note="example delete session")29 print(st, d)30