{
  "version":"2.0",
  "metadata":{
    "apiVersion":"2024-07-01",
    "auth":["aws.auth#sigv4"],
    "endpointPrefix":"uxc",
    "protocol":"rest-json",
    "protocols":["rest-json"],
    "serviceFullName":"AWS User Experience Customization",
    "serviceId":"uxc",
    "signatureVersion":"v4",
    "signingName":"uxc",
    "uid":"uxc-2024-07-01"
  },
  "operations":{
    "GetAccountCustomizations":{
      "name":"GetAccountCustomizations",
      "http":{
        "method":"GET",
        "requestUri":"/v1/account-customizations",
        "responseCode":200
      },
      "input":{"shape":"GetAccountCustomizationsInput"},
      "output":{"shape":"GetAccountCustomizationsOutput"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "readonly":true
    },
    "ListServices":{
      "name":"ListServices",
      "http":{
        "method":"GET",
        "requestUri":"/v1/services",
        "responseCode":200
      },
      "input":{"shape":"ListServicesInput"},
      "output":{"shape":"ListServicesOutput"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "readonly":true
    },
    "UpdateAccountCustomizations":{
      "name":"UpdateAccountCustomizations",
      "http":{
        "method":"PATCH",
        "requestUri":"/v1/account-customizations",
        "responseCode":200
      },
      "input":{"shape":"UpdateAccountCustomizationsInput"},
      "output":{"shape":"UpdateAccountCustomizationsOutput"},
      "errors":[
        {"shape":"AccessDeniedException"},
        {"shape":"ValidationException"},
        {"shape":"ThrottlingException"},
        {"shape":"InternalServerException"}
      ],
      "idempotent":true
    }
  },
  "shapes":{
    "AccessDeniedException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":403,
        "senderFault":true
      },
      "exception":true
    },
    "AccountColor":{
      "type":"string",
      "enum":[
        "none",
        "pink",
        "purple",
        "darkBlue",
        "lightBlue",
        "teal",
        "green",
        "yellow",
        "orange",
        "red"
      ]
    },
    "GetAccountCustomizationsInput":{
      "type":"structure",
      "members":{}
    },
    "GetAccountCustomizationsOutput":{
      "type":"structure",
      "members":{
        "accountColor":{"shape":"AccountColor"},
        "visibleServices":{"shape":"ServiceList"},
        "visibleRegions":{"shape":"RegionsList"}
      }
    },
    "InternalServerException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "error":{"httpStatusCode":500},
      "exception":true,
      "fault":true
    },
    "ListServicesInput":{
      "type":"structure",
      "members":{
        "nextToken":{
          "shape":"NextToken",
          "location":"querystring",
          "locationName":"nextToken"
        },
        "maxResults":{
          "shape":"MaxResults",
          "location":"querystring",
          "locationName":"maxResults"
        }
      }
    },
    "ListServicesOutput":{
      "type":"structure",
      "members":{
        "nextToken":{"shape":"NextToken"},
        "services":{"shape":"ServiceList"}
      }
    },
    "MaxResults":{
      "type":"integer",
      "box":true,
      "max":1000,
      "min":1
    },
    "NextToken":{
      "type":"string",
      "max":512,
      "min":32,
      "pattern":"[-A-Za-z0-9+/_]+=*"
    },
    "Region":{
      "type":"string",
      "pattern":"[a-z]{2}(-[a-z]{1,10}){1,2}-[1-9]"
    },
    "RegionsList":{
      "type":"list",
      "member":{"shape":"Region"},
      "max":100,
      "min":0
    },
    "Service":{
      "type":"string",
      "max":64,
      "min":1,
      "pattern":"[a-z0-9]+(-[a-z0-9]+)*"
    },
    "ServiceList":{
      "type":"list",
      "member":{"shape":"Service"},
      "max":500,
      "min":0
    },
    "String":{"type":"string"},
    "ThrottlingException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"}
      },
      "error":{
        "httpStatusCode":429,
        "senderFault":true
      },
      "exception":true
    },
    "UpdateAccountCustomizationsInput":{
      "type":"structure",
      "members":{
        "accountColor":{"shape":"AccountColor"},
        "visibleServices":{"shape":"ServiceList"},
        "visibleRegions":{"shape":"RegionsList"}
      }
    },
    "UpdateAccountCustomizationsOutput":{
      "type":"structure",
      "members":{
        "accountColor":{"shape":"AccountColor"},
        "visibleServices":{"shape":"ServiceList"},
        "visibleRegions":{"shape":"RegionsList"}
      }
    },
    "ValidationException":{
      "type":"structure",
      "required":["message"],
      "members":{
        "message":{"shape":"String"},
        "fieldList":{"shape":"ValidationExceptionFieldList"}
      },
      "exception":true
    },
    "ValidationExceptionField":{
      "type":"structure",
      "required":[
        "path",
        "message"
      ],
      "members":{
        "path":{"shape":"String"},
        "message":{"shape":"String"}
      }
    },
    "ValidationExceptionFieldList":{
      "type":"list",
      "member":{"shape":"ValidationExceptionField"}
    }
  }
}
