← back to Watches

postman_collection.json

516 lines

{
  "info": {
    "name": "Omega Watch Price History API",
    "description": "Comprehensive API for tracking and analyzing Omega watch prices, market trends, and investment opportunities.\n\nBase URL: http://45.61.58.125:7600\nVersion: 2.0.0\n\nFeatures:\n- Historical price tracking for 50+ Omega watches\n- Advanced analytics and predictions\n- Real-time WebSocket updates\n- Collection statistics and comparisons\n- Export capabilities (JSON/CSV)\n- Watchlist management",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "_exporter_id": "omega-watch-api"
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "http://45.61.58.125:7600",
      "type": "string"
    },
    {
      "key": "apiKey",
      "value": "",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "Health & System",
      "item": [
        {
          "name": "Get Health Status",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/health",
              "host": ["{{baseUrl}}"],
              "path": ["api", "health"]
            },
            "description": "Returns detailed system health metrics including uptime, memory usage, cache statistics, and database status."
          },
          "response": [
            {
              "name": "Success",
              "originalRequest": {
                "method": "GET",
                "url": {
                  "raw": "{{baseUrl}}/api/health",
                  "host": ["{{baseUrl}}"],
                  "path": ["api", "health"]
                }
              },
              "status": "OK",
              "code": 200,
              "_postman_previewlanguage": "json",
              "header": [
                {
                  "key": "Content-Type",
                  "value": "application/json"
                }
              ],
              "body": "{\n  \"status\": \"healthy\",\n  \"timestamp\": \"2024-11-17T10:30:00.000Z\",\n  \"uptime\": 3600.5,\n  \"memory\": {\n    \"rss\": 85678080,\n    \"heapTotal\": 54321664,\n    \"heapUsed\": 42123456,\n    \"external\": 1234567\n  },\n  \"cache\": {\n    \"keys\": 15,\n    \"size\": 245678,\n    \"oldestEntry\": 1700223000000\n  },\n  \"database\": {\n    \"watches\": 52,\n    \"collections\": 8\n  },\n  \"websocket\": {\n    \"connections\": 3\n  }\n}"
            }
          ]
        }
      ]
    },
    {
      "name": "Watches",
      "item": [
        {
          "name": "Get All Watches",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/watches?page=1&limit=20",
              "host": ["{{baseUrl}}"],
              "path": ["api", "watches"],
              "query": [
                {
                  "key": "series",
                  "value": "Speedmaster",
                  "disabled": true
                },
                {
                  "key": "minYear",
                  "value": "1960",
                  "disabled": true
                },
                {
                  "key": "maxYear",
                  "value": "2000",
                  "disabled": true
                },
                {
                  "key": "minPrice",
                  "value": "5000",
                  "disabled": true
                },
                {
                  "key": "maxPrice",
                  "value": "50000",
                  "disabled": true
                },
                {
                  "key": "page",
                  "value": "1"
                },
                {
                  "key": "limit",
                  "value": "20"
                }
              ]
            },
            "description": "Retrieve a paginated list of watches with optional filtering by series, year, and price range."
          },
          "response": []
        },
        {
          "name": "Get Watch by ID",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/watches/:id/history",
              "host": ["{{baseUrl}}"],
              "path": ["api", "watches", ":id", "history"],
              "variable": [
                {
                  "key": "id",
                  "value": "speedmaster-moonwatch-1969"
                }
              ]
            },
            "description": "Get complete price history and specifications for a specific watch."
          },
          "response": []
        },
        {
          "name": "Get Trending Watches",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/watches/trending?limit=10",
              "host": ["{{baseUrl}}"],
              "path": ["api", "watches", "trending"],
              "query": [
                {
                  "key": "limit",
                  "value": "10"
                }
              ]
            },
            "description": "Returns the most viewed watches based on analytics."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Search",
      "item": [
        {
          "name": "Search Watches",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/search?q=moonwatch&page=1&limit=20",
              "host": ["{{baseUrl}}"],
              "path": ["api", "search"],
              "query": [
                {
                  "key": "q",
                  "value": "moonwatch"
                },
                {
                  "key": "series",
                  "value": "Speedmaster",
                  "disabled": true
                },
                {
                  "key": "movement",
                  "value": "automatic",
                  "disabled": true
                },
                {
                  "key": "minPrice",
                  "value": "10000",
                  "disabled": true
                },
                {
                  "key": "maxPrice",
                  "value": "100000",
                  "disabled": true
                },
                {
                  "key": "page",
                  "value": "1"
                },
                {
                  "key": "limit",
                  "value": "20"
                }
              ]
            },
            "description": "Search watches by keyword with advanced filtering options."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Analytics",
      "item": [
        {
          "name": "Get Price Predictions",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/price-predictions/:id",
              "host": ["{{baseUrl}}"],
              "path": ["api", "price-predictions", ":id"],
              "variable": [
                {
                  "key": "id",
                  "value": "speedmaster-moonwatch-1969"
                }
              ]
            },
            "description": "Get AI-generated price predictions for next 3 years."
          },
          "response": []
        },
        {
          "name": "Get Market Statistics",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/statistics",
              "host": ["{{baseUrl}}"],
              "path": ["api", "statistics"]
            },
            "description": "Get comprehensive market statistics including total watches, average appreciation, and top performers."
          },
          "response": []
        },
        {
          "name": "Get Advanced Predictions",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/analytics/predictions",
              "host": ["{{baseUrl}}"],
              "path": ["api", "analytics", "predictions"]
            },
            "description": "Get ML-generated predictions from analytics engine."
          },
          "response": []
        },
        {
          "name": "Get Market Analysis",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/analytics/market",
              "host": ["{{baseUrl}}"],
              "path": ["api", "analytics", "market"]
            },
            "description": "Get comprehensive market analysis including investment opportunities."
          },
          "response": []
        },
        {
          "name": "Get Statistical Insights",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/analytics/statistics",
              "host": ["{{baseUrl}}"],
              "path": ["api", "analytics", "statistics"]
            },
            "description": "Get advanced statistical insights and trends."
          },
          "response": []
        },
        {
          "name": "Get Investment Opportunities",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/analytics/investment-opportunities",
              "host": ["{{baseUrl}}"],
              "path": ["api", "analytics", "investment-opportunities"]
            },
            "description": "Get top investment opportunities and value watches."
          },
          "response": []
        },
        {
          "name": "Get Risk Metrics",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/analytics/risk-metrics",
              "host": ["{{baseUrl}}"],
              "path": ["api", "analytics", "risk-metrics"]
            },
            "description": "Get risk-adjusted performance metrics."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Collections",
      "item": [
        {
          "name": "Get All Collections",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/collections",
              "host": ["{{baseUrl}}"],
              "path": ["api", "collections"]
            },
            "description": "Get all watch collections with comprehensive statistics."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Comparison",
      "item": [
        {
          "name": "Compare Watches",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"watchIds\": [\n    \"speedmaster-moonwatch-1969\",\n    \"seamaster-300-1957\"\n  ]\n}"
            },
            "url": {
              "raw": "{{baseUrl}}/api/compare",
              "host": ["{{baseUrl}}"],
              "path": ["api", "compare"]
            },
            "description": "Compare multiple watches side-by-side."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Export",
      "item": [
        {
          "name": "Export as JSON",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/export/json",
              "host": ["{{baseUrl}}"],
              "path": ["api", "export", "json"]
            },
            "description": "Export complete database as JSON."
          },
          "response": []
        },
        {
          "name": "Export as CSV",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/export/csv",
              "host": ["{{baseUrl}}"],
              "path": ["api", "export", "csv"]
            },
            "description": "Export complete database as CSV."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Watchlist",
      "item": [
        {
          "name": "Add to Watchlist",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"userId\": \"user123\",\n  \"watchId\": \"speedmaster-moonwatch-1969\",\n  \"action\": \"add\"\n}"
            },
            "url": {
              "raw": "{{baseUrl}}/api/watchlist",
              "host": ["{{baseUrl}}"],
              "path": ["api", "watchlist"]
            },
            "description": "Add a watch to user watchlist."
          },
          "response": []
        },
        {
          "name": "Remove from Watchlist",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{\n  \"userId\": \"user123\",\n  \"watchId\": \"speedmaster-moonwatch-1969\",\n  \"action\": \"remove\"\n}"
            },
            "url": {
              "raw": "{{baseUrl}}/api/watchlist",
              "host": ["{{baseUrl}}"],
              "path": ["api", "watchlist"]
            },
            "description": "Remove a watch from user watchlist."
          },
          "response": []
        },
        {
          "name": "Get User Watchlist",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/api/watchlist/:userId",
              "host": ["{{baseUrl}}"],
              "path": ["api", "watchlist", ":userId"],
              "variable": [
                {
                  "key": "userId",
                  "value": "user123"
                }
              ]
            },
            "description": "Get complete watchlist for a user."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Admin",
      "item": [
        {
          "name": "Clear Cache",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "X-API-Key",
                "value": "{{apiKey}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/api/admin/clear-cache",
              "host": ["{{baseUrl}}"],
              "path": ["api", "admin", "clear-cache"]
            },
            "description": "Clear all cached data (requires admin access)."
          },
          "response": []
        },
        {
          "name": "Create Backup",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-API-Key",
                "value": "{{apiKey}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/api/admin/backup",
              "host": ["{{baseUrl}}"],
              "path": ["api", "admin", "backup"]
            },
            "description": "Create a timestamped backup of the database."
          },
          "response": []
        }
      ]
    }
  ]
}