{
  "version": "2.0",
  "metadata": {
    "apiVersion": "2020-07-20",
    "endpointPrefix": "sso",
    "jsonVersion": "1.1",
    "protocol": "json",
    "serviceAbbreviation": "SSO Admin",
    "serviceFullName": "AWS Single Sign-On Admin",
    "serviceId": "SSO Admin",
    "signatureVersion": "v4",
    "signingName": "sso",
    "targetPrefix": "SWBExternalService",
    "uid": "sso-admin-2020-07-20"
  },
  "operations": {
    "AttachCustomerManagedPolicyReferenceToPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "CustomerManagedPolicyReference",
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "CustomerManagedPolicyReference": {
            "shape": "S2"
          },
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "AttachManagedPolicyToPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "ManagedPolicyArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "ManagedPolicyArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "CreateAccountAssignment": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn",
          "PrincipalId",
          "PrincipalType",
          "TargetId",
          "TargetType"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {},
          "PrincipalId": {},
          "PrincipalType": {},
          "TargetId": {},
          "TargetType": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignmentCreationStatus": {
            "shape": "Sh"
          }
        }
      }
    },
    "CreateInstanceAccessControlAttributeConfiguration": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceAccessControlAttributeConfiguration",
          "InstanceArn"
        ],
        "members": {
          "InstanceAccessControlAttributeConfiguration": {
            "shape": "Sn"
          },
          "InstanceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "CreatePermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "Name"
        ],
        "members": {
          "Description": {},
          "InstanceArn": {},
          "Name": {},
          "RelayState": {},
          "SessionDuration": {},
          "Tags": {
            "shape": "S10"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PermissionSet": {
            "shape": "S15"
          }
        }
      }
    },
    "DeleteAccountAssignment": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn",
          "PrincipalId",
          "PrincipalType",
          "TargetId",
          "TargetType"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {},
          "PrincipalId": {},
          "PrincipalType": {},
          "TargetId": {},
          "TargetType": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignmentDeletionStatus": {
            "shape": "Sh"
          }
        }
      }
    },
    "DeleteInlinePolicyFromPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "DeleteInstanceAccessControlAttributeConfiguration": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn"
        ],
        "members": {
          "InstanceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "DeletePermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "DeletePermissionsBoundaryFromPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "DescribeAccountAssignmentCreationStatus": {
      "input": {
        "type": "structure",
        "required": [
          "AccountAssignmentCreationRequestId",
          "InstanceArn"
        ],
        "members": {
          "AccountAssignmentCreationRequestId": {},
          "InstanceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignmentCreationStatus": {
            "shape": "Sh"
          }
        }
      }
    },
    "DescribeAccountAssignmentDeletionStatus": {
      "input": {
        "type": "structure",
        "required": [
          "AccountAssignmentDeletionRequestId",
          "InstanceArn"
        ],
        "members": {
          "AccountAssignmentDeletionRequestId": {},
          "InstanceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignmentDeletionStatus": {
            "shape": "Sh"
          }
        }
      }
    },
    "DescribeInstanceAccessControlAttributeConfiguration": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn"
        ],
        "members": {
          "InstanceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "InstanceAccessControlAttributeConfiguration": {
            "shape": "Sn"
          },
          "Status": {},
          "StatusReason": {}
        }
      }
    },
    "DescribePermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PermissionSet": {
            "shape": "S15"
          }
        }
      }
    },
    "DescribePermissionSetProvisioningStatus": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "ProvisionPermissionSetRequestId"
        ],
        "members": {
          "InstanceArn": {},
          "ProvisionPermissionSetRequestId": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PermissionSetProvisioningStatus": {
            "shape": "S1s"
          }
        }
      }
    },
    "DetachCustomerManagedPolicyReferenceFromPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "CustomerManagedPolicyReference",
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "CustomerManagedPolicyReference": {
            "shape": "S2"
          },
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "DetachManagedPolicyFromPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "ManagedPolicyArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "ManagedPolicyArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "GetInlinePolicyForPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "InlinePolicy": {}
        }
      }
    },
    "GetPermissionsBoundaryForPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PermissionsBoundary": {
            "shape": "S23"
          }
        }
      }
    },
    "ListAccountAssignmentCreationStatus": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn"
        ],
        "members": {
          "Filter": {
            "shape": "S25"
          },
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignmentsCreationStatus": {
            "shape": "S29"
          },
          "NextToken": {}
        }
      }
    },
    "ListAccountAssignmentDeletionStatus": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn"
        ],
        "members": {
          "Filter": {
            "shape": "S25"
          },
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignmentsDeletionStatus": {
            "shape": "S29"
          },
          "NextToken": {}
        }
      }
    },
    "ListAccountAssignments": {
      "input": {
        "type": "structure",
        "required": [
          "AccountId",
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "AccountId": {},
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountAssignments": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "AccountId": {},
                "PermissionSetArn": {},
                "PrincipalId": {},
                "PrincipalType": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListAccountsForProvisionedPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {},
          "PermissionSetArn": {},
          "ProvisioningStatus": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AccountIds": {
            "type": "list",
            "member": {}
          },
          "NextToken": {}
        }
      }
    },
    "ListCustomerManagedPolicyReferencesInPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "CustomerManagedPolicyReferences": {
            "type": "list",
            "member": {
              "shape": "S2"
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListInstances": {
      "input": {
        "type": "structure",
        "members": {
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Instances": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "IdentityStoreId": {},
                "InstanceArn": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListManagedPoliciesInPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "AttachedManagedPolicies": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Arn": {},
                "Name": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListPermissionSetProvisioningStatus": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn"
        ],
        "members": {
          "Filter": {
            "shape": "S25"
          },
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "PermissionSetsProvisioningStatus": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "CreatedDate": {
                  "type": "timestamp"
                },
                "RequestId": {},
                "Status": {}
              }
            }
          }
        }
      }
    },
    "ListPermissionSets": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn"
        ],
        "members": {
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "PermissionSets": {
            "shape": "S34"
          }
        }
      }
    },
    "ListPermissionSetsProvisionedToAccount": {
      "input": {
        "type": "structure",
        "required": [
          "AccountId",
          "InstanceArn"
        ],
        "members": {
          "AccountId": {},
          "InstanceArn": {},
          "MaxResults": {
            "type": "integer"
          },
          "NextToken": {},
          "ProvisioningStatus": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "PermissionSets": {
            "shape": "S34"
          }
        }
      }
    },
    "ListTagsForResource": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "ResourceArn"
        ],
        "members": {
          "InstanceArn": {},
          "NextToken": {},
          "ResourceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "Tags": {
            "shape": "S10"
          }
        }
      }
    },
    "ProvisionPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn",
          "TargetType"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {},
          "TargetId": {},
          "TargetType": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PermissionSetProvisioningStatus": {
            "shape": "S1s"
          }
        }
      }
    },
    "PutInlinePolicyToPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InlinePolicy",
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "InlinePolicy": {},
          "InstanceArn": {},
          "PermissionSetArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "PutPermissionsBoundaryToPermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn",
          "PermissionsBoundary"
        ],
        "members": {
          "InstanceArn": {},
          "PermissionSetArn": {},
          "PermissionsBoundary": {
            "shape": "S23"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "TagResource": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "ResourceArn",
          "Tags"
        ],
        "members": {
          "InstanceArn": {},
          "ResourceArn": {},
          "Tags": {
            "shape": "S10"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "UntagResource": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "ResourceArn",
          "TagKeys"
        ],
        "members": {
          "InstanceArn": {},
          "ResourceArn": {},
          "TagKeys": {
            "type": "list",
            "member": {}
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "UpdateInstanceAccessControlAttributeConfiguration": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceAccessControlAttributeConfiguration",
          "InstanceArn"
        ],
        "members": {
          "InstanceAccessControlAttributeConfiguration": {
            "shape": "Sn"
          },
          "InstanceArn": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "UpdatePermissionSet": {
      "input": {
        "type": "structure",
        "required": [
          "InstanceArn",
          "PermissionSetArn"
        ],
        "members": {
          "Description": {},
          "InstanceArn": {},
          "PermissionSetArn": {},
          "RelayState": {},
          "SessionDuration": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    }
  },
  "shapes": {
    "S2": {
      "type": "structure",
      "required": [
        "Name"
      ],
      "members": {
        "Name": {},
        "Path": {}
      }
    },
    "Sh": {
      "type": "structure",
      "members": {
        "CreatedDate": {
          "type": "timestamp"
        },
        "FailureReason": {},
        "PermissionSetArn": {},
        "PrincipalId": {},
        "PrincipalType": {},
        "RequestId": {},
        "Status": {},
        "TargetId": {},
        "TargetType": {}
      }
    },
    "Sn": {
      "type": "structure",
      "required": [
        "AccessControlAttributes"
      ],
      "members": {
        "AccessControlAttributes": {
          "type": "list",
          "member": {
            "type": "structure",
            "required": [
              "Key",
              "Value"
            ],
            "members": {
              "Key": {},
              "Value": {
                "type": "structure",
                "required": [
                  "Source"
                ],
                "members": {
                  "Source": {
                    "type": "list",
                    "member": {}
                  }
                }
              }
            }
          }
        }
      }
    },
    "S10": {
      "type": "list",
      "member": {
        "type": "structure",
        "required": [
          "Key",
          "Value"
        ],
        "members": {
          "Key": {},
          "Value": {}
        }
      }
    },
    "S15": {
      "type": "structure",
      "members": {
        "CreatedDate": {
          "type": "timestamp"
        },
        "Description": {},
        "Name": {},
        "PermissionSetArn": {},
        "RelayState": {},
        "SessionDuration": {}
      }
    },
    "S1s": {
      "type": "structure",
      "members": {
        "AccountId": {},
        "CreatedDate": {
          "type": "timestamp"
        },
        "FailureReason": {},
        "PermissionSetArn": {},
        "RequestId": {},
        "Status": {}
      }
    },
    "S23": {
      "type": "structure",
      "members": {
        "CustomerManagedPolicyReference": {
          "shape": "S2"
        },
        "ManagedPolicyArn": {}
      }
    },
    "S25": {
      "type": "structure",
      "members": {
        "Status": {}
      }
    },
    "S29": {
      "type": "list",
      "member": {
        "type": "structure",
        "members": {
          "CreatedDate": {
            "type": "timestamp"
          },
          "RequestId": {},
          "Status": {}
        }
      }
    },
    "S34": {
      "type": "list",
      "member": {}
    }
  }
}