{
  "openapi": "3.0.1",
  "info": {
    "title": "India Court Judgments Scraper - Supreme Court & High Courts API",
    "description": "Crawl Indian court judgments and orders from the Supreme Court, all 24 High Courts, Tribunals, and central laws. Filter by court, date range, judge, citation, or keyword. Optional full judgment text. Requires user-supplied Indian Kanoon API token (paid - apply at api.indiankanoon.org).",
    "version": "1.0",
    "x-build-id": "LaxhOGHnWA9MQCLf8"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/jungle_synthesizer~india-ecourts-judgments-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-jungle_synthesizer-india-ecourts-judgments-scraper",
        "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/jungle_synthesizer~india-ecourts-judgments-scraper/runs": {
      "post": {
        "operationId": "runs-sync-jungle_synthesizer-india-ecourts-judgments-scraper",
        "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/jungle_synthesizer~india-ecourts-judgments-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-jungle_synthesizer-india-ecourts-judgments-scraper",
        "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",
        "required": [
          "apiToken"
        ],
        "properties": {
          "sp_intended_usage": {
            "title": "What is the intended usage of this data?",
            "minLength": 1,
            "type": "string",
            "description": "Please describe how you plan to use the data extracted by this crawler."
          },
          "sp_improvement_suggestions": {
            "title": "How can we improve this crawler for you?",
            "minLength": 1,
            "type": "string",
            "description": "Provide any feedback or suggestions for improvements."
          },
          "sp_contact": {
            "title": "Contact Email",
            "minLength": 1,
            "type": "string",
            "description": "Provide your email address so we can get in touch with you."
          },
          "apiToken": {
            "title": "Indian Kanoon API Token",
            "type": "string",
            "description": "Your paid Indian Kanoon API token. Register at https://api.indiankanoon.org/signup/ (Rs. 500 free trial credit). The token is sent as 'Authorization: Token <value>' on every request."
          },
          "query": {
            "title": "Search Query",
            "type": "string",
            "description": "Free-text search over judgment content and metadata. Use quoted strings for exact phrases (e.g., \"specific performance\"). Supports Indian Kanoon query syntax — for example: 'author: Chandrachud', 'cites: 1234567'. Leave empty to browse by filters only."
          },
          "court": {
            "title": "Court",
            "enum": [
              "",
              "supremecourt",
              "delhi",
              "bombay",
              "madras",
              "calcutta",
              "kerala",
              "karnataka",
              "allahabad",
              "andhra",
              "chattisgarh",
              "gauhati",
              "gujarat",
              "himachal_pradesh",
              "jammu",
              "jharkhand",
              "madhyapradesh",
              "meghalaya",
              "manipur",
              "orissa",
              "patna",
              "punjab",
              "rajasthan",
              "sikkim",
              "telangana",
              "tripura",
              "uttaranchal",
              "tribunals",
              "central",
              "lawcommissionofindia",
              "constitution"
            ],
            "type": "string",
            "description": "Restrict to a specific court. Maps to Indian Kanoon doctype filter."
          },
          "author": {
            "title": "Judge / Author",
            "type": "string",
            "description": "Filter by judgment-authoring judge name. Partial matches work (e.g., 'Chandrachud', 'Bhushan')."
          },
          "citation": {
            "title": "Citation",
            "type": "string",
            "description": "Filter by citation string. Use quoted form for exact match (e.g., '\"(2017) 10 SCC 1\"' for Puttaswamy)."
          },
          "fromDate": {
            "title": "From Date",
            "type": "string",
            "description": "Only include judgments dated on or after this date. ISO format YYYY-MM-DD (will be converted to IK's DD-MM-YYYY internally)."
          },
          "toDate": {
            "title": "To Date",
            "type": "string",
            "description": "Only include judgments dated on or before this date. ISO format YYYY-MM-DD."
          },
          "orderBy": {
            "title": "Sort Order",
            "enum": [
              "relevance",
              "mostrecent",
              "leastrecent"
            ],
            "type": "string",
            "description": "How to order search results. 'Relevance' is best for keyword queries; date orderings are best for browsing."
          },
          "fetchFullText": {
            "title": "Fetch Full Judgment Text",
            "type": "boolean",
            "description": "If enabled, fetches the full HTML body of each judgment via /doc/{id}/. WARNING: each doc fetch costs the API token holder an additional Rs. 0.20 on top of the Rs. 0.50 search call. Default: off (search results only).",
            "default": false
          },
          "maxItems": {
            "title": "Max Items",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Maximum number of judgment records to return. Each Indian Kanoon search page returns 10 results (Rs. 0.50 per page billed to your token). Keep small for testing.",
            "default": 10
          },
          "proxyConfiguration": {
            "title": "Proxy Configuration",
            "type": "object",
            "description": "Proxy settings. The Indian Kanoon API does not require a proxy."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}