#==============================================================================#
# Services.jl
#
# This file is generated by AWSAPI.jl from service decriptions at:
# https://github.com/aws/aws-sdk-js/tree/master/apis
#==============================================================================#

module Services

using ..AWSCore

function AWSMigrationHub(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "mgh",
        version      = "2017-05-31",
        json_version = "1.1",
        target       = "AWSMigrationHub",
        operation    = operation,
        args         = args)
end

AWSMigrationHub(operation, args=[]) =
    AWSMigrationHub(default_aws_config(), operation, args)

AWSMigrationHub(a...; b...) = AWSMigrationHub(a..., b)

function acm(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "acm",
        version      = "2015-12-08",
        json_version = "1.1",
        target       = "CertificateManager",
        operation    = operation,
        args         = args)
end

acm(operation, args=[]) =
    acm(default_aws_config(), operation, args)

acm(a...; b...) = acm(a..., b)

function apigateway(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "apigateway",
        version      = "2015-07-09",
        verb         = verb,
        resource     = resource,
        args         = args)
end

apigateway(verb, resource, args=[]) =
    apigateway(default_aws_config(), verb, resource, args)

apigateway(a...; b...) = apigateway(a..., b)

function application_autoscaling(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "application-autoscaling",
        version      = "2016-02-06",
        endpoint     = "autoscaling",
        json_version = "1.1",
        target       = "AnyScaleFrontendService",
        operation    = operation,
        args         = args)
end

application_autoscaling(operation, args=[]) =
    application_autoscaling(default_aws_config(), operation, args)

application_autoscaling(a...; b...) = application_autoscaling(a..., b)

function appstream(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "appstream",
        version      = "2016-12-01",
        endpoint     = "appstream2",
        json_version = "1.1",
        target       = "PhotonAdminProxyService",
        operation    = operation,
        args         = args)
end

appstream(operation, args=[]) =
    appstream(default_aws_config(), operation, args)

appstream(a...; b...) = appstream(a..., b)

function athena(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "athena",
        version      = "2017-05-18",
        json_version = "1.1",
        target       = "AmazonAthena",
        operation    = operation,
        args         = args)
end

athena(operation, args=[]) =
    athena(default_aws_config(), operation, args)

athena(a...; b...) = athena(a..., b)

function autoscaling(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "autoscaling",
        version      = "2011-01-01",
        operation    = operation,
        args         = args)
end

autoscaling(operation, args=[]) =
    autoscaling(default_aws_config(), operation, args)

autoscaling(a...; b...) = autoscaling(a..., b)

function batch(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "batch",
        version      = "2016-08-10",
        verb         = verb,
        resource     = resource,
        args         = args)
end

batch(verb, resource, args=[]) =
    batch(default_aws_config(), verb, resource, args)

batch(a...; b...) = batch(a..., b)

function budgets(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "budgets",
        version      = "2016-10-20",
        json_version = "1.1",
        target       = "AWSBudgetServiceGateway",
        operation    = operation,
        args         = args)
end

budgets(operation, args=[]) =
    budgets(default_aws_config(), operation, args)

budgets(a...; b...) = budgets(a..., b)

function clouddirectory(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "clouddirectory",
        version      = "2016-05-10",
        verb         = verb,
        resource     = resource,
        args         = args)
end

clouddirectory(verb, resource, args=[]) =
    clouddirectory(default_aws_config(), verb, resource, args)

clouddirectory(a...; b...) = clouddirectory(a..., b)

function cloudformation(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "cloudformation",
        version      = "2010-05-15",
        operation    = operation,
        args         = args)
end

cloudformation(operation, args=[]) =
    cloudformation(default_aws_config(), operation, args)

cloudformation(a...; b...) = cloudformation(a..., b)

