diff --git a/README-credentials.md b/README-credentials.md
new file mode 100644
index 0000000..adb5eb0
--- /dev/null
+++ b/README-credentials.md
@@ -0,0 +1,55 @@
+# Configuring Credentials
+Credentials are stored at `~/.apigee/credentials.yml`. A template file is created that includes
+commented out attributes as placeholders for values that could be needed.
+
+The following are the required values that must be provided:
+
+## Required Credentials
+The following table depicts those credentials that are required to complete an
+Apigee installation. If these are not provided, then the apigee installation
+scripts will prompt you for them. Given that this is an automated framework
+that will orchestrate your Apigee installation it is necessary to provide these
+attributes ahead of time in the  `~/.apigee/credentials.yml` file.
+
+| Required Attribute | Value | Description |
+|---|---|---|
+| apigee_repo_user | APIGEE_REPOSITORY_USERNAME | The verizon user to login to the software.apigee.com |
+| apigee_repo_password |  APIGEE_REPOSITORY_PASSWORD | The login password to software.apigee.com |
+| opdk_user_name | apigee | The Apigee administrator username and operating system username |
+| opdk_group_name | apigee | The operating system group name |
+| opdk_user_email | APIGEE_ADMIN_EMAIL | The email address for the Apigee administrator |
+| opdk_user_pass | APIGEE_ADMIN_PASSWORD | The password used by the Apigee Administrator |
+| opdk_cass_username |  cassandra | The Cassandra username |
+| opdk_cass_password | cassandra | The Cassandra password |
+| opdk_ldap_pass | APIGEE_LDAP_PASSWORD | The Apigee LDAP password |
+| pg_user | admin | The Postgres database administrator username |
+| pg_pass | postgres | The Postgres database administrator password |
+
+## Optional Credentials
+
+The following table depicts those credentials that are not a part of the Apigee installation.
+These can be provided here or they may be provided by any of the other mechanisms that Ansible
+uses to accept parameters such as `vars_files`, `-e ATTRIBUTE_NAME=ATTRIBUTE_VALUE`, an inventory
+file or a group or host variable files.
+
+| Optional Attribute | Value | Description |
+|---|---|---|
+| service_account_authorization_token | "Basic BASE64_ENCODED_USERNAME_PASSWORD" | Authorization header value to be used when registering the instance with Cyberark |
+| aws_access_key | AWS_ACCESS_KEY | AWS access key |
+| aws_secret_key | AWS_SECRET | AWS secret |
+| aws_region | AWS_REGION | AWS region |
+| security_group | AWS_SECURITY_GROUP_NAME | AWS security group name |
+| key_name | AWS_KEY_PAIR_NAME | AWS key pair name used for access |
+| grafana_username | GRAFANA_USERNAME | Used if installing the Apigee monitoring dashboard |
+| grafana_password | GRAFANA_PASSWORD | Used if installing the Apigee monitoring dashboard |
+| opdk_smtp_user | SMTP_USERNAME | Username of the SMTP server that Edge will use to send notifications to developers |
+| opdk_smtp_password | SMTP_Password | Password for the SMTP server that Edge will use to send notifications to developers |
+| baas_admin_name | BAAS_ADMIN_NAME | The Apigee Baas administrator username, please note that baas_admin_email cannot be the same as  baas_superuser_email |
+| baas_admin_password | BAAS_ADMIN_PASSWORD | The Apigee Baas administrator password |
+| baas_admin_email | BAAS_ADMIN_EMAIL | The Apigee Baas administrator email |
+| baas_admin_pass | BAAS_ADMIN_PASS | The Apigee Baas administrator email password |
+| baas_superuser_email | BAAS_SUPERUSER_EMAIL | Email of the Baas Superuser, please note that baas_superuser_email cannot be the same as baas_admin_email |
+| baas_superuser_name | BAAS_SUPERUSER_NAME | Name of the Baas Superuser |
+| baas_superuser_pass | BAAS_SUPERUSER_PASSWORD | Password of the Baas Superuser |
+| baas_smtp_user | BAAS_SMTP_USER | Username of the SMTP server that Baas will use to send notifications to developers |
+| baas_smtp_user_pass | BAAS_SMTP_USER_PASS | Password for the SMTP server that Baas will use to send notification to developers |
diff --git a/README.md b/README.md
index 0971e45..cee015c 100644
--- a/README.md
+++ b/README.md
@@ -85,6 +85,9 @@
 ## ~/apigee-workspace/apigee-odk-role-workspace
 Workspace containing the roles used by the playbooks.
 
+# Configure Credentials
+Configuring of installation credentials is described in the [credentials readme](README-credentials.md).
+
 # Configure Ansible
 Ansible can be configured to make use of the above folders by providing an Ansible configuration file.
 The Ansible configuration file can be generated in using the `setup-ansible-config.yml` playbook.
