Home > Net >  aws api gateway model design for dynamic key
aws api gateway model design for dynamic key

Time:11-20

I am designing an AWS API gateway request model. In my case the input key will change dynamically like below

[
  {
    "losAngeles": {
      "weatherInCelcius": 84.5
    }
  },
  {
    "sanFrancisco": {
      "weatherInCelcius": 80
    }
  }
]

Here the city name(losAngeles,sanFrancisco) will change dynamically

can anyone help me to create API model JSON for this dynamically changing key

I tried like below

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "weather",
    "type": "object",
    "properties": {
        "TBD": {
            "type": "string"
        }
    }
}

CodePudding user response:

json-schema draft-04 has a patternProperties keyword that can be used here. Specifically, you can change your example into this:

{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "weather",
    "type": "object",
    "patternProperties": {
        ".*": {
            "type": "string"
        }
    }
}

The ".*" defines that any name for a property is allowed. If you have more specific constraints, you can change that RegEx accordingly.

  • Related