Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

...

Especificação atualizada de API Rating em padrão Swagger (ultima atualização ): 

View file
nameapi-docs-rating.json
height150

Para visualizar a documentação acessar a URL https://editor-next.swagger.io/, importar o arquivo no menu File>Import File.


...

Ultima atualização

Informações
Todos os endpoint tem limites de itens a serem enviados por chamada. Descrito melhor em RT - Rating - API Assíncrona

...

Método: POST
Content Type:
application/json

Expandir

Corpo

Bloco de código
languagejs
[{   
   // CAMPO CONDICIONAL - Somente tipo_comandada = O - Contrato
  "cdIpoc": "136524165s4dfsdfs685g7s",

  // CAMPO 
CD_IPOC
CONDICIONAL - 
somente para o
Somente tipo_comandada = C - 
O
Cliente
  "cnpjCliente": "98787744000100",

  // CAMPO CONDICIONAL -  Somente tipo_comandada = G - Grupo
  "siglaGrupoEconomico": "string",  

  "estagio": "
st
1", // Estágio - Valores (1|2|3)
  "carteiraProvisao": "
st
C1", //Carteira Provisão - Valores (C1|C2|C3|C4|C5)
  "ativoProblematico": "s", // Ativo Prob
  "tratamentoRisco": "s", // Tratamento Risco 
  "percentualPd": 0, // (0.1% = 0.001 / 1% = 0.01 / 100% = 1.00)
  "percentualLgd": 0, // (0.1% = 0.001 / 1% = 0.01 / 100% = 1.00)
  "valorPerdaEsperada": 0,
  "valorPerdaIncorrida": 0,
  "valorPerdaAdicional": 0,
  "categoriaContabil": "st"
},
.... // Demais elementos
]

Retornos

202 - Aceito: Processamento assíncrono Iniciado

Content Type: text/plain

Corpo (GUID de requisição). Exemplo

Bloco de código
3fa9ff31-812d-47ab-836a-00641e990f7c

40X - Erro: Requisição

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}

500 - Erro Interno

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}


...

Motivo Perda

Endpoint: /motivo-perda/{cd_emp}/{dt_mov} (YYYYMM)

Método: POST
Content Type:
application/json
Corpo:

Expandir
Bloco de código
languagejs
[
  {
    "siglaInterface": "CF",
    "codigoMotivoPerda": "01",
    "valorMotivoPerda": 0,
    "ipoc": "136524165s4dfsdfs685g7s"
  }
]

Retornos

202 - Aceito: Processamento assíncrono Iniciado

Content Type: text/plain

Corpo (GUID de requisição). Exemplo

Bloco de código
3fa9ff31-812d-47ab-836a-00641e990f7c

40X - Erro: Requisição

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}

500 - Erro Interno

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}


...

Motivo Alocação

Endpoint: /motivo-alocacao/{cd_emp}/{dt_mov} (YYYYMM)

Método: POST
Content Type:
application/json

Expandir

Corpo:

Bloco de código
languagejs
[
  {
    "siglaInterface": "CF",
    "codigoMotivoAlocacao": "stri",
    "dataBaseAlocacao": "string",
    "codigoIpoc": "136524165s4dfsdfs685g7s",
    "descricaoOrigem": "string"
  }
]

Retornos

202 - Aceito: Processamento assíncrono Iniciado

Content Type: text/plain

Corpo (GUID de requisição). Exemplo

Bloco de código
3fa9ff31-812d-47ab-836a-00641e990f7c

40X - Erro: Requisição

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}

500 - Erro Interno

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}


...


Nota

O endpoint de garantia ainda está em desenvolvimento e está previsto para uma próxima entrega

Garantia

Endpoint: /garantia/{cd_emp}/{dt_mov} (YYYYMM)

Método: POST (Inclusão de registros) / PUT (Complemento de registros)
Content Type:
application/json

Expandir

Corpo

