JSON Model in Redis OM leads to 422 Unprocessable Entity


I have a problem regarding redis_om in python. I want to work with FastAPI and Redis OM. I have the following schemas in schemas.py:

from pydantic import EmailStr
from typing import List, Optional

from redis_om import (

class Stock(EmbeddedJsonModel):
    name: str = Field(index=True)

class Portfolio(JsonModel):
    stocks: Stock

Each Portfolio consist of one stock. Thats why stock is an EmbeddedJsonModel, while Portfolio is a JsonModel.

I have the following FastAPI code in app.py:

from fastapi import FastAPI, HTTPException
from fastapi.responses import HTMLResponse
from starlette.requests import Request
from starlette.responses import Response

from redis_om import NotFoundError
from redis_om import get_redis_connection
from pydantic import ValidationError

from core.schemas.schemas import Portfolio

# This Redis instance is tuned for durability.
REDIS_DATA_URL = "redis://localhost:6380"

# This Redis instance is tuned for cache performance.
REDIS_CACHE_URL = "redis://localhost:6381"

app = FastAPI()

@app.get("/", response_class=HTMLResponse)
async def root():
    return '''
    <a href=''></a>

async def save_portfolio(portfolio: Portfolio):
    return portfolio.save()

Now when i start the FastAPI app and do a save_portfolio request from the docs like this:

  "pk": "string",
  "stocks": {
    "pk": "string",
    "name": "string"

With the corresponding curl:

curl -X 'POST' \
  '' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "pk": "string",
  "stocks": {
    "pk": "string",
    "name": "string"

It says - "POST /portfolio HTTP/1.1" 422 Unprocessable Entity


'{"detail":[{"loc":["body"],"msg":"\'NoneType\' object is not subscriptable","type":"type_error"}]}'

In my view the request agrees with the pydantic model.

Any help will be deeply appreciated.