
Boto3 + SSM Public Parameter でリージョンごとのサービスエンドポイント一覧を作ってみた
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
コンサルティング部の西野です。
Boto3 + SSM Public Parameter でリージョンごとのサービスエンドポイントを一覧化してみました。
やりたいこと
サービス エンドポイントとクォータ のページには AWS のサービスがまとめられており、各サービスのページに飛ぶと下記形式のサービスエンドポイントを確認できます。
service-code.region-code.amazonaws.com
たとえば、Amazon EC2 のページには下のような表があります。

EC2 の場合、 service-code がec2であり、アジアパシフィック(東京)リージョンの場合 region-code がap-northeast-1というわけですね。
サービスごとのエンドポイントを確認したい場合はこのページを使えばいいのですが、リージョンカットでまとめられている公式ドキュメントは(おそらく)存在しません。
なので、作ってみました。
東京リージョンのサービスエンドポイント一覧
アジアパシフィック(東京)リージョンのサービスエンドポイント一覧は下記のとおりです。
※2020/07/01時点のものです。
※最新情報を取得したい場合には後述のスクリプトをご使用ください。
| サービスコード | サービスエンドポイント |
|---|---|
| accessanalyzer | access-analyzer.ap-northeast-1.amazonaws.com |
| acm | acm.ap-northeast-1.amazonaws.com |
| acm-pca | acm-pca.ap-northeast-1.amazonaws.com |
| amplify | amplify.ap-northeast-1.amazonaws.com |
| apigateway | apigateway.ap-northeast-1.amazonaws.com |
| apigatewaymanagementapi | execute-api.ap-northeast-1.amazonaws.com |
| apigatewayv2 | apigateway.ap-northeast-1.amazonaws.com |
| appconfig | appconfig.ap-northeast-1.amazonaws.com |
| application-autoscaling | application-autoscaling.ap-northeast-1.amazonaws.com |
| application-insights | applicationinsights.ap-northeast-1.amazonaws.com |
| appmesh | appmesh.ap-northeast-1.amazonaws.com |
| appstream | appstream2.ap-northeast-1.amazonaws.com |
| appsync | appsync.ap-northeast-1.amazonaws.com |
| athena | athena.ap-northeast-1.amazonaws.com |
| autoscaling | autoscaling.ap-northeast-1.amazonaws.com |
| autoscaling-plans | autoscaling-plans.ap-northeast-1.amazonaws.com |
| backup | backup.ap-northeast-1.amazonaws.com |
| batch | batch.ap-northeast-1.amazonaws.com |
| budgets | budgets.amazonaws.com |
| chime | chime.ap-northeast-1.amazonaws.com |
| cloud9 | cloud9.ap-northeast-1.amazonaws.com |
| cloudformation | cloudformation.ap-northeast-1.amazonaws.com |
| cloudfront | cloudfront.amazonaws.com |
| cloudhsm | cloudhsm.ap-northeast-1.amazonaws.com |
| cloudhsmv2 | cloudhsmv2.ap-northeast-1.amazonaws.com |
| cloudsearch | cloudsearch.ap-northeast-1.amazonaws.com |
| cloudtrail | cloudtrail.ap-northeast-1.amazonaws.com |
| cloudwatch | monitoring.ap-northeast-1.amazonaws.com |
| codeartifact | codeartifact.ap-northeast-1.amazonaws.com |
| codebuild | codebuild.ap-northeast-1.amazonaws.com |
| codecommit | codecommit.ap-northeast-1.amazonaws.com |
| codedeploy | codedeploy.ap-northeast-1.amazonaws.com |
| codeguru-reviewer | codeguru-reviewer.ap-northeast-1.amazonaws.com |
| codeguruprofiler | codeguru-profiler.ap-northeast-1.amazonaws.com |
| codepipeline | codepipeline.ap-northeast-1.amazonaws.com |
| codestar | codestar.ap-northeast-1.amazonaws.com |
| codestar-connections | codestar-connections.ap-northeast-1.amazonaws.com |
| codestar-notifications | codestar-notifications.ap-northeast-1.amazonaws.com |
| cognito-identity | cognito-identity.ap-northeast-1.amazonaws.com |
| cognito-idp | cognito-idp.ap-northeast-1.amazonaws.com |
| cognito-sync | cognito-sync.ap-northeast-1.amazonaws.com |
| comprehend | comprehend.ap-northeast-1.amazonaws.com |
| compute-optimizer | compute-optimizer.ap-northeast-1.amazonaws.com |
| config | config.ap-northeast-1.amazonaws.com |
| connect | connect.ap-northeast-1.amazonaws.com |
| connectparticipant | execute-api.ap-northeast-1.amazonaws.com |
| dataexchange | dataexchange.ap-northeast-1.amazonaws.com |
| datapipeline | datapipeline.ap-northeast-1.amazonaws.com |
| datasync | datasync.ap-northeast-1.amazonaws.com |
| dax | dax.ap-northeast-1.amazonaws.com |
| detective | api.detective.ap-northeast-1.amazonaws.com |
| directconnect | directconnect.ap-northeast-1.amazonaws.com |
| discovery | discovery.ap-northeast-1.amazonaws.com |
| dlm | dlm.ap-northeast-1.amazonaws.com |
| dms | dms.ap-northeast-1.amazonaws.com |
| docdb | rds.ap-northeast-1.amazonaws.com |
| ds | ds.ap-northeast-1.amazonaws.com |
| dynamodb | dynamodb.ap-northeast-1.amazonaws.com |
| dynamodbstreams | streams.dynamodb.ap-northeast-1.amazonaws.com |
| ebs | ec2.ap-northeast-1.amazonaws.com |
| ec2 | ec2.ap-northeast-1.amazonaws.com |
| ecr | ecr.ap-northeast-1.amazonaws.com |
| ecs | ecs.ap-northeast-1.amazonaws.com |
| efs | elasticfilesystem.ap-northeast-1.amazonaws.com |
| eks | eks.ap-northeast-1.amazonaws.com |
| elastic-inference | api.elastic-inference.ap-northeast-1.amazonaws.com |
| elasticache | elasticache.ap-northeast-1.amazonaws.com |
| elasticbeanstalk | elasticbeanstalk.ap-northeast-1.amazonaws.com |
| elastictranscoder | elastictranscoder.ap-northeast-1.amazonaws.com |
| elb | elasticloadbalancing.ap-northeast-1.amazonaws.com |
| emr | elasticmapreduce.ap-northeast-1.amazonaws.com |
| es | es.ap-northeast-1.amazonaws.com |
| events | events.ap-northeast-1.amazonaws.com |
| firehose | firehose.ap-northeast-1.amazonaws.com |
| fms | fms.ap-northeast-1.amazonaws.com |
| forecast | forecast.ap-northeast-1.amazonaws.com |
| forecastquery | forecastquery.ap-northeast-1.amazonaws.com |
| fsx | fsx.ap-northeast-1.amazonaws.com |
| gamelift | gamelift.ap-northeast-1.amazonaws.com |
| glacier | glacier.ap-northeast-1.amazonaws.com |
| globalaccelerator | globalaccelerator.amazonaws.com |
| glue | glue.ap-northeast-1.amazonaws.com |
| greengrass | greengrass.ap-northeast-1.amazonaws.com |
| guardduty | guardduty.ap-northeast-1.amazonaws.com |
| iam | iam.amazonaws.com |
| imagebuilder | imagebuilder.ap-northeast-1.amazonaws.com |
| inspector | inspector.ap-northeast-1.amazonaws.com |
| iot | iot.ap-northeast-1.amazonaws.com |
| iot-data | data.iot.ap-northeast-1.amazonaws.com |
| iot1click-projects | projects.iot1click.ap-northeast-1.amazonaws.com |
| iotanalytics | iotanalytics.ap-northeast-1.amazonaws.com |
| iotevents | iotevents.ap-northeast-1.amazonaws.com |
| iotevents-data | data.iotevents.ap-northeast-1.amazonaws.com |
| iotthingsgraph | iotthingsgraph.ap-northeast-1.amazonaws.com |
| kafka | kafka.ap-northeast-1.amazonaws.com |
| kinesis | kinesis.ap-northeast-1.amazonaws.com |
| kinesisanalytics | kinesisanalytics.ap-northeast-1.amazonaws.com |
| kinesisvideo | kinesisvideo.ap-northeast-1.amazonaws.com |
| kms | kms.ap-northeast-1.amazonaws.com |
| lakeformation | lakeformation.ap-northeast-1.amazonaws.com |
| lambda | lambda.ap-northeast-1.amazonaws.com |
| lex-models | models.lex.ap-northeast-1.amazonaws.com |
| lex-runtime | runtime.lex.ap-northeast-1.amazonaws.com |
| license-manager | license-manager.ap-northeast-1.amazonaws.com |
| lightsail | lightsail.ap-northeast-1.amazonaws.com |
| logs | logs.ap-northeast-1.amazonaws.com |
| macie2 | macie2.ap-northeast-1.amazonaws.com |
| managedblockchain | managedblockchain.ap-northeast-1.amazonaws.com |
| mediaconnect | mediaconnect.ap-northeast-1.amazonaws.com |
| mediaconvert | mediaconvert.ap-northeast-1.amazonaws.com |
| medialive | medialive.ap-northeast-1.amazonaws.com |
| mediapackage | mediapackage.ap-northeast-1.amazonaws.com |
| mediapackage-vod | mediapackage-vod.ap-northeast-1.amazonaws.com |
| mediastore | mediastore.ap-northeast-1.amazonaws.com |
| mediastore-data | data.mediastore.ap-northeast-1.amazonaws.com |
| mediatailor | api.mediatailor.ap-northeast-1.amazonaws.com |
| meteringmarketplace | metering.marketplace.ap-northeast-1.amazonaws.com |
| mgh | mgh.ap-northeast-1.amazonaws.com |
| mq | mq.ap-northeast-1.amazonaws.com |
| neptune | rds.ap-northeast-1.amazonaws.com |
| opsworks | opsworks.ap-northeast-1.amazonaws.com |
| opsworkscm | opsworks-cm.ap-northeast-1.amazonaws.com |
| organizations | organizations.us-east-1.amazonaws.com |
| outposts | outposts.ap-northeast-1.amazonaws.com |
| personalize | personalize.ap-northeast-1.amazonaws.com |
| pi | pi.ap-northeast-1.amazonaws.com |
| polly | polly.ap-northeast-1.amazonaws.com |
| qldb | qldb.ap-northeast-1.amazonaws.com |
| qldb-session | session.qldb.ap-northeast-1.amazonaws.com |
| quicksight | quicksight.ap-northeast-1.amazonaws.com |
| ram | ram.ap-northeast-1.amazonaws.com |
| rds | rds.ap-northeast-1.amazonaws.com |
| rds-data | rds-data.ap-northeast-1.amazonaws.com |
| redshift | redshift.ap-northeast-1.amazonaws.com |
| rekognition | rekognition.ap-northeast-1.amazonaws.com |
| resource-groups | resource-groups.ap-northeast-1.amazonaws.com |
| resourcegroupstaggingapi | tagging.ap-northeast-1.amazonaws.com |
| robomaker | robomaker.ap-northeast-1.amazonaws.com |
| route53 | route53.amazonaws.com |
| route53resolver | route53resolver.ap-northeast-1.amazonaws.com |
| s3 | s3.ap-northeast-1.amazonaws.com |
| s3control | s3-control.ap-northeast-1.amazonaws.com |
| sagemaker | api.sagemaker.ap-northeast-1.amazonaws.com |
| sagemaker-runtime | runtime.sagemaker.ap-northeast-1.amazonaws.com |
| savingsplans | savingsplans.amazonaws.com |
| schemas | schemas.ap-northeast-1.amazonaws.com |
| sdb | sdb.ap-northeast-1.amazonaws.com |
| secretsmanager | secretsmanager.ap-northeast-1.amazonaws.com |
| securityhub | securityhub.ap-northeast-1.amazonaws.com |
| serverlessrepo | serverlessrepo.ap-northeast-1.amazonaws.com |
| service-quotas | servicequotas.ap-northeast-1.amazonaws.com |
| servicecatalog | servicecatalog.ap-northeast-1.amazonaws.com |
| servicediscovery | servicediscovery.ap-northeast-1.amazonaws.com |
| shield | shield.us-east-1.amazonaws.com |
| signer | signer.ap-northeast-1.amazonaws.com |
| sms | sms.ap-northeast-1.amazonaws.com |
| snowball | snowball.ap-northeast-1.amazonaws.com |
| sns | sns.ap-northeast-1.amazonaws.com |
| sqs | sqs.ap-northeast-1.amazonaws.com |
| ssm | ssm.ap-northeast-1.amazonaws.com |
| stepfunctions | states.ap-northeast-1.amazonaws.com |
| storagegateway | storagegateway.ap-northeast-1.amazonaws.com |
| sts | sts.ap-northeast-1.amazonaws.com |
| support | support.us-east-1.amazonaws.com |
| swf | swf.ap-northeast-1.amazonaws.com |
| synthetics | synthetics.ap-northeast-1.amazonaws.com |
| transcribe | transcribe.ap-northeast-1.amazonaws.com |
| transfer | transfer.ap-northeast-1.amazonaws.com |
| translate | translate.ap-northeast-1.amazonaws.com |
| waf | waf.amazonaws.com |
| waf-regional | waf-regional.ap-northeast-1.amazonaws.com |
| wafv2 | wafv2.ap-northeast-1.amazonaws.com |
| workdocs | workdocs.ap-northeast-1.amazonaws.com |
| workspaces | workspaces.ap-northeast-1.amazonaws.com |
| xray | xray.ap-northeast-1.amazonaws.com |
サービスエンドポイント一覧の取得方法
- Boto3 を使って SSM の Public Parameter から必要な値を取得しています。
REGION変数の値を書き換えることで別リージョンにも対応可能です。- 上記表のもととなる csv ファイルがスクリプトと同じディレクトリに出力されます。
- FIPS エンドポイントには非対応です。
import csv
import boto3
REGION = 'ap-northeast-1'
CSV_FILENAME = '{}_endpoint.csv'.format(REGION)
def generate_services(response_iterator):
services = []
for page in response_iterator:
for parameter in page['Parameters']:
service = parameter['Value']
services.append(service)
services.sort()
return services
def generate_endpoint_ssmpaths(services):
endpoint_ssmpaths = []
for service in services:
endpoint_path = '/aws/service/global-infrastructure/regions/{region}/services/{service}/endpoint'.format(region=REGION, service=service)
endpoint_ssmpaths.append(endpoint_path)
return endpoint_ssmpaths
def generate_endpoints(endpoint_paths, client):
endpoints = []
for endpoint_path in endpoint_paths:
response = client.get_parameters(
Names=[
endpoint_path,
]
)
endpoint = response['Parameters'][0]['Value']
endpoints.append(endpoint)
return endpoints
def main():
client = boto3.client('ssm')
paginator = client.get_paginator('get_parameters_by_path')
response_iterator = paginator.paginate(
Path='/aws/service/global-infrastructure/regions/{}/services'.format(REGION),
PaginationConfig={
'MaxItems': 1000, # サービス数(エンドポイント数)が 1000 を超えたらここを増やしましょう。すぐに超えちゃうかもしれませんね。
}
)
services = generate_services(response_iterator)
endpoint_ssmpaths = generate_endpoint_ssmpaths(services)
endpoints = generate_endpoints(endpoint_ssmpaths, client)
with open(CSV_FILENAME, 'w') as f:
writer = csv.writer(f)
for i in zip(services, endpoints):
writer.writerow(i)
if __name__ == "__main__":
main()
で、何の役に立つの?
え……?

(もし何かの役に立った場合には教えていただけると幸せになります。)
終わりに
このブログがほんの少しでも世界を良くできれば嬉しいです。
コンサルティング部の西野 (@xiyegen) がお送りしました。






