{
  "version": "2.0",
  "metadata": {
    "apiVersion": "2018-04-01",
    "endpointPrefix": "quicksight",
    "jsonVersion": "1.0",
    "protocol": "rest-json",
    "serviceFullName": "Amazon QuickSight",
    "serviceId": "QuickSight",
    "signatureVersion": "v4",
    "uid": "quicksight-2018-04-01"
  },
  "operations": {
    "CreateGroup": {
      "http": {
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups"
      },
      "input": {
        "type": "structure",
        "required": [
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "GroupName": {},
          "Description": {},
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Group": {
            "shape": "S7"
          },
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "CreateGroupMembership": {
      "http": {
        "method": "PUT",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members/{MemberName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "MemberName",
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "MemberName": {
            "location": "uri",
            "locationName": "MemberName"
          },
          "GroupName": {
            "location": "uri",
            "locationName": "GroupName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "GroupMember": {
            "shape": "Se"
          },
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "DeleteGroup": {
      "http": {
        "method": "DELETE",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "GroupName": {
            "location": "uri",
            "locationName": "GroupName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "DeleteGroupMembership": {
      "http": {
        "method": "DELETE",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members/{MemberName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "MemberName",
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "MemberName": {
            "location": "uri",
            "locationName": "MemberName"
          },
          "GroupName": {
            "location": "uri",
            "locationName": "GroupName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "DeleteUser": {
      "http": {
        "method": "DELETE",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "UserName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "UserName": {
            "location": "uri",
            "locationName": "UserName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "DeleteUserByPrincipalId": {
      "http": {
        "method": "DELETE",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/user-principals/{PrincipalId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "PrincipalId",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "PrincipalId": {
            "location": "uri",
            "locationName": "PrincipalId"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "DescribeGroup": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "GroupName": {
            "location": "uri",
            "locationName": "GroupName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Group": {
            "shape": "S7"
          },
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "DescribeUser": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "UserName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "UserName": {
            "location": "uri",
            "locationName": "UserName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "User": {
            "shape": "Ss"
          },
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "GetDashboardEmbedUrl": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/dashboards/{DashboardId}/embed-url"
      },
      "input": {
        "type": "structure",
        "required": [
          "AwsAccountId",
          "DashboardId",
          "IdentityType"
        ],
        "members": {
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "DashboardId": {
            "location": "uri",
            "locationName": "DashboardId"
          },
          "IdentityType": {
            "location": "querystring",
            "locationName": "creds-type"
          },
          "SessionLifetimeInMinutes": {
            "location": "querystring",
            "locationName": "session-lifetime",
            "type": "long"
          },
          "UndoRedoDisabled": {
            "location": "querystring",
            "locationName": "undo-redo-disabled",
            "type": "boolean"
          },
          "ResetDisabled": {
            "location": "querystring",
            "locationName": "reset-disabled",
            "type": "boolean"
          },
          "UserArn": {
            "location": "querystring",
            "locationName": "user-arn"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "EmbedUrl": {
            "type": "string",
            "sensitive": true
          },
          "Status": {
            "location": "statusCode",
            "type": "integer"
          },
          "RequestId": {}
        }
      }
    },
    "ListGroupMemberships": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}/members"
      },
      "input": {
        "type": "structure",
        "required": [
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "GroupName": {
            "location": "uri",
            "locationName": "GroupName"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "next-token"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "max-results",
            "type": "integer"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "GroupMemberList": {
            "type": "list",
            "member": {
              "shape": "Se"
            }
          },
          "NextToken": {},
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "ListGroups": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups"
      },
      "input": {
        "type": "structure",
        "required": [
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "next-token"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "max-results",
            "type": "integer"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "GroupList": {
            "shape": "S17"
          },
          "NextToken": {},
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "ListUserGroups": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}/groups"
      },
      "input": {
        "type": "structure",
        "required": [
          "UserName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "UserName": {
            "location": "uri",
            "locationName": "UserName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "next-token"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "max-results",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "GroupList": {
            "shape": "S17"
          },
          "NextToken": {},
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "ListUsers": {
      "http": {
        "method": "GET",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users"
      },
      "input": {
        "type": "structure",
        "required": [
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "next-token"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "max-results",
            "type": "integer"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "UserList": {
            "type": "list",
            "member": {
              "shape": "Ss"
            }
          },
          "NextToken": {},
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "RegisterUser": {
      "http": {
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users"
      },
      "input": {
        "type": "structure",
        "required": [
          "IdentityType",
          "Email",
          "UserRole",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "IdentityType": {},
          "Email": {},
          "UserRole": {},
          "IamArn": {},
          "SessionName": {},
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          },
          "UserName": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "User": {
            "shape": "Ss"
          },
          "UserInvitationUrl": {},
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "UpdateGroup": {
      "http": {
        "method": "PUT",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/groups/{GroupName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "GroupName",
          "AwsAccountId",
          "Namespace"
        ],
        "members": {
          "GroupName": {
            "location": "uri",
            "locationName": "GroupName"
          },
          "Description": {},
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Group": {
            "shape": "S7"
          },
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    },
    "UpdateUser": {
      "http": {
        "method": "PUT",
        "requestUri": "/accounts/{AwsAccountId}/namespaces/{Namespace}/users/{UserName}"
      },
      "input": {
        "type": "structure",
        "required": [
          "UserName",
          "AwsAccountId",
          "Namespace",
          "Email",
          "Role"
        ],
        "members": {
          "UserName": {
            "location": "uri",
            "locationName": "UserName"
          },
          "AwsAccountId": {
            "location": "uri",
            "locationName": "AwsAccountId"
          },
          "Namespace": {
            "location": "uri",
            "locationName": "Namespace"
          },
          "Email": {},
          "Role": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "User": {
            "shape": "Ss"
          },
          "RequestId": {},
          "Status": {
            "location": "statusCode",
            "type": "integer"
          }
        }
      }
    }
  },
  "shapes": {
    "S7": {
      "type": "structure",
      "members": {
        "Arn": {},
        "GroupName": {},
        "Description": {},
        "PrincipalId": {}
      }
    },
    "Se": {
      "type": "structure",
      "members": {
        "Arn": {},
        "MemberName": {}
      }
    },
    "Ss": {
      "type": "structure",
      "members": {
        "Arn": {},
        "UserName": {},
        "Email": {},
        "Role": {},
        "IdentityType": {},
        "Active": {
          "type": "boolean"
        },
        "PrincipalId": {}
      }
    },
    "S17": {
      "type": "list",
      "member": {
        "shape": "S7"
      }
    }
  }
}