Skip to main content

Undocumented AWS Mananagement Console API Client

Project description

coto: An AWS Management Console Client

Documentation Status Version

Almost any AWS service can be fully controlled using the AWS API, for this we strongly recommend the use of boto3. The problem is, that there exist some administrative tasks for which there is no public API, and there exist some AWS tasks that still require the AWS Account Root User.

For example when creating a new account in an AWS Organization, there are some things that you are unable to do using the documented APIs, such as:

  • set tax registration information (no documented API)
  • set additional contacts (no documented API)
  • reset AWS Account Root User password (no documented API)
  • setup MFA for the AWS Account Root User (requires root user)

Note:

This project provides a client for the undocumented APIs that are used by the AWS Management Console. These APIs will be changing without any upfront warning! As a result of this, coto can break at any moment.

Examples

Login using a boto session.

import boto3
import coto

session = coto.Session(
    boto3_session=boto3.Session()
)

Login using root user password.

import coto

session = coto.Session(
    email='email@example.com',
    password='s3cur3 p4ssw0rd!'
)

Login using root user password with virtual MFA.

import coto

session = coto.Session(
    email='email@example.com',
    password='s3cur3 p4ssw0rd!',
    mfa_secret='MFAxSECRETxSEEDxXXXXXXXXXXXXXXXXXX'
)

Get account information

iam = session.client('iam')
iam.get_account_info()

Set tax registration

billing = session.client('billing')
billing.set_tax_registration(
    TaxRegistration={
        'address': {
            'addressLine1': 'Adresweg 1',
            'addressLine2': None,
            'city': 'Delft',
            'countryCode': 'NL',
            'postalCode': '2600 AA',
            'state': 'Zuid-Holland',
        },
        'authority': {'country': 'NL', 'state': None},
        'legalName': 'Besloten Venootschap B.V.',
        'localTaxRegistration': False,
        'registrationId': 'NL000000000B01',
    }
)

Development

pipenv install -d
pipenv run nosetests tests
cd docs
pipenv run make html

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

coto-0.4.2.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

coto-0.4.2-py3.9.egg (60.8 kB view details)

Uploaded Source

File details

Details for the file coto-0.4.2.tar.gz.

File metadata

  • Download URL: coto-0.4.2.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.3 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for coto-0.4.2.tar.gz
Algorithm Hash digest
SHA256 b39e0f0dbd5ea77d71d0c84c6d15a6d7c0520d04f2a846f9a1982b8fc1025f2b
MD5 32b882df397e441749ff38a86954fcdf
BLAKE2b-256 ede80d1a258eddf7b495706896743fdc7115f8b076d129b401deddcda7c79fe0

See more details on using hashes here.

File details

Details for the file coto-0.4.2-py3.9.egg.

File metadata

  • Download URL: coto-0.4.2-py3.9.egg
  • Upload date:
  • Size: 60.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.25.1 requests-toolbelt/0.9.1 urllib3/1.26.3 tqdm/4.63.0 importlib-metadata/4.11.3 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10

File hashes

Hashes for coto-0.4.2-py3.9.egg
Algorithm Hash digest
SHA256 f69c38cb9b1592a3de79bcaf1fab040109bdbe4972758b2d7ebf57b640fbfa31
MD5 51675c35710f312cb6e61fc6bd1575e5
BLAKE2b-256 329797fbdc656157f05028dc6ceee0742fc0b038ed114ac9ad9636d39bc7329a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page