Bloco de código
languagejs
[{
  "siglaInterface": "CF",  // Sigla da interface geradora do arquivo NCRCF
  "numSequenciaGarantia": 1,  // Número sequencial de garantia por operação
  "numSequenciaRegistro": 1,  // Número sequencial de garantia por documento
  "codigoUnidadeOperacao": "1",  // Código de unidade da operação
  "numCic": "00000432145678",  // Número do CPF ou CNPJ do cliente
  "tipoPessoa": "F",  // Indicador do tipo de pessoa - Valores ('F' ou 'J')
  "codigoTipoPessoa": "10000",  // Código Tipo de pessoa 
  "codigoTipoControlador": "01",  // Código do tipo de controlador
  "codigoCliente": "1",  // Código identificador do cliente
  "siglaModalidadeOperacao": "DSAGRFIP",  // Sigla de modalidade da operação
  "numIdentificadorContrato": "2023000686",  // Número de identificador do contrato
  "numAdesaoLiberacao": "000",  // Número da Adesão ou liberação da operação
  "siglaIndicadorOperacao": "REAIS",  // Sigla de indicador da operação
  "codigoTaxaReferencial": "00",  // Código da taxa de referencial
  "codigoVariacaoCambial": "000",  // Código da Variacão Cambial
  "codigoFaixaValorOperacao": "000",  // Código da Faixa de Valor da Operacão
  "codigoTipoGarantia": "423",  // Código do tipo da garantia
  "valorGarantia": "000",  // Valor da Garantia
  "dataUltimaAvaliacaoGarantia": "00000000",  // Data da ultima avaliação da garantia
  "codigoTipoPessoaGarantia": "1",  // Código do tipo de pessoa por garantia
  "numCicGarantia": "00000908262132",  // Número Cic da garantia
  "identificadorSituacao": null,  // Caracter identificador da situação da validação
  "valorPercentualGarantia": "10000",  // Valor de Percentual da Garantia
  "valorGarantiaRealizada": "00000000000000000",  // Valor da garantia realizada
  "idCessaoParcial": "000",  // Identificador da cessao parcial
  "codigoCarteiraGarantia": "000",  // Código de carteira da garantia
  "ipoc": "136524165s4dfsdfs685g7s"  // Código IPOC da operação
},
.... // Demais elementos
]

Retornos

202 - Aceito: Processamento assíncrono Iniciado

Content Type: text/plain

Corpo (GUID de requisição). Exemplo

Bloco de código
3fa9ff31-812d-47ab-836a-00641e990f7c

40X - Erro: Requisição

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}

500 - Erro Interno

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 0,
  "error": "string",
  "message": "string"
}


...


Nota

O endpoint de valores provisão ainda está em desenvolvimento e está previsto para uma próxima entrega

Consulta Valores Provisão

Endpoint: /valores-provisao/{cd_emp}/{dt_mov} (YYYYMM)

QueryString:

  • flag3040* = (S|N)
  • cdIpoc* = (Código IPOC)

ou (obrigatório se não informado cdIpoc)

  • cdCli* = (Código do cliente) 

  • nrCtr* = (Numero contrato)

  • sgMod* = (Sigla da modalidade)

  • nrAdeLib* = (Numero do Adlib)

Método: GET 
Content Type:
application/json

Expandir


Retornos

200 - OK

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
    "vrPrdEsp": 10000.00,
    "vrPrdAdc": 10000.00,
    "vrPrdInc": 10000.00,
    "cdEstInsFin": 1, // Código Estágio do Instrumento Financeiro - Valores (1|2|3)
    "cdCarPrv": "C1" // Código Carteira Provisão - Valores (C1|C2|C3|C4|C5) 
}


40X - Erro

Requisição sem dados a serem retornados:

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 400,
  "message": "Nenhum valor encontrado para consulta"
}


Requisição com parâmetros que não estão dentro do escopo:

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 400,
  "message": "Os parâmetros são mutuamente exclusivos. Utilize apenas cdIpoc ou os outros identificadores"
}


500 - Erro Interno

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 500,
  "message": "Falha ao consultar Valores Provisão"
}
Bloco de código
languagejs
{
  "status": 500,
  "message": "Falha ao consultar Valores Provisão 3040"
}


...


Nota

O endpoint de ajustes de valores provisão ainda está em desenvolvimento e está previsto para uma próxima entrega

Ajusta Valores Provisão

Endpoint: /valores-provisao/{cd_emp}/{dt_mov} (YYYYMM)

QueryString:

  • cdIpoc* = (Código IPOC)

ou (obrigatório se não informado cdIpoc)

  • cdCli* = (Código do cliente) 

  • nrCtr* = (Numero contrato)

  • sgMod* = (Sigla da modalidade)

  • nrAdeLib* = (Numero do Adlib)

Método: PUT
Content Type:
application/json

Expandir

Corpo

Bloco de código
languagejs
{
    "vrPrdEsp": 10000.00,
	"vrPerEspRet": 0, // (0.1% = 0.001 / 1% = 0.01 / 100% = 1.00),
	"vrPerLgdRet": 0, // (0.1% = 0.001 / 1% = 0.01 / 100% = 1.00),
	"vrPerAdcRet": 0, // (0.1% = 0.001 / 1% = 0.01 / 100% = 1.00),
	"vrPrdAdcRet": 10000.00,
	"vrPerIncRet": 0, // (0.1% = 0.001 / 1% = 0.01 / 100% = 1.00),
	"vrPrdIncRet": 10000.00
}


Retornos

200 - OK: Valores de provisão ajustados com sucesso

Content Type: não possui

Corpo: Sem retorno


40X - Erro

Requisição com parâmetros que não estão dentro do escopo:

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 400,
  "message": "Os parâmetros são mutuamente exclusivos. Utilize apenas cdIpoc ou os outros identificadores"
}


Requisição com o corpo da mensagem enviado de forma incorreta:

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 400,
  "message": "Existem campos obrigatórios que não foram preenchidos. Por favor, verifique e preencha todos os campos necessários."
}


