{
  "openapi": "3.0.1",
  "info": {
    "title": "Metrocuadrado Scraper [Just 💰$1.5] — Colombia Real Estate",
    "description": "💰 $1.5 per 1,000 listings. Scrape Metrocuadrado — Colombia property listings with full pricing · price-per-m² · area & rooms · GPS · agent phone & WhatsApp. Incremental mode tracks new and changed listings across scheduled runs.",
    "version": "0.1",
    "x-build-id": "WfTpGVz14xIYoiAzk"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/blackfalcondata~metrocuadrado-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-blackfalcondata-metrocuadrado-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/blackfalcondata~metrocuadrado-scraper/runs": {
      "post": {
        "operationId": "runs-sync-blackfalcondata-metrocuadrado-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/blackfalcondata~metrocuadrado-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-blackfalcondata-metrocuadrado-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",
        "properties": {
          "maxResults": {
            "title": "💯 Max Results",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum records to return (0 = full coverage). In agencies mode this caps the number of companies.",
            "default": 100
          },
          "startUrls": {
            "title": "🔗 Start URLs",
            "type": "array",
            "description": "Paste Metrocuadrado search-result URLs (e.g. https://www.metrocuadrado.com/apartamentos/venta/bogota/chico/ or https://www.metrocuadrado.com/inmuebles/venta/calima/) to scrape those exact searches. Each URL's operation, property type(s), place and filters (rooms, stratum, new/used, query-string filters) are read from the URL; the filters below still apply. Single-listing pages (/inmueble/...) are not searches.",
            "items": {
              "type": "string"
            }
          },
          "operation": {
            "title": "🔁 Operation",
            "enum": [
              "sale",
              "rent"
            ],
            "type": "string",
            "description": "Sale or rental listings.",
            "default": "sale"
          },
          "propertyTypes": {
            "title": "🏠 Property Types",
            "type": "array",
            "description": "One or more property typologies. Each is scanned independently. \"Apartment building\" searches buildings sold or let as a whole.",
            "items": {
              "type": "string",
              "enum": [
                "apartamento",
                "casa",
                "oficina",
                "local",
                "bodega",
                "consultorio",
                "lote",
                "finca",
                "edificio",
                "apartaestudio",
                "casalote",
                "edificio-de-oficinas"
              ],
              "enumTitles": [
                "Apartment",
                "House",
                "Office",
                "Commercial premises",
                "Warehouse",
                "Medical office",
                "Land/Plot",
                "Farm/Estate",
                "Apartment building",
                "Studio apartment",
                "House with land",
                "Office building"
              ]
            },
            "default": [
              "apartamento"
            ]
          },
          "cities": {
            "title": "🏙️ Cities",
            "type": "array",
            "description": "City name(s), e.g. \"bogota\", \"Medellín\", \"cali\", \"barranquilla\", \"cartagena\". Accents, capitals and spellings like \"Bogotá D.C.\" or \"Medellín, Antioquia\" are fine. A neighborhood (\"chapinero\") or a department (\"antioquia\") typed here is recognised too. Enter \"colombia\" to search the whole country. Leave empty if you only use Start URLs, departments or a centre point with a radius.",
            "items": {
              "type": "string"
            }
          },
          "neighborhoods": {
            "title": "📍 Neighborhoods (optional)",
            "type": "array",
            "description": "Optional neighborhood(s), e.g. \"chapinero\", \"usaquen\", \"el poblado\". Narrows each city or department; given without a city, the neighborhood is searched across Colombia.",
            "items": {
              "type": "string"
            }
          },
          "regions": {
            "title": "🗺️ Departments",
            "type": "array",
            "description": "Optional Colombian department(s), e.g. \"antioquia\", \"cundinamarca\", \"valle del cauca\". Searches the whole department (every city in it), or the neighborhoods you list within it.",
            "items": {
              "type": "string"
            }
          },
          "mode": {
            "title": "⚙️ Scrape mode",
            "enum": [
              "listings",
              "agencies"
            ],
            "type": "string",
            "description": "Listings (default) or Agencies — aggregate the companies behind the listings (id, owner type, listing volume, contact phone, areas served) for lead generation.",
            "default": "listings"
          },
          "minPrice": {
            "title": "💰 Min Price (COP)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum listing price."
          },
          "maxPrice": {
            "title": "💰 Max Price (COP)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum listing price."
          },
          "minAreaM2": {
            "title": "📐 Min Area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum floor area in square metres."
          },
          "maxAreaM2": {
            "title": "📐 Max Area (m²)",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum floor area in square metres."
          },
          "rooms": {
            "title": "🛏️ Bedrooms",
            "type": "array",
            "description": "Filter by number of bedrooms (any of the selected counts).",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5"
              ],
              "enumTitles": [
                "1",
                "2",
                "3",
                "4",
                "5+"
              ]
            }
          },
          "bathrooms": {
            "title": "🛁 Bathrooms",
            "type": "array",
            "description": "Filter by number of bathrooms.",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4"
              ],
              "enumTitles": [
                "1",
                "2",
                "3",
                "4+"
              ]
            }
          },
          "garages": {
            "title": "🚗 Garages",
            "type": "array",
            "description": "Filter by number of garages/parking spaces.",
            "items": {
              "type": "string",
              "enum": [
                "0",
                "1",
                "2",
                "3"
              ],
              "enumTitles": [
                "0",
                "1",
                "2",
                "3+"
              ]
            }
          },
          "stratum": {
            "title": "🏷️ Stratum (estrato)",
            "type": "array",
            "description": "Filter by socioeconomic stratum (1–6).",
            "items": {
              "type": "string",
              "enum": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6"
              ],
              "enumTitles": [
                "1",
                "2",
                "3",
                "4",
                "5",
                "6"
              ]
            }
          },
          "propertyState": {
            "title": "🔨 Condition",
            "type": "array",
            "description": "New or used.",
            "items": {
              "type": "string",
              "enum": [
                "Nuevo",
                "Usado"
              ],
              "enumTitles": [
                "New",
                "Used"
              ]
            }
          },
          "keyword": {
            "title": "🔤 Keyword",
            "type": "string",
            "description": "Only listings whose text mentions this word or phrase, e.g. \"piscina\", \"terraza\", \"chimenea\"."
          },
          "amenities": {
            "title": "🏊 Amenities",
            "type": "array",
            "description": "Only listings that have ALL of the selected amenities (pool, gym, elevator, doorman, pets allowed …), as the portal records them. The \"amenities\" field of every result shows which ones a listing has.",
            "items": {
              "type": "string",
              "enum": [
                "ascensor",
                "enConjuntoCerrado",
                "porteria",
                "conCitofono",
                "conCircuitoCerradoTV",
                "recepcionLobby",
                "conPiscina",
                "conGimnasio",
                "conSalonComunal",
                "conZonasVerdes",
                "conZonaNinos",
                "conZonaBbq",
                "conSauna",
                "conJacuzzi",
                "conCanchaFutbol",
                "conCanchaBasket",
                "conCanchaTenis",
                "conCanchaSquash",
                "conJaulaGolf",
                "salonDeJuegos",
                "conSenderoPeatonal",
                "senderosEcologicos",
                "terrazaRooftop",
                "roofGarden",
                "conParqueaderoVisitantes",
                "bahiasDeParqueo",
                "parqueaderoInteligente",
                "conGarajeCubierto",
                "conAccesoDiscapacitados",
                "accesoConTarjetasODispositivos",
                "shutDeBasura",
                "conPlantaElectrica",
                "generadorElectrico",
                "tanquesDeAgua",
                "conTanquesAgua",
                "energiaSolar",
                "conAdmin",
                "ubicadoEdificio",
                "ubicadoEnEdificio",
                "conZonaLavanderia",
                "conCocinaIntegral",
                "conCocinaAmericana",
                "conCocineta",
                "conEstudioBiblioteca",
                "conVistaPanoramica",
                "banosAuxiliar",
                "conBanoServicio",
                "conCuartoServicio",
                "conCuartoUtil",
                "conCuartoEscoltas",
                "conHall",
                "conComedorAuxiliar",
                "conChimenea",
                "conCalefaccion",
                "conAireAcondicionado",
                "conMuebles",
                "equipado",
                "conPuertasSeguridad",
                "conAlarma",
                "deteccionDeHumo",
                "conJardin",
                "conJardinInterior",
                "jardines",
                "conTerraza",
                "patio",
                "walkingCloset",
                "despensa",
                "altillo",
                "extractor",
                "horno",
                "lavaplatos",
                "luzEnLaManana",
                "luzEnLaTarde",
                "conPisoMadera",
                "conPisoBaldosa",
                "conPisoPorcelanato",
                "conPisoAlfombra",
                "duplex",
                "penthouse",
                "monoambiente",
                "esEsquinero",
                "enInterior",
                "sePermitenMascotas",
                "sePermiteFumar",
                "aptoParaNinos",
                "negociarPrecio",
                "contactoWhatsApp",
                "cercaTransportePublico",
                "cercaColegioUniversidad",
                "cercaAJardinesYColegios",
                "cercaParque",
                "cercaSupermercado",
                "cercaCentroComercial",
                "cercaARestaurantes",
                "cercaAHospitales",
                "cercaAGimnasio",
                "cercaATiendasDeBarrio",
                "cercaAParqueIndustrial",
                "cercaPlaya",
                "sobreViaPrincipal",
                "sobreViaSecundaria",
                "zonaResidencial",
                "zonaComercial",
                "zonaIndustrial",
                "zonaCampestre",
                "areaUrbana",
                "enLinderoRioQuebrada",
                "casaCampestre",
                "viviendaBifamiliar",
                "chalet",
                "cabana",
                "invernadero",
                "loteVacio",
                "conOficinas",
                "oficinasAdministrativas",
                "salaDeJuntasOReuniones",
                "salonDeConferencias",
                "controlTermico",
                "controlDeRuido",
                "ventilacionNatural",
                "sistemaDeVentilacion",
                "sistemaContraIncendio",
                "alarmaContraIncendio",
                "escaleraDeEmergencia",
                "banosPublicos",
                "depositoBodega",
                "almacen",
                "pisoDeAltaResistencia",
                "puertaElectrica",
                "puertaAccesoTractomulaCamion",
                "conPuertaTractomulas",
                "accesoCamiones",
                "plataformasParaTrailers",
                "bascula",
                "alturaLibre",
                "alturaRestringina",
                "ubicadoEnCentroComercial",
                "ubicadoCetroComercial",
                "pasajeComercial",
                "enPlazoletaDeComidas",
                "enSupermercado",
                "enOficinas",
                "enCine",
                "restaurantes",
                "bombaGasolina"
              ],
              "enumTitles": [
                "Elevator",
                "In a gated complex",
                "Doorman / reception",
                "Intercom",
                "CCTV",
                "Lobby",
                "Swimming pool",
                "Gym",
                "Community hall",
                "Green areas",
                "Children's play area",
                "BBQ area",
                "Sauna",
                "Jacuzzi",
                "Football pitch",
                "Basketball court",
                "Tennis court",
                "Squash court",
                "Golf practice cage",
                "Games room",
                "Footpaths",
                "Nature trails",
                "Rooftop terrace",
                "Roof garden",
                "Visitor parking",
                "Parking bays",
                "Automated parking",
                "Covered garage",
                "Wheelchair access",
                "Key-card access",
                "Rubbish chute",
                "Backup generator",
                "Power generator",
                "Water tanks",
                "Water tanks (alt.)",
                "Solar power",
                "Building management",
                "In a building",
                "In a building (alt.)",
                "Laundry area",
                "Fitted kitchen",
                "Open-plan kitchen",
                "Kitchenette",
                "Study / library",
                "Panoramic view",
                "Guest bathroom",
                "Service bathroom",
                "Service room",
                "Utility room",
                "Bodyguard room",
                "Hall",
                "Breakfast nook",
                "Fireplace",
                "Heating",
                "Air conditioning",
                "Furnished",
                "Equipped",
                "Security doors",
                "Alarm",
                "Smoke detection",
                "Garden",
                "Inner garden",
                "Gardens",
                "Terrace",
                "Patio",
                "Walk-in closet",
                "Pantry",
                "Loft / attic",
                "Kitchen extractor",
                "Oven",
                "Dishwasher",
                "Morning sun",
                "Afternoon sun",
                "Wooden floor",
                "Tiled floor",
                "Porcelain floor",
                "Carpeted floor",
                "Duplex",
                "Penthouse",
                "Studio (single room)",
                "Corner unit",
                "Interior-facing",
                "Pets allowed",
                "Smoking allowed",
                "Child-friendly",
                "Price negotiable",
                "WhatsApp contact",
                "Near public transport",
                "Near schools / universities",
                "Near nurseries and schools",
                "Near a park",
                "Near a supermarket",
                "Near a shopping centre",
                "Near restaurants",
                "Near hospitals",
                "Near a gym",
                "Near local shops",
                "Near an industrial park",
                "Near the beach",
                "On a main road",
                "On a side road",
                "Residential area",
                "Commercial area",
                "Industrial area",
                "Countryside area",
                "Urban area",
                "Bordering a river or stream",
                "Country house",
                "Two-family house",
                "Chalet",
                "Cabin",
                "Greenhouse",
                "Vacant lot",
                "With offices",
                "Administrative offices",
                "Meeting room",
                "Conference room",
                "Climate control",
                "Sound insulation",
                "Natural ventilation",
                "Ventilation system",
                "Fire-suppression system",
                "Fire alarm",
                "Emergency staircase",
                "Public toilets",
                "Storage unit",
                "Store room",
                "Heavy-duty floor",
                "Electric door",
                "Truck-access door",
                "Truck door (alt.)",
                "Truck access",
                "Trailer loading docks",
                "Weighbridge",
                "Unrestricted ceiling height",
                "Restricted ceiling height",
                "In a shopping centre",
                "In a shopping centre (alt.)",
                "In a shopping arcade",
                "In a food court",
                "In a supermarket",
                "In an office building",
                "In a cinema",
                "Restaurants",
                "Petrol station"
              ]
            }
          },
          "tags": {
            "title": "🏷️ Listing tags",
            "type": "array",
            "description": "Only listings carrying at least one of these tags (as shown on the portal).",
            "items": {
              "type": "string",
              "enum": [
                "brand_new",
                "negotiable",
                "price_reduced",
                "with_view",
                "available_now",
                "renovated",
                "short_term_rental",
                "no_cosigner",
                "accessible",
                "pets_allowed",
                "investment"
              ],
              "enumTitles": [
                "Brand new (Para estrenar)",
                "Negotiable",
                "Price reduced",
                "With a view",
                "Available now",
                "Renovated",
                "Short-term rental",
                "No co-signer needed",
                "Accessible",
                "Pets allowed",
                "For investment"
              ]
            }
          },
          "constructionStatus": {
            "title": "🏗️ Construction stage or building age",
            "type": "array",
            "description": "Only listings at one of these construction stages (mostly new-build projects) or in one of these building-age ranges. Several values are combined with OR.",
            "items": {
              "type": "string",
              "enum": [
                "sobre planos",
                "sobre plano",
                "en construcción",
                "para estrenar",
                "remodelado",
                "para entrega",
                "entre 0 y 5 años",
                "entre 5 y 10 años",
                "entre 10 y 20 años",
                "más de 20 años"
              ],
              "enumTitles": [
                "Off-plan",
                "Off-plan (same as above)",
                "Under construction",
                "Brand new",
                "Remodelled",
                "Ready for handover",
                "Built 0-5 years ago",
                "Built 5-10 years ago",
                "Built 10-20 years ago",
                "Built over 20 years ago"
              ]
            }
          },
          "housingTypes": {
            "title": "🏛️ Social-housing programme",
            "type": "array",
            "description": "Only projects in these housing programmes: VIS (vivienda de interés social), VIP (interés prioritario) or NOVIS (not social housing).",
            "items": {
              "type": "string",
              "enum": [
                "VIS",
                "VIP",
                "NOVIS"
              ],
              "enumTitles": [
                "VIS (social housing)",
                "VIP (priority social housing)",
                "Not social housing"
              ]
            }
          },
          "companyId": {
            "title": "🏢 Company IDs",
            "type": "array",
            "description": "Only listings of these agencies or builders: their numeric IDs, as found in the companyId field of the output (or in an /inmobiliaria/<name>/<id>/ URL). One ID per entry, e.g. 14361 and 2253 — each company is searched and duplicates are removed.",
            "items": {
              "type": "string"
            }
          },
          "sortBy": {
            "title": "↕️ Sort by",
            "enum": [
              "relevance",
              "newest",
              "price_asc",
              "price_desc",
              "area_desc",
              "area_asc",
              "rooms_desc",
              "distance"
            ],
            "type": "string",
            "description": "Order in which listings are collected — matters when Max results is lower than the number of matches. With several cities, property types or company IDs and Max results set, the results come in one combined order (except \"Newest first\", which applies within each search). \"Distance\" needs a centre point with a radius of up to 4 km.",
            "default": "relevance"
          },
          "pointOfInterest": {
            "title": "📍 Near a place of interest",
            "type": "string",
            "description": "Search around a named place — a university, shopping centre, park, hospital … e.g. \"Universidad de los Andes\", \"Centro Comercial Andino\". Uses the place as centre point with a 2 km radius unless Radius is set. A city narrows the lookup when the name exists in several cities."
          },
          "centerLat": {
            "title": "🧭 Center Latitude",
            "minimum": -90,
            "maximum": 90,
            "type": "number",
            "description": "Centre point latitude (decimal, e.g. 4.6097 for Bogotá). Combine with Center Longitude + Radius to keep only listings within the radius."
          },
          "centerLng": {
            "title": "🧭 Center Longitude",
            "minimum": -180,
            "maximum": 180,
            "type": "number",
            "description": "Centre point longitude (decimal, e.g. -74.0817 for Bogotá)."
          },
          "radiusKm": {
            "title": "📏 Radius (km)",
            "minimum": 0,
            "type": "number",
            "description": "Keep only listings within this many kilometres of the centre point (decimals allowed). Requires Center Latitude + Center Longitude. Works alone or inside a city/department. Up to 4 km the portal searches the circle itself; for a wider radius each listing's own coordinates are checked and listings without coordinates are left out. Without a city or department the radius can be at most 100 km."
          },
          "lat": {
            "title": "🌐 Latitude",
            "minimum": -90,
            "maximum": 90,
            "type": "number",
            "description": "Same as Center Latitude (used when Center Latitude is empty)."
          },
          "lon": {
            "title": "🌐 Longitude",
            "minimum": -180,
            "maximum": 180,
            "type": "number",
            "description": "Same as Center Longitude (used when Center Longitude is empty)."
          },
          "descriptionMaxLength": {
            "title": "✂️ Description Max Length",
            "minimum": 0,
            "type": "integer",
            "description": "Truncate description to this many characters. 0 = no truncation.",
            "default": 0
          },
          "compact": {
            "title": "📦 Compact Output",
            "type": "boolean",
            "description": "Output only core fields (for AI-agent/MCP workflows).",
            "default": false
          },
          "excludeEmptyFields": {
            "title": "🧹 Exclude Empty Fields",
            "type": "boolean",
            "description": "Drop null, empty-string, and empty-array fields from each record before output. Smaller, cleaner payloads for AI agents and dashboards.",
            "default": false
          },
          "descriptionFormat": {
            "title": "📝 Description Format",
            "enum": [
              "all",
              "text",
              "html",
              "markdown"
            ],
            "type": "string",
            "description": "Choose which representation of the listing description to include. `all` keeps every variant; the others keep only the selected one.",
            "default": "all"
          },
          "incrementalMode": {
            "title": "♻️ Incremental Mode",
            "type": "boolean",
            "description": "Track new/changed/expired listings across runs. Requires a State Key.",
            "default": false
          },
          "stateKey": {
            "title": "🔑 State Key",
            "type": "string",
            "description": "Stable identifier for this tracking universe (e.g. \"co-bogota-sale-apartamento\")."
          },
          "emitUnchanged": {
            "title": "♻️ Emit Unchanged Records",
            "type": "boolean",
            "description": "When incremental, also emit listings that have not changed.",
            "default": false
          },
          "emitExpired": {
            "title": "⚰️ Emit Expired Records",
            "type": "boolean",
            "description": "When incremental, also emit listings no longer found.",
            "default": false
          },
          "skipReposts": {
            "title": "🚫 Skip Reposts",
            "type": "boolean",
            "description": "When incremental, skip listings that are reposts of previously seen (now expired) listings.",
            "default": false
          },
          "notifyOnlyChanges": {
            "title": "🔄 Notify Only New/Updated",
            "type": "boolean",
            "description": "When Incremental Mode is on, only notify for NEW and UPDATED listings.",
            "default": false
          },
          "notificationLimit": {
            "title": "📊 Max Listings Per Notification",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "Maximum number of listings included in each notification message (1–20).",
            "default": 5
          },
          "telegramToken": {
            "title": "🔑 Telegram Bot Token",
            "type": "string",
            "description": "Telegram bot token (from @BotFather). Required for Telegram notifications."
          },
          "telegramChatId": {
            "title": "💬 Telegram Chat ID",
            "type": "string",
            "description": "Telegram chat or channel ID where alerts are sent."
          },
          "discordWebhookUrl": {
            "title": "🎮 Discord Webhook URL",
            "type": "string",
            "description": "Discord incoming webhook URL."
          },
          "slackWebhookUrl": {
            "title": "💼 Slack Webhook URL",
            "type": "string",
            "description": "Slack incoming webhook URL."
          },
          "whatsappPhoneNumberId": {
            "title": "📱 WhatsApp Phone Number ID",
            "type": "string",
            "description": "WhatsApp Business phone number ID from Meta Business Manager."
          },
          "whatsappAccessToken": {
            "title": "🔐 WhatsApp Access Token",
            "type": "string",
            "description": "Meta Cloud API access token with whatsapp_business_messaging scope."
          },
          "whatsappTo": {
            "title": "📨 WhatsApp Recipient",
            "type": "string",
            "description": "Recipient phone number in E.164 format (e.g. +573001234567)."
          },
          "webhookUrl": {
            "title": "🪝 Generic Webhook URL",
            "type": "string",
            "description": "Universal escape hatch for n8n / Make / Zapier / custom HTTP backends. Receives a JSON POST per run."
          },
          "webhookHeaders": {
            "title": "🪝 Webhook Headers (optional)",
            "type": "object",
            "description": "Additional HTTP headers sent with the generic webhook POST."
          },
          "appConnector": {
            "title": "📤 Send results to a connected app",
            "type": "string",
            "description": "Optional. Pick a connected app under Settings → API & Integrations to receive your results (including contact details where available). A run-summary is written to the connected app; support is best-effort as Apify expands its connector catalog."
          },
          "mcpIssueTeam": {
            "title": "🏷️ Issue tracker team",
            "type": "string",
            "description": "Only when the connected app is an issue tracker: the team (name or ID) the summary issue is created under, if that app requires one."
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}