{
  "openapi": "3.0.1",
  "info": {
    "title": "US Federal Rules API: CFR text as of a date + Federal Register",
    "description": "The text of a CFR section as in force today or on any date, its amendment history and the Federal Register rules that changed it; what changed in a CFR part since a date; Federal Register documents by number or search. Official eCFR and FederalRegister.gov data, a source link per row.",
    "version": "0.1",
    "x-build-id": "M4TgWVY79o76VIG1e"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/bosco_labs~us-federal-rules/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-bosco_labs-us-federal-rules",
        "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/bosco_labs~us-federal-rules/runs": {
      "post": {
        "operationId": "runs-sync-bosco_labs-us-federal-rules",
        "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/bosco_labs~us-federal-rules/run-sync": {
      "post": {
        "operationId": "run-sync-bosco_labs-us-federal-rules",
        "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": {
          "citation": {
            "title": "CFR citation",
            "pattern": "^\\s*$|[Ee][Cc][Ff][Rr]\\.[Gg][Oo][Vv]/|^\\s*([Tt][Ii][Tt][Ll][Ee]\\s+)?\\d{1,2}\\s*[Cc]\\.?\\s*[Ff]",
            "type": "string",
            "description": "A CFR section, part or appendix: \"21 CFR 101.9\", \"17 CFR 240.10b-5\", \"48 CFR 52.212-4\", \"15 CFR 744 Supplement No. 4\", or an eCFR link (\"https://www.ecfr.gov/current/title-21/section-101.9\"). A section or appendix returns one row: its text as in force on asOf, its amendment history and the Federal Register rules behind each change. A part (\"15 CFR 744\") returns its sections and appendices changed since the since date. Together with search, agency or documentType it instead limits Federal Register documents to that CFR part. Empty = no CFR lookup. An unreadable citation fails in seconds with examples, at no charge."
          },
          "asOf": {
            "title": "As of date",
            "pattern": "^(\\d{4}-\\d{2}-\\d{2}(T.*)?)?$",
            "type": "string",
            "description": "YYYY-MM-DD, e.g. \"2024-01-01\": the CFR text in force on that date (eCFR history begins around January 2017). Empty = today (the eCFR's latest data, usually 1-2 days old)."
          },
          "since": {
            "title": "Since (date)",
            "pattern": "^(\\d{4}-\\d{2}-\\d{2}(T.*)?)?$",
            "type": "string",
            "description": "YYYY-MM-DD, e.g. \"2026-11-01\". With a part citation: list sections changed on or after this date (empty = the last 30 days). With a search: only documents published on or after this date (empty = any date). Ignored for a single section or a document number."
          },
          "documentNumber": {
            "title": "Federal Register document number",
            "pattern": "^\\s*(([A-Za-z]\\d-)?(\\d{2}|\\d{4}|[A-Za-z]\\d)-\\d{1,6})?\\s*$",
            "type": "string",
            "description": "One Federal Register document by its number, e.g. \"2026-17231\" (corrections look like \"C1-2026-16628\"). Returns its citation, type, agencies, dates, the CFR parts it affects and links. Empty = no document lookup. Takes precedence over every other field."
          },
          "search": {
            "title": "Federal Register search words",
            "pattern": "^[^\\[\\]{}<>\\r\\n]*$",
            "type": "string",
            "description": "Full-text search of Federal Register documents since 1994, newest first, e.g. \"entity list\". Combine with agency, documentType, since and citation. Empty = no word filter (agency or documentType alone also search)."
          },
          "agency": {
            "title": "Agency",
            "pattern": "^[^\\[\\]{}<>\\r\\n]*$",
            "type": "string",
            "description": "Federal Register search by issuing agency: an acronym (\"BIS\", \"FDA\", \"EPA\", \"SEC\", \"OFAC\"), a name (\"Bureau of Industry and Security\") or a FederalRegister.gov slug (\"industry-and-security-bureau\"). Empty = all agencies. An unknown name fails with suggestions, at no charge."
          },
          "documentType": {
            "title": "Document type",
            "enum": [
              "",
              "RULE",
              "PRORULE",
              "NOTICE",
              "PRESDOCU"
            ],
            "type": "string",
            "description": "Federal Register search by type: RULE (final rules), PRORULE (proposed rules), NOTICE or PRESDOCU (presidential documents). Empty = all types. E.g. \"RULE\"."
          },
          "maxResults": {
            "title": "Max results",
            "minimum": 1,
            "maximum": 100,
            "type": "integer",
            "description": "Most rows to return: for a part citation the most recently changed units (max 25 per run, each with its text), for a search the newest documents (max 100). Default 20. One charge per row returned with an answer. E.g. 10.",
            "default": 20
          },
          "maxTextChars": {
            "title": "Max text characters",
            "minimum": 1000,
            "maximum": 500000,
            "type": "integer",
            "description": "Cap on each section's text in characters, e.g. 20000 (default). Longer text is cut at a line end and flagged with text_truncated and a warning; source_url has the whole text.",
            "default": 20000
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}