TypeError: post() missing 1 required positional argument: 'data' code example

Example 1: python missing 1 required positional argument:

def your_method(self, arg1, arg2): # you must add the "self" argument in 1st position

# This kind of error happens when working with classes
# When you create methods for a class, you must always pass self as the first argument
# self designates the object in which it is called
# for instance : 
class Dog: # let create a class Dog
  def __init__(self, color, age): # when you create a new Dog object, two parameters are required
    self.color = color # here, whe use self to attach the attribute to this Dog object
    self.age = age
    self.bark("Woof")
  def bark(self, message): # your error might come from the fact you forgot to add the self element as the first argument in, at least, one method
    print(message)
# This is a very simple example but it stays true for every class
# You have to pass self as the first argument for each method

Example 2: TypeError: index() missing 1 required positional argument: 'doc_type'

res = es.search(index="people", doc_type="test", body={"query":{"match":{"name": "john"}}})