{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2023-09-07",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"billing",
    "jsonVersion":"1.0",
    "protocol":"json",
    "protocols":["json"],
    "serviceFullName":"AWS Billing",
    "serviceId":"Billing",
    "signatureVersion":"v4",
    "signingName":"billing",
    "targetPrefix":"AWSBilling",
    "uid":"billing-2023-09-07"
  },
  "operations":{
    "ListBillingViews":{
      "name":"ListBillingViews",
      "http":{
        "method":"POST",
        "requestUri":"/"
      },
      "input":{"shape":"ListBillingViewsRequest"},
      "output":{"shape":"ListBillingViewsResponse"},
      "errors":[
        {"shape":"ThrottlingException"},
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"InternalServerException"}
      ]
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "AccountId":{
      "type":"string",
      "pattern":"[0-9]{12}"
    },
    "ActiveTimeRange":{
      "type":"structure",
      "required":[
        "activeAfterInclusive",
        "activeBeforeInclusive"
      ],
      "members":{
        "activeAfterInclusive":{"shape":"Timestamp"},
        "activeBeforeInclusive":{"shape":"Timestamp"}
      }
    },
    "BillingViewArn":{
      "type":"string",
      "pattern":"arn:aws[a-z-]*:(billing)::[0-9]{12}:billingview/[a-zA-Z0-9_\\+=\\.\\-@]{1,43}"
    },
    "BillingViewList":{
      "type":"list",
      "member":{"shape":"BillingViewListElement"}
    },
    "BillingViewListElement":{
      "type":"structure",
      "members":{
        "arn":{"shape":"BillingViewArn"},
        "name":{"shape":"BillingViewName"},
        "ownerAccountId":{"shape":"AccountId"},
        "billingViewType":{"shape":"BillingViewType"}
      }
    },
    "BillingViewName":{
      "type":"string",
      "pattern":"[ a-zA-Z0-9_\\+=\\.\\-@]+",
      "sensitive":true
    },
    "BillingViewType":{
      "type":"string",
      "enum":[
        "PRIMARY",
        "BILLING_GROUP"
      ]
    },
    "BillingViewsMaxResults":{
      "type":"integer",
      "box":true,
      "max":100,
      "min":1
    },
    "ErrorMessage":{
      "type":"string",
      "max":1024,
      "min":0
    },
    "FieldName":{
      "type":"string",
      "max":100,
      "min":0
    },
    "InternalServerException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"ErrorMessage"}
      },
      "exception":true,
      "fault":true
    },
    "ListBillingViewsRequest":{
      "type":"structure",
      "required":["activeTimeRange"],
      "members":{
        "activeTimeRange":{"shape":"ActiveTimeRange"},
        "maxResults":{"shape":"BillingViewsMaxResults"},
        "nextToken":{"shape":"PageToken"}
      }
    },
    "ListBillingViewsResponse":{
      "type":"structure",
      "required":["billingViews"],
      "members":{
        "billingViews":{"shape":"BillingViewList"},
        "nextToken":{"shape":"PageToken"}
      }
    },
    "PageToken":{
      "type":"string",
      "max":2047,
      "min":1
    },
    "ThrottlingException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"ErrorMessage"}
      },
      "exception":true
    },
    "Timestamp":{"type":"timestamp"},
    "ValidationException":{
      "type":"structure",
      "required":[
        "message",
        "reason"
      ],
      "members":{
        "message":{"shape":"ErrorMessage"},
        "reason":{"shape":"ValidationExceptionReason"},
        "fieldList":{"shape":"ValidationExceptionFieldList"}
      },
      "exception":true
    },
    "ValidationExceptionField":{
      "type":"structure",
      "required":[
        "name",
        "message"
      ],
      "members":{
        "name":{"shape":"FieldName"},
        "message":{"shape":"ErrorMessage"}
      }
    },
    "ValidationExceptionFieldList":{
      "type":"list",
      "member":{"shape":"ValidationExceptionField"}
    },
    "ValidationExceptionReason":{
      "type":"string",
      "enum":[
        "unknownOperation",
        "cannotParse",
        "fieldValidationFailed",
        "other"
      ]
    }
  }
}
