Safdar Mirza @ Cloud

Service Category Service AWS Google Cloud Platform
Compute IaaS Amazon Elastic Compute Cloud Compute Engine
  PaaS AWS Elastic Beanstalk App Engine
  Containers Amazon Elastic Compute Cloud Container Service Kubernetes Engine
  Serverless functions AWS Lambda Cloud Functions
Network Load Balancer Elastic Load Balancer Cloud Load Balancing
  Peering Direct Connect Cloud Interconnect
  DNS Amazon Route 53 Cloud DNS
Storage Object Storage Amazon Simple Storage Service Cloud Storage
  Block Storage Amazon Elastic Block Store Compute Engine Persistent Disks
  Cold Storage Amazon Glacier Cloud Storage Nearline
  File Storage Amazon Elastic File System ZFS / Avere
Database RDBMS Amazon Relational Database Service Cloud SQL
  NoSQL: Key-value Amazon DynamoDB Cloud DatastoreCloud Bigtable
  NoSQL: Indexed Amazon SimpleDB Cloud Datastore
Big Data & Analytics Batch Data Processing Amazon Elastic MapReduce Cloud DataprocCloud Dataflow
  Stream Data Processing Amazon Kinesis Cloud Dataflow
  Stream Data Ingest Amazon Kinesis Cloud Pub/Sub
  Analytics Amazon Redshift BigQuery
Application Services Messaging Amazon Simple Notification Service, Amazon Simple Queueing Service Cloud Pub/Sub
Management Services Monitoring Amazon CloudWatch Stackdriver Monitoring
  Deployment AWS CloudFormation Cloud Deployment Manager

 

curl HTTP cheat sheet

Verbose
-v
--trace-ascii <file>
hide progress
-s
extra info
-w "format"
Write output
-O
-o <file>
Timeout
-m <seconds>
POST
-d "string"
-d @file
multipart formpost
-F name=value
-F name=@file
PUT
-T <file>
HEAD
-I
Custom method
-X "METHOD"
Basic auth
-u user:password
read cookiejar
-b <file>
write cookiejar
-c <file>
send cookies
-b "c=1; d=2"
user-agent
-A "string"
Use proxy
-x <host:port>
Headers, add/remove
-H "name: value"
-H "name:"
follow redirects
-L
gzipped response
--compressed
Insecure HTTPS
-k

 

Options
-o <file> # --output: write to file
-u user:pass # --user: Authentication
-v # --verbose
-vv # Even more verbose
-I # --head: headers only

Request
-X POST # --request

Data
-d 'data' # --data: HTTP post data, URL encoded (eg, status="Hello")
-d @file # --data via file
-G # --get: send -d data via get

Headers
-A <str> # --user-agent
-b name=val # --cookie
-b FILE # --cookie
-H "X-Foo: y" # --header
--compressed # use deflate/gzip

SSL
--cacert <file>
--capath <dir>
-E, --ecrt <cert> # --ecrt: Client cert file
--cert-type # der/pem/eng
-k, --insecure # for self-signed certs


Examples
# Post data:
curl -d password=x http://x.com/y

# Auth/data:
curl -u user:pass -d status="Hello" http://twitter.com/statuses/update.xml

# multipart file upload
curl -v -include --form key1=value1 --form upload=@localfilename URL