{
  "openapi": "3.0.1",
  "info": {
    "title": "Senate Lobbying Disclosure Search",
    "description": "Search **25+ years of federal lobbying disclosure filings** from the US Senate LDA database. Find out who is lobbying Congress, on behalf of which clients, on what policy issues, how much money is involved, and which lobbyists have revolving-door government connections.",
    "version": "2.0",
    "x-build-id": "DEvatzhtUAjQkv0yH"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/ryanclinton~senate-lobbying-search/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-ryanclinton-senate-lobbying-search",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/ryanclinton~senate-lobbying-search/runs": {
      "post": {
        "operationId": "runs-sync-ryanclinton-senate-lobbying-search",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/ryanclinton~senate-lobbying-search/run-sync": {
      "post": {
        "operationId": "run-sync-ryanclinton-senate-lobbying-search",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "searchMode": {
            "title": "Search Mode",
            "enum": [
              "filings",
              "trend",
              "rankings",
              "competitive",
              "intelligence",
              "pulse"
            ],
            "type": "string",
            "description": "filings (default) returns individual filings with intelligence. trend returns per-year rollups for the searched entity (yearStart-yearEnd) plus emerging issues. rankings returns leaderboards (top clients, firms, lobbyists, issues, foreign countries, revolving-door lobbyists) over the result set. competitive benchmarks one client (clientName) against same-industry peers. intelligence (or pulse — the zero-config sector-wide alias) builds an influence feed across a two-year window: importance-ranked feed events (spend shocks, new entrants, new issues, revolving-door hires, issue crossovers), momentum leaders, committee and agency influence maps, a regulatory heat map, and network insights — works sector-wide (no entity filter) or focused (clientName / issueAreaCode / activityKeywords).",
            "default": "filings"
          },
          "preset": {
            "title": "Quick-start Preset (optional)",
            "enum": [
              "company-intelligence",
              "firm-portfolio",
              "foreign-influence-watch",
              "revolving-door-watch",
              "issue-area-scan",
              "quarterly-monitor"
            ],
            "type": "string",
            "description": "One-click intent. company-intelligence / firm-portfolio / issue-area-scan turn on entity profiles. foreign-influence-watch returns only filings naming foreign entities. revolving-door-watch returns only filings with former government officials. quarterly-monitor sets new-and-updated change tracking. Explicit fields always win over a preset."
          },
          "clientName": {
            "title": "Client Name",
            "type": "string",
            "description": "Search by the organization paying for lobbying (e.g., 'Amazon', 'Pfizer', 'National Rifle Association'). Partial match supported. Leave blank in trend / rankings / intelligence / pulse modes to scan all clients."
          },
          "registrantName": {
            "title": "Lobbying Firm / Registrant",
            "type": "string",
            "description": "Search by the lobbying firm or organization registered to lobby (e.g., 'Akin Gump', 'Brownstein'). Partial match."
          },
          "lobbyistName": {
            "title": "Lobbyist Name",
            "type": "string",
            "description": "Search by individual lobbyist name (e.g., 'John Smith'). Partial match."
          },
          "filingYear": {
            "title": "Filing Year",
            "minimum": 1999,
            "maximum": 2026,
            "type": "integer",
            "description": "Year of the lobbying disclosure filing (1999-2026). Used in filings mode; leave blank to search all years."
          },
          "yearStart": {
            "title": "Trend Start Year",
            "minimum": 1999,
            "maximum": 2026,
            "type": "integer",
            "description": "First year of the range for trend mode (1999-2026). Defaults to yearEnd minus 5."
          },
          "yearEnd": {
            "title": "Trend End Year",
            "minimum": 1999,
            "maximum": 2026,
            "type": "integer",
            "description": "Last year of the range for trend mode (1999-2026). Defaults to the current year."
          },
          "filingPeriod": {
            "title": "Filing Period",
            "enum": [
              "",
              "Q1",
              "Q2",
              "Q3",
              "Q4",
              "RR",
              "MA",
              "TA"
            ],
            "type": "string",
            "description": "Quarter or registration period to search",
            "default": ""
          },
          "industry": {
            "title": "Client Industry (filter)",
            "type": "string",
            "description": "Only return filings whose client is classified into this industry (from the client name + business description). Examples: Technology, Pharmaceuticals & Healthcare, Defense & Aerospace, Energy & Utilities, Financial Services, Telecommunications. Leave blank to include all industries."
          },
          "minRevolvingDoorScore": {
            "title": "Minimum Revolving-Door Score",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only return filings whose revolving-door score (0-100) is at or above this value. The score rises with the seniority of former government roles, the number of former officials, and the breadth of government branches they came from. Leave blank to include all filings."
          },
          "issueAreaCode": {
            "title": "Issue Area",
            "enum": [
              "",
              "ACC",
              "ADV",
              "AER",
              "AGR",
              "ALC",
              "ANI",
              "APP",
              "ART",
              "AUT",
              "AVI",
              "BAN",
              "BNK",
              "BUD",
              "CAW",
              "CDT",
              "CHM",
              "CIV",
              "COM",
              "CPI",
              "CPT",
              "CSP",
              "DEF",
              "DIS",
              "DOC",
              "ECN",
              "EDU",
              "ENG",
              "ENV",
              "FAM",
              "FIN",
              "FIR",
              "FOO",
              "FOR",
              "FUE",
              "GAM",
              "GOV",
              "HCR",
              "HOM",
              "HOU",
              "IMM",
              "IND",
              "INS",
              "INT",
              "LAW",
              "LBR",
              "MAN",
              "MAR",
              "MED",
              "MIA",
              "MMM",
              "MON",
              "NAT",
              "PHA",
              "POS",
              "RES",
              "RET",
              "ROD",
              "RRR",
              "SCI",
              "SMB",
              "SPO",
              "TAR",
              "TAX",
              "TEC",
              "TOR",
              "TOU",
              "TRA",
              "TRD",
              "TRU",
              "URB",
              "UNM",
              "UTI",
              "VET",
              "WAS",
              "WEL"
            ],
            "type": "string",
            "description": "Filter by lobbying issue area",
            "default": ""
          },
          "minIncome": {
            "title": "Minimum Income/Revenue ($)",
            "minimum": 0,
            "type": "number",
            "description": "Only return filings with income at or above this amount"
          },
          "minNotability": {
            "title": "Minimum Notability Score",
            "minimum": 0,
            "maximum": 100,
            "type": "integer",
            "description": "Only return filings whose computed notability score (0-100) is at or above this value. Notability rises with lobbying spend, foreign-entity involvement, revolving-door lobbyists (former government officials), and conviction disclosures. Leave blank to return all filings. Try 45 to surface only the high-attention filings."
          },
          "activityKeywords": {
            "title": "Activity Keywords (full-text filter)",
            "maxItems": 25,
            "type": "array",
            "description": "Keyword or bill-number filter applied to the lobbying activity descriptions, client-side. The Senate API has no full-text activity search; this adds it. Example: ['AI', 'Section 230', 'H.R. 815']. Matched filings carry matchedKeywords + activityMatchCount.",
            "items": {
              "type": "string"
            }
          },
          "activityKeywordMode": {
            "title": "Keyword Match Mode",
            "enum": [
              "any",
              "all",
              "phrase"
            ],
            "type": "string",
            "description": "any = filing matches if it contains any keyword. all = must contain every keyword. phrase = must contain the keywords as one contiguous phrase.",
            "default": "any"
          },
          "maxResults": {
            "title": "Maximum Results",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of filings to return",
            "default": 100
          },
          "includeProfiles": {
            "title": "Include Entity Profiles",
            "type": "boolean",
            "description": "Also emit aggregate clientProfile / registrantProfile / lobbyistProfile records summarising each entity across this run's result set (total spend, top counterparties, issue concentration, spend rank, revolving-door lobbyists, foreign connections). Derived records — not billed.",
            "default": false
          },
          "includeGraphEdges": {
            "title": "Include Relationship Graph Edges",
            "type": "boolean",
            "description": "Also emit edge records (client → lobbying firm, firm → lobbyist, client → issue, lobbyist → covered position) ready for Gephi, Neo4j, or network charts. Derived records — not billed.",
            "default": false
          },
          "dedupeStrategy": {
            "title": "Deduplication",
            "enum": [
              "allFilings",
              "latestPerEngagement"
            ],
            "type": "string",
            "description": "allFilings (default) returns every filing. latestPerEngagement keeps only the most recently posted filing per client + firm + year + period, collapsing quarterly re-files and amendments to the latest version.",
            "default": "allFilings"
          },
          "watchlistName": {
            "title": "Watchlist Name (optional)",
            "type": "string",
            "description": "Name a watchlist to track this exact search across runs. Each run tags filings as NEW, SEEN, or UPDATED versus prior runs of the same watchlist, so a scheduled run surfaces only what appeared or changed since you last checked. Leave blank for a one-off search."
          },
          "changeMode": {
            "title": "Watchlist Change Mode",
            "enum": [
              "newAndUpdated",
              "newOnly"
            ],
            "type": "string",
            "description": "newAndUpdated (default) tags filings whose income, issues, lobbyists, foreign entities, or convictions changed since the last run as UPDATED with a changedFields list. newOnly only distinguishes NEW from SEEN. Only applies when a watchlist is set.",
            "default": "newAndUpdated"
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}