API Design with Python

Alta3 Research
Training overview
Professional Course
5 days
From 2,195 USD
Start dates
Online
2,195 USD
6/28/2021

Online
2,195 USD
9/13/2021

Online
2,195 USD
11/29/2021

United States of America
Private Team Training delivered On-site or Virtually

Course description

API Design with Python

Application Programming Interfaces (APIs) have become increasingly important as they provide developers with connectivity to everything from rich datasets in an array of formats (such as JSON), to exposing the configurability of software applications and network appliances. Lessons and labs focus on using Python to interact, design, and build APIs for the purposes of scripting automated solutions to complex tasks. Class is mostly live demonstrations and hands-on labs.

Want to find out more?

Who should attend?

Prerequisite

  • Recommended Prerequisite: Python Basics (5 days)
  • Coding experience in another language serves as an adequate prerequisite

Who Should Attend

System administrators, network engineers, and developers will find this course compelling as they build and interact APIs that not only return highly parsable datasets, but also trigger scripted actions. Some previous experience with Python is ideal, although, coding experience in another language is also enough to find success within this course.

Training content

Python Review

  • Lists
  • Dictionaries
  • Tuples
  • Conditionals (if, elif, else)
  • Loops (for and when)
  • Functions
  • Variable Scope - Review
  • Converting boiler plate code to functional code
  • Writing Functions (reusable code)
  • Using pip
  • Useful 3rd party modules
  • Publishing a module
  • Documenting modules

OS Interfacing

  • Operating System interfacing with OS module
  • OS module - listdir(), getcwd(), mkdir()
  • Common sys Module Attributes & Methods
  • Working With the os Module & Files/Directories
  • Walking File Trees with os.walk()
  • File, Path and Directory Examples
  • Working with os.path
  • os & os.path Module Examples
  • Environmental Variables
  • Running Shell Commands
  • Compressing and archiving (gzip, tar, zip)

Web and RESTful APIs

  • REST
  • REST APIS and HTTP CRUD
  • REST and OpenStack
  • URI analysis and formation
  • Wireshark capturing
  • cURL
  • Etcd keystore
  • Creating a Python client to interact with API endpoints
  • API dev keys
  • SSH and Python
  • Secure password retrieval
  • Tokens and APIs

Python Protocol Clients

  • Scripting the browser
  • Scripting with HTTP
  • Creating an HTTP Client & Server
  • Python and SSH
  • Building an SFTP Client & Server
  • Python and SFTP limitations
  • Paramiko for SSH
  • Netmiko and Major Network Vendors (Cisco, Juniper, Arista)

JSON, YAML, XML, CSV and Excel

  • JSON RFC 7159
  • JSON Formatting
  • YAML intro
  • YAML lists
  • YAML dictionaries
  • YAML line spanning
  • Reading YAML is easy
  • XML
  • CSV
  • Import json
  • Import yaml
  • Decoding json and yaml to use
  • Using python to decode data structures like YAML, XML, CSV, and JSON
  • Reading from Excel
  • Writing to Excel

Generating and Sending Emails

  • Overview of email modules
  • Creating simple emails
  • Interfacing with your email account

Dates and Times

  • Python and Cron
  • Import time and time.time()
  • Suspending with sleep()
  • Dealing with time
  • Time formatting
  • Time tuples
  • Creating Calendars

Python Regular Expression (Regex)

  • Metacharacter review
  • Re modules
  • search() and match()
  • findall()
  • Compiling regex search patterns
  • Creating highly efficient searches
  • Sorting data sets
  • Complex sorts
  • sort() vs sorted()
  • Sorting with functions
  • Applying Regex to file searches
  • Applying Regex to API results

Code Review

  • Best practice
  • Using pylint
  • Conventions
  • Underscore
  • Double underscore
  • Monkey Patching

Web API Design with Flask

  • Flask Overview
  • Decorators
  • Building APIs with Python and Flask
  • APIs returning Jinja2 templating
  • Returning a ‘cookie’
  • Building Sessions
  • Redirecting from URIs
  • Build an API to accept a file upload

SQLlite

  • Overview
  • Connecting to Python
  • Read / Write operations
  • Other useful instructions
  • Connecting APIs and SQLite
  • Reading and Writing to Databases with APIs

Processes and Threads

  • Threading
  • Context change
  • Deadlock errors
  • Thread starvation
  • Racing conditions and racing specifics
  • Working with Locks

Running Python Scripts with Crontab

  • Scheduling Python scripts
  • Crontab “gotchas”

Logging API Behavior

  • Logging APIs
  • Using Pythons log library
  • Troubleshooting APIs

Packaging Python Projects

  • Building a project
  • Uploading to pypi.org

Swagger

  • Documenting APIs
  • Sec v3.0 vs v2.0
  • Swagger Hub
  • Group collaboration

Django

  • Macro vs Micro frameworks
  • Creating an API with Django toolkit
  • Django vs Flask

Costs

  • Live Webinar fee: $2,195.00
  • Contact the provider for more information about pricing for on-site delivery option

Continuing studies

Follow-on Courses

Python for Network Automation

Why choose Alta3?

25+ years specializing in technology training 

Over 95% student satisfaction rate

Training delivered in 9+ countries

About Alta3

Alta3 Research

Since 1997, Alta3 Research has been empowering organizations and individuals using their expert approach to Cloud, DevOps and Telecom training. We develop and perform technical training via live classroom, online classes and our library of self-paced learning videos and labs....


Read more and show all training delivered by this supplier

Contact this provider

Fill out your details to find out more about API Design with Python.

  Contact the provider

  Get more information

  Register your interest

Contact info

Alta3 Research


 Show phone number
alta3.com


Reviews

Average rating 4.8

Based on 5 reviews.

2020 Student
(5)
Sam is a great instructor,very accommodating and willing to adapt to the training needs of the students. It's been a great experience. Thank you.
2020 Student
(4)
The lab is pretty good and easy to follow and it can provide as good reference for future work. Suggestion: I think it would be useful provide a clear schedule about each day work at the very beginning.
2020 Student
(5)
the technical knowledge and presentation skills were above and behind
Request Information

Have a question about this course? Fill out this form and the provider will get in touch with you shortly

View again
Supplier Directory
Join our Supplier Directory to:
- Gain Traffic
- Get Noticed
- Showcase Your Services
- Free Listing Available