function cloudfront(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_xml(
        aws;
        service      = "cloudfront",
        version      = "2017-03-25",
        verb         = verb,
        resource     = resource,
        args         = args)
end

cloudfront(verb, resource, args=[]) =
    cloudfront(default_aws_config(), verb, resource, args)

cloudfront(a...; b...) = cloudfront(a..., b)

function cloudhsm(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "cloudhsm",
        version      = "2014-05-30",
        json_version = "1.1",
        target       = "CloudHsmFrontendService",
        operation    = operation,
        args         = args)
end

cloudhsm(operation, args=[]) =
    cloudhsm(default_aws_config(), operation, args)

cloudhsm(a...; b...) = cloudhsm(a..., b)

function cloudhsmv2(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "cloudhsm",
        version      = "2017-04-28",
        endpoint     = "cloudhsmv2",
        json_version = "1.1",
        target       = "BaldrApiService",
        operation    = operation,
        args         = args)
end

cloudhsmv2(operation, args=[]) =
    cloudhsmv2(default_aws_config(), operation, args)

cloudhsmv2(a...; b...) = cloudhsmv2(a..., b)

function cloudsearch(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "cloudsearch",
        version      = "2013-01-01",
        operation    = operation,
        args         = args)
end

cloudsearch(operation, args=[]) =
    cloudsearch(default_aws_config(), operation, args)

cloudsearch(a...; b...) = cloudsearch(a..., b)

function cloudsearchdomain(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "cloudsearch",
        version      = "2013-01-01",
        endpoint     = "cloudsearchdomain",
        verb         = verb,
        resource     = resource,
        args         = args)
end

cloudsearchdomain(verb, resource, args=[]) =
    cloudsearchdomain(default_aws_config(), verb, resource, args)

cloudsearchdomain(a...; b...) = cloudsearchdomain(a..., b)

function cloudtrail(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "cloudtrail",
        version      = "2013-11-01",
        json_version = "1.1",
        target       = "com.amazonaws.cloudtrail.v20131101.CloudTrail_20131101",
        operation    = operation,
        args         = args)
end

cloudtrail(operation, args=[]) =
    cloudtrail(default_aws_config(), operation, args)

cloudtrail(a...; b...) = cloudtrail(a..., b)

function codebuild(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "codebuild",
        version      = "2016-10-06",
        json_version = "1.1",
        target       = "CodeBuild_20161006",
        operation    = operation,
        args         = args)
end

codebuild(operation, args=[]) =
    codebuild(default_aws_config(), operation, args)

codebuild(a...; b...) = codebuild(a..., b)

function codecommit(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "codecommit",
        version      = "2015-04-13",
        json_version = "1.1",
        target       = "CodeCommit_20150413",
        operation    = operation,
        args         = args)
end

codecommit(operation, args=[]) =
    codecommit(default_aws_config(), operation, args)

codecommit(a...; b...) = codecommit(a..., b)

function codedeploy(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "codedeploy",
        version      = "2014-10-06",
        json_version = "1.1",
        target       = "CodeDeploy_20141006",
        operation    = operation,
        args         = args)
end

codedeploy(operation, args=[]) =
    codedeploy(default_aws_config(), operation, args)

codedeploy(a...; b...) = codedeploy(a..., b)

function codepipeline(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "codepipeline",
        version      = "2015-07-09",
        json_version = "1.1",
        target       = "CodePipeline_20150709",
        operation    = operation,
        args         = args)
end

codepipeline(operation, args=[]) =
    codepipeline(default_aws_config(), operation, args)

codepipeline(a...; b...) = codepipeline(a..., b)

function codestar(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "codestar",
        version      = "2017-04-19",
        json_version = "1.1",
        target       = "CodeStar_20170419",
        operation    = operation,
        args         = args)
end

codestar(operation, args=[]) =
    codestar(default_aws_config(), operation, args)

codestar(a...; b...) = codestar(a..., b)

function cognito_identity(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "cognito-identity",
        version      = "2014-06-30",
        json_version = "1.1",
        target       = "AWSCognitoIdentityService",
        operation    = operation,
        args         = args)
end

cognito_identity(operation, args=[]) =
    cognito_identity(default_aws_config(), operation, args)

cognito_identity(a...; b...) = cognito_identity(a..., b)

function cognito_idp(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "cognito-idp",
        version      = "2016-04-18",
        json_version = "1.1",
        target       = "AWSCognitoIdentityProviderService",
        operation    = operation,
        args         = args)
end

cognito_idp(operation, args=[]) =
    cognito_idp(default_aws_config(), operation, args)

cognito_idp(a...; b...) = cognito_idp(a..., b)

function cognito_sync(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "cognito-sync",
        version      = "2014-06-30",
        verb         = verb,
        resource     = resource,
        args         = args)
end

cognito_sync(verb, resource, args=[]) =
    cognito_sync(default_aws_config(), verb, resource, args)

cognito_sync(a...; b...) = cognito_sync(a..., b)

function config(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "config",
        version      = "2014-11-12",
        json_version = "1.1",
        target       = "StarlingDoveService",
        operation    = operation,
        args         = args)
end

config(operation, args=[]) =
    config(default_aws_config(), operation, args)

config(a...; b...) = config(a..., b)

function cur(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "cur",
        version      = "2017-01-06",
        json_version = "1.1",
        target       = "AWSOrigamiServiceGatewayService",
        operation    = operation,
        args         = args)
end

cur(operation, args=[]) =
    cur(default_aws_config(), operation, args)

cur(a...; b...) = cur(a..., b)

function datapipeline(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "datapipeline",
        version      = "2012-10-29",
        json_version = "1.1",
        target       = "DataPipeline",
        operation    = operation,
        args         = args)
end

datapipeline(operation, args=[]) =
    datapipeline(default_aws_config(), operation, args)

datapipeline(a...; b...) = datapipeline(a..., b)

function dax(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "dax",
        version      = "2017-04-19",
        json_version = "1.1",
        target       = "AmazonDAXV3",
        operation    = operation,
        args         = args)
end

dax(operation, args=[]) =
    dax(default_aws_config(), operation, args)

dax(a...; b...) = dax(a..., b)

function devicefarm(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "devicefarm",
        version      = "2015-06-23",
        json_version = "1.1",
        target       = "DeviceFarm_20150623",
        operation    = operation,
        args         = args)
end

devicefarm(operation, args=[]) =
    devicefarm(default_aws_config(), operation, args)

devicefarm(a...; b...) = devicefarm(a..., b)

function directconnect(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "directconnect",
        version      = "2012-10-25",
        json_version = "1.1",
        target       = "OvertureService",
        operation    = operation,
        args         = args)
end

directconnect(operation, args=[]) =
    directconnect(default_aws_config(), operation, args)

directconnect(a...; b...) = directconnect(a..., b)

function discovery(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "discovery",
        version      = "2015-11-01",
        json_version = "1.1",
        target       = "AWSPoseidonService_V2015_11_01",
        operation    = operation,
        args         = args)
end

discovery(operation, args=[]) =
    discovery(default_aws_config(), operation, args)

discovery(a...; b...) = discovery(a..., b)

function dms(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "dms",
        version      = "2016-01-01",
        json_version = "1.1",
        target       = "AmazonDMSv20160101",
        operation    = operation,
        args         = args)
end

dms(operation, args=[]) =
    dms(default_aws_config(), operation, args)

dms(a...; b...) = dms(a..., b)

function ds(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "ds",
        version      = "2015-04-16",
        json_version = "1.1",
        target       = "DirectoryService_20150416",
        operation    = operation,
        args         = args)
end

ds(operation, args=[]) =
    ds(default_aws_config(), operation, args)

ds(a...; b...) = ds(a..., b)

function dynamodb(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "dynamodb",
        version      = "2012-08-10",
        json_version = "1.0",
        target       = "DynamoDB_20120810",
        operation    = operation,
        args         = args)
end

dynamodb(operation, args=[]) =
    dynamodb(default_aws_config(), operation, args)

dynamodb(a...; b...) = dynamodb(a..., b)

function ec2(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "ec2",
        version      = "2016-11-15",
        operation    = operation,
        args         = args)
end

ec2(operation, args=[]) =
    ec2(default_aws_config(), operation, args)

ec2(a...; b...) = ec2(a..., b)

function ecr(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "ecr",
        version      = "2015-09-21",
        json_version = "1.1",
        target       = "AmazonEC2ContainerRegistry_V20150921",
        operation    = operation,
        args         = args)
end

ecr(operation, args=[]) =
    ecr(default_aws_config(), operation, args)

ecr(a...; b...) = ecr(a..., b)

function ecs(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "ecs",
        version      = "2014-11-13",
        json_version = "1.1",
        target       = "AmazonEC2ContainerServiceV20141113",
        operation    = operation,
        args         = args)
end

ecs(operation, args=[]) =
    ecs(default_aws_config(), operation, args)

ecs(a...; b...) = ecs(a..., b)

function elasticache(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "elasticache",
        version      = "2015-02-02",
        operation    = operation,
        args         = args)
end

elasticache(operation, args=[]) =
    elasticache(default_aws_config(), operation, args)

elasticache(a...; b...) = elasticache(a..., b)

function elasticbeanstalk(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "elasticbeanstalk",
        version      = "2010-12-01",
        operation    = operation,
        args         = args)
end

elasticbeanstalk(operation, args=[]) =
    elasticbeanstalk(default_aws_config(), operation, args)

elasticbeanstalk(a...; b...) = elasticbeanstalk(a..., b)

function elasticfilesystem(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "elasticfilesystem",
        version      = "2015-02-01",
        verb         = verb,
        resource     = resource,
        args         = args)
end

elasticfilesystem(verb, resource, args=[]) =
    elasticfilesystem(default_aws_config(), verb, resource, args)

elasticfilesystem(a...; b...) = elasticfilesystem(a..., b)

function elasticloadbalancing(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "elasticloadbalancing",
        version      = "2012-06-01",
        operation    = operation,
        args         = args)
end

elasticloadbalancing(operation, args=[]) =
    elasticloadbalancing(default_aws_config(), operation, args)

elasticloadbalancing(a...; b...) = elasticloadbalancing(a..., b)

function elasticloadbalancingv2(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "elasticloadbalancing",
        version      = "2015-12-01",
        operation    = operation,
        args         = args)
end

elasticloadbalancingv2(operation, args=[]) =
    elasticloadbalancingv2(default_aws_config(), operation, args)

elasticloadbalancingv2(a...; b...) = elasticloadbalancingv2(a..., b)

function elasticmapreduce(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "elasticmapreduce",
        version      = "2009-03-31",
        json_version = "1.1",
        target       = "ElasticMapReduce",
        operation    = operation,
        args         = args)
end

elasticmapreduce(operation, args=[]) =
    elasticmapreduce(default_aws_config(), operation, args)

elasticmapreduce(a...; b...) = elasticmapreduce(a..., b)

function elastictranscoder(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "elastictranscoder",
        version      = "2012-09-25",
        verb         = verb,
        resource     = resource,
        args         = args)
end

elastictranscoder(verb, resource, args=[]) =
    elastictranscoder(default_aws_config(), verb, resource, args)

elastictranscoder(a...; b...) = elastictranscoder(a..., b)

function email(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "ses",
        version      = "2010-12-01",
        endpoint     = "email",
        operation    = operation,
        args         = args)
end

email(operation, args=[]) =
    email(default_aws_config(), operation, args)

email(a...; b...) = email(a..., b)

function entitlement_marketplace(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "aws-marketplace",
        version      = "2017-01-11",
        endpoint     = "entitlement.marketplace",
        json_version = "1.1",
        target       = "AWSMPEntitlementService",
        operation    = operation,
        args         = args)
end

entitlement_marketplace(operation, args=[]) =
    entitlement_marketplace(default_aws_config(), operation, args)

entitlement_marketplace(a...; b...) = entitlement_marketplace(a..., b)

function es(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "es",
        version      = "2015-01-01",
        verb         = verb,
        resource     = resource,
        args         = args)
end

es(verb, resource, args=[]) =
    es(default_aws_config(), verb, resource, args)

es(a...; b...) = es(a..., b)

function events(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "events",
        version      = "2015-10-07",
        json_version = "1.1",
        target       = "AWSEvents",
        operation    = operation,
        args         = args)
end

events(operation, args=[]) =
    events(default_aws_config(), operation, args)

events(a...; b...) = events(a..., b)

function firehose(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "firehose",
        version      = "2015-08-04",
        json_version = "1.1",
        target       = "Firehose_20150804",
        operation    = operation,
        args         = args)
end

firehose(operation, args=[]) =
    firehose(default_aws_config(), operation, args)

firehose(a...; b...) = firehose(a..., b)

function gamelift(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "gamelift",
        version      = "2015-10-01",
        json_version = "1.1",
        target       = "GameLift",
        operation    = operation,
        args         = args)
end

gamelift(operation, args=[]) =
    gamelift(default_aws_config(), operation, args)

gamelift(a...; b...) = gamelift(a..., b)

function glacier(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "glacier",
        version      = "2012-06-01",
        verb         = verb,
        resource     = resource,
        args         = args)
end

glacier(verb, resource, args=[]) =
    glacier(default_aws_config(), verb, resource, args)

glacier(a...; b...) = glacier(a..., b)

function glue(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "glue",
        version      = "2017-03-31",
        json_version = "1.1",
        target       = "AWSGlue",
        operation    = operation,
        args         = args)
end

glue(operation, args=[]) =
    glue(default_aws_config(), operation, args)

glue(a...; b...) = glue(a..., b)

function greengrass(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "greengrass",
        version      = "2017-06-07",
        verb         = verb,
        resource     = resource,
        args         = args)
end

greengrass(verb, resource, args=[]) =
    greengrass(default_aws_config(), verb, resource, args)

greengrass(a...; b...) = greengrass(a..., b)

function health(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "health",
        version      = "2016-08-04",
        json_version = "1.1",
        target       = "AWSHealth_20160804",
        operation    = operation,
        args         = args)
end

health(operation, args=[]) =
    health(default_aws_config(), operation, args)

health(a...; b...) = health(a..., b)

function iam(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "iam",
        version      = "2010-05-08",
        operation    = operation,
        args         = args)
end

iam(operation, args=[]) =
    iam(default_aws_config(), operation, args)

iam(a...; b...) = iam(a..., b)

function importexport(aws::AWSConfig, verb, resource, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "importexport",
        version      = "2010-06-01",
        verb         = verb,
        resource     = resource,
        operation    = operation,
        args         = args)
end

importexport(verb, resource, operation, args=[]) =
    importexport(default_aws_config(), verb, resource, operation, args)

importexport(a...; b...) = importexport(a..., b)

function inspector(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "inspector",
        version      = "2016-02-16",
        json_version = "1.1",
        target       = "InspectorService",
        operation    = operation,
        args         = args)
end

inspector(operation, args=[]) =
    inspector(default_aws_config(), operation, args)

inspector(a...; b...) = inspector(a..., b)

function iot(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "execute-api",
        version      = "2015-05-28",
        endpoint     = "iot",
        verb         = verb,
        resource     = resource,
        args         = args)
end

iot(verb, resource, args=[]) =
    iot(default_aws_config(), verb, resource, args)

iot(a...; b...) = iot(a..., b)

function iot_data(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "iotdata",
        version      = "2015-05-28",
        endpoint     = "data.iot",
        verb         = verb,
        resource     = resource,
        args         = args)
end

iot_data(verb, resource, args=[]) =
    iot_data(default_aws_config(), verb, resource, args)

iot_data(a...; b...) = iot_data(a..., b)

function kinesis(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "kinesis",
        version      = "2013-12-02",
        json_version = "1.1",
        target       = "Kinesis_20131202",
        operation    = operation,
        args         = args)
end

kinesis(operation, args=[]) =
    kinesis(default_aws_config(), operation, args)

kinesis(a...; b...) = kinesis(a..., b)

function kinesisanalytics(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "kinesisanalytics",
        version      = "2015-08-14",
        json_version = "1.1",
        target       = "KinesisAnalytics_20150814",
        operation    = operation,
        args         = args)
end

kinesisanalytics(operation, args=[]) =
    kinesisanalytics(default_aws_config(), operation, args)

kinesisanalytics(a...; b...) = kinesisanalytics(a..., b)

function kms(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "kms",
        version      = "2014-11-01",
        json_version = "1.1",
        target       = "TrentService",
        operation    = operation,
        args         = args)
end

kms(operation, args=[]) =
    kms(default_aws_config(), operation, args)

kms(a...; b...) = kms(a..., b)

function lambda(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "lambda",
        version      = "2015-03-31",
        verb         = verb,
        resource     = resource,
        args         = args)
end

lambda(verb, resource, args=[]) =
    lambda(default_aws_config(), verb, resource, args)

lambda(a...; b...) = lambda(a..., b)

function lex_models(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "lex",
        version      = "2017-04-19",
        endpoint     = "models.lex",
        verb         = verb,
        resource     = resource,
        args         = args)
end

lex_models(verb, resource, args=[]) =
    lex_models(default_aws_config(), verb, resource, args)

lex_models(a...; b...) = lex_models(a..., b)

function lightsail(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "lightsail",
        version      = "2016-11-28",
        json_version = "1.1",
        target       = "Lightsail_20161128",
        operation    = operation,
        args         = args)
end

lightsail(operation, args=[]) =
    lightsail(default_aws_config(), operation, args)

lightsail(a...; b...) = lightsail(a..., b)

function logs(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "logs",
        version      = "2014-03-28",
        json_version = "1.1",
        target       = "Logs_20140328",
        operation    = operation,
        args         = args)
end

logs(operation, args=[]) =
    logs(default_aws_config(), operation, args)

logs(a...; b...) = logs(a..., b)

function machinelearning(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "machinelearning",
        version      = "2014-12-12",
        json_version = "1.1",
        target       = "AmazonML_20141212",
        operation    = operation,
        args         = args)
end

machinelearning(operation, args=[]) =
    machinelearning(default_aws_config(), operation, args)

machinelearning(a...; b...) = machinelearning(a..., b)

function marketplacecommerceanalytics(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "marketplacecommerceanalytics",
        version      = "2015-07-01",
        json_version = "1.1",
        target       = "MarketplaceCommerceAnalytics20150701",
        operation    = operation,
        args         = args)
end

marketplacecommerceanalytics(operation, args=[]) =
    marketplacecommerceanalytics(default_aws_config(), operation, args)

marketplacecommerceanalytics(a...; b...) = marketplacecommerceanalytics(a..., b)

function meteringmarketplace(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "aws-marketplace",
        version      = "2016-01-14",
        endpoint     = "metering.marketplace",
        json_version = "1.1",
        target       = "AWSMPMeteringService",
        operation    = operation,
        args         = args)
end

meteringmarketplace(operation, args=[]) =
    meteringmarketplace(default_aws_config(), operation, args)

meteringmarketplace(a...; b...) = meteringmarketplace(a..., b)

function mobile(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "AWSMobileHubService",
        version      = "2017-07-01",
        endpoint     = "mobile",
        verb         = verb,
        resource     = resource,
        args         = args)
end

mobile(verb, resource, args=[]) =
    mobile(default_aws_config(), verb, resource, args)

mobile(a...; b...) = mobile(a..., b)

function mobileanalytics(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "mobileanalytics",
        version      = "2014-06-05",
        verb         = verb,
        resource     = resource,
        args         = args)
end

mobileanalytics(verb, resource, args=[]) =
    mobileanalytics(default_aws_config(), verb, resource, args)

mobileanalytics(a...; b...) = mobileanalytics(a..., b)

function monitoring(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "monitoring",
        version      = "2010-08-01",
        operation    = operation,
        args         = args)
end

monitoring(operation, args=[]) =
    monitoring(default_aws_config(), operation, args)

monitoring(a...; b...) = monitoring(a..., b)

function mturk_requester(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "mturk-requester",
        version      = "2017-01-17",
        json_version = "1.1",
        target       = "MTurkRequesterServiceV20170117",
        operation    = operation,
        args         = args)
end

mturk_requester(operation, args=[]) =
    mturk_requester(default_aws_config(), operation, args)

mturk_requester(a...; b...) = mturk_requester(a..., b)

function opsworks(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "opsworks",
        version      = "2013-02-18",
        json_version = "1.1",
        target       = "OpsWorks_20130218",
        operation    = operation,
        args         = args)
end

opsworks(operation, args=[]) =
    opsworks(default_aws_config(), operation, args)

opsworks(a...; b...) = opsworks(a..., b)

function opsworkscm(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "opsworks-cm",
        version      = "2016-11-01",
        json_version = "1.1",
        target       = "OpsWorksCM_V2016_11_01",
        operation    = operation,
        args         = args)
end

opsworkscm(operation, args=[]) =
    opsworkscm(default_aws_config(), operation, args)

opsworkscm(a...; b...) = opsworkscm(a..., b)

function organizations(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "organizations",
        version      = "2016-11-28",
        json_version = "1.1",
        target       = "AWSOrganizationsV20161128",
        operation    = operation,
        args         = args)
end

organizations(operation, args=[]) =
    organizations(default_aws_config(), operation, args)

organizations(a...; b...) = organizations(a..., b)

function pinpoint(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "mobiletargeting",
        version      = "2016-12-01",
        endpoint     = "pinpoint",
        verb         = verb,
        resource     = resource,
        args         = args)
end

pinpoint(verb, resource, args=[]) =
    pinpoint(default_aws_config(), verb, resource, args)

pinpoint(a...; b...) = pinpoint(a..., b)

function polly(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "polly",
        version      = "2016-06-10",
        verb         = verb,
        resource     = resource,
        args         = args)
end

polly(verb, resource, args=[]) =
    polly(default_aws_config(), verb, resource, args)

polly(a...; b...) = polly(a..., b)

function pricing(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "pricing",
        version      = "2017-10-15",
        endpoint     = "api.pricing",
        json_version = "1.1",
        target       = "AWSPriceListService",
        operation    = operation,
        args         = args)
end

pricing(operation, args=[]) =
    pricing(default_aws_config(), operation, args)

pricing(a...; b...) = pricing(a..., b)

function rds(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "rds",
        version      = "2014-10-31",
        operation    = operation,
        args         = args)
end

rds(operation, args=[]) =
    rds(default_aws_config(), operation, args)

rds(a...; b...) = rds(a..., b)

function redshift(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "redshift",
        version      = "2012-12-01",
        operation    = operation,
        args         = args)
end

redshift(operation, args=[]) =
    redshift(default_aws_config(), operation, args)

redshift(a...; b...) = redshift(a..., b)

function rekognition(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "rekognition",
        version      = "2016-06-27",
        json_version = "1.1",
        target       = "RekognitionService",
        operation    = operation,
        args         = args)
end

rekognition(operation, args=[]) =
    rekognition(default_aws_config(), operation, args)

rekognition(a...; b...) = rekognition(a..., b)

function resourcegroupstaggingapi(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "tagging",
        version      = "2017-01-26",
        json_version = "1.1",
        target       = "ResourceGroupsTaggingAPI_20170126",
        operation    = operation,
        args         = args)
end

resourcegroupstaggingapi(operation, args=[]) =
    resourcegroupstaggingapi(default_aws_config(), operation, args)

resourcegroupstaggingapi(a...; b...) = resourcegroupstaggingapi(a..., b)

function route53(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_xml(
        aws;
        service      = "route53",
        version      = "2013-04-01",
        verb         = verb,
        resource     = resource,
        args         = args)
end

route53(verb, resource, args=[]) =
    route53(default_aws_config(), verb, resource, args)

route53(a...; b...) = route53(a..., b)

function route53domains(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "route53domains",
        version      = "2014-05-15",
        json_version = "1.1",
        target       = "Route53Domains_v20140515",
        operation    = operation,
        args         = args)
end

route53domains(operation, args=[]) =
    route53domains(default_aws_config(), operation, args)

route53domains(a...; b...) = route53domains(a..., b)

function runtime_lex(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "lex",
        version      = "2016-11-28",
        endpoint     = "runtime.lex",
        verb         = verb,
        resource     = resource,
        args         = args)
end

runtime_lex(verb, resource, args=[]) =
    runtime_lex(default_aws_config(), verb, resource, args)

runtime_lex(a...; b...) = runtime_lex(a..., b)

function s3(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_xml(
        aws;
        service      = "s3",
        version      = "2006-03-01",
        verb         = verb,
        resource     = resource,
        args         = args)
end

s3(verb, resource, args=[]) =
    s3(default_aws_config(), verb, resource, args)

s3(a...; b...) = s3(a..., b)

function sdb(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "sdb",
        version      = "2009-04-15",
        operation    = operation,
        args         = args)
end

sdb(operation, args=[]) =
    sdb(default_aws_config(), operation, args)

sdb(a...; b...) = sdb(a..., b)

function servicecatalog(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "servicecatalog",
        version      = "2015-12-10",
        json_version = "1.1",
        target       = "AWS242ServiceCatalogService",
        operation    = operation,
        args         = args)
end

servicecatalog(operation, args=[]) =
    servicecatalog(default_aws_config(), operation, args)

servicecatalog(a...; b...) = servicecatalog(a..., b)

function shield(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "shield",
        version      = "2016-06-02",
        json_version = "1.1",
        target       = "AWSShield_20160616",
        operation    = operation,
        args         = args)
end

shield(operation, args=[]) =
    shield(default_aws_config(), operation, args)

shield(a...; b...) = shield(a..., b)

function sms(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "sms",
        version      = "2016-10-24",
        json_version = "1.1",
        target       = "AWSServerMigrationService_V2016_10_24",
        operation    = operation,
        args         = args)
end

sms(operation, args=[]) =
    sms(default_aws_config(), operation, args)

sms(a...; b...) = sms(a..., b)

function snowball(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "snowball",
        version      = "2016-06-30",
        json_version = "1.1",
        target       = "AWSIESnowballJobManagementService",
        operation    = operation,
        args         = args)
end

snowball(operation, args=[]) =
    snowball(default_aws_config(), operation, args)

snowball(a...; b...) = snowball(a..., b)

function sns(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "sns",
        version      = "2010-03-31",
        operation    = operation,
        args         = args)
end

sns(operation, args=[]) =
    sns(default_aws_config(), operation, args)

sns(a...; b...) = sns(a..., b)

function sqs(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "sqs",
        version      = "2012-11-05",
        operation    = operation,
        args         = args)
end

sqs(operation, args=[]) =
    sqs(default_aws_config(), operation, args)

sqs(a...; b...) = sqs(a..., b)

function ssm(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "ssm",
        version      = "2014-11-06",
        json_version = "1.1",
        target       = "AmazonSSM",
        operation    = operation,
        args         = args)
end

ssm(operation, args=[]) =
    ssm(default_aws_config(), operation, args)

ssm(a...; b...) = ssm(a..., b)

function states(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "states",
        version      = "2016-11-23",
        json_version = "1.0",
        target       = "AWSStepFunctions",
        operation    = operation,
        args         = args)
end

states(operation, args=[]) =
    states(default_aws_config(), operation, args)

states(a...; b...) = states(a..., b)

function storagegateway(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "storagegateway",
        version      = "2013-06-30",
        json_version = "1.1",
        target       = "StorageGateway_20130630",
        operation    = operation,
        args         = args)
end

storagegateway(operation, args=[]) =
    storagegateway(default_aws_config(), operation, args)

storagegateway(a...; b...) = storagegateway(a..., b)

function streams_dynamodb(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "dynamodb",
        version      = "2012-08-10",
        endpoint     = "streams.dynamodb",
        json_version = "1.0",
        target       = "DynamoDBStreams_20120810",
        operation    = operation,
        args         = args)
end

streams_dynamodb(operation, args=[]) =
    streams_dynamodb(default_aws_config(), operation, args)

streams_dynamodb(a...; b...) = streams_dynamodb(a..., b)

function sts(aws::AWSConfig, operation, args=[])

    AWSCore.service_query(
        aws;
        service      = "sts",
        version      = "2011-06-15",
        operation    = operation,
        args         = args)
end

sts(operation, args=[]) =
    sts(default_aws_config(), operation, args)

sts(a...; b...) = sts(a..., b)

function support(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "support",
        version      = "2013-04-15",
        json_version = "1.1",
        target       = "AWSSupport_20130415",
        operation    = operation,
        args         = args)
end

support(operation, args=[]) =
    support(default_aws_config(), operation, args)

support(a...; b...) = support(a..., b)

function swf(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "swf",
        version      = "2012-01-25",
        json_version = "1.0",
        target       = "SimpleWorkflowService",
        operation    = operation,
        args         = args)
end

swf(operation, args=[]) =
    swf(default_aws_config(), operation, args)

swf(a...; b...) = swf(a..., b)

function waf(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "waf",
        version      = "2015-08-24",
        json_version = "1.1",
        target       = "AWSWAF_20150824",
        operation    = operation,
        args         = args)
end

waf(operation, args=[]) =
    waf(default_aws_config(), operation, args)

waf(a...; b...) = waf(a..., b)

function waf_regional(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "waf-regional",
        version      = "2016-11-28",
        json_version = "1.1",
        target       = "AWSWAF_Regional_20161128",
        operation    = operation,
        args         = args)
end

waf_regional(operation, args=[]) =
    waf_regional(default_aws_config(), operation, args)

waf_regional(a...; b...) = waf_regional(a..., b)

function workdocs(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "workdocs",
        version      = "2016-05-01",
        verb         = verb,
        resource     = resource,
        args         = args)
end

workdocs(verb, resource, args=[]) =
    workdocs(default_aws_config(), verb, resource, args)

workdocs(a...; b...) = workdocs(a..., b)

function workspaces(aws::AWSConfig, operation, args=[])

    AWSCore.service_json(
        aws;
        service      = "workspaces",
        version      = "2015-04-08",
        json_version = "1.1",
        target       = "WorkspacesService",
        operation    = operation,
        args         = args)
end

workspaces(operation, args=[]) =
    workspaces(default_aws_config(), operation, args)

workspaces(a...; b...) = workspaces(a..., b)

function xray(aws::AWSConfig, verb, resource, args=[])

    AWSCore.service_rest_json(
        aws;
        service      = "xray",
        version      = "2016-04-12",
        verb         = verb,
        resource     = resource,
        args         = args)
end

xray(verb, resource, args=[]) =
    xray(default_aws_config(), verb, resource, args)

xray(a...; b...) = xray(a..., b)


end # module Services

#==============================================================================#
# End of file
#==============================================================================#
