{
  "openapi": "3.1.0",
  "info": {
    "title": "Fin-node DevPulse",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "https://avyjokvkuvzlmyhqfejp.supabase.co"
    }
  ],
  "paths": {
    "/rest/v1/rpc/get_tech_coverage": {
      "post": {
        "operationId": "get_tech_coverage",
        "summary": "get tech coverage",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {},
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Published research with coverage and limitations.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        }
      }
    },
    "/rest/v1/rpc/get_tech_trends": {
      "post": {
        "operationId": "get_tech_trends",
        "summary": "get tech trends",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "query": {
                    "type": "string",
                    "maxLength": 100,
                    "default": ""
                  },
                  "metric": {
                    "type": "string",
                    "enum": [
                      "stars",
                      "forks",
                      "open_issues"
                    ],
                    "default": "stars"
                  },
                  "max_results": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 30,
                    "default": 30
                  }
                },
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Published research with coverage and limitations.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        }
      }
    },
    "/rest/v1/rpc/map_company_exposure": {
      "post": {
        "operationId": "map_company_exposure",
        "summary": "map company exposure",
        "x-openai-isConsequential": false,
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "type": "object",
                "properties": {
                  "project_id": {
                    "type": "string",
                    "maxLength": 64
                  }
                },
                "additionalProperties": false,
                "required": [
                  "project_id"
                ]
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Published research with coverage and limitations.",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": true
                }
              }
            }
          }
        }
      }
    }
  },
  "components": {
    "securitySchemes": {
      "publishableKey": {
        "type": "apiKey",
        "in": "header",
        "name": "apikey"
      }
    }
  },
  "security": [
    {
      "publishableKey": []
    }
  ]
}
