Skip to main content

Eve: Building RESTful APIs with MongoDB and Flask

5h 6m 34s
English
Paid

Course description

Eve is an open source Python REST API framework designed for human beings. It allows you to effortlessly build and deploy highly customizable, fully featured RESTful web services. This course will teach you to effortlessly build RESTful services based on Flask and MongoDB. We dive deep into every aspect of the Eve REST framework. After a quick introduction to MongoDB and Flask, we'll dig into Eve, build our schemas and endpoints and start serving HTTP clients right away, and that's just the beginning.

Read more about the course

Source code and course GitHub repository

 github.com/talkpython/eve-building-restful-mongodb-backed-apis-course

In this course, you will:

  • Create a new Eve web service application
  • Define data schemas for the service and MongoDB
  • Issue queries from the client straight into the service
  • Validate inbound data (including custom rules)
  • Add and configure paging for large data sets
  • Project responses for just the data you need
  • Switch between JSON and XML per client request
  • Consume the service with JavaScript, Python, and Postman
  • Secure your service with authentication
  • Add event hooks such as pre-insert actions
  • Limit the rate of your clients to avoid abuse
  • Deploy your service
  • And lots more

Who is this course for?

It's for anyone who has wants to leverage Eve to build RESTful APIs. We do assume you know basic Python concepts but advanced features and knowledge of MongoDB, Flask, and REST is not required.

Watch Online

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 76 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: Welcome and what we'll cover

All Course Lessons (76)

#Lesson TitleDurationAccess
1
Welcome and what we'll cover Demo
04:02
2
Meet the instructor
01:02
3
Get the source code
00:31
4
Video player: A quick feature tour
02:05
5
Python v3.5+
02:09
6
Installing Eve and its dependencies
05:27
7
Working with different versions of Eve
03:42
8
Installing Mongo
02:28
9
SQL, Elastic and other alternative backends
00:49
10
VSCode editor
04:49
11
Postman
00:46
12
Core REST principles
07:12
13
Why a micro web framework
04:14
14
Hello world, Flask-style
07:31
15
What is Eve and why it was built
02:06
16
Exploring Eve: Getting Started
06:21
17
Exploring Eve: Queries
02:30
18
Exploring Eve: Sorting
02:43
19
Exploring Eve: Pagination
00:59
20
Why Mongo is a good match for REST
04:28
21
Let's build and launch our first app
06:17
22
Connecting to Mongo
01:44
23
Enabling writes
03:11
24
Defining document schemas
02:16
25
Full range of CRUD operations
06:39
26
Recap
03:52
27
Postman
05:37
28
JavaScript and websites
08:30
29
Python
09:44
30
Introduction to data validation
01:47
31
Built-in validation rules
07:29
32
Advanced validation rules
07:43
33
Data-relations and embedded resource serialization
08:15
34
Custom rules and types
07:55
35
Recap
01:04
36
Handling datetime values
04:35
37
Query options and security
04:58
38
Pagination options and performance optimizations
03:54
39
Client and server projections
03:58
40
Conditional requests
05:59
41
HATEOAS
03:21
42
JSON and XML rendering
02:25
43
Securing the service
09:21
44
Event hooks
04:58
45
Rate limiting
04:07
46
Still a Flask app
02:09
47
Deploying your service
02:53
48
A small refactoring
02:56
49
Recap and closing remarks
02:02
50
The future of Eve
01:27
51
Thanks and goodbye
00:32
52
Appendix introduction: Installing MongoDB
00:18
53
Setting up MongoDB as a Windows service
10:07
54
Concept: MongoDB as a Windows service
02:25
55
Setting up MongoDB on macOS
04:12
56
Concept: Setting up MongoDB on macOS
01:18
57
Setting up MongoDB on Linux
05:10
58
Concept: Setting up MongoDB on Linux
01:26
59
Appendix introduction: Deploying MongoDB
00:18
60
Warning: Action required
04:37
61
The MongoDB deployment checklist
02:38
62
Creating a couple of cloud servers
08:30
63
Installing MongoDB for production use
09:36
64
Concept: Installing MongoDB for production
01:12
65
Limit you network exposure
01:14
66
Limit you network exposure in action
06:06
67
Concept: Limit network exposure
01:50
68
Adding encrypted communication for MongoDB
05:08
69
Concept: Adding encrypted communication for MongoDB
01:09
70
Adding authentication to MongoDB
05:20
71
Concept: Adding authentication to MongoDB
01:01
72
The BIG moment
03:36
73
Connecting to MongoDB via Python
10:27
74
Concept: Connecting to MongoDB via Python
01:23
75
MongoDB admin tools
07:15
76
Concept: MongoDB admin tools
02:46

Unlock unlimited learning

Get instant access to all 75 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Comments

0 comments

Want to join the conversation?

Sign in to comment

Similar courses

Rock Solid Python with Python Typing Course

Rock Solid Python with Python Typing Course

Sources: Talkpython
When Python was originally invented way back in 1989, it was a truly dynamic and typeless programming language. But that all changed in Python 3.5 when type "hints" were added t...
4 hours 27 minutes 54 seconds
Node.js, Express, MongoDB Bootcamp 2020 - with Real Projects

Node.js, Express, MongoDB Bootcamp 2020 - with Real Projects

Sources: udemy
If you are willing to become a backend web developer using latest technologies that you are at right place. This course is all about backend development with mo
14 hours 21 minutes 12 seconds
Node.js for Beginners - Become a NodeJs Developer + Project

Node.js for Beginners - Become a NodeJs Developer + Project

Sources: udemy
I don't know about you,but regular classes bore me, and that is why on this Node.js course we make it fun to learn LOTS of cool things. This course is meant for
22 hours 54 minutes 50 seconds
Python on the Backend

Python on the Backend

Sources: udemy
Do you know Python and want to take it to the next level? How about writing a website in Python, or an API so your fellow developers can consume in JSON over si
3 hours 51 minutes 33 seconds
Python 3: Deep Dive (Part 1 - Functional)

Python 3: Deep Dive (Part 1 - Functional)

Sources: udemy
This is Part 1 of a series of courses intended to dive into the inner mechanics and more complicated aspects of Python 3. This is not a beginner course - if you've been coding P...
44 hours 40 minutes 37 seconds