
Terraform Provider
https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/terraformproviderconfiguration.htm
OCI CLI
Requirements:
https://docs.oracle.com/en-us/iaas/Content/API/Concepts/cliconcepts.htm#Requirements
Quick start:
https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/cliinstall.htm#Quickstart
Environment variables:
https://docs.oracle.com/en-us/iaas/Content/API/SDKDocs/clienvironmentvariables.htm
Authenticate:
oci session authenticate --auth security_token
To refresh the token:
oci session refresh --profile <profile_name>
Examples
https://github.com/oracle/terraform-provider-oci/tree/master/examples
AVX Access Account
https://docs.oracle.com/en-us/iaas/Content/API/Concepts/apisigningkey.htm#five
https://docs.oracle.com/en-us/iaas/Content/API/Concepts/apisigningkey.htm

Do not forget to click the add button to add the private key to the user.
Supported Instance Sizes

Regions and Availability Domains
https://docs.oracle.com/en-us/iaas/Content/General/Concepts/regions.htm
Minimal Required OCI IAM Policy Bound by Compartment
Allow group <YOUR GROUP NAME> to manage volume-family in compartment <YOUR COMPARTMENT>
Allow group <YOUR GROUP NAME> to manage instance-family in compartment <YOUR COMPARTMENT>
Allow group <YOUR GROUP NAME> to manage virtual-network-family in compartment <YOUR COMPARTMENT>
Allow group <YOUR GROUP NAME> to inspect all-resources in compartment <YOUR COMPARTMENT>
Allow group <YOUR GROUP NAME> to inspect app-catalog-listing in compartment <YOUR COMPARTMENT>
Allow group <YOUR GROUP NAME> to read app-catalog-listing in compartment <YOUR COMPARTMENT>
Allow group <YOUR GROUP NAME> to manage app-catalog-listing in compartment <YOUR COMPARTMENT>