{
  "openapi": "3.0.3",
  "info": {
    "title": "Infabode GraphQL API V2",
    "version": "2.0.0",
    "description": "Complete API for real estate market data, research documents, industry insights, market news, transactions, and AI-powered content analysis. Infabode aggregates global real estate intelligence across content types, locations, industry sectors, and organizations.",
    "contact": {
      "email": "hello@infabode.com",
      "url": "https://ia.infabode.com"
    },
    "termsOfService": "https://ia.infabode.com/terms"
  },
  "servers": [
    {
      "url": "https://infabode.com/api",
      "description": "Production GraphQL API"
    },
    {
      "url": "https://infabode.com/graphiql",
      "description": "GraphiQL IDE (Interactive Playground)"
    }
  ],
  "security": [
    {
      "apiKey": []
    }
  ],
  "components": {
    "securitySchemes": {
      "apiKey": {
        "type": "apiKey",
        "in": "header",
        "name": "api-key",
        "description": "API key provided when you become an API partner. Contact hello@infabode.com to obtain access."
      }
    },
    "schemas": {
      "ContentType": {
        "type": "object",
        "description": "Content types available in the Infabode platform",
        "properties": {
          "id": { "type": "integer", "description": "Unique identifier" },
          "name": { "type": "string", "description": "Content type name" }
        },
        "x-enum-values": [
          { "id": 1, "name": "Research Documents" },
          { "id": 2, "name": "Industry Insights" },
          { "id": 3, "name": "Market News" },
          { "id": 4, "name": "Sale Listings", "note": "on request" },
          { "id": 6, "name": "Job Openings", "note": "on request" },
          { "id": 8, "name": "Lease Transactions" },
          { "id": 9, "name": "Sale Transactions" },
          { "id": 10, "name": "Lease Listings", "note": "on request" }
        ]
      },
      "LocationHierarchy": {
        "type": "object",
        "description": "Location hierarchy structure",
        "properties": {
          "type": { "type": "string", "enum": ["global", "continent", "country", "sub1", "sub2", "city", "sub3", "sub4", "sub5"] },
          "description": { "type": "string" }
        },
        "x-examples": {
          "continent": { "example1": "Europe", "example2": "North America" },
          "country": { "example1": "United Kingdom", "example2": "United States" },
          "sub1": { "example1": "England", "example2": "New York" },
          "city": { "example1": "London", "example2": "New York" },
          "sub3": { "example1": "Central London", "example2": "The Bronx" }
        }
      },
      "IndustrySector": {
        "type": "object",
        "description": "Industry sectors and subsectors",
        "properties": {
          "id": { "type": "integer" },
          "name": { "type": "string" },
          "subsectors": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": { "type": "integer" },
                "name": { "type": "string" }
              }
            }
          }
        },
        "x-enum-values": [
          { "id": 18, "name": "General Market" },
          { "id": 1, "name": "Office", "subsectors": [{"id": 1011, "name": "Flexible Offices"}, {"id": 1012, "name": "Business Parks"}] },
          { "id": 2, "name": "Retail", "subsectors": [{"id": 1021, "name": "High Street"}, {"id": 1022, "name": "Retail Parks"}, {"id": 1023, "name": "Malls/Shopping Centres"}, {"id": 1024, "name": "Supermarkets"}, {"id": 1025, "name": "Factory Outlets"}, {"id": 1026, "name": "Restaurant/Pubs"}] },
          { "id": 11, "name": "Mixed Use" },
          { "id": 4, "name": "Residential", "subsectors": [{"id": 1041, "name": "Multi-Family/PRS"}, {"id": 1042, "name": "Owner/Occupier"}, {"id": 1043, "name": "Short Term Rentals"}, {"id": 1044, "name": "Social Housing"}] },
          { "id": 8, "name": "Hotels", "subsectors": [{"id": 1081, "name": "Resorts"}, {"id": 1082, "name": "Luxury"}, {"id": 1083, "name": "Budget"}] },
          { "id": 7, "name": "Student Accommodation", "subsectors": [{"id": 1071, "name": "Student Halls/Accommodation"}, {"id": 1072, "name": "University Campus"}] },
          { "id": 6, "name": "Industrial", "subsectors": [{"id": 1061, "name": "Heavy Industrial/Manufacturing"}, {"id": 1062, "name": "Light Industrial"}, {"id": 1063, "name": "Energy Plants"}] },
          { "id": 12, "name": "Logistics" },
          { "id": 14, "name": "Alternative sectors", "subsectors": [{"id": 1141, "name": "Airports"}, {"id": 1142, "name": "Marinas"}, {"id": 1143, "name": "Leisure/Entertainment"}, {"id": 1144, "name": "Brewery"}, {"id": 1145, "name": "Data Centres"}, {"id": 1146, "name": "Self Storage"}, {"id": 1147, "name": "Research Centres"}] },
          { "id": 19, "name": "Healthcare", "subsectors": [{"id": 1191, "name": "Care Homes"}, {"id": 1192, "name": "Senior Housing"}, {"id": 1193, "name": "Private Healthcare"}] },
          { "id": 20, "name": "Infrastructure", "subsectors": [{"id": 1201, "name": "Roads"}, {"id": 1202, "name": "Railway"}, {"id": 1203, "name": "Bridges"}, {"id": 1204, "name": "Telecommunications"}, {"id": 1205, "name": "Schools/Universities"}, {"id": 1206, "name": "Police Stations/Prisons"}, {"id": 1207, "name": "Hospitals/Doctor Surgery"}] },
          { "id": 21, "name": "Planning & Construction", "subsectors": [{"id": 1211, "name": "Development Land"}, {"id": 1212, "name": "Planning"}, {"id": 1213, "name": "Construction"}, {"id": 1214, "name": "Regeneration"}] },
          { "id": 17, "name": "Rural", "subsectors": [{"id": 1171, "name": "Agricultural Land"}, {"id": 1172, "name": "Vineyards"}, {"id": 1173, "name": "Timber/Forestry"}] },
          { "id": 10, "name": "Technology", "subsectors": [{"id": 1101, "name": "Services"}, {"id": 1102, "name": "Products"}] },
          { "id": 9, "name": "Sustainability", "subsectors": [{"id": 1091, "name": "Renewable Energy"}, {"id": 1093, "name": "Social Impact"}, {"id": 1092, "name": "Building Sustainability"}] },
          { "id": 3, "name": "Investment Vehicles", "subsectors": [{"id": 1031, "name": "Property Companies/REITs"}, {"id": 1032, "name": "Real Estate Property Funds"}, {"id": 1033, "name": "Real Estate Debt Funds"}] },
          { "id": 5, "name": "Capital Markets & Economics", "subsectors": [{"id": 1051, "name": "Politics"}, {"id": 1052, "name": "Capital Markets"}, {"id": 1053, "name": "General Economy"}] },
          { "id": 16, "name": "Debt", "subsectors": [{"id": 1161, "name": "Mortgages"}, {"id": 1162, "name": "Bonds"}, {"id": 1163, "name": "Securitised Debt"}] },
          { "id": 15, "name": "Legal" },
          { "id": 13, "name": "Accounting/Tax" },
          { "id": 22, "name": "Real Estate Companies", "subsectors": [{"id": 1221, "name": "People"}, {"id": 1222, "name": "Mergers & Acquisitions"}, {"id": 1223, "name": "Financial Results"}] }
        ]
      },
      "Post": {
        "type": "object",
        "description": "Post/article object containing real estate content",
        "properties": {
          "id": { "type": "integer", "description": "Unique identifier" },
          "title": { "type": "string", "description": "Post title" },
          "summary": { "type": "string", "description": "Short text about the post" },
          "best_summary": { "type": "string", "description": "AI Summary or post summary" },
          "url": { "type": "string", "description": "Link to read the article in full" },
          "postImages": { "type": "array", "description": "Images uploaded to the article" },
          "insertedAt": { "type": "string", "format": "date-time", "description": "Release date" },
          "updatedAt": { "type": "string", "format": "date-time", "description": "Date the post was edited" },
          "publishedAt": { "type": "string", "format": "date-time", "description": "Date that the post was published" },
          "contentType": { "$ref": "#/components/schemas/ContentType" },
          "indSectors": { "type": "array", "items": { "$ref": "#/components/schemas/IndustrySector" } },
          "locations": { "type": "array", "description": "List of location objects" },
          "source": { "type": "object", "description": "Company that posted the article" },
          "tags": { "type": "array", "items": { "type": "string" } },
          "ai_summary": { "type": "string", "description": "AI Summary for post" },
          "distanceCity": { "type": "number", "description": "Distance from a city" },
          "distancePoint": { "type": "number", "description": "Distance from a geo location" },
          "searchRank": { "type": "number", "description": "Search match relevance score" },
          "searchSnippet": { "type": "string", "description": "Summary text of matching search query" },
          "sentimentScore": { "type": "number", "description": "Sentiment of the post" },
          "mentions": { "type": "array", "description": "List of companies mentioned in this post" },
          "isExternal": { "type": "boolean", "description": "Is the post on an external website" },
          "isOnHold": { "type": "boolean", "description": "Posts that are under review" },
          "isPaid": { "type": "boolean", "description": "Payment required to read" },
          "isPublic": { "type": "boolean", "description": "Post available to the general public" },
          "isStarred": { "type": "boolean", "description": "Content trending from user activity" }
        }
      },
      "PostFilter": {
        "type": "object",
        "description": "Filter parameters for posts query",
        "properties": {
          "ids": { "type": "array", "items": { "type": "integer" }, "description": "Filter by specific post IDs" },
          "excludeIds": { "type": "array", "items": { "type": "integer" }, "description": "Exclude specific post IDs" },
          "sourcesIds": { "type": "array", "items": { "type": "integer" }, "description": "Filter by source organization IDs" },
          "notSourcesIds": { "type": "array", "items": { "type": "integer" }, "description": "Exclude source organization IDs" },
          "contentTypesIds": { "type": "array", "items": { "type": "integer" }, "description": "Filter by content type IDs" },
          "indSectorsIds": { "type": "array", "items": { "type": "integer" }, "description": "Filter by industry sector IDs" },
          "locationsIds": { "type": "array", "items": { "type": "integer" }, "description": "Filter by location IDs" },
          "orTags": { "type": "array", "items": { "type": "string" }, "description": "OR filter: any tag matches" },
          "andTags": { "type": "array", "items": { "type": "string" }, "description": "AND filter: all tags must be present" },
          "notTags": { "type": "array", "items": { "type": "string" }, "description": "Exclude posts with these tags" },
          "search": { "type": "string", "description": "Full-text search query" },
          "publishedAt": { "type": "object", "properties": { "min": { "type": "string" }, "max": { "type": "string" } }, "description": "Date range for published date" },
          "publishedAtTime": { "type": "object", "properties": { "min": { "type": "string", "format": "date-time" }, "max": { "type": "string", "format": "date-time" } }, "description": "DateTime range for published time" },
          "insertedAt": { "type": "object", "properties": { "min": { "type": "string" }, "max": { "type": "string" } }, "description": "Date range for inserted date" },
          "start": { "type": "string", "format": "date-time", "description": "Start date filter" },
          "end": { "type": "string", "format": "date-time", "description": "End date filter" },
          "isStarred": { "type": "boolean", "description": "Filter trending content" },
          "isPublic": { "type": "boolean", "description": "Filter public content" },
          "isExternal": { "type": "boolean", "description": "Filter external content" },
          "reviewed": { "type": "boolean", "description": "Filter by review status" },
          "price": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "currency": { "type": "string", "enum": ["POUND", "DOLLAR", "EURO"] } }, "description": "Price range filter" },
          "pps": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } }, "description": "Price per square foot range" },
          "capRate": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } }, "description": "Cap rate range" },
          "noi": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } }, "description": "NOI range" },
          "propertySize": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } }, "description": "Property size range" },
          "coordinates": { "type": "array", "items": { "type": "array", "items": { "type": "number" } }, "description": "Geographic coordinates [[lon, lat]]" },
          "radius": { "type": "integer", "description": "Radius in meters for geo search (default: 5000)" },
          "cityId": { "type": "integer", "description": "City ID for location-based search" },
          "mentionsSourceIds": { "type": "array", "items": { "type": "integer" }, "description": "Filter by mentioned organization IDs" }
        }
      },
      "Organization": {
        "type": "object",
        "description": "Organization/company entity",
        "properties": {
          "id": { "type": "integer", "description": "Unique identifier" },
          "name": { "type": "string", "description": "Company name" },
          "links": { "type": "array", "description": "Social links" },
          "bio": { "type": "string", "description": "Short company bio" },
          "ibOrgTypes": { "type": "array", "description": "Company types" },
          "isSubscriptionRequired": { "type": "boolean", "description": "Company data requires subscription" },
          "location": { "type": "object", "description": "Location" },
          "logoS3": { "type": "string", "description": "Logotype URL" },
          "bannerS3": { "type": "string", "description": "Company banner URL" },
          "mentions": { "type": "array", "description": "Company mentions in Infabode posts" },
          "insertedAt": { "type": "string", "format": "date-time" },
          "updatedAt": { "type": "string", "format": "date-time" }
        }
      },
      "DataExtractionResearch": {
        "type": "object",
        "description": "Research data extraction record containing quantitative datapoints",
        "properties": {
          "id": { "type": "integer", "description": "Unique identifier" },
          "dataPointValue": { "type": "number", "description": "Extracted data point value" },
          "dataPointType": { "type": "object", "properties": { "dataPointTypeName": { "type": "string" } }, "description": "Type of data point" },
          "dataPointUnit": { "type": "object", "properties": { "dataPointUnitName": { "type": "string" } }, "description": "Unit of measurement" },
          "dataPointClassifications": { "type": "array", "items": { "type": "string", "enum": ["HISTORIC", "FORECASTED"] }, "description": "Data classification" },
          "location": { "type": "object", "properties": { "name": { "type": "string" }, "path": { "type": "string" } } },
          "org": { "type": "object", "properties": { "name": { "type": "string" } } },
          "indSectors": { "type": "array", "items": { "$ref": "#/components/schemas/IndustrySector" } },
          "verificationScore": { "type": "integer", "description": "Data quality score (1-5)" },
          "insertedAt": { "type": "string", "format": "date-time" },
          "publishedAt": { "type": "string", "format": "date-time" }
        }
      },
      "DataExtractionTransaction": {
        "type": "object",
        "description": "Transaction data extraction record for real estate deals",
        "properties": {
          "id": { "type": "integer", "description": "Unique identifier" },
          "buildingSize": { "type": "number", "description": "Building size in square feet" },
          "landSize": { "type": "number", "description": "Land size in square feet" },
          "yearBuilt": { "type": "string", "format": "date", "description": "Year built" },
          "currency": { "type": "string", "enum": ["USD", "EUR", "GBP"], "description": "Currency" },
          "price": { "type": "number", "description": "Transaction price" },
          "pps": { "type": "number", "description": "Price per square foot" },
          "noi": { "type": "number", "description": "Net Operating Income" },
          "capRate": { "type": "number", "description": "Capitalization rate" },
          "leaseLength": { "type": "number", "description": "Lease length" },
          "leaseStart": { "type": "string", "format": "date" },
          "leaseEnd": { "type": "string", "format": "date" },
          "transactionDate": { "type": "string", "format": "date" },
          "transactionDealStatus": { "type": "string" },
          "transactionDataType": { "type": "object", "properties": { "id": { "type": "integer" }, "transactionDataTypeName": { "type": "string" } }, "description": "Transaction type (1=Lease, 2=Sale, 3=Other)" },
          "transactionOrgs": { "type": "array", "description": "Organizations involved (buyer, seller, agents)" },
          "location": { "type": "object" },
          "indSectors": { "type": "array", "items": { "$ref": "#/components/schemas/IndustrySector" } },
          "addressLabel": { "type": "string" },
          "aiSnippet": { "type": "string", "description": "AI-generated snippet" },
          "verificationScore": { "type": "integer", "description": "Data quality score (1-5)" }
        }
      },
      "PostsSmartInput": {
        "type": "object",
        "description": "Input for AI-powered posts analysis",
        "required": ["prompt", "filters"],
        "properties": {
          "prompt": { "type": "string", "description": "Free-form instruction for the AI. The output JSON structure depends on the prompt." },
          "filters": {
            "type": "array",
            "maxItems": 5,
            "description": "Up to 5 filter blocks",
            "items": {
              "type": "object",
              "properties": {
                "filter": { "$ref": "#/components/schemas/PostFilter" }
              }
            }
          }
        }
      },
      "PostsSmartOutput": {
        "type": "object",
        "description": "Output from AI-powered posts analysis",
        "properties": {
          "result": { "type": "object", "description": "AI output JSON (structure depends on prompt)" },
          "warnings": {
            "type": "object",
            "properties": {
              "timed_out": { "type": "array", "items": { "type": "string" } },
              "failed": { "type": "array", "items": { "type": "string" } },
              "skipped_due_to_content": { "type": "array", "items": { "type": "object", "properties": { "filter": { "type": "string" }, "reason": { "type": "string" } } } }
            }
          },
          "error": { "type": "string", "nullable": true }
        }
      },
      "DataExtractionResearchSmartInput": {
        "type": "object",
        "description": "Input for AI-powered research data analysis",
        "required": ["prompt", "filters"],
        "properties": {
          "prompt": { "type": "string", "description": "Free-form instruction for the AI" },
          "filters": {
            "type": "array",
            "maxItems": 5,
            "items": {
              "type": "object",
              "properties": {
                "filter": {
                  "type": "object",
                  "properties": {
                    "indSectorsIds": { "type": "array", "items": { "type": "integer" } },
                    "locationsIds": { "type": "array", "items": { "type": "integer" } },
                    "publishedAt": { "type": "object", "properties": { "min": { "type": "string" }, "max": { "type": "string" } } }
                  }
                }
              }
            }
          },
          "fieldIds": {
            "type": "array",
            "items": { "type": "integer" },
            "description": "Field IDs to include (1-13). Default: all fields"
          }
        },
        "x-field-ids": {
          "1": "Take Up",
          "2": "Properties Under Offer",
          "3": "Properties Under Construction",
          "4": "New Supply",
          "5": "Availability Rate",
          "6": "Vacancy Rate",
          "7": "Investment Amount",
          "8": "Rents",
          "9": "Net Absorption",
          "10": "Total Inventory",
          "11": "Days on Market",
          "12": "Yields",
          "13": "Pricing"
        }
      },
      "DataExtractionTransactionSmartInput": {
        "type": "object",
        "description": "Input for AI-powered transaction data analysis",
        "required": ["prompt", "filters"],
        "properties": {
          "prompt": { "type": "string", "description": "Free-form instruction for the AI" },
          "filters": {
            "type": "array",
            "maxItems": 5,
            "items": {
              "type": "object",
              "properties": {
                "limit": { "type": "integer", "description": "Limit items in dataset" },
                "partyTypes": {
                  "type": "array",
                  "items": { "type": "string", "enum": ["BUYER", "SELLER", "BUYING_AGENT", "SELLING_AGENT", "TENANT", "DEBT_PROVIDERS"] },
                  "description": "Organization roles to include"
                },
                "filter": {
                  "type": "object",
                  "properties": {
                    "transactionDataTypeIds": { "type": "array", "items": { "type": "integer" }, "description": "1=Lease, 2=Sale, 3=Other" },
                    "indSectorIds": { "type": "array", "items": { "type": "integer" } },
                    "locationIds": { "type": "array", "items": { "type": "integer" } },
                    "coordinates": { "type": "array", "items": { "type": "array", "items": { "type": "number" } } },
                    "radius": { "type": "integer", "default": 5000 },
                    "priceRange": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" }, "currency": { "type": "string" } } },
                    "buildingSize": { "type": "object", "properties": { "min": { "type": "number" }, "max": { "type": "number" } } },
                    "publishedAt": { "type": "object", "properties": { "min": { "type": "string" }, "max": { "type": "string" } } }
                  }
                }
              }
            }
          },
          "fieldIds": {
            "type": "array",
            "items": { "type": "integer" },
            "description": "Field IDs to include (1-6). Default: all fields"
          }
        },
        "x-field-ids": {
          "1": "TransactionSummary",
          "2": "PartiesInvolved",
          "3": "DealDetails (Sale)",
          "4": "DealDetails (Lease)",
          "5": "FinancingDetails",
          "6": "PropertyDetails"
        }
      }
    }
  },
  "paths": {
    "/graphql": {
      "post": {
        "summary": "GraphQL API Endpoint",
        "description": "All queries are made via POST to this endpoint with GraphQL query in the request body.",
        "operationId": "graphqlQuery",
        "tags": ["GraphQL"],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "required": ["query"],
                "properties": {
                  "query": { "type": "string", "description": "GraphQL query string" },
                  "variables": { "type": "object", "description": "Query variables" }
                }
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "properties": {
                    "data": { "type": "object" },
                    "errors": { "type": "array" }
                  }
                }
              }
            }
          }
        }
      }
    }
  },
  "x-graphql-queries": {
    "posts": {
      "description": "Query posts with filtering, sorting, and pagination",
      "query": "posts(filter: PostFilter, order: PostOrder, limit: Int, offset: Int): [Post]",
      "orderOptions": ["NEWER", "OLDER", "RELEVANCE", "DISTANCE_POINT", "DISTANCE_CITY"],
      "examples": [
        {
          "description": "Get latest research documents",
          "query": "{ posts(filter: { contentTypesIds: [1] }, limit: 10, order: NEWER) { id title publishedAt } }"
        },
        {
          "description": "Search by keyword with location filter",
          "query": "{ posts(filter: { search: \"office market\", locationsIds: [71714] }, limit: 20, order: RELEVANCE) { id title searchRank searchSnippet } }"
        },
        {
          "description": "Filter by industry sector and date range",
          "query": "{ posts(filter: { indSectorsIds: [1], publishedAt: { min: \"2024-01-01\", max: \"2024-12-31\" } }, limit: 50) { id title indSectors { name } } }"
        },
        {
          "description": "Geographic search with coordinates",
          "query": "{ posts(filter: { coordinates: [[-0.1276, 51.5074]], radius: 10000 }, limit: 20, order: DISTANCE_POINT) { id title distancePoint } }"
        }
      ]
    },
    "organizations": {
      "description": "Query organizations/companies",
      "query": "organizations(filter: OrganizationFilter, order: OrganizationOrder): [Organization]",
      "orderOptions": ["NAME_ASC", "NAME_DESC", "NEWER", "OLDER", "RELEVANCE"],
      "filterOptions": ["name", "email", "isEnabled", "isExternal", "isPaid", "isPublic", "ibOrgTypes_Any", "ibOrgTypes_All"],
      "examples": [
        {
          "description": "Search organization by name",
          "query": "{ organizations(filter: { name: \"Savills\" }, order: NEWER) { id name } }"
        },
        {
          "description": "Filter by organization type",
          "query": "{ organizations(filter: { ibOrgTypes_Any: [CONTENT_PROVIDER] }) { id name } }"
        }
      ]
    },
    "dataExtractionResearches": {
      "description": "Query research data extraction records",
      "query": "dataExtractionResearches(filter: DataExtractionResearchFilter, limit: Int, offset: Int): [DataExtractionResearch]",
      "filterOptions": ["dataPointTypeIds", "indSectorsIds", "locationsIds", "orgIds", "publishedAt", "dataPointClassifications"],
      "examples": [
        {
          "description": "Get research data by location and sector",
          "query": "{ dataExtractionResearches(filter: { locationsIds: [71714], indSectorsIds: [1] }, limit: 20) { id dataPointValue dataPointType { dataPointTypeName } location { name } } }"
        }
      ]
    },
    "dataExtractionTransactions": {
      "description": "Query transaction data extraction records",
      "query": "dataExtractionTransactions(filter: DataExtractionTransactionFilter, limit: Int, offset: Int): [DataExtractionTransaction]",
      "filterOptions": ["transactionDataTypeIds", "indSectorIds", "locationIds", "coordinates", "radius", "priceRange", "buildingSize", "publishedAt", "orgIds", "transactionOrgIds"],
      "examples": [
        {
          "description": "Get sale transactions in London",
          "query": "{ dataExtractionTransactions(filter: { transactionDataTypeIds: [2], locationIds: [71714] }, limit: 20) { id price currency transactionDate location { name } } }"
        }
      ]
    },
    "posts_extended": {
      "description": "AI-enhanced posts with additional AI-generated content",
      "query": "posts_extended(filter: PostFilter, limit: Int): [PostExtended]",
      "note": "Returns posts with AI-generated summaries and enhanced metadata"
    },
    "posts_smart": {
      "description": "AI-powered analysis over filtered post datasets",
      "query": "posts_smart(prompt: String!, filters: [PostSmartFilter!]!): PostsSmartOutput",
      "inputSchema": { "$ref": "#/components/schemas/PostsSmartInput" },
      "outputSchema": { "$ref": "#/components/schemas/PostsSmartOutput" },
      "examples": [
        {
          "description": "Summarize market trends",
          "query": "{ posts_smart(prompt: \"summarize the key trends mentioned in these posts\", filters: [{ filter: { contentTypesIds: [1], publishedAt: { min: \"2024-10-01\", max: \"2024-12-31\" } } }]) }"
        }
      ]
    },
    "dataExtractionResearchSmart": {
      "description": "AI-powered analysis over research data extraction records",
      "query": "dataExtractionResearchSmart(prompt: String!, filters: [DataExtractionResearchSmartFilter!]!, fieldIds: [Int]): DataExtractionResearchSmartOutput",
      "inputSchema": { "$ref": "#/components/schemas/DataExtractionResearchSmartInput" },
      "fieldIds": {
        "1": "Take Up",
        "2": "Properties Under Offer",
        "3": "Properties Under Construction",
        "4": "New Supply",
        "5": "Availability Rate",
        "6": "Vacancy Rate",
        "7": "Investment Amount",
        "8": "Rents",
        "9": "Net Absorption",
        "10": "Total Inventory",
        "11": "Days on Market",
        "12": "Yields",
        "13": "Pricing"
      },
      "examples": [
        {
          "description": "Compare market performance across locations",
          "query": "{ dataExtractionResearchSmart(filters: [{ filter: { locationsIds: [71714], indSectorsIds: [1], publishedAt: { min: \"2025-10-15\", max: \"2026-01-15\" } } }], prompt: \"which market is performing best\") }"
        }
      ]
    },
    "dataExtractionTransactionSmart": {
      "description": "AI-powered analysis over transaction data extraction records",
      "query": "dataExtractionTransactionSmart(prompt: String!, filters: [DataExtractionTransactionSmartFilter!]!, fieldIds: [Int]): DataExtractionTransactionSmartOutput",
      "inputSchema": { "$ref": "#/components/schemas/DataExtractionTransactionSmartInput" },
      "fieldIds": {
        "1": "TransactionSummary",
        "2": "PartiesInvolved",
        "3": "DealDetails (Sale)",
        "4": "DealDetails (Lease)",
        "5": "FinancingDetails",
        "6": "PropertyDetails"
      },
      "partyTypes": ["BUYER", "SELLER", "BUYING_AGENT", "SELLING_AGENT", "TENANT", "DEBT_PROVIDERS"],
      "examples": [
        {
          "description": "Analyze recent office transactions",
          "query": "{ dataExtractionTransactionSmart(filters: [{ filter: { transactionDataTypeIds: [2], indSectorIds: [1], publishedAt: { min: \"2025-01-01\", max: \"2025-12-31\" } } }], prompt: \"summarize the largest office transactions\") }"
        }
      ]
    }
  },
  "x-resources": {
    "locationList": {
      "description": "Full list of locations and IDs",
      "url": "https://infabode.com/public/location-list"
    },
    "companyList": {
      "description": "Full list of companies and funds with IDs",
      "url": "https://infabode.com/public/company-list"
    },
    "humanReadableDocs": {
      "description": "Interactive API documentation",
      "url": "https://ia.infabode.com/api-docs"
    }
  },
  "externalDocs": {
    "description": "Infabode API Documentation",
    "url": "https://ia.infabode.com/api-docs"
  }
}