500 - Erro Interno

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 500,
  "message": "Erro ao solicitar ajuste nos valores de provisão"
}


...


Nota

O endpoint de garantia ainda está em desenvolvimento e está previsto para uma próxima entrega

Ajusta Valores Provisão em Lote

A requisição deve ser um array de objetos com os valores a serem ajustados e sua identificação, no qual pode ser o Código Ipoc ou Chaves de identificação. A seguir estão os campos que podem ser passados em cada item do array.

  • vrPrdEsp: Valor Perda Esperada.
  • vrPerEspRet: Valor Percentual da Perda Esperada.
  • vrPerLgdRet: Valor do Percentual LGD.
  • vrPrdAdcRet: Valor Perda Adicional.
  • vrPerAdcRet: Valor Percentual Perda Adicional.
  • vrPerIncRet: Valor Percentual Perda Incorrida.
  • vrPrdIncRet: Valor Perda Incorrida.
  • cdIpoc (obrigatório ou alternativo): Código IPOC. Caso não seja informado, deve ser fornecido os seguintes campos alternativos:
    • cdCli (obrigatório, se cdIpoc não informado): Código do Cliente.
    • nrCtr (obrigatório, se cdIpoc não informado): Número do Contrato.
    • sgMod (obrigatório, se cdIpoc não informado): Sigla da Modalidade.
    • nrAdeLib (obrigatório, se cdIpoc não informado): Número do Adlib.


Endpoint: /valores-provisao/{cd_emp}/{dt_mov} (YYYYMM)

MétodoPOST
Content Type:
application/json

Exemplo de Estrutura de Requisição e Retorno:

Expandir

Exemplo do Corpo da Requisição (IPOC):

Bloco de código
languagejs
//Requisição com chave ipoc
[
	{
    "vrPrdEsp": 10000.00,
    "vrPerEspRet": 0,
    "vrPerLgdRet": 0,
    "vrPrdAdcRet": 0,
    "vrPerAdcRet": 0,
    "vrPerIncRet": 0,
    "vrPrdIncRet": 10000.00,
    "cdIpoc": "0628453102025255200000120230008200" //chave Ipoc
  },
  {
    "vrPrdEsp": 25000.00,
    "vrPerEspRet": 0,
    "vrPerLgdRet": 0,
    "vrPrdAdcRet": 0,
    "vrPerAdcRet": 0,
    "vrPerIncRet": 0,
    "vrPrdIncRet": 25000.00,
    "cdIpoc": "0628453102163683MUER012023000828000" //chave Ipoc
  }, 
  .... //Demais elementos
]


Exemplo do Corpo da Requisição (Chave de identificação):

Bloco de código
languagejs
//Requisição com chaves de Identificação
[
	{
    "vrPrdEsp": 10000.00,
    "vrPerEspRet": 0,
    "vrPerLgdRet": 0,
    "vrPrdAdcRet": 0,
    "vrPerAdcRet": 0,
    "vrPerIncRet": 0,
    "vrPrdIncRet": 10000.00,
    "cdCli": 987877440, //chave identificadora
    "nrCtr": "1234567890", //chave identificadora
	"sgMod": "DSAGRFIP", //chave identificadora
	"nrAdeLib": "000" //chave identificadora
  },
  {
    "vrPrdEsp": 25000.00,
    "vrPerEspRet": 0,
    "vrPerLgdRet": 0,
    "vrPrdAdcRet": 0,
    "vrPerAdcRet": 0,
    "vrPerIncRet": 0,
    "vrPrdIncRet": 25000.00,
    "vrPrdIncRet": 10000.00,
    "cdCli": 987873330, //chave identificadora
	"nrCtr": "1134467890", //chave identificadora
	"sgMod": "DSVGYFIP", //chave identificadora
	"nrAdeLib": "111" //chave identificadora
  }, 
  .... //Demais elementos
]


Retornos

202 - Accepted: O retorno será uma identificação da operação afirmando que foi aceita
Content Type:
não possui
Corpo:

Bloco de código
languagejs
//Um identificador único, como este: 
ceb3fe33-976e-47cd-a410-1ea484890adc


40X - Erro: 

Os erros que ocorrerem durante o fluxo serão registrados na tabela de erros e poderão ser consultados usando o identificador gerado após a execução da requisição de ajustes de valores em lote.


Exceções:

Caso a requisição ultrapasse o tamanho máximo permitido para o lote, ou seja, se o tamanho da requisição exceder o limite estabelecido, ocorrerá:

Content Type: application/json

Corpo:

Bloco de código
languagejs
{
  "status": 400,
  "message": "Muitos itens enviados ao mesmo tempo"
}


500 - Erro Interno
Content Type: application/json
Corpo:

Bloco de código
languagejs
{
  "status": 500,
  "message": "Erro ao criar processo de ajuste - Valores Provisão em lote"
}