{
  "openapi": "3.1.0",
  "info": {
    "title": "SF Startup Pulse — public data feeds",
    "version": "0.1.0",
    "summary": "Read-only, agent-readable JSON feeds behind the SF Startup Pulse map.",
    "description": "Public signals only. Funding is source-backed where a source is present; hiring is a lead until verified. All private matching, owner verification, and contact happen inside Hi (https://hi.hirey.ai). The live API an agent acts through is the Hi capability catalog at https://hi.hirey.ai/v1/capabilities — see externalDocs.",
    "contact": { "name": "Hirey", "url": "https://hirey.ai/" }
  },
  "servers": [
    { "url": "https://map.hirey.ai", "description": "Production (also https://map.hirey.com and https://hireyai.github.io/sf-startup-pulse)" }
  ],
  "externalDocs": { "description": "Hi capability catalog — the live API an agent acts through", "url": "https://hi.hirey.ai/v1/capabilities" },
  "tags": [
    { "name": "discovery", "description": "Agent discovery + index + service description" },
    { "name": "signals", "description": "Funding / hiring / social signals" },
    { "name": "entities", "description": "Companies, people, roles, events" }
  ],
  "paths": {
    "/.well-known/agent.json": { "get": { "tags": ["discovery"], "operationId": "getAgentDiscovery", "summary": "Agent discovery manifest", "responses": { "200": { "description": "Discovery manifest", "content": { "application/json": {} } } } } },
    "/data/agent-index.json": { "get": { "tags": ["discovery"], "operationId": "getAgentIndex", "summary": "Index of all agent-readable feeds", "responses": { "200": { "description": "Agent index", "content": { "application/json": {} } } } } },
    "/data/openapi.json": { "get": { "tags": ["discovery"], "operationId": "getServiceDesc", "summary": "This OpenAPI description", "responses": { "200": { "description": "OpenAPI document", "content": { "application/openapi+json": {} } } } } },
    "/data/sf-live-targets.json": { "get": { "tags": ["entities"], "operationId": "getTargets", "summary": "Map targets (companies/orgs with coordinates, kind, ask)", "responses": { "200": { "description": "Targets", "content": { "application/json": {} } } } } },
    "/data/live-signal-feed.json": { "get": { "tags": ["signals"], "operationId": "getSignalFeed", "summary": "Source-backed funding and hiring signals", "responses": { "200": { "description": "Signal feed", "content": { "application/json": {} } } } } },
    "/data/agent-readable-signals.json": { "get": { "tags": ["signals"], "operationId": "getAgentSignals", "summary": "Role-framed questions + agent output shapes", "responses": { "200": { "description": "Agent-readable signals", "content": { "application/json": {} } } } } },
    "/data/sf-events.json": { "get": { "tags": ["entities"], "operationId": "getEvents", "summary": "Normalized public events (news, funding, roles, announcements)", "responses": { "200": { "description": "Events", "content": { "application/json": {} } } } } },
    "/data/sf-job-roles.json": { "get": { "tags": ["entities"], "operationId": "getJobRoles", "summary": "Open roles from companies' public ATS boards", "responses": { "200": { "description": "Open roles", "content": { "application/json": {} } } } } },
    "/data/sf-people.json": { "get": { "tags": ["entities"], "operationId": "getPeople", "summary": "Public-figure founders (YC public directory)", "responses": { "200": { "description": "People", "content": { "application/json": {} } } } } },
    "/data/public-social-signals.json": { "get": { "tags": ["signals"], "operationId": "getPublicSocial", "summary": "Public, source-backed social evidence per target", "responses": { "200": { "description": "Public social signals", "content": { "application/json": {} } } } } },
    "/data/hi-handoff-manifest.json": { "get": { "tags": ["discovery"], "operationId": "getHiHandoffs", "summary": "Contracts to turn a public map answer into a safe Hi continuation URL", "responses": { "200": { "description": "Hi handoff manifest", "content": { "application/json": {} } } } } }
  }
}
