Api Rest solicitação de compras

Bom dia!

Estou criando uma API REST, com método POST para criar uma solicitação de compras.

Porém só obtenho o erro: erro internal servidor -500.

Segue meu fonte:
#Include “protheus.ch”
#Include “restful.ch”

WsRestful solicitacao Description “API para Solicitação de Compras”
WsData Pag AS Integer
WsData Qtd AS Integer

WsMethod POST CRIA Description "Cria uma nova solicitação de compra" Path "/"

End WsRestful

Return .T.

WsMethod POST CRIA WsService solicitacao

Local cBody      := Self:GetContent()
Local oJson      := JsonObject():New()
Local aCabec     := {}
Local aItens     := {}
Local aLinha     := {}
Local cDoc       := ""
Local aErro      := {}
Local cErro      := ""
Local cNum       := ""
Local i          := 0
Local lRet       := .T.

Private lMsErroAuto    := .F.
Private lMsHelpAuto    := .T.
Private lAutoErrNoFile := .T.

If Empty(cBody)
    SetRestFault(400, "Nenhuma informação recebida no body.")
    Return .F.
EndIf

If !oJson:FromJson(cBody)
    SetRestFault(400, "Falha na leitura do JSON. Verifique a estrutura enviada.")
    Return .F.
EndIf

cDoc := GetSXENum("SC1", "C1_NUM")

// Cabeçalho
AAdd(aCabec, {"C1_NUM"    , cDoc})
AAdd(aCabec, {"C1_FILIAL" , xFilial("SC1"), Nil})
AAdd(aCabec, {"C1_TIPO"   , "N", Nil})
AAdd(aCabec, {"C1_SOLICIT", oJson["solicitante"], Nil})
AAdd(aCabec, {"C1_EMISSAO", StoD(oJson["emissao"]), Nil})

For i := 1 To Len(oJson["itens"])
    aLinha := {}
    AAdd(aItens, {"C1_ITEM"   , StrZero(i, 4), Nil})
    AAdd(aItens, {"C1_PRODUTO", oJson["itens"][i]["produto"], Nil})
    AAdd(aItens, {"C1_QUANT"  , oJson["itens"][i]["quant"], Nil})
    AAdd(aItens, {"C1_CONTA"  , POSICIONE("SB1", 1, xFilial("SB1") + oJson["itens"][i]["produto"], "B1_CONTA"), Nil})
    AAdd(aItens, {"C1_OBS"    , oJson["itens"][i]["obs"], Nil})
    AAdd(aItens, {"C1_PRIORI" , IIf(ValType(oJson["itens"][i]["priori"]) == "C", oJson["itens"][i]["priori"], "2"), Nil})
    AAdd(aItens,)
Next i

Begin Sequence

    MSExecAuto({|x,y| mata110(x,y)},aCabec,aItens,3)

    If lMsErroAuto
        aErro := GetAutoGRLog()
        For i := 1 To Len(aErro)
            cErro += aErro[i] + CRLF
        Next i
        SetRestFault(400, cErro)
        lRet := .F.
    Else
        // Recupera o número gerado
        If (i := Ascan(aCabec, {|x| x[1] == "C1_NUM"})) > 0
            cNum := aCabec[i][2]
        EndIf
        Self:SetResponse("Solicitação criada com sucesso! Número: " + cNum)
    EndIf

Recover Using oErro
    SetRestFault(500, "Erro interno no servidor: " + oErro:Description)
    lRet := .F.
End Sequence

Return lRet

poderiam me ajudar ?

você precisa de ver no console.log e/ou no error.log qual o erro que está retornando, dai posta aqui.