{
  "info": {
    "_postman_id": "secretlab-store-api-collection",
    "name": "Secretlab Store API",
    "description": "Postman collection for Secretlab Store API. Folders separate Dev and Production environments via folder-level pre-request scripts that set {{base_url}}.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "name": "Dev",
      "item": [
        {
          "name": "POST /object",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{ \"mykey\": {\"asdfsadfd\" : [10,1002,8134]} }\n\n// { \"k3j34567890sdfghjwertyuixcvbwertyu234567sdfgh3456y7ue4rtyudfgh45678dfgherbnrtvbdrtycvbndfghrtyurfgthydftgyhu4df5tgyxcvbertyertyudfghertyertertyertyusdfghdfghj34567sdfghjdfghjdfghjcvhjdfghjertyuidfghjertyuidfghjdfghjertyuixcghje45678sdfghjdfghje4567udfghjertyudfgh34567xcfghdfghjrtyusxfghj34567xcghjertywertyuxcvbhwertysdfghxcvhwertyuert6y7dfgh4567udfghjcvghj34563456789wertyuiwertyuisdfghjklxdfghjxcvbndfghjk456789dfghjk45678dfghjkdfghj45678dftyuidfghj45678dftyuisdftyudfghxzcvbnxcvbnmsdfghjkwertyui23456789023456789sdfghjksdfghjkxcvbnxcvbzxcvbnasdfghjkqwertyuio2345678901234567890-qwertyuisdfghj\": {\"v3\" : [\"8547230ncu980d\", \"fasdf3f33\", \"39fn9n9\"]} }\n\n// { \"k4\": {\"v4\" : \"238nu9f3ny9nf8e9qyne-xaefun0qwneen0q\"} }\n\n// { \"invalid@key#\": {\"v4\" : \"238nu9f3ny9nf8e9qyne-xaefun0qwneen0q\"} }\n\n// { \"my-key_123.v1\": {\"4789fbad\" : \"f93n9f-fn39\"} }\n\n// { \"nullkey\": null }\n\n// { \"emptyarray\": [] }\n\n// { \"emptystring\": \"\" }\n\n// {\n//   \"user\": {\n//     \"name\": \"John\",\n//     \"email\": \"john@example.com\",\n//     \"meta\": {\n//       \"role\": \"admin\",\n//       \"permissions\": [\n//         \"read\",\n//         \"write\",\n//         \"delete\"\n//       ]\n//     }\n//   }\n// }\n\n// {\n//   \"unicode-key\": {\n//     \"greeting\": \"你好d世界\",\n//     \"emoji\": \"🚀✨🎉\"\n//   }\n// }\n\n\n\n\n\n\n\n\n",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/api/object",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object"
              ]
            },
            "description": "Create record with mykey = value1 (timestamp: 6:00pm)."
          },
          "response": []
        },
        {
          "name": "GET /object/mykey -> expect value1",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{base_url}}/api/object/mykey",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object",
                "mykey"
              ]
            },
            "description": "Retrieve current value for mykey (expected: value1 object)."
          },
          "response": []
        },
        {
          "name": "GET /object/mykey?timestamp=1440568980",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{base_url}}/api/object/mykey?timestamp=1784267381",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object",
                "mykey"
              ],
              "query": [
                {
                  "key": "timestamp",
                  "value": "-1",
                  "type": "text",
                  "disabled": true
                },
                {
                  "key": "timestamp",
                  "value": "1784267381"
                }
              ]
            },
            "description": "Retrieve historical value for mykey at UNIX timestamp 1440568980 (approx 6:03pm) - expected: value1 object."
          },
          "response": []
        },
        {
          "name": "GET /object/get_all_records",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{base_url}}/api/object/get_all_records",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object",
                "get_all_records"
              ]
            },
            "description": "Returns JSON array of all records and their current values stored in the DB."
          },
          "response": []
        }
      ],
      "event": [
        {
          "listen": "prerequest",
          "script": {
            "type": "text/javascript",
            "exec": [
              "// Set base_url for Dev folder",
              "pm.variables.set('base_url', 'http://localhost');"
            ]
          }
        }
      ]
    },
    {
      "name": "Production",
      "item": [
        {
          "name": "POST /object",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "body": {
              "mode": "raw",
              "raw": "{ \"mykey\": {\"asdfsadfd\" : [10,1002,8134]} }\n\n// { \"k3j34567890sdfghjwertyuixcvbwertyu234567sdfgh3456y7ue4rtyudfgh45678dfgherbnrtvbdrtycvbndfghrtyurfgthydftgyhu4df5tgyxcvbertyertyudfghertyertertyertyusdfghdfghj34567sdfghjdfghjdfghjcvhjdfghjertyuidfghjertyuidfghjdfghjertyuixcghje45678sdfghjdfghje4567udfghjertyudfgh34567xcfghdfghjrtyusxfghj34567xcghjertywertyuxcvbhwertysdfghxcvhwertyuert6y7dfgh4567udfghjcvghj34563456789wertyuiwertyuisdfghjklxdfghjxcvbndfghjk456789dfghjk45678dfghjkdfghj45678dftyuidfghj45678dftyuisdftyudfghxzcvbnxcvbnmsdfghjkwertyui23456789023456789sdfghjksdfghjkxcvbnxcvbzxcvbnasdfghjkqwertyuio2345678901234567890-qwertyuisdfghj\": {\"v3\" : [\"8547230ncu980d\", \"fasdf3f33\", \"39fn9n9\"]} }\n\n// { \"k4\": {\"v4\" : \"238nu9f3ny9nf8e9qyne-xaefun0qwneen0q\"} }\n\n// { \"invalid@key#\": {\"v4\" : \"238nu9f3ny9nf8e9qyne-xaefun0qwneen0q\"} }\n\n// { \"my-key_123.v1\": {\"4789fbad\" : \"f93n9f-fn39\"} }\n\n// { \"nullkey\": null }\n\n// { \"emptyarray\": [] }\n\n// { \"emptystring\": \"\" }\n\n// {\n//   \"user\": {\n//     \"name\": \"John\",\n//     \"email\": \"john@example.com\",\n//     \"meta\": {\n//       \"role\": \"admin\",\n//       \"permissions\": [\n//         \"read\",\n//         \"write\",\n//         \"delete\"\n//       ]\n//     }\n//   }\n// }\n\n// {\n//   \"unicode-key\": {\n//     \"greeting\": \"你好d世界\",\n//     \"emoji\": \"🚀✨🎉\"\n//   }\n// }\n\n\n\n\n\n\n\n\n",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "url": {
              "raw": "{{base_url}}/api/object",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object"
              ]
            },
            "description": "Create record with mykey = value1 (timestamp: 6:00pm)."
          },
          "response": []
        },
        {
          "name": "GET /object/mykey",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{base_url}}/api/object/mykey",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object",
                "mykey"
              ]
            },
            "description": "Retrieve current value for mykey (expected: value1 object)."
          },
          "response": []
        },
        {
          "name": "GET /object/mykey?timestamp=1440568980",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{base_url}}/api/object/mykey?timestamp=1784267286",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object",
                "mykey"
              ],
              "query": [
                {
                  "key": "timestamp",
                  "value": "1784267286"
                }
              ]
            },
            "description": "Retrieve historical value for mykey at UNIX timestamp 1440568980 (approx 6:03pm) - expected: value1 object."
          },
          "response": []
        },
        {
          "name": "GET /object/get_all_records",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{base_url}}/api/object/get_all_records",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "object",
                "get_all_records"
              ]
            },
            "description": "Returns JSON array of all records and their current values stored in the DB."
          },
          "response": []
        }
      ],
      "event": [
        {
          "listen": "prerequest",
          "script": {
            "type": "text/javascript",
            "exec": [
              "// Set base_url for Production folder",
              "pm.variables.set('base_url', 'https://secretlab.stifd.com');"
            ]
          }
        }
      ]
    }
  ]
}
