Conteúdo dinâmico para carrossel

Olá pessoal, bom vamos lá, faz 3 semanas que estou trabalhando com o blip, fiz o curso disponível na udemy o que me ajudou muito porém faz uns 3 ou 4 dias que estou tentando trabalhar com conteúdo dinâmico e não tenho sucesso, estou trabalhando com uma API de livraria e essa APi retorna algumas coisas incluindo nome do autor, nome do livro, preço e etc… li aqui no fórum que o blip não consegue trabalhar com o conteúdo em forma de array que vem da APi, então tratei isso porém agora não consigo usar o isso no carrossel, peguei um exemplo de alguns dias atrás aqui no fórum ( [Resolvido] Carrossel dinâmico ) então estou buscando ajuda de quem realmente saiba fazer e possa me dar essa luz, enfim segue o código que eu tentei aplicar:

obj = JSON.parse(resposta);
	obj.items.forEach(function (event) {
     let books = resposta.data.books;
     let teste;
     for(i=0; i<=10; i++){
         let nome = books[i].name;
         let author = books[i].author;
         teste += "\n\n" + nome;
     }
    events.push({
            header: {
                type: "application/vnd.lime.media-link+json",
                value: {
                    title: "Plano: " + name,
                    text: "Info: " + author
                }
            },
            options: [
                {
                    "label": {
                        "type": "text/plain",
                        "value": "Ver detalhes"
                    },
                    "value": {
                        "type": "application/json",
                        "value": {
                            "num": 1,
                            "idNotas": "teste"
                        }
                    }
                }
            ]
        });
    });

    return {
        itemType: "application/vnd.lime.document-select+json",
        items: events
    };

por favor se for possível me ajudar de modo mais visual postando algum print eu ficaria muito grato.

Ei @Raul_Silveira ! Tudo bem?
Antes de qualquer coisa, gostaríamos de te dar boas vindas à nossa Comunidade! Que notícia boa saber que o curso tem te ajudado!

E já que você chegou agora, dá uma olhadinha nesse link:

Sobre seu código, acho que o problema está nesse forEach seguido de um for. Não acho que precise dos dois.

function run(resposta, events){
obj = JSON.parse(resposta);
events = JSON.parse(events);
obj.data.books.forEach(function(book){
    events.items.push({
            header: {
                type: "application/vnd.lime.media-link+json",
                value: {
                    title: "Plano: " + book.name,
                    text: "Info: " + book.author
                }
            },
            options: [
                {
                    "label": {
                        "type": "text/plain",
                        "value": "Ver detalhes"
                    },
                    "value": {
                        "type": "application/json",
                        "value": {
                            "num": 1,
                            "idNotas": "teste"
                        }
                    }
                }
            ]
        });
});
return events;
}

Onde events:

Spoiler
{
        "itemType": "application/vnd.lime.document-select+json",
        "items": []
}

Veja se assim funciona.

Ei @Raul_Silveira, bem vindo! Conseguiu resolver essa questão?
Não esquece de compartilhar com a Comunidade… Vai ver é uma questão para outras pessoas também!

Oi desculpa não responder antes, ainda estava na função, pelo código do Bruno eu não consegui mas fiz um pequeno script e adicionei no conteúdo dinâmico não foi como eu queria mas por enquanto serve, meu prazo é curto, agradeço a ajuda!