{
  "version": "2.0",
  "metadata": {
    "apiVersion": "2017-08-08",
    "endpointPrefix": "connect",
    "jsonVersion": "1.1",
    "protocol": "rest-json",
    "serviceAbbreviation": "Amazon Connect",
    "serviceFullName": "Amazon Connect Service",
    "serviceId": "Connect",
    "signatureVersion": "v4",
    "signingName": "connect",
    "uid": "connect-2017-08-08"
  },
  "operations": {
    "AssociateRoutingProfileQueues": {
      "http": {
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/associate-queues"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId",
          "QueueConfigs"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "QueueConfigs": {
            "shape": "S4"
          }
        }
      }
    },
    "CreateContactFlow": {
      "http": {
        "method": "PUT",
        "requestUri": "/contact-flows/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "Name",
          "Type",
          "Content"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "Name": {},
          "Type": {},
          "Description": {},
          "Content": {},
          "Tags": {
            "shape": "Sg"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ContactFlowId": {},
          "ContactFlowArn": {}
        }
      }
    },
    "CreateRoutingProfile": {
      "http": {
        "method": "PUT",
        "requestUri": "/routing-profiles/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "Name",
          "Description",
          "DefaultOutboundQueueId",
          "MediaConcurrencies"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "Name": {},
          "Description": {},
          "DefaultOutboundQueueId": {},
          "QueueConfigs": {
            "shape": "S4"
          },
          "MediaConcurrencies": {
            "shape": "Sp"
          },
          "Tags": {
            "shape": "Sg"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RoutingProfileArn": {},
          "RoutingProfileId": {}
        }
      }
    },
    "CreateUser": {
      "http": {
        "method": "PUT",
        "requestUri": "/users/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "Username",
          "PhoneConfig",
          "SecurityProfileIds",
          "RoutingProfileId",
          "InstanceId"
        ],
        "members": {
          "Username": {},
          "Password": {},
          "IdentityInfo": {
            "shape": "Sw"
          },
          "PhoneConfig": {
            "shape": "S10"
          },
          "DirectoryUserId": {},
          "SecurityProfileIds": {
            "shape": "S16"
          },
          "RoutingProfileId": {},
          "HierarchyGroupId": {},
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "Tags": {
            "shape": "Sg"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "UserId": {},
          "UserArn": {}
        }
      }
    },
    "DeleteUser": {
      "http": {
        "method": "DELETE",
        "requestUri": "/users/{InstanceId}/{UserId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "UserId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          }
        }
      }
    },
    "DescribeContactFlow": {
      "http": {
        "method": "GET",
        "requestUri": "/contact-flows/{InstanceId}/{ContactFlowId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactFlowId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "ContactFlowId": {
            "location": "uri",
            "locationName": "ContactFlowId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ContactFlow": {
            "type": "structure",
            "members": {
              "Arn": {},
              "Id": {},
              "Name": {},
              "Type": {},
              "Description": {},
              "Content": {},
              "Tags": {
                "shape": "Sg"
              }
            }
          }
        }
      }
    },
    "DescribeRoutingProfile": {
      "http": {
        "method": "GET",
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RoutingProfile": {
            "type": "structure",
            "members": {
              "InstanceId": {},
              "Name": {},
              "RoutingProfileArn": {},
              "RoutingProfileId": {},
              "Description": {},
              "MediaConcurrencies": {
                "shape": "Sp"
              },
              "DefaultOutboundQueueId": {},
              "Tags": {
                "shape": "Sg"
              }
            }
          }
        }
      }
    },
    "DescribeUser": {
      "http": {
        "method": "GET",
        "requestUri": "/users/{InstanceId}/{UserId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "UserId",
          "InstanceId"
        ],
        "members": {
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "User": {
            "type": "structure",
            "members": {
              "Id": {},
              "Arn": {},
              "Username": {},
              "IdentityInfo": {
                "shape": "Sw"
              },
              "PhoneConfig": {
                "shape": "S10"
              },
              "DirectoryUserId": {},
              "SecurityProfileIds": {
                "shape": "S16"
              },
              "RoutingProfileId": {},
              "HierarchyGroupId": {},
              "Tags": {
                "shape": "Sg"
              }
            }
          }
        }
      }
    },
    "DescribeUserHierarchyGroup": {
      "http": {
        "method": "GET",
        "requestUri": "/user-hierarchy-groups/{InstanceId}/{HierarchyGroupId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "HierarchyGroupId",
          "InstanceId"
        ],
        "members": {
          "HierarchyGroupId": {
            "location": "uri",
            "locationName": "HierarchyGroupId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "HierarchyGroup": {
            "type": "structure",
            "members": {
              "Id": {},
              "Arn": {},
              "Name": {},
              "LevelId": {},
              "HierarchyPath": {
                "type": "structure",
                "members": {
                  "LevelOne": {
                    "shape": "S1r"
                  },
                  "LevelTwo": {
                    "shape": "S1r"
                  },
                  "LevelThree": {
                    "shape": "S1r"
                  },
                  "LevelFour": {
                    "shape": "S1r"
                  },
                  "LevelFive": {
                    "shape": "S1r"
                  }
                }
              }
            }
          }
        }
      }
    },
    "DescribeUserHierarchyStructure": {
      "http": {
        "method": "GET",
        "requestUri": "/user-hierarchy-structure/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "HierarchyStructure": {
            "type": "structure",
            "members": {
              "LevelOne": {
                "shape": "S1v"
              },
              "LevelTwo": {
                "shape": "S1v"
              },
              "LevelThree": {
                "shape": "S1v"
              },
              "LevelFour": {
                "shape": "S1v"
              },
              "LevelFive": {
                "shape": "S1v"
              }
            }
          }
        }
      }
    },
    "DisassociateRoutingProfileQueues": {
      "http": {
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/disassociate-queues"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId",
          "QueueReferences"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "QueueReferences": {
            "type": "list",
            "member": {
              "shape": "S6"
            }
          }
        }
      }
    },
    "GetContactAttributes": {
      "http": {
        "method": "GET",
        "requestUri": "/contact/attributes/{InstanceId}/{InitialContactId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "InitialContactId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "InitialContactId": {
            "location": "uri",
            "locationName": "InitialContactId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Attributes": {
            "shape": "S22"
          }
        }
      }
    },
    "GetCurrentMetricData": {
      "http": {
        "requestUri": "/metrics/current/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "Filters",
          "CurrentMetrics"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "Filters": {
            "shape": "S26"
          },
          "Groupings": {
            "shape": "S29"
          },
          "CurrentMetrics": {
            "type": "list",
            "member": {
              "shape": "S2c"
            }
          },
          "NextToken": {},
          "MaxResults": {
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "MetricResults": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Dimensions": {
                  "shape": "S2k"
                },
                "Collections": {
                  "type": "list",
                  "member": {
                    "type": "structure",
                    "members": {
                      "Metric": {
                        "shape": "S2c"
                      },
                      "Value": {
                        "type": "double"
                      }
                    }
                  }
                }
              }
            }
          },
          "DataSnapshotTime": {
            "type": "timestamp"
          }
        }
      }
    },
    "GetFederationToken": {
      "http": {
        "method": "GET",
        "requestUri": "/user/federate/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "Credentials": {
            "type": "structure",
            "members": {
              "AccessToken": {
                "shape": "S2t"
              },
              "AccessTokenExpiration": {
                "type": "timestamp"
              },
              "RefreshToken": {
                "shape": "S2t"
              },
              "RefreshTokenExpiration": {
                "type": "timestamp"
              }
            }
          }
        }
      }
    },
    "GetMetricData": {
      "http": {
        "requestUri": "/metrics/historical/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "StartTime",
          "EndTime",
          "Filters",
          "HistoricalMetrics"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "StartTime": {
            "type": "timestamp"
          },
          "EndTime": {
            "type": "timestamp"
          },
          "Filters": {
            "shape": "S26"
          },
          "Groupings": {
            "shape": "S29"
          },
          "HistoricalMetrics": {
            "type": "list",
            "member": {
              "shape": "S2w"
            }
          },
          "NextToken": {},
          "MaxResults": {
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "MetricResults": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Dimensions": {
                  "shape": "S2k"
                },
                "Collections": {
                  "type": "list",
                  "member": {
                    "type": "structure",
                    "members": {
                      "Metric": {
                        "shape": "S2w"
                      },
                      "Value": {
                        "type": "double"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      }
    },
    "ListContactFlows": {
      "http": {
        "method": "GET",
        "requestUri": "/contact-flows-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "ContactFlowTypes": {
            "location": "querystring",
            "locationName": "contactFlowTypes",
            "type": "list",
            "member": {}
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ContactFlowSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Name": {},
                "ContactFlowType": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListHoursOfOperations": {
      "http": {
        "method": "GET",
        "requestUri": "/hours-of-operations-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "HoursOfOperationSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Name": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListPhoneNumbers": {
      "http": {
        "method": "GET",
        "requestUri": "/phone-numbers-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "PhoneNumberTypes": {
            "location": "querystring",
            "locationName": "phoneNumberTypes",
            "type": "list",
            "member": {}
          },
          "PhoneNumberCountryCodes": {
            "location": "querystring",
            "locationName": "phoneNumberCountryCodes",
            "type": "list",
            "member": {}
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PhoneNumberSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "PhoneNumber": {},
                "PhoneNumberType": {},
                "PhoneNumberCountryCode": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListPrompts": {
      "http": {
        "method": "GET",
        "requestUri": "/prompts-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "PromptSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Name": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListQueues": {
      "http": {
        "method": "GET",
        "requestUri": "/queues-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "QueueTypes": {
            "location": "querystring",
            "locationName": "queueTypes",
            "type": "list",
            "member": {}
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "QueueSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Name": {},
                "QueueType": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListRoutingProfileQueues": {
      "http": {
        "method": "GET",
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/queues"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "NextToken": {},
          "RoutingProfileQueueConfigSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "required": [
                "QueueId",
                "QueueArn",
                "QueueName",
                "Priority",
                "Delay",
                "Channel"
              ],
              "members": {
                "QueueId": {},
                "QueueArn": {},
                "QueueName": {},
                "Priority": {
                  "type": "integer"
                },
                "Delay": {
                  "type": "integer"
                },
                "Channel": {}
              }
            }
          }
        }
      }
    },
    "ListRoutingProfiles": {
      "http": {
        "method": "GET",
        "requestUri": "/routing-profiles-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "RoutingProfileSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Name": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListSecurityProfiles": {
      "http": {
        "method": "GET",
        "requestUri": "/security-profiles-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "SecurityProfileSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Name": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListTagsForResource": {
      "http": {
        "method": "GET",
        "requestUri": "/tags/{resourceArn}"
      },
      "input": {
        "type": "structure",
        "required": [
          "resourceArn"
        ],
        "members": {
          "resourceArn": {
            "location": "uri",
            "locationName": "resourceArn"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "tags": {
            "shape": "Sg"
          }
        }
      }
    },
    "ListUserHierarchyGroups": {
      "http": {
        "method": "GET",
        "requestUri": "/user-hierarchy-groups-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "UserHierarchyGroupSummaryList": {
            "type": "list",
            "member": {
              "shape": "S1r"
            }
          },
          "NextToken": {}
        }
      }
    },
    "ListUsers": {
      "http": {
        "method": "GET",
        "requestUri": "/users-summary/{InstanceId}"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "NextToken": {
            "location": "querystring",
            "locationName": "nextToken"
          },
          "MaxResults": {
            "location": "querystring",
            "locationName": "maxResults",
            "type": "integer"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "UserSummaryList": {
            "type": "list",
            "member": {
              "type": "structure",
              "members": {
                "Id": {},
                "Arn": {},
                "Username": {}
              }
            }
          },
          "NextToken": {}
        }
      }
    },
    "ResumeContactRecording": {
      "http": {
        "requestUri": "/contact/resume-recording"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactId",
          "InitialContactId"
        ],
        "members": {
          "InstanceId": {},
          "ContactId": {},
          "InitialContactId": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "StartChatContact": {
      "http": {
        "method": "PUT",
        "requestUri": "/contact/chat"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactFlowId",
          "ParticipantDetails"
        ],
        "members": {
          "InstanceId": {},
          "ContactFlowId": {},
          "Attributes": {
            "shape": "S22"
          },
          "ParticipantDetails": {
            "type": "structure",
            "required": [
              "DisplayName"
            ],
            "members": {
              "DisplayName": {}
            }
          },
          "InitialMessage": {
            "type": "structure",
            "required": [
              "ContentType",
              "Content"
            ],
            "members": {
              "ContentType": {},
              "Content": {}
            }
          },
          "ClientToken": {
            "idempotencyToken": true
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ContactId": {},
          "ParticipantId": {},
          "ParticipantToken": {}
        }
      }
    },
    "StartContactRecording": {
      "http": {
        "requestUri": "/contact/start-recording"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactId",
          "InitialContactId",
          "VoiceRecordingConfiguration"
        ],
        "members": {
          "InstanceId": {},
          "ContactId": {},
          "InitialContactId": {},
          "VoiceRecordingConfiguration": {
            "type": "structure",
            "members": {
              "VoiceRecordingTrack": {}
            }
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "StartOutboundVoiceContact": {
      "http": {
        "method": "PUT",
        "requestUri": "/contact/outbound-voice"
      },
      "input": {
        "type": "structure",
        "required": [
          "DestinationPhoneNumber",
          "ContactFlowId",
          "InstanceId"
        ],
        "members": {
          "DestinationPhoneNumber": {},
          "ContactFlowId": {},
          "InstanceId": {},
          "ClientToken": {
            "idempotencyToken": true
          },
          "SourcePhoneNumber": {},
          "QueueId": {},
          "Attributes": {
            "shape": "S22"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {
          "ContactId": {}
        }
      }
    },
    "StopContact": {
      "http": {
        "requestUri": "/contact/stop"
      },
      "input": {
        "type": "structure",
        "required": [
          "ContactId",
          "InstanceId"
        ],
        "members": {
          "ContactId": {},
          "InstanceId": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "StopContactRecording": {
      "http": {
        "requestUri": "/contact/stop-recording"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactId",
          "InitialContactId"
        ],
        "members": {
          "InstanceId": {},
          "ContactId": {},
          "InitialContactId": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "SuspendContactRecording": {
      "http": {
        "requestUri": "/contact/suspend-recording"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactId",
          "InitialContactId"
        ],
        "members": {
          "InstanceId": {},
          "ContactId": {},
          "InitialContactId": {}
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "TagResource": {
      "http": {
        "requestUri": "/tags/{resourceArn}"
      },
      "input": {
        "type": "structure",
        "required": [
          "resourceArn",
          "tags"
        ],
        "members": {
          "resourceArn": {
            "location": "uri",
            "locationName": "resourceArn"
          },
          "tags": {
            "shape": "Sg"
          }
        }
      }
    },
    "UntagResource": {
      "http": {
        "method": "DELETE",
        "requestUri": "/tags/{resourceArn}"
      },
      "input": {
        "type": "structure",
        "required": [
          "resourceArn",
          "tagKeys"
        ],
        "members": {
          "resourceArn": {
            "location": "uri",
            "locationName": "resourceArn"
          },
          "tagKeys": {
            "location": "querystring",
            "locationName": "tagKeys",
            "type": "list",
            "member": {}
          }
        }
      }
    },
    "UpdateContactAttributes": {
      "http": {
        "requestUri": "/contact/attributes"
      },
      "input": {
        "type": "structure",
        "required": [
          "InitialContactId",
          "InstanceId",
          "Attributes"
        ],
        "members": {
          "InitialContactId": {},
          "InstanceId": {},
          "Attributes": {
            "shape": "S22"
          }
        }
      },
      "output": {
        "type": "structure",
        "members": {}
      }
    },
    "UpdateContactFlowContent": {
      "http": {
        "requestUri": "/contact-flows/{InstanceId}/{ContactFlowId}/content"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactFlowId",
          "Content"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "ContactFlowId": {
            "location": "uri",
            "locationName": "ContactFlowId"
          },
          "Content": {}
        }
      }
    },
    "UpdateContactFlowName": {
      "http": {
        "requestUri": "/contact-flows/{InstanceId}/{ContactFlowId}/name"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "ContactFlowId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "ContactFlowId": {
            "location": "uri",
            "locationName": "ContactFlowId"
          },
          "Name": {},
          "Description": {}
        }
      }
    },
    "UpdateRoutingProfileConcurrency": {
      "http": {
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/concurrency"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId",
          "MediaConcurrencies"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "MediaConcurrencies": {
            "shape": "Sp"
          }
        }
      }
    },
    "UpdateRoutingProfileDefaultOutboundQueue": {
      "http": {
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/default-outbound-queue"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId",
          "DefaultOutboundQueueId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "DefaultOutboundQueueId": {}
        }
      }
    },
    "UpdateRoutingProfileName": {
      "http": {
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/name"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "Name": {},
          "Description": {}
        }
      }
    },
    "UpdateRoutingProfileQueues": {
      "http": {
        "requestUri": "/routing-profiles/{InstanceId}/{RoutingProfileId}/queues"
      },
      "input": {
        "type": "structure",
        "required": [
          "InstanceId",
          "RoutingProfileId",
          "QueueConfigs"
        ],
        "members": {
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          },
          "RoutingProfileId": {
            "location": "uri",
            "locationName": "RoutingProfileId"
          },
          "QueueConfigs": {
            "shape": "S4"
          }
        }
      }
    },
    "UpdateUserHierarchy": {
      "http": {
        "requestUri": "/users/{InstanceId}/{UserId}/hierarchy"
      },
      "input": {
        "type": "structure",
        "required": [
          "UserId",
          "InstanceId"
        ],
        "members": {
          "HierarchyGroupId": {},
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      }
    },
    "UpdateUserIdentityInfo": {
      "http": {
        "requestUri": "/users/{InstanceId}/{UserId}/identity-info"
      },
      "input": {
        "type": "structure",
        "required": [
          "IdentityInfo",
          "UserId",
          "InstanceId"
        ],
        "members": {
          "IdentityInfo": {
            "shape": "Sw"
          },
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      }
    },
    "UpdateUserPhoneConfig": {
      "http": {
        "requestUri": "/users/{InstanceId}/{UserId}/phone-config"
      },
      "input": {
        "type": "structure",
        "required": [
          "PhoneConfig",
          "UserId",
          "InstanceId"
        ],
        "members": {
          "PhoneConfig": {
            "shape": "S10"
          },
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      }
    },
    "UpdateUserRoutingProfile": {
      "http": {
        "requestUri": "/users/{InstanceId}/{UserId}/routing-profile"
      },
      "input": {
        "type": "structure",
        "required": [
          "RoutingProfileId",
          "UserId",
          "InstanceId"
        ],
        "members": {
          "RoutingProfileId": {},
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      }
    },
    "UpdateUserSecurityProfiles": {
      "http": {
        "requestUri": "/users/{InstanceId}/{UserId}/security-profiles"
      },
      "input": {
        "type": "structure",
        "required": [
          "SecurityProfileIds",
          "UserId",
          "InstanceId"
        ],
        "members": {
          "SecurityProfileIds": {
            "shape": "S16"
          },
          "UserId": {
            "location": "uri",
            "locationName": "UserId"
          },
          "InstanceId": {
            "location": "uri",
            "locationName": "InstanceId"
          }
        }
      }
    }
  },
  "shapes": {
    "S4": {
      "type": "list",
      "member": {
        "type": "structure",
        "required": [
          "QueueReference",
          "Priority",
          "Delay"
        ],
        "members": {
          "QueueReference": {
            "shape": "S6"
          },
          "Priority": {
            "type": "integer"
          },
          "Delay": {
            "type": "integer"
          }
        }
      }
    },
    "S6": {
      "type": "structure",
      "required": [
        "QueueId",
        "Channel"
      ],
      "members": {
        "QueueId": {},
        "Channel": {}
      }
    },
    "Sg": {
      "type": "map",
      "key": {},
      "value": {}
    },
    "Sp": {
      "type": "list",
      "member": {
        "type": "structure",
        "required": [
          "Channel",
          "Concurrency"
        ],
        "members": {
          "Channel": {},
          "Concurrency": {
            "type": "integer"
          }
        }
      }
    },
    "Sw": {
      "type": "structure",
      "members": {
        "FirstName": {},
        "LastName": {},
        "Email": {}
      }
    },
    "S10": {
      "type": "structure",
      "required": [
        "PhoneType"
      ],
      "members": {
        "PhoneType": {},
        "AutoAccept": {
          "type": "boolean"
        },
        "AfterContactWorkTimeLimit": {
          "type": "integer"
        },
        "DeskPhoneNumber": {}
      }
    },
    "S16": {
      "type": "list",
      "member": {}
    },
    "S1r": {
      "type": "structure",
      "members": {
        "Id": {},
        "Arn": {},
        "Name": {}
      }
    },
    "S1v": {
      "type": "structure",
      "members": {
        "Id": {},
        "Arn": {},
        "Name": {}
      }
    },
    "S22": {
      "type": "map",
      "key": {},
      "value": {}
    },
    "S26": {
      "type": "structure",
      "members": {
        "Queues": {
          "type": "list",
          "member": {}
        },
        "Channels": {
          "type": "list",
          "member": {}
        }
      }
    },
    "S29": {
      "type": "list",
      "member": {}
    },
    "S2c": {
      "type": "structure",
      "members": {
        "Name": {},
        "Unit": {}
      }
    },
    "S2k": {
      "type": "structure",
      "members": {
        "Queue": {
          "type": "structure",
          "members": {
            "Id": {},
            "Arn": {}
          }
        },
        "Channel": {}
      }
    },
    "S2t": {
      "type": "string",
      "sensitive": true
    },
    "S2w": {
      "type": "structure",
      "members": {
        "Name": {},
        "Threshold": {
          "type": "structure",
          "members": {
            "Comparison": {},
            "ThresholdValue": {
              "type": "double"
            }
          }
        },
        "Statistic": {},
        "Unit": {}
      }
    }
  }
}