{
  "openapi": "3.0.1",
  "info": {
    "title": "Fiscalia",
    "description": "Busca Circulares, Instrucciones y Consultas de la Fiscalía General del Estado publicadas en BOE.es, con filtros por tipo, título, texto, año, número y materia.",
    "version": "0.0",
    "x-build-id": "iBwaLQxCMWhqWisPh"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/legaltech~fiscalia/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-legaltech-fiscalia",
        "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/legaltech~fiscalia/runs": {
      "post": {
        "operationId": "runs-sync-legaltech-fiscalia",
        "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/legaltech~fiscalia/run-sync": {
      "post": {
        "operationId": "run-sync-legaltech-fiscalia",
        "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": {
          "searchTerms": {
            "title": "Términos de Búsqueda (texto completo)",
            "maxItems": 4,
            "type": "array",
            "description": "Lista de términos a buscar en el TEXTO COMPLETO de las Circulares, Instrucciones y Consultas de la Fiscalía General del Estado. Máximo 4 términos por ejecución. Admite operadores booleanos dentro de cada término: Y/AND (ambos), O/OR (cualquiera), NO/NOT (excluir) y PROXn/NEARn (proximidad, ej. PROX20). Ejemplo: \"violencia de género\" AND menor. Si se deja vacío, se listan los documentos que cumplan el resto de filtros (tipo, materia, año, número, título) sin restricción de texto.",
            "items": {
              "type": "string"
            }
          },
          "titulo": {
            "title": "Título",
            "type": "string",
            "description": "Busca solo en el TÍTULO de la disposición (más preciso que 'Términos de Búsqueda', que busca en todo el texto). Ejemplo: 'extranjería'."
          },
          "tipos": {
            "title": "Tipo de documento",
            "type": "array",
            "description": "Tipo de documento de doctrina: Circular, Instrucción o Consulta. Si no se selecciona ninguno, se buscan los tres tipos. Nota interna: el campo TIPO.ID del buscador de BOE.es admite un único valor por consulta; si se seleccionan varios tipos, el actor repite la búsqueda una vez por cada uno.",
            "items": {
              "type": "string",
              "enum": [
                "C",
                "I",
                "Q"
              ],
              "enumTitles": [
                "Circular",
                "Instrucción",
                "Consulta"
              ]
            }
          },
          "materias": {
            "title": "Materias",
            "type": "array",
            "description": "Área jurídica de la disposición. Los IDs son opacos: NO los adivines, usa exactamente los de esta lista (enumTitles). Si no se selecciona ninguna, se buscan todas las materias. Nota interna: el campo MATERIA.ID admite un único valor por consulta; si se seleccionan varias materias, el actor repite la búsqueda una vez por cada una.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6",
                "7",
                "8",
                "9",
                "10",
                "11",
                "12",
                "13",
                "14",
                "15",
                "16",
                "17",
                "18",
                "19",
                "20",
                "21",
                "22",
                "23",
                "24",
                "25"
              ],
              "enumTitles": [
                "Cooperación internacional",
                "Derecho Administrativo y proceso contencioso-administrativo",
                "Derecho Civil",
                "Derecho Constitucional",
                "Derecho Penal",
                "Derecho Penitenciario",
                "Derecho Procesal Penal",
                "Extranjería",
                "Ministerio Fiscal",
                "Responsabilidad Penal de Menores",
                "Social",
                "Derecho de la Unión Europea",
                "Protección jurídica del menor",
                "Protección jurídica de las personas con discapacidad",
                "Consumidores y usuarios",
                "Derecho Procesal Civil",
                "Siniestralidad laboral",
                "Medio ambiente",
                "Criminalidad informática",
                "Delitos económicos",
                "Violencia de Género",
                "Seguridad vial",
                "Fiscalía del Tribunal de Cuentas",
                "Protección de datos de carácter personal",
                "Delitos de Odio"
              ]
            }
          },
          "anno": {
            "title": "Año",
            "type": "string",
            "description": "Año de la disposición (ej. \"2020\"). Si se deja vacío, se buscan todos los años."
          },
          "numero": {
            "title": "Número",
            "type": "string",
            "description": "Número de la circular/instrucción/consulta (ej. \"5\"). Combínalo con 'Año' para localizar una disposición concreta (ej. Circular 5/2011: numero=5, anno=2011)."
          },
          "documentIds": {
            "title": "Extraer texto de documentos concretos",
            "maxItems": 50,
            "type": "array",
            "description": "Lista de referencias (campo `reference` de resultados anteriores, ej. \"FIS-C-2011-00005\") de las que quieres descargar el texto completo, la vigencia, las materias y las referencias anteriores. Úsalo en una segunda ejecución tras una búsqueda: copia aquí las referencias de los documentos que te interesen. Si rellenas este campo, no es necesario rellenar los filtros de búsqueda. Límite de 50 por ejecución.",
            "items": {
              "type": "string"
            }
          },
          "maxResults": {
            "title": "Número máximo de documentos",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Número máximo de documentos a devolver por cada combinación de búsqueda (searchTerms × tipos × materias). El total de doctrina publicada es de unos cientos de documentos, muy por debajo del límite técnico de BOE.es (2000 por consulta).",
            "default": 50
          },
          "paragraphs": {
            "title": "Modo párrafos (pasajes clave)",
            "minimum": 0,
            "maximum": 20,
            "type": "integer",
            "description": "Si es mayor que 0, al extraer el texto de un documento (campo `documentIds`) se devuelven solo ese número de PÁRRAFOS relevantes (los pasajes donde aparecen los términos indicados en 'Términos para los párrafos') en lugar del texto íntegro. Ideal para análisis con un LLM (menos tokens). 0 = texto completo.",
            "default": 0
          },
          "paragraphTerms": {
            "title": "Términos para los párrafos",
            "type": "string",
            "description": "Términos con los que localizar los pasajes en el modo párrafos (obligatorio si 'paragraphs' > 0, ya que en el modo `documentIds` no hay un término de búsqueda previo). Ejemplo: \"expulsión sustitutiva\"."
          },
          "sortOrder": {
            "title": "Ordenar por año",
            "enum": [
              "desc",
              "asc"
            ],
            "type": "string",
            "description": "Criterio de ordenación de los resultados por año.",
            "default": "desc"
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Configuración de proxy (opcional). BOE.es no bloquea IP de datacenter ni exige sesión, así que no hace falta proxy residencial; actívalo solo si detectas bloqueos.",
            "default": {
              "useApifyProxy": false
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}