{
  "how_to_call": {
    "auth": "Reads of /a/<id>, /a/<id>.json, /a/<id>.md, /procedures.json and /schemas/* need no key. Calls under /api need the build key in the header x-sheets-key.",
    "calls": [
      {
        "what": "this article as a page (add #json, or press JSON, for the JSON view)",
        "method": "GET",
        "url": "https://miscsubjects.com/a/vertical-business-ongoing-compliance",
        "headers": {}
      },
      {
        "what": "this procedure as JSON: the object, where it sits, how to call it (no key)",
        "method": "GET",
        "url": "https://miscsubjects.com/a/vertical-business-ongoing-compliance.json",
        "headers": {}
      },
      {
        "what": "the same JSON when a client asks for it by type (no key)",
        "method": "GET",
        "url": "https://miscsubjects.com/a/vertical-business-ongoing-compliance",
        "headers": {
          "accept": "application/json"
        }
      },
      {
        "what": "this article’s Markdown (no key)",
        "method": "GET",
        "url": "https://miscsubjects.com/a/vertical-business-ongoing-compliance.md",
        "headers": {}
      },
      {
        "what": "the schema this object follows (no key)",
        "method": "GET",
        "url": "https://miscsubjects.com/schemas/procedure.json",
        "headers": {}
      },
      {
        "what": "the map of every procedure and where each sits (no key)",
        "method": "GET",
        "url": "https://miscsubjects.com/procedures.json",
        "headers": {}
      },
      {
        "what": "where this procedure stands for one person: facts in, field-by-field state and the next questions out",
        "method": "POST",
        "url": "https://miscsubjects.com/api/procedures/vertical-business-ongoing-compliance/evaluate",
        "headers": {
          "x-sheets-key": "<the build key>",
          "content-type": "application/json"
        },
        "body": {
          "facts": {}
        }
      },
      {
        "what": "read the object whole, with the hash to write it back against",
        "method": "GET",
        "url": "https://miscsubjects.com/api/procedures/vertical-business-ongoing-compliance",
        "headers": {
          "x-sheets-key": "<the build key>"
        }
      },
      {
        "what": "replace the object (if-match: its hash; a wrong hash is refused 412 with the current one)",
        "method": "PUT",
        "url": "https://miscsubjects.com/api/procedures/vertical-business-ongoing-compliance",
        "headers": {
          "x-sheets-key": "<the build key>",
          "content-type": "application/json",
          "if-match": "<hash from GET>"
        },
        "body": {
          "schema": "procedure/1",
          "procedure_id": "vertical-business-ongoing-compliance",
          "…": "…"
        }
      },
      {
        "what": "check the kept source text and every quotation against their hashes",
        "method": "GET",
        "url": "https://miscsubjects.com/api/procedures/vertical-business-ongoing-compliance/verify",
        "headers": {
          "x-sheets-key": "<the build key>"
        }
      },
      {
        "what": "every earlier version (append-only)",
        "method": "GET",
        "url": "https://miscsubjects.com/api/procedures/vertical-business-ongoing-compliance/revisions",
        "headers": {
          "x-sheets-key": "<the build key>"
        }
      }
    ],
    "schema": "https://miscsubjects.com/schemas/procedure.json",
    "states": [
      "UNKNOWN",
      "PROVIDED",
      "EVIDENCED",
      "RULE-SATISFIED",
      "READY",
      "AUTHORIZED",
      "SUBMITTED",
      "ACCEPTED",
      "INELIGIBLE",
      "AMBIGUOUS",
      "HUMAN_REVIEW",
      "REJECTED",
      "CORRECTION_REQUIRED",
      "EXPIRED",
      "WITHDRAWN"
    ],
    "relations": [
      "parent_of / child_of",
      "sibling_of",
      "nested",
      "requires",
      "triggered_by",
      "may_trigger",
      "may_cause",
      "related",
      "appeal / correction / renewal",
      "maps_to_fact",
      "supports"
    ]
  },
  "slug": "vertical-business-ongoing-compliance",
  "title": "Business ongoing compliance",
  "published": true,
  "status": "published",
  "type": "vertical",
  "hash": "sha256:bb00ae06a211644860710a72129ddc00d9624287a2585c7af4a412f17680b2af",
  "version": 1,
  "created_at": "2026-10-04T21:18:58.604Z",
  "updated_at": "2026-10-04T21:18:58.604Z",
  "page": "https://miscsubjects.com/a/vertical-business-ongoing-compliance",
  "json": "https://miscsubjects.com/a/vertical-business-ongoing-compliance.json",
  "markdown": "https://miscsubjects.com/a/vertical-business-ongoing-compliance.md",
  "projection": {
    "generated_from": "sha256:bb00ae06a211644860710a72129ddc00d9624287a2585c7af4a412f17680b2af",
    "note": "The article page and its Markdown are drawn from this object. Edit the object, never the page."
  },
  "procedure": {
    "schema": "procedure/1",
    "procedure_id": "vertical-business-ongoing-compliance",
    "type": "vertical",
    "title": "Business ongoing compliance",
    "status": "published",
    "summary": "What a business owes the state after it is formed: annual reports and statements, franchise taxes, amendments.",
    "jurisdiction_ids": [
      "us"
    ],
    "child_ids": [
      "statement-of-information",
      "california-llc-annual-tax"
    ],
    "article_projection": {
      "description": "Every ongoing-compliance procedure on the map: the ones read from their sources, and the ones only named so far.",
      "register": "Vertical",
      "body_md": "Forming a business starts clocks. The procedures below are the ones those clocks run: some yearly, some every two years, some only when something changes."
    },
    "provenance": {
      "seeded_from": "Universal Procedure Graph sheet, Verticals tab",
      "method": "taxonomy from the sheet; this hub has no rules of its own"
    },
    "version": 1
  },
  "ontology": {
    "id": "vertical-business-ongoing-compliance",
    "level": 0,
    "root": {
      "id": "vertical-business-ongoing-compliance",
      "title": "Business ongoing compliance",
      "type": "vertical",
      "status": "published",
      "exists": true,
      "url": "/a/vertical-business-ongoing-compliance"
    },
    "ancestors": [],
    "parents": [],
    "children": [
      {
        "id": "annual-report",
        "title": "Annual report",
        "type": "procedure",
        "status": "stub",
        "exists": true
      },
      {
        "id": "california-llc-annual-tax",
        "title": "Pay a California LLC’s annual tax",
        "type": "obligation",
        "status": "published",
        "exists": true,
        "url": "/a/california-llc-annual-tax"
      },
      {
        "id": "dissolution-withdrawal",
        "title": "Dissolution/withdrawal",
        "type": "procedure",
        "status": "stub",
        "exists": true
      },
      {
        "id": "entity-amendment",
        "title": "Entity amendment",
        "type": "procedure",
        "status": "stub",
        "exists": true
      },
      {
        "id": "foreign-qualification",
        "title": "Foreign qualification",
        "type": "procedure",
        "status": "stub",
        "exists": true
      },
      {
        "id": "statement-of-information",
        "title": "Statement of information",
        "type": "procedure",
        "status": "stub",
        "exists": true
      }
    ],
    "siblings": [],
    "related": [],
    "prerequisites": [],
    "triggered_by": [],
    "may_trigger": [],
    "may_cause": [],
    "caused_by": [],
    "nested": [],
    "descendants": 7,
    "unresolved": [],
    "one_sided_edges": [
      "401-k-rollover says its parent is vertical-retirement-pensions",
      "aca-marketplace-enrollment says its parent is vertical-health-insurance-enrollment",
      "account-closure-transfer says its parent is vertical-death-administration",
      "adoption-petition-packet says its parent is vertical-child-family-benefits",
      "advanced-imaging-authorization says its parent is vertical-prior-authorization",
      "agency-reconsideration says its parent is vertical-administrative-hearings",
      "agricultural-permit says its parent is vertical-agriculture-food-programs",
      "air-emissions-permit says its parent is vertical-environmental-permitting",
      "aircraft-registration says its parent is vertical-aviation-maritime-administration",
      "airline-refund-request says its parent is vertical-travel-compensation-claims"
    ]
  },
  "freshness": {
    "state": "unverified",
    "last_verified_at": null,
    "effective_until": null,
    "recheck_after_days": null,
    "recheck": []
  },
  "validation": {
    "ok": true,
    "errors": [],
    "warnings": []
  },
  "body": "What a business owes the state after it is formed: annual reports and statements, franchise taxes, amendments.\n\n## At a glance\n\n| Detail | Value |\n| --- | --- |\n| Kind | Vertical |\n| Where it applies | us |\n| Version | 1 |\n\n## Where this sits\n\n**Level 0.** This is a top of the map.\n\n**Inside it:** Annual report, [Pay a California LLC’s annual tax](/a/california-llc-annual-tax), Dissolution/withdrawal, Entity amendment, Foreign qualification, Statement of information\n\nForming a business starts clocks. The procedures below are the ones those clocks run: some yearly, some every two years, some only when something changes.\n"
}