openapi: 3.0.0 info: title: API Quote Capitalization Title - Open Insurance Brasil description: | API de Cotação de Título de Capitalização do Open Insurance Brasil - Fase 3.\ Recebe informações da solicitação de cotação e contratação vindas das instituições iniciadoras.\ Possui um conjunto de endpoints por ramo de produto e um conjunto específico de endpoints para ramos classificados como LEAD OPIN.\ Requer consentimento do cliente para todos os 'endpoints'. # Orientações A `Role` do diretório de participantes relacionada à presente API é a ``.\ Para todos os `endpoints` desta API é previsto o envio de um `token` através do header `Authorization`.\ Este `token` deverá estar relacionado ao consentimento (identificado pelo `consentId`) mantido na instituição transmissora dos dados, o qual permitirá a pesquisa e retorno, na API em questão, dos dados relacionados ao `consentId` específico.\ Os dados serão entregues pela iniciadora na sociedade de capitalização desde que o `consentId` relacionado corresponda a um consentimento válido e com o status `AUTHORISED`.\ Além disso, as `permissions` necessárias deverão ter sido solicitadas quando da criação do consentimento relacionado.\ Relacionamos a seguir as `permissions` necessárias para o envio de dados em cada `endpoint` da presente API. ## Permissions necessárias para a API Quote Capitalization Title Para cada um dos `paths` desta API, além dos escopos (`scopes`) indicados existem `permissions` que deverão ser observadas: ### `/lead/request` - permissions: - POST: **QUOTE_CAPITALIZATION_TITLE_LEAD_CREATE** ### `/lead/request/{consentId}` - permissions: - PATCH: **QUOTE_CAPITALIZATION_TITLE_LEAD_UPDATE** ### `/request/{consentId}/quote-status` - permissions: - GET: **QUOTE_CAPITALIZATION_TITLE_READ** ### `/request` - permissions: - POST: **QUOTE_CAPITALIZATION_TITLE_CREATE** ### `/request/{consentId}` - permissions: - PATCH: **QUOTE_CAPITALIZATION_TITLE_UPDATE** ### `/raffle/request` - permissions: - POST: **QUOTE_CAPITALIZATION_TITLE_RAFFLE_CREATE** ## Válidações Semanticas - Entidade não processável - 422 - 1 - `Idempotência:` Valida se há divergência entre chave de idempotência e informações enviadas (ERRO_IDEMPOTENCIA); - 2 - `Demais validações:` Valida itens não explicitamente informados pelo servidor - (NAO_INFORMADO). version: 1.9.1 contact: name: Governança do Open Insurance Brasil email: gt-interfaces@openinsurancebr.org url: 'https://www.gov.br/susep' servers: - url: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' description: Servidor de Produção - url: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' description: Servidor de Homologação tags: - name: CapitalizationTitleLead description: Iniciação de serviços de seguro Lead de Compra de Título de Capitalização (CapitalizationTitleLead) - name: CapitalizationTitle description: Iniciação de serviços de seguro Compra de Título de Capitalização (CapitalizationTitle) - name: CapitalizationTitleRaffle description: Iniciação de serviços de seguro solicitação de Pagamento de Sorteio de Título de Capitalização (CapitalizationTitleRaffle) paths: /lead/request: post: tags: - CapitalizationTitleLead summary: Envia dados de cotação e compra de CapitalizationTitleLead description: "Método para criação de solicitação de cotação e compra de CapitalizationTitleLead" operationId: "postQuoteCapitalizationTitleLead" parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/xFapiAuthDate' - $ref: '#/components/parameters/xFapiCustomerIpAddress' - $ref: '#/components/parameters/xFapiInteractionId' - $ref: '#/components/parameters/xCustomerUserAgent' requestBody: content: application/json: schema: $ref: '#/components/schemas/QuoteRequestCapitalizationTitleLead' responses: '201': $ref: '#/components/responses/OKResponseQuoteRequestCapitalizationTitleLead' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '405': $ref: '#/components/responses/MethodNotAllowed' '406': $ref: '#/components/responses/NotAcceptable' '422': $ref: '#/components/responses/UnprocessableEntity' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' default: description: Erro inesperado. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' security: - OpenId: - openid OAuth2Security: - 'consent:consentId' - quote-capitalization-title-lead /lead/request/{consentId}: patch: tags: - CapitalizationTitleLead summary: Atualiza dados de cotação e compra de CapitalizationTitleLead identificado por consentId description: "Método para atualização de solicitação de cotação e compra de CapitalizationTitleLead" operationId: "patchQuoteCapitalizationTitleLead" parameters: - $ref: "#/components/parameters/consentId" - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/xFapiAuthDate' - $ref: '#/components/parameters/xFapiCustomerIpAddress' - $ref: '#/components/parameters/xFapiInteractionId' - $ref: '#/components/parameters/xCustomerUserAgent' requestBody: content: application/json: schema: $ref: '#/components/schemas/RevokePatchPayload' description: Payload para postagem da atualização de proposta de cotação. required: true responses: '200': $ref: '#/components/responses/200UpdatedQuoteCapitalizationTitleLead' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '405': $ref: '#/components/responses/MethodNotAllowed' '406': $ref: '#/components/responses/NotAcceptable' '422': $ref: '#/components/responses/UnprocessableEntity' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' default: description: Erro inesperado. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' security: - OpenId: - openid OAuth2Security: - 'consent:consentId' - quote-capitalization-title-lead /request: post: tags: - CapitalizationTitle summary: Envia dados de cotação e compra de CapitalizationTitle description: "Método para criação de solicitação de cotação e compra de CapitalizationTitle" operationId: "postQuoteCapitalizationTitle" parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/xFapiAuthDate' - $ref: '#/components/parameters/xFapiCustomerIpAddress' - $ref: '#/components/parameters/xFapiInteractionId' - $ref: '#/components/parameters/xCustomerUserAgent' requestBody: content: application/json: schema: $ref: '#/components/schemas/QuoteRequestCapitalizationTitle' responses: '201': $ref: '#/components/responses/OKResponseQuoteRequestCapitalizationTitle' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '405': $ref: '#/components/responses/MethodNotAllowed' '406': $ref: '#/components/responses/NotAcceptable' '422': $ref: '#/components/responses/UnprocessableEntity' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' default: description: Erro inesperado. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' security: - OpenId: - openid OAuth2Security: - 'consent:consentId' - quote-capitalization-title /request/{consentId}/quote-status: get: tags: - CapitalizationTitle summary: Obtém os dados de cotação e compra de CapitalizationTitle identificado por consentId description: "Método para consulta dos dados de solicitação de cotação e compra de CapitalizationTitle" operationId: "getQuoteCapitalizationTitle" parameters: - $ref: "#/components/parameters/consentId" - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/xFapiAuthDate' - $ref: '#/components/parameters/xFapiCustomerIpAddress' - $ref: '#/components/parameters/xFapiInteractionId' - $ref: '#/components/parameters/xCustomerUserAgent' - $ref: "#/components/parameters/page" - $ref: "#/components/parameters/pageSize" responses: '200': $ref: '#/components/responses/200QuoteStatusCapitalizationTitle' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '405': $ref: '#/components/responses/MethodNotAllowed' '406': $ref: '#/components/responses/NotAcceptable' '422': $ref: '#/components/responses/UnprocessableEntity' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' default: description: Erro inesperado. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' security: - OpenId: - openid OAuth2Security: - 'consent:consentId' - quote-capitalization-title /request/{consentId}: patch: tags: - CapitalizationTitle summary: Atualiza dados de cotação e compra de CapitalizationTitle identificado por consentId description: "Método para atualização de solicitação de cotação e compra de CapitalizationTitle" operationId: "patchQuoteCapitalizationTitle" parameters: - $ref: "#/components/parameters/consentId" - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/xFapiAuthDate' - $ref: '#/components/parameters/xFapiCustomerIpAddress' - $ref: '#/components/parameters/xFapiInteractionId' - $ref: '#/components/parameters/xCustomerUserAgent' requestBody: content: application/json: schema: $ref: '#/components/schemas/PatchPayload' description: Payload para postagem da atualização de proposta de cotação. required: true responses: '200': $ref: '#/components/responses/200UpdatedQuoteCapitalizationTitle' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '405': $ref: '#/components/responses/MethodNotAllowed' '406': $ref: '#/components/responses/NotAcceptable' '422': $ref: '#/components/responses/UnprocessableEntity' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' default: description: Erro inesperado. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' security: - OpenId: - openid OAuth2Security: - 'consent:consentId' - quote-capitalization-title /raffle/request: post: tags: - CapitalizationTitleRaffle summary: Enviar os dados de solicitação de Pagamento de Sorteio de Título de Capitalização operationId: "postQuoteCapitalizationTitleRaffle" description: Método para a criação de solicitação de Pagamento de Sorteio de Título de Capitalização parameters: - $ref: '#/components/parameters/Authorization' - $ref: '#/components/parameters/xFapiAuthDate' - $ref: '#/components/parameters/xFapiCustomerIpAddress' - $ref: '#/components/parameters/xFapiInteractionId' - $ref: '#/components/parameters/xCustomerUserAgent' - $ref: '#/components/parameters/xIdempotencyKey' requestBody: content: application/json: schema: $ref: '#/components/schemas/RequestCapitalizationTitleRaffle' description: Payload para criação de solicitação de Pagamento de Sorteio de Título de Capitalização. required: true responses: '201': $ref: '#/components/responses/CreatedCapitalizationTitleRaffle' '400': $ref: '#/components/responses/BadRequest' '401': $ref: '#/components/responses/Unauthorized' '403': $ref: '#/components/responses/Forbidden' '404': $ref: '#/components/responses/NotFound' '405': $ref: '#/components/responses/MethodNotAllowed' '406': $ref: '#/components/responses/NotAcceptable' '422': $ref: '#/components/responses/UnprocessableEntityRaffle' '429': $ref: '#/components/responses/TooManyRequests' '500': $ref: '#/components/responses/InternalServerError' default: description: Erro inesperado. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' security: - OpenId: - openid OAuth2Security: - 'consent:consentId' - quote-capitalization-title-raffle components: schemas: PlanDataCapitalizationTitleLead: type: array description: Lista que agrupa os dados dos planos históricos em categorias. items: type: object properties: plan-info: $ref: '#/components/schemas/CapitalizationTitlePlanInfo' events: $ref: '#/components/schemas/CapitalizationTitleEvent' settlements: $ref: '#/components/schemas/CapitalizationTitleSettlement' CapitalizationTitlePlanInfo: type: object required: - series properties: series: description: Dados Gerais da Série type: array items: $ref: "#/components/schemas/InsuranceCapitalizationTitleSeries" InsuranceCapitalizationTitleSeries: description: Dados Gerais da Série type: object required: - seriesId - modality - susepProcessNumber - serieSize - quotas - gracePeriodForFullRedemption - updateIndex - readjustmentIndex - bonusClause - frequency - interestRate - titles properties: planId: description: Número do plano de capitalização type: string seriesId: description: Deve ser informado o número da série type: string maxLength: 60 modality: type: string description: Modalidade example: TRADICIONAL enum: [TRADICIONAL, INSTRUMENTO_GARANTIA, COMPRA_PROGRAMADA, POPULAR, FILANTROPIA_PREMIAVEL] susepProcessNumber: type: string description: Número do processo administrativo sob o qual o plano foi aprovado pela Susep. maxLength: 20 example: "15414622222222222" commercialName: type: string description: Denominação comercial do produto de propriedade exclusiva da sociedade de capitalização. Condicional, caso selecionada as opções "Filantropia Premiável" ou "Popular" no campo "Modalidade". maxLength: 100 example: Denominação comercial do produto serieSize: type: integer description: Quantidade máxima possível de títulos que pode ser emitida para uma mesma série maxLength: 10 example: 5000000 quotas: type: array items: $ref: '#/components/schemas/CapitalizationTitleQuotas' gracePeriodRedemption: type: integer description: Intervalo de tempo mínimo entre contratação e resgate parcial do direito, em meses. maxLength: 3 example: 48 gracePeriodForFullRedemption: type: integer description: Intervalo de tempo mínimo entre contratação e resgate total do direito, em meses maxLength: 3 example: 48 updateIndex: type: string description: Descreve o índice de atualização das reservas. example: IPCA enum: [INDICE_REMUNERACAO_BASICA_DEPOSITOS_POUPANCA, IPCA, INCC, INPC, IGPM, OUTROS] updateIndexOthers: type: string description: Descreve o índice de atualização utilizado quando outro que não previamente relacionado nos domínios do campo. maxLength: 100 example: Índice de atualização Outros readjustmentIndex: type: string description: Índice de reajuste das contribuições e do capital para vigências acima de doze meses example: IPCA enum: [INDICE_REMUNERACAO_BASICA_DEPOSITOS_POUPANCA, IPCA, INCC, INPC, IGPM, OUTROS] readjustmentIndexOthers: type: string description: Descreve o índice de reajuste utilizado quando outro que não previamente relacionado nos domínios do campo. maxLength: 100 example: Índice de reajuste Outros bonusClause: type: boolean description: Cláusula de bônus example: false frequency: type: string description: Tipo de Contribuição - pagamento único, pagamento mensal ou periódico example: PAGAMENTO_MENSAL enum: ['PAGAMENTO_UNICO', 'PAGAMENTO_MENSAL','PAGAMENTO_PERIODICO'] frequencyDescription: type: string description: Descrição do Tipo de Contribuição (Quando o Tipo de Contribuição for 3. Pagamento Periódico) maxLength: 100 interestRate: description: Taxa de juros efetiva real mensal utilizada para remuneração do título de capitalização. allOf: - $ref: '#/components/schemas/PercentageDetails' broker: description: Dados do corretor (quando houver) type: array items: $ref: "#/components/schemas/InsuranceCapitalizationTitleBroker" titles: description: Dados Gerais do Título type: array items: $ref: "#/components/schemas/InsuranceCapitalizationTitleTitle" InsuranceCapitalizationTitleBroker: type: object required: - susepBrokerCode - brokerDescription properties: susepBrokerCode: type: string description: Código SUSEP do corretor. maxLength: 12 example: "123123123" brokerDescription: description: Nome ou Razão Social do Corretor type: string maxLength: 200 InsuranceCapitalizationTitleTitle: type: object required: - titleId - registrationForm - issueTitleDate - termStartDate - termEndDate - rafflePremiumAmount - contributionAmount - subscriber - technicalProvisions properties: titleId: description: Identificação do título de capitalização type: string maxLength: 60 registrationForm: description: Identificação da ficha de cadastro ou contrato comercial type: string maxLength: 50 issueTitleDate: description: Data de Emissão do Título type: string format: date example: "2023-01-30" termStartDate: description: Data de início de vigência do título de capitalização. type: string format: date example: "2023-01-30" termEndDate: description: Data de fim de vigência do título de capitalização. type: string format: date example: "2023-01-30" rafflePremiumAmount: description: Valor do premio de sorteio allOf: - $ref: "#/components/schemas/AmountDetails" contributionAmount: description: Valor vigente (atualizado), referente ao pagamento efetuado pelo subscritor à sociedade de capitalização para a aquisição do título de capitalização, de acordo com o tipo de contribuição da série à qual o título pertence. allOf: - $ref: "#/components/schemas/AmountDetails" subscriber: description: Dados Gerais do Título type: array items: $ref: "#/components/schemas/InsuranceCapitalizationTitleSubscriber" technicalProvisions: description: Informações de Provisões técnicas type: array items: $ref: "#/components/schemas/InsuranceCapitalizationTitleTechnicalProvisions" InsuranceCapitalizationTitleSubscriber: type: object required: - subscriberName - subscriberDocumentType - subscriberDocumentNumber - subscriberAddress - subscriberTownName - subscriberCountrySubDivision - subscriberCountryCode - subscriberPostCode properties: subscriberName: description: Nome ou Razão Social do Subscritor type: string maxLength: 144 example: Nome do Subscritor subscriberDocumentType: description: Tipo de Documento do Subscritor type: string enum: [CPF, CNPJ, PASSAPORTE, OUTROS] example: OUTROS subscriberDocumentTypeOthers: description: Tipo de Documento do Subscritor, caso seja selecionado OUTROS. type: string subscriberDocumentNumber: description: Documento de Identificação do Subscritor type: string maxLength: 40 subscriberPhones: description: Lista com telefones do subscritor (quando houver) type: array items: $ref: '#/components/schemas/RequestorPhone' subscriberAddress: description: | Endereço do subscritor type: string maxLength: 200 pattern: '[\w\W\s]*' example: "Av Naburo Ykesaki, 1270" subscriberAddressAdditionalInfo: type: string pattern: '[\w\W\s]*' example: Fundos description: Alguns logradouros ainda necessitam ser especificados por meio de complemento. subscriberTownName: type: string maxLength: 50 pattern: '[\w\W\s]*' example: Rio de Janeiro description: | Localidade: O nome da localidade corresponde à designação da cidade ou município no qual o endereço está localizado. Cidade do subscritor subscriberCountrySubDivision: description: Estado do subscritor allOf: - $ref: "#/components/schemas/EnumCountrySubDivision" subscriberCountryCode: description: | Código do pais de acordo com o código “alpha3” do ISO-3166. País do subscritor type: string maxLength: 3 example: BRA subscriberPostCode: description: | Código de Endereçamento Postal: Composto por um conjunto numérico de oito dígitos, o objetivo principal do CEP é orientar e acelerar o encaminhamento, o tratamento e a entrega de objetos postados nos Correios, por meio da sua atribuição a localidades, logradouros, unidades dos Correios, serviços, órgãos públicos, empresas e edifícios. p.ex. '01311000'. Código Postal do subscritor, Obrigatório, se houver type: string pattern: '\d{8}|^NA$' maxLength: 8 example: "17500001" holder: description: Dados Gerais do Titular type: array items: $ref: "#/components/schemas/InsuranceCapitalizationTitleHolder" CapitalizationTitleQuotas: type: object description: Quotas required: - quota - capitalizationQuota - raffleQuota - chargingQuota properties: quota: type: integer description: Número da parcela. example: 10 capitalizationQuota: type: string description: Percentual da contribuição destinado à constituição de capital referente ao direito de resgate. pattern: ^1\.0{1,9}$|^0\.\d{1,9}$ example: '0.000002' raffleQuota: type: string description: Percentual da contribuição designado a custear os sorteios, se previstos no plano pattern: ^1\.0{1,9}$|^0\.\d{1,9}$ example: '0.000002' chargingQuota: type: string description: Percentual da contribuição destinado aos custos de despesas com corretagem, colocação e administração do título de capitalização, emissão, divulgação, lucro da sociedade de capitalização e eventuais despesas relavas ao custeio da contemplação obrigatória e da distribuição de bónus. pattern: ^1\.0{1,9}$|^0\.\d{1,9}$ example: '0.000002' CapitalizationTitleEvent: type: array items: properties: titleId: description: Código identificador do título na sociedade. type: string maxLength: 80 eventType: description: Tipo de Evento type: string enum: [SORTEIO, RESGATE] event: type: object properties: raffle: type: object required: - raffleAmount - raffleDate - raffleSettlementDate properties: raffleAmount: description: Montante do capital sorteado (prêmio de sorteio bruto, livre de IOF, quando aplicável) allOf: - $ref: '#/components/schemas/AmountDetails' raffleDate: description: Data de realização do sorteio type: string format: date example: "2023-01-30" raffleSettlementDate: description: Data da liquidação financeira do capital sorteado type: string format: date example: "2023-01-30" redemption: type: object required: - redemptionType - redemptionAmount - redemptionBonusAmount - redemptionRequestDate - redemptionSettlementDate properties: redemptionType: description: Tipo de resgate type: string enum: [ANTECIPADO_PARCIAL, ANTECIPADO_TOTAL, FINAL_VIGENCIA] redemptionAmount: description: Valor de resgate. (Valor bruto de resgate, livre de IOF, quando aplicável) allOf: - $ref: '#/components/schemas/AmountDetails' redemptionBonusAmount: description: Valor do Bonus. (Valor bruto do bonus resgatado, livre de IOF, quando aplicável) allOf: - $ref: '#/components/schemas/AmountDetails' unreturnedAmount: description: Valor não restituido. (Valor bruto não restituido ao titular em caso de resgate antecipado) allOf: - $ref: '#/components/schemas/AmountDetails' redemptionRequestDate: description: Data de solicitação do resgate type: string format: date example: "2023-01-30" redemptionSettlementDate: description: Data da liquidação financeira do resgate type: string format: date example: "2023-01-30" CapitalizationTitleSettlement: type: array description: Lista que agrupa os dados de liquidação. items: required: - settlementId - settlementFinancialAmount - settlementPaymentDate - settlementDueDate properties: settlementId: description: Identificador da Liquidação type: string settlementFinancialAmount: description: Valor da liquidação financeira. allOf: - $ref: '#/components/schemas/AmountDetails' settlementPaymentDate: description: Data de pagamento da liquidação type: string format: date example: "2023-01-30" settlementDueDate: description: Data de Vencimento da liquidação type: string format: date example: "2023-01-30" PercentageDetails: type: number pattern: '^\d{1,3}\.\d{1,9}$' example: 10.00 PlanDataCapitalizationTitle: type: array description: Lista que agrupa os dados dos planos históricos em categorias. items: type: object properties: plan-info: $ref: '#/components/schemas/CapitalizationTitlePlanInfo' events: $ref: '#/components/schemas/CapitalizationTitleEvent' settlements: $ref: '#/components/schemas/CapitalizationTitleSettlement' QuoteDataCapitalizationTitle: type: object description: Objeto que agrupa dados específicos da cotação. required: - modality - paymentType properties: modality: type: string enum: [TRADICIONAL, COMPRA_PROGRAMADA_LEAD, INSTRUMENTO_DE_GARANTIA_LEAD, POPULAR, FILANTROPIA_PREMIAVEL] description: "Modalidade" paymentType: type: string enum: [UNICO, MENSAL] description: 'Tipo de Pagamento' singlePayment: description: 'Pagamento único. Condicional obrigatório, caso selecionada a opção de "Único" em "Tipo de Pagamento"' allOf: - $ref: '#/components/schemas/AmountDetails' monthlyPayment: description: 'Pagamento por mês. Condicional obrigatório, caso selecionada a opção de "Mensal" em "Tipo de Pagamento"' allOf: - $ref: '#/components/schemas/AmountDetails' QuoteStatusCapitalizationTitle: type: object required: - quoteCustomer - quoteData - quotes properties: quoteCustomer: description: Objeto que agrupa as categorias de dados cadastrais do cliente. oneOf: - $ref: '#/components/schemas/PersonalQuoteCustomer' - $ref: '#/components/schemas/BusinessQuoteCustomer' quoteData: $ref: '#/components/schemas/QuoteDataCapitalizationTitle' quotes: type: array description: Lista de cotações enviadas pela seguradora. items: required: - insurerQuoteId - susepProcessNumber - planId - modality - period - grouperCode - raffle - paymentType properties: insurerQuoteId: type: string description: | Id da proposta da segurada commercialName: type: string maxLength: 100 description: 'Denominação comercial da série / título de capitalização, se houver' susepProcessNumber: type: string maxLength: 20 description: 'Número do processo SUSEP' planId: type: string maxLength: 60 description: 'Deve ser informado o número do plano de capitalização' modality: type: string enum: [TRADICIONAL, COMPRA_PROGRAMADA_LEAD, INSTRUMENTO_DE_GARANTIA_LEAD, POPULAR, FILANTROPIA_PREMIAVEL] description: "Modalidade" period: type: string maxLength: 3 description: 'Prazo de vigência do título de capitalização em meses.' grouperCode: type: string maxLength: 60 description: 'Código da instituição (Código agrupador do sorteio)' raffle: type: array description: Lista que agrupa os dados de sorteios. items: required: - amount - gracePeriodicity - rafflesQuantity - ticket properties: amount: description: 'Valor de cada sorteio' allOf: - $ref: "#/components/schemas/AmountDetails" gracePeriodicity: type: string description: 'Intervalo de tempo regular previsto entre os sorteios' enum: [UNICO, DIARIO, SEMANAL, QUINZENAL, MENSAL, BIMESTRAL, TRIMESTRAL, QUADRIMESTRAL, SEMESTRAL, ANUAL, INSTANTANEO, OUTROS] multipleContribution: type: string maxLength: 12 description: 'Múltiplo da contribuição (Obrigatório, se aplicável)' rafflesQuantity: type: string maxLength: 12 description: 'Quantidade dos referidos sorteios' ticket: description: 'Valor da parcela de contribuição' allOf: - $ref: "#/components/schemas/AmountDetails" paymentType: type: string enum: [UNICO, MENSAL, PERIODICO] description: 'Tipo de Pagamento' generalInfo: description: 'Mais informações sobre o Título ( Contendo informações gerais do produto como Resgate, Quotas, Pagamento)' allOf: - $ref: "#/components/schemas/LinkInfo" url: description: 'Campo aberto (possibilidade de incluir URL). ' allOf: - $ref: "#/components/schemas/LinkInfo" quoteCustomData: $ref: '#/components/schemas/QuoteCustomData' LinkInfo: type: string maxLength: 5000 example: 'https://www.abcseguros.com/raffle?id=000123' HistoricalPersonalComplimentaryInformationData: $ref: "#/components/schemas/PersonalComplimentaryInformationData" HistoricalPersonalIdentificationData: $ref: "#/components/schemas/PersonalIdentificationData" PersonalProcurator: type: object required: - nature properties: nature: $ref: '#/components/schemas/EnumProcuratorsNaturePersonal' cpfNumber: type: string maxLength: 11 example: '73677831148' description: '(Caso Natureza dos poderes vigentes de representantefor “Representante legal” ou “Procurador”) CPF ou CNPJ do representante' civilName: type: string maxLength: 70 example: Elza Milena Stefany Teixeira description: '(Caso Natureza dos poderes vigentes de representante for “Representante legal” ou “Procurador”) Nome ou razão social do representante' socialName: type: string maxLength: 70 pattern: '^[\w\W]*$' example: 'string' description: '(Caso Natureza dos poderes vigentes de representante for “Representante legal” ou “Procurador”) Nome social do representante' additionalProperties: false HistoricalPersonalQualificationData: $ref: "#/components/schemas/PersonalQualificationData" HistoricalBusinessComplimentaryInformationData: $ref: "#/components/schemas/BusinessComplimentaryInformationData" HistoricalBusinessIdentificationData: $ref: "#/components/schemas/BusinessIdentificationData" BusinessProcurator: type: object required: - nature properties: nature: $ref: '#/components/schemas/EnumProcuratorsNaturePersonal' cpfNumber: type: string maxLength: 14 example: '73677831148' description: '(Caso Natureza dos poderes vigentes de representantefor “Representante legal” ou “Procurador”) CPF ou CNPJ do representante' civilName: type: string maxLength: 70 example: Elza Milena Stefany Teixeira description: '(Caso Natureza dos poderes vigentes de representante for “Representante legal” ou “Procurador”) Nome ou razão social do representante' socialName: type: string maxLength: 70 pattern: '^[\w\W]*$' example: 'string' description: '(Caso Natureza dos poderes vigentes de representante for “Representante legal” ou “Procurador”) Nome social do representante' additionalProperties: false HistoricalBusinessQualificationData: $ref: "#/components/schemas/BusinessQualificationData" BusinessComplimentaryInformationData: type: object description: 'Objeto que reúne as informações relativas ao relacionamento do cliente junto à Instituição. Considera-se relacionamento as informações que permitam conhecer desde quando a pessoa consultada é cliente da instituição, bem como um indicador dos produtos e serviços que ela consome atualmente e seus representantes' required: - startDate - updateDateTime - productsServices properties: updateDateTime: type: string format: date-time maxLength: 20 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' example: '2020-07-21T08:30:00Z' description: 'Data e hora da atualização do bloco de Relacionamento, conforme especificação RFC-3339, formato UTC.' startDate: type: string format: date maxLength: 10 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2014-05-21' description: Data mais antiga de início de relacionamento, considerando todos os contratos (vigentes e não vigentes). Os contratos não vigentes considerados devem contemplar, no mínimo o período indicado na Tabela 4.1. relationshipBeginning: type: string format: date maxLength: 10 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2014-05-21' description: Campo deve ser preenchido com a data da apólice/contrato vigente mais antiga. (caso haja contrato vigente) productsServices: type: array minItems: 1 items: type: object description: Lista de todos os contratos vigentes e não vigentes. required: - contract - type properties: contract: type: string maxLength: 60 description: Campo deve conter todos os contratos do cliente nos últimos 12 meses (número da apólice individual ou contrato ou certificado ou bilhete) type: $ref: '#/components/schemas/EnumProductServiceType' insuranceLineCode: type: string maxLength: 4 example: '6272' description: Indicar para cada contrato, caso aplicável, o código do ramo, conforme listagem de códigos definida em regulamentação específica sobre contabilização em ramos. - Caso tipo de produto do contrato for “Seguros de Danos. procurators: type: array items: $ref: '#/components/schemas/BusinessProcurator' minItems: 1 description: Lista dos representantes. De preenchimento obrigatório se houver representante. additionalProperties: false additionalProperties: false BusinessIdentificationData: type: object description: Conjunto de informações relativas a Identificação ou seja a ação e o efeito de identificar de forma única a pessoa jurídica através de seus dados cadastrais required: - updateDateTime - brandName - companyInfo - businessName - document - contact properties: updateDateTime: type: string maxLength: 20 format: date-time example: '2021-05-21T08:30:00Z' description: 'Data e hora da atualização do bloco, conforme especificação RFC-3339' businessId: type: string maxLength: 100 pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' example: 578-psd-71md6971kjh-2d414 description: Um identificador único e imutável usado para identificar o recurso cliente pessoa jurídica dentro da transmissora. Este identificador não tem significado para o cliente que deu o consentimento brandName: type: string maxLength: 80 pattern: '[\w\W\s]*' example: Organização A description: | Nome da Marca reportada pelo participante do Open Insurance. O conceito a que se refere a 'marca' é em essência uma promessa da empresa em fornecer uma série específica de atributos, benefícios e serviços uniformes aos clientes companyInfo: type: object description: Informações referente a sociedade a qual a marca pertence. required: - name - cnpjNumber properties: cnpjNumber: type: string pattern: '\d{14}|^NA$' maxLength: 14 example: '01773247000563' description: | Número completo do CNPJ da instituição responsável pelo Cadastro - o CNPJ corresponde ao número de inscrição no Cadastro de Pessoa Jurídica. Deve-se ter apenas os números do CNPJ, sem máscara name: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Empresa da Organização A description: Nome da Instituição, pertencente à Marca, responsável pela Dependência businessName: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Luiza e Benjamin Assessoria Jurídica Ltda description: Razão social da empresa consultada é o termo registrado sob o qual uma pessoa jurídica (PJ) se individualiza e exerce suas atividades. Também pode ser chamada por denominação social ou firma empresarial businessTradeName: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Organização B description: Nome fantasia - Se Aplicável incorporationDate: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2012-05-21' description: 'Data de constituição, conforme especificação RFC-3339' document: $ref: '#/components/schemas/BusinessDocument' type: type: string enum: - PRIVADO - PUBLICO description: Campo deve ser preenchido com o Tipo Pessoa Jurídica contact: $ref: '#/components/schemas/BusinessContact' parties: $ref: '#/components/schemas/BusinessParties' BusinessQualificationData: type: object description: 'Objeto que reúne as informações relativas ao processo de qualificação.' required: - updateDateTime properties: updateDateTime: type: string maxLength: 20 format: date-time example: '2021-05-21T08:30:00Z' description: 'Data e hora da atualização do bloco, conforme especificação RFC-3339' mainBranch: type: string maxLength: 20 description: 'Código do ramo da atividade da empresa consultada, segundo padrão CNAE (Classificação Nacional de Atividades Econômicas).' secondaryBranch: type: string maxLength: 200 description: Códigos relativos às demais atividades econômicas da empresa, segundo padrão CNAE (Classificação Nacional de Atividades Econômicas). Se disponível. informedRevenue: type: object description: Objeto que agrupa dados de receita informada properties: incomeFrequency: $ref: '#/components/schemas/EnumIncomeFrequency' currency: description: 'Moeda referente ao valor do faturamento, segundo modelo ISO-4217.' allOf: - $ref: '#/components/schemas/EnumCurrencyCode' amount: type: string nullable: true pattern: '^-?\d{1,15}\.\d{2,4}$' example: '100000.04' description: | Valor do faturamento year: type: string maxLength: 4 format: date-fullyear example: '2010' description: 'Ano de referência do faturamento, conforme especificação RFC-3339.' additionalProperties: false informedPatrimony: type: object description: Objeto que agrupa dados de informações de patrimônio. properties: currency: description: 'Moeda referente ao valor do patrimônio, segundo modelo ISO-4217.' allOf: - $ref: '#/components/schemas/EnumCurrencyCode' amount: type: string nullable: true pattern: '^-?\d{1,15}\.\d{2,4}$' example: '100000.04' description: | Valor do patrimônio date: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2012-05-21' description: 'Data de referência do patrimônio, conforme especificação RFC-3339.' additionalProperties: false additionalProperties: false PersonalQuoteCustomer: type: object description: Objeto de informações de pessoa física. properties: identification: $ref: '#/components/schemas/PersonalIdentificationData' qualification: $ref: '#/components/schemas/PersonalQualificationData' complimentaryInfo: $ref: '#/components/schemas/PersonalComplimentaryInformationData' BusinessQuoteCustomer: type: object description: Objeto de informações de pessoa jurídica. properties: identification: $ref: '#/components/schemas/BusinessIdentificationData' qualification: $ref: '#/components/schemas/BusinessQualificationData' complimentaryInfo: $ref: '#/components/schemas/BusinessComplimentaryInformationData' PersonalComplimentaryInformationData: type: object description: 'Objeto que reúne as informações relativas ao relacionamento do cliente junto à Instituição. Considera-se relacionamento as informações que permitam conhecer desde quando a pessoa consultada é cliente da instituição, bem como um indicador dos produtos e serviços que ela consome atualmente e seus representantes' required: - updateDateTime - productsServices - startDate properties: updateDateTime: type: string format: date-time maxLength: 20 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' example: '2021-05-21T08:30:00Z' description: 'Data e hora da atualização do bloco de Relacionamento, conforme especificação RFC-3339, formato UTC.' startDate: type: string format: date maxLength: 10 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2014-05-21' description: Data mais antiga de início de relacionamento, considerando todos os contratos (vigentes e não vigentes). Os contratos não vigentes considerados devem contemplar, no mínimo o período indicado na Tabela 4.1. relationshipBeginning: type: string format: date maxLength: 10 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2014-05-21' description: Campo deve ser preenchido com a data da apólice/contrato vigente mais antiga (caso haja contrato vigente) productsServices: type: array minItems: 1 items: type: object description: Lista de todos os contratos vigentes e não vigentes. required: - contract - type properties: contract: type: string maxLength: 60 description: Campo deve conter todos os contratos do cliente nos últimos 12 meses (número da apólice individual ou contrato ou certificado ou bilhete) type: $ref: '#/components/schemas/EnumProductServiceType' insuranceLineCode: type: string maxLength: 4 example: '6272' description: Indicar para cada contrato, caso aplicável, o código do ramo, conforme listagem de códigos definida em regulamentação específica sobre contabilização em ramos. Obs - Caso tipo de produto do contrato for “Seguros de Danos” procurators: type: array items: $ref: '#/components/schemas/PersonalProcurator' minItems: 1 description: Lista dos representantes. De preenchimento obrigatório se houver representante. additionalProperties: false additionalProperties: false PersonalIdentificationData: type: object description: Conjunto de informações relativas a Identificação ou seja a ação e o efeito de identificar de forma única a pessoa natural através de seus dados cadastrais. required: - updateDateTime - brandName - companyInfo - civilName - hasBrazilianNationality - contact - cpfNumber properties: updateDateTime: type: string maxLength: 20 format: date-time pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' example: '2021-05-21T08:30:00Z' description: 'Data e hora da atualização do bloco, conforme especificação RFC-3339' personalId: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' maxLength: 100 description: Um identificador único e imutável usado para identificar o recurso cliente pessoa natural dentro da transmissora. Este identificador não tem significado para o cliente que deu o consentimento example: 578-psd-71md6971kjh-2d414 brandName: type: string maxLength: 80 pattern: '[\w\W\s]*' description: Nome da Marca reportada pelo participante do Open Insurance. O conceito a que se refere a marca é em essência uma promessa da empresa em fornecer uma série específica de atributos, benefícios e serviços uniformes aos clientes example: Organização A civilName: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Juan Kaique Cláudio Fernandes description: 'Nome civil completo da pessoa natural (Direito fundamental da pessoa, o nome civil é aquele atribuído à pessoa natural desde o registro de seu nascimento, com o qual será identificada por toda a sua vida, bem como após a sua morte)' socialName: type: string maxLength: 70 pattern: '^[\w\W]*$' example: 'string' description: | Nome social da pessoa natural, se houver. (aquele pelo qual travestis e transexuais se reconhecem, bem como são identificados por sua comunidade e em seu meio social, conforme Decreto Local). cpfNumber: type: string maxLength: 11 pattern: '^\d{11}$|^NA$' description: | Número completo do CPF. Atributo que corresponde às informações mínimas exigidas pela Regulamentação em vigor. O CPF é o Cadastro de Pessoa natural. Ele é um documento feito pela Receita Federal e serve para identificar os contribuintes. O CPF é uma numeração com 11 dígitos, que só mudam por decisão judicial. O documento é emitido pela receita federal Condicional a seleção de true em hasBrazilianNationality companyInfo: type: object description: Informações referente a sociedade a qual a marca pertence. required: - name - cnpjNumber properties: cnpjNumber: type: string pattern: '\d{14}|^NA$' maxLength: 14 example: '01773247000563' description: | Número completo do CNPJ da instituição responsável pelo Cadastro - o CNPJ corresponde ao número de inscrição no Cadastro de Pessoa Jurídica. Deve-se ter apenas os números do CNPJ, sem máscara name: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Empresa da Organização A description: Nome da Instituição, pertencente à Marca, responsável pela Dependência documents: $ref: '#/components/schemas/PersonalDocuments' hasBrazilianNationality: type: boolean nullable: true example: false description: Informa se o Cliente tem nacionalidade brasileira. otherNationalitiesInfo: type: string maxLength: 3 example: CAN description: Código do pais de acordo com o código “alpha3” do ISO-3166 otherDocuments: $ref: '#/components/schemas/OtherPersonalDocuments' contact: $ref: '#/components/schemas/PersonalContact' civilStatusCode: $ref: '#/components/schemas/EnumCivilStatusCode' sex: type: string maxLength: 20 example: FEMININO birthDate: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2021-05-21' description: 'Data de nascimento, conforme especificação RFC-3339' filiation: type: object properties: type: $ref: '#/components/schemas/EnumFiliationType' civilName: type: string maxLength: 70 pattern: '^[\w\W]*$' example: Marcelo Cláudio Fernandes description: | Nome civil completo da pessoa relativa à filiação. (Direito fundamental da pessoa, o nome civil é aquele atribuído à pessoa natural desde o registro de seu nascimento, com o qual será identificada por toda a sua vida, bem como após a sua morte). identificationDetails: type: object description: Informações referente ao cônjuge. properties: civilName: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Juan Kaique Cláudio Fernandes description: 'Nome civil completo da pessoa natural (Direito fundamental da pessoa, o nome civil é aquele atribuído à pessoa natural desde o registro de seu nascimento, com o qual será identificada por toda a sua vida, bem como após a sua morte)' cpfNumber: type: string maxLength: 11 pattern: '^\d{11}$|^NA$' description: | Número completo do CPF. Atributo que corresponde às informações mínimas exigidas pela Regulamentação em vigor. O CPF é o Cadastro de Pessoa natural. Ele é um documento feito pela Receita Federal e serve para identificar os contribuintes. O CPF é uma numeração com 11 dígitos, que só mudam por decisão judicial. O documento é emitido pela receita federal Condicional a seleção de true em hasBrazilianNationality additionalProperties: false PersonalQualificationData: type: object description: 'Conjunto de informações relativas ao processo de qualificação.' required: - pepIdentification - updateDateTime - lifePensionPlans properties: updateDateTime: type: string maxLength: 20 format: date-time pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$' example: '2021-05-21T08:30:00Z' description: 'Data e hora da atualização do bloco, conforme especificação RFC-3339' pepIdentification: type: string description: 'Campo deve ser preenchido com a exposição política do segurado:' example: NAO_EXPOSTO enum: - NAO_EXPOSTO - PESSOA_POLITICAMENTE_EXPOSTA_PPE - PESSOA_PROXIMA_A_PESSOA_POLITICAMENTE_EXPOSTA_PPEE - SEM_INFORMACAO occupation: type: array minItems: 1 items: type: object description: Objeto agrupador de informações relativas ocupação da pessoa natural properties: details: type: string maxLength: 100 description: 'Ocupação' occupationCode: type: string maxLength: 100 example: 'RECEITA_FEDERAL' description: 'Código da ocupação' occupationCodeType: type: string example: RFB enum: - RFB - CBO - OUTROS description: 'Tipo de código da ocupação' lifePensionPlans: type: string description: Condição de proponente qualificado, aplicável à contratação de planos de previdência e vida por sobrevivência enum: - SIM - NAO - NAO_SE_APLICA informedRevenue: type: object description: Objeto que agrupa dados de receita informada properties: incomeFrequency: $ref: '#/components/schemas/EnumIncomeFrequency' currency: description: 'Moeda referente ao valor da renda, segundo modelo ISO-4217.' allOf: - $ref: '#/components/schemas/EnumCurrencyCode' amount: type: string nullable: true pattern: '^-?\d{1,15}\.\d{2,4}$' example: '100000.04' description: | Valor do rendimento date: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2012-05-21' description: 'Data de referência da renda, conforme especificação RFC-3339.' additionalProperties: false informedPatrimony: type: object description: Objeto que agrupa dados de informações de patrimônio. properties: currency: description: 'Moeda referente ao valor do patrimônio, segundo modelo ISO-4217.' allOf: - $ref: '#/components/schemas/EnumCurrencyCode' amount: type: string nullable: true pattern: '^-?\d{1,15}\.\d{2,4}$' example: '100000.04' description: | Valor do patrimônio year: type: string maxLength: 4 format: date-fullyear example: '2010' description: 'Ano de referência do patrimônio, conforme especificação RFC-3339.' additionalProperties: false additionalProperties: false QuoteStatus: type: object required: - status - statusUpdateDateTime properties: status: description: Status da cotação. type: string enum: [RCVD, EVAL, ACPT, RJCT, ACKN, CANC] statusUpdateDateTime: type: string description: Data e hora da atualização do status. format: date-time PersonalDocuments: type: array description: Objeto agrupador de informações relativas a Documentos da pessoa natural items: properties: type: $ref: '#/components/schemas/EnumPersonalDocumentType' number: type: string maxLength: 20 description: Número/código do(s) documento(s) de identificação - Se aplicável. example: '15291908' expirationDate: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2023-05-21' description: Data de validade do(s) documento(s) de identificação - Se aplicável. issueLocation: type: string maxLength: 40 description: Local de emissão - Se aplicável. additionalProperties: false OtherPersonalDocuments: type: object description: Objeto que agrupa dados de outros documentos. properties: type: type: string maxLength: 40 description: Tipo do(s) documento(s) estrangeiro(s) de identificação example: 'SOCIAL SEC' number: type: string maxLength: 20 description: Número/código do(s) documento(s) de identificação. example: '15291908' country: type: string maxLength: 40 description: País do(s) documento(s) estrangeiro(s) de identificação. expirationDate: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2023-05-21' description: Data de vigência do documento de registro - conforme especificação RFC-3339. additionalProperties: false BusinessDocument: type: object required: - businesscnpjNumber description: Objeto agrupador de informações relativas a Documentos da pessoa natural properties: businesscnpjNumber: type: string maxLength: 14 pattern: '\d{14}|^NA$' example: '50685362006773' description: | Número completo do CNPJ da Empresa consultada - o CNPJ corresponde ao número de inscrição no Cadastro de Pessoa Jurídica. Deve-se ter apenas os números do CNPJ, sem máscara Condicional ao Brasil no (BRA) campo País de emissão do documento de registro businessRegisterNumberOriginCountry: type: string maxLength: 20 description: | Aplicável somente as pessoas jurídicas com domicílio ou sede no exterior desobrigadas de inscrição no CNPJ. country: type: string maxLength: 3 example: BRA description: Código do pais de acordo com o código “alpha3” do ISO-3166. expirationDate: type: string maxLength: 10 format: date pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2023-05-21' description: 'Data de vigência do documento de registro - conforme especificação RFC-3339.' additionalProperties: false AmountDetails: type: object description: Detalhes de valores/limites required: - amount - unit properties: amount: type: string pattern: '^\d{1,16}\.\d{2}$' example: '2000.00' unit: type: object required: - code - description properties: code: allOf: - $ref: '#/components/schemas/EnumCurrencySymbol' description: description: Moeda da Parcela, de acordo com ISO-4217. allOf: - $ref: '#/components/schemas/EnumCurrencyCode' EnumCurrencySymbol: type: string description: 'Símbolo da Moeda.' example: R$ enum: [ د.إ, Af, L, Դ, Kz, $, ƒ, ман, КМ, ৳, лв, ب.د, ₣, Bs., R$, P, Br, ¥, ₡, Kč, kr, د.ج, £, Nfk, N/A, €, ლ, ₵, D, Q, Kn, G, Ft, Rp, ₪, ₹, ع.د, ﷼, Sh, ៛, ₩, د.ك, 〒, ₭, ل.ل, Rs, ل.د, د.م., ден, K, ₮, UM, ₨, ރ., MK, RM, MTn, ₦, C$, ر.ع., B/., S/., ₱, zł, ₲, ر.ق, din, р., ر.س, Le, Db, ل.س, ฿, ЅМ, m, د.ت, T$, ₤, ₴, Bs F, ₫, Vt, T, R, ZK ] EnumCurrencyCode: type: string description: 'Sigla da Moeda, segundo modelo ISO-4217.' example: BRL enum: [AFN,AFA,ALL,ALK,DZD,USD,EUR,ADP,ESP,FRF,AOA,AOK,AON,AOR,XCD,ARS,ARA,ARP,ARY,AMD,RUR,AWG,AUD,ATS,AZN,AYM,AZM,BSD,BHD,BDT,BBD,BYN,BYB,BYR,BEC,BEF,BEL,BZD,XOF,BMD,INR,BTN,BOP,BOB,BOV,BAM,BAD,BWP,NOK,BRL,BRB,BRC ,BRE,BRN,BRR,BND,BGN,BGJ,BGK,BGL,BUK,BIF,CVE,KHR,XAF,CAD,KYD,CLP,CLF,CNY,COP,COU,KMF,CDF,NZD,CRC,HRK,HRD,CUP,CUC,ANG,CYP,CZK,CSJ,CSK,DKK,DJF,DOP,ECS,ECV,EGP,SVC,GQE,ERN,EEK,SZL,ETB,XEU,FKP,FJD,FIM,XPF,GMD,GEL,GEK,DDM,DEM,GHS, GHC,GHP,GIP,GRD,GTQ,GBP,GNF,GNE,GNS,GWE,GWP,GYD,HTG,ITL,HNL,HKD,HUF,ISK,ISJ,IDR,XDR,IRR,IQD,IEP,ILS,ILP,ILR,JMD,JPY,JOD,KZT,KES,KPW,KRW,KWD,KGS,LAJ,LAK,LVL,LVR,LBP,LSL,ZAR,LSM,ZAL,LRD,LYD,CHF,LTL,LTT,LUC,LUF,LUL,MOP,MGA,MGF,MWK,MYR ,MVR,MVQ,MLF,MTL,MTP,MRU,MRO,MUR,XUA,MXN,MXV,MXP,MDL,MNT,MAD,MZN,MZE,MZM,MMK,NAD,NPR,NLG,NIO,NIC,NGN,MKD,OMR,PKR,PAB,PGK,PYG,PEN,PEH,PEI,PES,PHP,PLN,PLZ,PTE,QAR,RON,ROK,ROL,RUB,RWF,SHP,WST,STN,STD,SAR,RSD,CSD,SCR,SLL,SGD, XSU,SKK,SIT,SBD,SOS,SSP,SDG,RHD,ESA,ESB,LKR,SDD,SDP,SRD,SRG,SEK,CHE,CHW,CHC,SYP,TWD,TJS,TJR,TZS,THB,TPE,TOP,TTD,TND,TRY,TRL,TMT,TMM,UGX,UGS,UGW,UAH,UAK,SUR,AED,USS,USN,UYU,UYI,UYW,UYN,UYP,UZS,VUV,VEB,VEF,VES,VND,VNC,YER,YDD,YUD, YUM,YUN,ZRN,ZRZ,ZMW,ZMK,ZWL,ZWC,ZWD,ZWN,ZWR,XBA,XFO,XBB,XRE,XBC,XBD,XFU,XTS,XXX,XAU,XPD,XPT,XAG] QuoteCustomData: type: object description: Objeto que agrupa as categorias de dados customizáveis em listas. properties: customerIdentification: type: array items: $ref: '#/components/schemas/CustomInfoData' customerQualification: type: array items: $ref: '#/components/schemas/CustomInfoData' customerComplimentaryInfo: type: array items: $ref: '#/components/schemas/CustomInfoData' generalQuoteInfo: type: array items: $ref: '#/components/schemas/CustomInfoData' riskLocationInfo: type: array items: $ref: '#/components/schemas/CustomInfoData' insuredObjects: type: array items: $ref: '#/components/schemas/CustomInfoData' beneficiaries: type: array items: $ref: '#/components/schemas/CustomInfoData' coverages: type: array items: $ref: '#/components/schemas/CustomInfoData' generalClaimInfo: type: array items: $ref: '#/components/schemas/CustomInfoData' CustomInfoData: type: object description: Objeto para identificação dos campos e valores de dados customizáveis. required: - fieldId - value properties: fieldId: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' maxLength: 100 description: Um identificador único usado para identificar o valor transmitido. example: "578-psd-71md6971kjh-2d414" value: description: Valor do campo identificado acima, esse campo pode ser implementado como qualquer tipo de dado (objeto, texto, número, booleano, etc.) additionalProperties: false RaffleCustomData: type: object description: Objeto que agrupa as categorias de dados customizáveis em listas. properties: customerIdentification: type: array description: Lista de campos com informações de Identificação. items: $ref: '#/components/schemas/CustomInfoData' generalInfo: type: array description: Lista de campos com Informações Gerais. items: $ref: '#/components/schemas/CustomInfoData' generalSeriesInfo: type: array description: Lista de campos com Informações de Dados Gerais da Série. items: $ref: '#/components/schemas/CustomInfoData' EnumProductServiceType: type: string enum: - MICROSSEGUROS - TITULOS_DE_CAPITALIZACAO - SEGUROS_DE_PESSOAS - PLANOS_DE_PREVIDENCIA_COMPLEMENTAR - SEGUROS_DE_DANOS example: MICROSSEGUROS description: Tipos de produtos. PersonalContact: type: object description: Conjunto de informações referentes às formas para contatar o cliente. required: - postalAddresses properties: postalAddresses: type: array items: $ref: '#/components/schemas/PersonalPostalAddress' minItems: 1 description: Lista de endereços da pessoa natural phones: type: array items: $ref: '#/components/schemas/CustomerPhone' minItems: 1 description: Lista com telefones de contato da pessoa natural emails: type: array items: $ref: '#/components/schemas/CustomerEmail' minItems: 1 description: Lista e-mails de contato additionalProperties: false CustomerEmail: type: object properties: email: type: string description: Endereço de email maxLength: 320 pattern: '\S+@\S+\.\S+' example: nome@br.net additionalProperties: false CustomerPhone: type: object properties: countryCallingCode: type: string maxLength: 4 pattern: '^\d{2,4}$|^NA$' example: '55' description: Número de DDI (Discagem Direta Internacional) para telefone de acesso ao Cliente - se aplicável areaCode: $ref: '#/components/schemas/EnumAreaCode' number: type: string maxLength: 11 pattern: '^([0-9]{8,11})|^NA$' example: '29875132' description: Número de telefone do cliente phoneExtension: type: string maxLength: 5 pattern: '^\d{1,5}$|^NA$' description: Número do ramal. De preenchimento obrigatório se fizer parte da identificação do número do telefone informado example: '932' additionalProperties: false PersonalPostalAddress: type: object required: - address - townName - countrySubDivision - postCode - country properties: address: type: string maxLength: 200 pattern: '[\w\W\s]*' example: 'Av Naburo Ykesaki, 1270' description: Corresponde ao endereço residencial do cliente. additionalInfo: type: string maxLength: 30 pattern: '[\w\W\s]*' example: Fundos description: Alguns logradouros ainda necessitam ser especificados por meio de complemento. districtName: type: string maxLength: 50 pattern: '[\w\W\s]*' example: Centro description: Bairro é uma comunidade ou região localizada em uma cidade ou município de acordo com as suas subdivisões geográficas. townName: type: string maxLength: 50 pattern: '[\w\W\s]*' example: Marília description: | Localidade: O nome da localidade corresponde à designação da cidade ou município no qual o endereço está localizado. countrySubDivision: $ref: '#/components/schemas/EnumCountrySubDivision' postCode: type: string pattern: '\d{8}|^NA$' maxLength: 8 example: '17500001' description: | Código de Endereçamento Postal: Composto por um conjunto numérico de oito dígitos, o objetivo principal do CEP é orientar e acelerar o encaminhamento, o tratamento e a entrega de objetos postados nos Correios, por meio da sua atribuição a localidades, logradouros, unidades dos Correios, serviços, órgãos públicos, empresas e edifícios. p.ex. '01311000'. country: type: string maxLength: 3 example: BRA description: Código do pais de acordo com o código “alpha3” do ISO-3166. additionalProperties: false InsuranceCapitalizationTitleHolder: type: object required: - holderName - holderDocumentType - holderDocumentNumber - holderAddress - holderTownName - holderCountrySubDivision - holderCountryCode - holderPostCode - holderRedemption - holderRaffle properties: holderName: description: Nome ou Razão Social do Titular type: string maxLength: 144 example: Nome do Titular holderDocumentType: description: Tipo de Documento do Titular type: string enum: [CPF, CNPJ, PASSAPORTE, OUTROS] example: OUTROS holderDocumentTypeOthers: description: Tipo de Documento do Titular, caso seja selecionado OUTROS. type: string holderDocumentNumber: description: Documento de Identificação do Titular type: string maxLength: 40 holderPhones: description: Lista com telefones do Titular (quando houver) type: array items: $ref: '#/components/schemas/RequestorPhone' holderAddress: description: | Endereço do titular type: string maxLength: 200 pattern: '[\w\W\s]*' example: "Av Naburo Ykesaki, 1270" holderAddressAdditionalInfo: type: string pattern: '[\w\W\s]*' example: Fundos description: Alguns logradouros ainda necessitam ser especificados por meio de complemento. holderTownName: type: string maxLength: 50 pattern: '[\w\W\s]*' example: Rio de Janeiro description: | Localidade: O nome da localidade corresponde à designação da cidade ou município no qual o endereço está localizado. Cidade do titular holderCountrySubDivision: description: Estado do titular allOf: - $ref: "#/components/schemas/EnumCountrySubDivision" holderCountryCode: description: | Código do pais de acordo com o código “alpha3” do ISO-3166. País do titular type: string maxLength: 3 example: BRA holderPostCode: description: | Código de Endereçamento Postal: Composto por um conjunto numérico de oito dígitos, o objetivo principal do CEP é orientar e acelerar o encaminhamento, o tratamento e a entrega de objetos postados nos Correios, por meio da sua atribuição a localidades, logradouros, unidades dos Correios, serviços, órgãos públicos, empresas e edifícios. p.ex. '01311000'. Código Postal do titular, Obrigatório, se houver type: string pattern: '\d{8}|^NA$' maxLength: 8 example: "17500001" holderRedemption: type: boolean description: Titular do direito de resgate? example: false holderRaffle: type: boolean description: Titular do direito de sorteio? example: false InsuranceCapitalizationTitleTechnicalProvisions: description: (Esses valores poderão sofrer alterações no momento do resgate/pagamento,conforme regras do produto nas condições gerais) type: object required: - pmcAmount - pdbAmount - prAmount - pspAmount properties: pmcAmount: description: Valor da PMC (fim do mes) - Valor da Provisão Matemática para Capitalização (PMC), no fim de cada mês. Caso não haja saldo informar nulo allOf: - $ref: '#/components/schemas/AmountDetails' pdbAmount: description: Valor da PDB (fim do mes) - Valor da Provisão para Distribuição de Bônus (PDB), no fim de cada mês. Caso não haja saldo informar nulo allOf: - $ref: '#/components/schemas/AmountDetails' prAmount: description: Valor da PR (fim do mes) - Valor da Provisão para Resgate (PR), no fim de cada mês. Caso não haja saldo informar nulo allOf: - $ref: '#/components/schemas/AmountDetails' pspAmount: description: Valor da PSP (fim do mes) - Valor da Provisão de Sorteios a Pagar (PSP), no fim de cada mês. Caso não haja saldo informar nulo allOf: - $ref: '#/components/schemas/AmountDetails' EnumCountrySubDivision: type: string description: 'Enumeração referente a cada sigla da unidade da federação que identifica o estado ou o distrito federal, no qual o endereço está localizado. p.ex. ''AC''. São consideradas apenas as siglas para os estados brasileiros' enum: - AC - AL - AP - AM - BA - CE - DF - ES - GO - MA - MT - MS - MG - PA - PB - PR - PE - PI - RJ - RN - RS - RO - RR - SC - SP - SE - TO example: SP EnumCivilStatusCode: type: string enum: - SOLTEIRO - CASADO - VIUVO - SEPARADO_JUDICIALMENTE - DIVORCIADO - UNIAO_ESTAVEL - OUTROS example: SOLTEIRO description: | Estado civil do cliente. RequestorPhone: type: object properties: countryCallingCode: type: string maxLength: 4 pattern: '^\d{1,4}$|^NA$' example: '55' description: Número de DDI (Discagem Direta Internacional) para telefone de acesso ao Cliente - se aplicável areaCode: $ref: '#/components/schemas/EnumAreaCode' number: type: string maxLength: 11 pattern: '^([0-9]{8,11})|^NA$' example: '29875132' description: Número de telefone do cliente additionalProperties: false EnumAreaCode: type: string example: '19' description: Número de DDD (Discagem Direta à Distância) do telefone do cliente - se houver enum: - '11' - '12' - '13' - '14' - '15' - '16' - '17' - '18' - '19' - '21' - '22' - '24' - '27' - '28' - '31' - '32' - '33' - '34' - '35' - '37' - '38' - '41' - '42' - '43' - '44' - '45' - '46' - '47' - '48' - '49' - '51' - '53' - '54' - '55' - '61' - '62' - '63' - '64' - '65' - '66' - '67' - '68' - '69' - '71' - '73' - '74' - '75' - '77' - '79' - '81' - '82' - '83' - '84' - '85' - '86' - '87' - '88' - '89' - '91' - '92' - '93' - '94' - '95' - '96' - '97' - '98' - '99' - NA EnumIncomeFrequency: type: string enum: - DIARIA - SEMANAL - QUINZENAL - MENSAL - BIMESTRAL - TRIMESTRAL - SEMESTRAL - ANUAL description: | Frequência da renda informada. EnumPersonalDocumentType: type: string enum: - CNH - RG - NIF - RNE - OUTROS - SEM_OUTROS_DOCUMENTOS example: CNH description: | Tipo do(s) documento(s) de identificação. EnumFiliationType: type: string enum: - MAE - PAI description: Tipo de filiação. EnumProcuratorsNaturePersonal: type: string enum: - REPRESENTANTE_LEGAL - PROCURADOR - NAO_SE_APLICA example: PROCURADOR description: | Natureza dos poderes vigentes de representante BusinessParties: type: array description: Conjunto de informações referentes ao vínculo com uma pessoa. items: properties: type: type: string maxLength: 13 example: SOCIO description: Tipo de vínculo com a pessoa jurídica enum: - SOCIO - ADMINISTRADOR civilName: type: string maxLength: 70 pattern: '[\w\W\s]*' example: Juan Kaique Cláudio Fernandes description: 'Nome civil completo da pessoa natural (Direito fundamental da pessoa, o nome civil é aquele atribuído à pessoa natural desde o registro de seu nascimento, com o qual será identificada por toda a sua vida, bem como após a sua morte)' socialName: type: string maxLength: 70 pattern: '^[\w\W]*$' example: 'string' description: | Nome social da pessoa natural, se houver. (aquele pelo qual travestis e transexuais se reconhecem, bem como são identificados por sua comunidade e em seu meio social, conforme Decreto Local). startDate: type: string format: date maxLength: 10 pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' example: '2014-05-21' description: 'Data de início da participação, conforme especificação RFC-3339.' shareholding: type: string format: double maxLength: 8 minLength: 8 pattern: '^[01]\.\d{6}$' example: '0.510000' description: | Percentual de participação societária (informar com 6 casas decimais). O Sócio só deve ser informado se sua participação societária for igual ou superior a 25%. documentType: type: string maxLength: 15 example: CPF description: 'Tipo de documento de identificação do sócio ou administrador' documentNumber: type: string maxLength: 20 pattern: '[\w\W\s]*' example: '73677831148' description: Número do documento informado. Campo Texto Livre para preencher número e dígito do documento se houver documentCountry: type: string maxLength: 3 pattern: '[\w*\W*]' example: BRA description: | País de emissão do documento. Código do pais de acordo com o código alpha3 do ISO-3166. documentExpirationDate: type: string format: date maxLength: 10 example: '2021-05-21' pattern: '^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])$' description: 'Data de validade do documento informado, conforme especificação RFC-3339.' additionalProperties: false BusinessContact: type: object description: Conjunto de informações referentes às formas para contatar o cliente. required: - postalAddresses properties: postalAddresses: type: array items: $ref: '#/components/schemas/BusinessPostalAddress' minItems: 1 description: Lista de endereços da pessoa jurídica phones: type: array items: $ref: '#/components/schemas/CustomerPhone' minItems: 1 description: Lista com telefones de contato da pessoa jurídica emails: type: array items: $ref: '#/components/schemas/CustomerEmail' minItems: 1 description: Lista e-mails de contato additionalProperties: false BusinessPostalAddress: type: object required: - address - townName - countrySubDivision - postCode - country properties: address: type: string maxLength: 200 pattern: '[\w\W\s]*' example: 'Av Naburo Ykesaki, 1270' description: Corresponde ao endereço residencial do cliente. additionalInfo: type: string maxLength: 30 pattern: '[\w\W\s]*' example: Fundos description: Alguns logradouros ainda necessitam ser especificados por meio de complemento. districtName: type: string maxLength: 50 pattern: '[\w\W\s]*' example: Centro description: Bairro é uma comunidade ou região localizada em uma cidade ou município de acordo com as suas subdivisões geográficas. townName: type: string maxLength: 50 pattern: '[\w\W\s]*' example: Marília description: | Localidade: O nome da localidade corresponde à designação da cidade ou município no qual o endereço está localizado. countrySubDivision: $ref: '#/components/schemas/EnumCountrySubDivision' postCode: type: string pattern: '\d{8}|^NA$' maxLength: 8 example: '17500001' description: | Código de Endereçamento Postal: Composto por um conjunto numérico de oito dígitos, o objetivo principal do CEP é orientar e acelerar o encaminhamento, o tratamento e a entrega de objetos postados nos Correios, por meio da sua atribuição a localidades, logradouros, unidades dos Correios, serviços, órgãos públicos, empresas e edifícios. p.ex. '01311000'. ibgeTownCode: type: string pattern: '\d{7}|^NA$' maxLength: 8 example: '17500001' description: | Código IBGE do município country: type: string maxLength: 60 example: Brasil countryCode: type: string maxLength: 3 example: BRA description: Código do pais de acordo com o código “alpha3” do ISO-3166. geographicCoordinates: $ref: '#/components/schemas/GeographicCoordinates' additionalProperties: false GeographicCoordinates: type: object description: 'Conjunto de informações, que correspondem aos valores das coordenadas geográficas em graus decimais, no Sistema de referência WGS84' properties: latitude: description: | Informação da Latitude referente a geolocalização informada. Entre -90 e 90.p.ex. '-23.5475000'. (2 casas antes da vírgula, 11 posições) type: string pattern: '^-?\d{1,3}\.\d{1,10}$' example: '-23.5475000' longitude: description: | Informação da Longitude referente a geolocalização informada. Entre -180 e 180. p.ex '-46.6361100'. (3 casas antes da vírgula, 11 posições) type: string pattern: '^-?\d{1,3}\.\d{1,10}$' example: '-46.6361100' additionalProperties: false RevokePatchPayload: type: object required: - data properties: data: type: object description: Revogação de LEAD. required: - author properties: author: type: object required: - identificationType - identificationNumber properties: identificationType: type: string description: Tipo identificação (CPF ou CNPJ) do solicitante do cancelamento/revogação. enum: [CPF,CNPJ] example: CPF identificationNumber: type: string description: Número de identificação (CPF ou CNPJ) do solicitante do cancelamento/revogação. maxLength: 20 pattern: '[\w\W\s]*' example: '73677831148' ResponseRevokePatch: type: object required: - data properties: data: type: object description: Objeto contendo informações da atualização. required: - status properties: status: description: Status da cotação. type: string enum: [CANC] PatchPayload: type: object required: - data properties: data: type: object required: - status - author properties: status: description: Status da cotação. type: string enum: [ACKN,CANC] insurerQuoteId: type: string description: | Id da proposta da segurada Esse ID é utilizado em jornadas de cotação completa/firme e leva o número identificador da proposta aceita (ACKN) pelo cliente. Condicional ao status de ACKN. author: type: object required: - identificationType - identificationNumber properties: identificationType: type: string description: Tipo identificação (CPF ou CNPJ) do solicitante do cancelamento/revogação. enum: [CPF,CNPJ] example: CPF identificationNumber: type: string description: Número de identificação (CPF ou CNPJ) do solicitante do cancelamento/revogação. maxLength: 20 pattern: '[\w\W\s]*' example: '73677831148' ResponsePatch: type: object required: - data properties: data: type: object description: Objeto contendo informações da atualização. required: - status properties: status: description: Status da cotação. type: string enum: [ACKN,CANC] insurerQuoteId: type: string description: | Id da proposta da segurada Esse ID é utilizado em jornadas de cotação completa/firme e leva o número identificador da proposta aceita (ACKN) pelo cliente. Condicional ao status de ACKN. protocolNumber: description: Protocolo referente a cotação aceita. Condicional ao status de ACKN. type: string maxLength: 60 protocolDateTime: description: Data e hora do protocolamento da cotação, conforme especificação RFC-3339, formato UTC. Condicional ao status de ACKN. type: string maxLength: 2048 format: date-time example: '2021-08-20T08:30:00Z' redirectLink: type: string description: 'Link interno para direcionamento para o ambiente da sociedade de capitalização. Não possui restrição, ambiente de direcionamento escolhido a critério da sociedade de capitalização. Condicional ao status de ACKN.' allOf: - $ref: "#/components/schemas/LinkInfo" Links: type: object properties: self: type: string description: URL da página atualmente requisitada example: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' first: type: string description: URL da primeira página de registros example: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' prev: type: string description: URL da página anterior de registros example: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' next: type: string description: URL da próxima página de registros example: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' last: type: string description: URL da última página de registros example: 'https://api.organizacao.com.br/open-insurance/quote-capitalization-title/v1' Meta: type: object properties: totalRecords: type: integer description: Total de registros encontrados example: 10 totalPages: type: integer description: Total de páginas para os registros encontrados example: 1 required: - totalRecords - totalPages ResponseError: type: object required: - errors properties: errors: type: array minItems: 1 maxItems: 13 items: type: object required: - code - title - detail properties: code: description: Código de erro específico do endpoint type: string pattern: '[\w\W\s]*' maxLength: 255 title: description: Título legível por humanos deste erro específico type: string maxLength: 255 detail: description: Descrição legível por humanos deste erro específico type: string maxLength: 2048 requestDateTime: description: 'Data e hora da consulta, conforme especificação RFC-3339, formato UTC.' type: string maxLength: 2048 format: date-time example: '2021-08-20T08:30:00Z' additionalProperties: false meta: $ref: '#/components/schemas/Meta' additionalProperties: false 422ResponseErrorCreateCapitalizationTitle: type: object required: - errors properties: errors: type: object minItems: 1 required: - code - title - detail properties: code: type: string enum: - ERRO_IDEMPOTENCIA - NAO_INFORMADO example: 'ERRO_IDEMPOTENCIA' description: 'Código do erro 422 de Entidade não processada.' title: type: string maxLength: 255 pattern: '[\w\W\s*]' example: 'Tentativa de alteração de requisição já processada' description: | - ERRO_ IDEMPOTENCIA: Tentativa de alteração de requisição já processada - NÃO_INFORMADO: Não informada pelo servidor detail: type: string maxLength: 2048 pattern: '[\w\W\s*]' example: 'Tentativa de alteração de requisição já processada' description: | - ERRO_ IDEMPOTENCIA: Tentativa de alteração de requisição já processada - NÃO_INFORMADO: Não informada pelo servidor meta: $ref: '#/components/schemas/Meta' XFapiInteractionId: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' maxLength: 100 description: 'Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta.' QuoteRequestCapitalizationTitleLead: type: object required: - data properties: data: type: object required: - consentId - quoteCustomer properties: consentId: description: | O consentId é o identificador único do consentimento e deverá ser um URN - Uniform Resource Name. Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN seja um identificador de recurso persistente e independente da localização. Considerando a string urn:initiator:C1DD93123 como exemplo para consentId temos: - o namespace(urn) - o identificador associado ao namespace da instituição transnmissora (initiator) - o identificador específico dentro do namespace (C1DD93123). Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141). type: string pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$' maxLength: 256 example: 'urn:initiator:C1DD93123' quoteCustomer: type: object description: Objeto que agrupa as categorias de dados cadastrais do cliente. properties: identificationData: oneOf: - $ref: '#/components/schemas/PersonalIdentificationData' - $ref: '#/components/schemas/BusinessIdentificationData' qualificationData: oneOf: - $ref: '#/components/schemas/PersonalQualificationData' - $ref: '#/components/schemas/BusinessQualificationData' complimentaryInformationData: oneOf: - $ref: '#/components/schemas/PersonalComplimentaryInformationData' - $ref: '#/components/schemas/BusinessComplimentaryInformationData' historicalData: type: object description: Objeto que agrupa todos dados históricos do cliente. properties: customer: type: object description: Dados históricos cadastrais do cliente properties: identificationData: oneOf: - $ref: '#/components/schemas/HistoricalPersonalIdentificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) - $ref: '#/components/schemas/HistoricalBusinessIdentificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) qualificationData: oneOf: - $ref: '#/components/schemas/HistoricalPersonalQualificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) - $ref: '#/components/schemas/HistoricalBusinessQualificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) complimentaryInformationData: oneOf: - $ref: '#/components/schemas/HistoricalPersonalComplimentaryInformationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) - $ref: '#/components/schemas/HistoricalBusinessComplimentaryInformationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) plans: $ref: '#/components/schemas/PlanDataCapitalizationTitleLead' ###### quoteRequest ResponseQuoteCapitalizationTitleLead: type: object required: - data - links - meta properties: data: $ref: '#/components/schemas/QuoteStatus' links: $ref: '#/components/schemas/Links' meta: $ref: '#/components/schemas/Meta' QuoteRequestCapitalizationTitle: type: object required: - data properties: data: type: object required: - consentId - quoteData - quoteCustomer properties: consentId: description: | O consentId é o identificador único do consentimento e deverá ser um URN - Uniform Resource Name. Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource Identifier - URI - que é atribuído sob o URI scheme "urn" e um namespace URN específico, com a intenção de que o URN seja um identificador de recurso persistente e independente da localização. Considerando a string urn:initiator:C1DD93123 como exemplo para consentId temos: - o namespace(urn) - o identificador associado ao namespace da instituição transnmissora (initiator) - o identificador específico dentro do namespace (C1DD93123). Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141). type: string pattern: '^urn:[a-zA-Z0-9][a-zA-Z0-9-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$' maxLength: 256 example: 'urn:initiator:C1DD93123' quoteCustomer: type: object description: Objeto que agrupa as categorias de dados cadastrais do cliente. properties: identificationData: oneOf: - $ref: '#/components/schemas/PersonalIdentificationData' - $ref: '#/components/schemas/BusinessIdentificationData' qualificationData: oneOf: - $ref: '#/components/schemas/PersonalQualificationData' - $ref: '#/components/schemas/BusinessQualificationData' complimentaryInformationData: oneOf: - $ref: '#/components/schemas/PersonalComplimentaryInformationData' - $ref: '#/components/schemas/BusinessComplimentaryInformationData' quoteData: $ref: '#/components/schemas/QuoteDataCapitalizationTitle' quoteCustomData: $ref: '#/components/schemas/QuoteCustomData' historicalData: type: object description: Objeto que agrupa todos dados históricos do cliente. properties: customer: type: object description: Dados históricos cadastrais do cliente properties: identificationData: oneOf: - $ref: '#/components/schemas/HistoricalPersonalIdentificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) - $ref: '#/components/schemas/HistoricalBusinessIdentificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) qualificationData: oneOf: - $ref: '#/components/schemas/HistoricalPersonalQualificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) - $ref: '#/components/schemas/HistoricalBusinessQualificationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) complimentaryInformationData: oneOf: - $ref: '#/components/schemas/HistoricalPersonalComplimentaryInformationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) - $ref: '#/components/schemas/HistoricalBusinessComplimentaryInformationData' ## schema dados cadastrais de fase 2 (customers v1.1.1) plans: $ref: '#/components/schemas/PlanDataCapitalizationTitle' ###### quoteRequest ResponseQuoteStatusCapitalizationTitle: type: object required: - data - links - meta properties: data: type: object required: - status - statusUpdateDateTime properties: status: description: Status da cotação. type: string enum: [RCVD, EVAL, ACPT, RJCT, ACKN, CANC] statusUpdateDateTime: type: string description: Data e hora da atualização do status. format: date-time quoteInfo: type: object description: Objeto que agrupa todos os dados de cotação. Condicional ao pedido de cotação já ter sido aceita. allOf: - $ref: '#/components/schemas/QuoteStatusCapitalizationTitle' links: $ref: '#/components/schemas/Links' meta: $ref: '#/components/schemas/Meta' ResponseQuoteCapitalizationTitle: type: object required: - data - links - meta properties: data: $ref: '#/components/schemas/QuoteStatus' links: $ref: '#/components/schemas/Links' meta: $ref: '#/components/schemas/Meta' RequestCapitalizationTitleRaffle: type: object required: - data properties: data: type: object description: Objeto contendo dados da solicitação de Pagamento de Sorteio de Título de Capitalização. required: - modality - susepProcessNumber - contactType - email - phone - cpfNumber properties: modality: type: string description: Modalidade enum: [TRADICIONAL, INSTRUMENTO_GARANTIA, COMPRA_PROGRAMADA, POPULAR, INCENTIVO, FILANTROPIA_PREMIAVEL] susepProcessNumber: description: Número do Processo Susep type: string maxLength: 70 example: "12345" contactType: description: Tipo de contato de preferência type: string enum: [EMAIL, TELEFONE] email: type: string description: Endereço de email maxLength: 320 pattern: '\S+@\S+\.\S+' example: nome@br.net phone: $ref: "#/components/schemas/CustomerPhone" cpfNumber: type: string maxLength: 11 pattern: '^\d{11}$|^NA$' description: | Número completo do CPF. Atributo que corresponde às informações mínimas exigidas pela Regulamentação em vigor. O CPF é o Cadastro de Pessoa natural. Ele é um documento feito pela Receita Federal e serve para identificar os contribuintes. O CPF é uma numeração com 11 dígitos, que só mudam por decisão judicial. O documento é emitido pela receita federal Condicional a seleção de true em hasBrazilianNationality raffleCustomData: $ref: '#/components/schemas/RaffleCustomData' ResponseCapitalizationTitleRaffle: type: object required: - data properties: data: type: object description: Objeto contendo dados da resposta da solicitação de Pagamento de Sorteio de Título de Capitalização. required: - protocolNumber - protocolDateTime - modality - susepProcessNumber - rafflePaymentInformation - redirectLink properties: protocolNumber: type: string description: Protocolo de solicitação do Pagamento de Sorteio. maxLength: 100 protocolDateTime: type: string format: date-time maxLength: 20 example: '2021-08-20T08:30:00Z' description: Data e hora de solicitação do Pagamento de Sorteio. modality: type: string description: Modalidade enum: [TRADICIONAL, INSTRUMENTO_GARANTIA, COMPRA_PROGRAMADA, POPULAR, INCENTIVO, FILANTROPIA_PREMIAVEL] susepProcessNumber: description: Número do Processo Susep type: string maxLength: 70 example: "12345" rafflePaymentInformation: $ref: '#/components/schemas/RafflePaymentInformationCapitalizationTitleRaffle' redirectLink: description: 'Link interno para direcionamento para o ambiente da sociedade de capitalização. Não possui restrição, ambiente de direcionamento escolhido a critério da sociedade de capitalização.' allOf: - $ref: "#/components/schemas/LinkInfo" raffleCustomData: $ref: '#/components/schemas/RaffleCustomData' links: $ref: '#/components/schemas/Links' meta: $ref: '#/components/schemas/Meta' RafflePaymentInformationCapitalizationTitleRaffle: type: object description: Objeto contendo dados do resultado de Sorteio de Título de Capitalização. required: - raffleResult - prizeValue properties: raffleResult: description: Resultado do sorteio. Se prevalece o resultado de CONTEMPLADO caso o cliente possua mais de um título com um ou mais CONTEMPLADO ou mais não CONTEMPLADO na seguradora. type: string enum: [CONTEMPLADO, NAO_EXISTEM_TITULOS_CONTEMPLADOS_A_SEREM_PAGOS, NAO_POSSUI_TITULOS] raffleResultOthers: type: string description: Campo aberto para descrição do status. maxLength: 5000 prizeValue: description: Valor da premiação. Este valor será submetido a análise e estará sujeito as alterações (aplicação de impostos, variação de saldos, entre outros) allOf: - $ref: "#/components/schemas/AmountDetails" parameters: consentId: name: consentId in: path required: true schema: type: string maxLength: 60 Authorization: name: Authorization in: header description: Cabeçalho HTTP padrão. Permite que as credenciais sejam fornecidas dependendo do tipo de recurso solicitado. required: true schema: type: string pattern: '[\w\W\s]*' maxLength: 2048 xIdempotencyKey: name: x-idempotency-key in: header description: Cabeçalho HTTP personalizado. Identificador de solicitação exclusivo para suportar a idempotência. required: true schema: type: string minLength: 1 maxLength: 40 pattern: ^(?!\s)(.*)(\S)$ page: name: page in: query description: Número da página que está sendo requisitada (o valor da primeira página é 1). schema: type: integer default: 1 minimum: 1 format: int32 pageSize: name: page-size in: query description: Quantidade total de registros por páginas. schema: type: integer default: 25 minimum: 1 format: int32 maximum: 1000 xCustomerUserAgent: name: x-customer-user-agent in: header description: Indica o user-agent que o usuário utiliza. required: false schema: type: string pattern: '[\w\W\s]*' minLength: 1 maxLength: 100 xFapiAuthDate: name: x-fapi-auth-date in: header description: 'Data em que o usuário logou pela última vez com o receptor. Representada de acordo com a [RFC7231](https://tools.ietf.org/html/rfc7231). Exemplo: Sun, 10 Sep 2017 19:43:31 UTC' required: false schema: type: string pattern: '^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), \d{2} (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) \d{4} \d{2}:\d{2}:\d{2} (GMT|UTC)$' minLength: 29 maxLength: 29 xFapiCustomerIpAddress: name: x-fapi-customer-ip-address in: header description: O endereço IP do usuário se estiver atualmente logado com o receptor. required: false schema: type: string pattern: '[\w\W\s]*' minLength: 1 maxLength: 100 xFapiInteractionId: name: x-fapi-interaction-id in: header description: 'Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta.' required: true schema: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' minLength: 1 maxLength: 100 securitySchemes: OpenId: type: openIdConnect openIdConnectUrl: 'https://auth.mockbank.poc.raidiam.io/.well-known/openid-configuration' OAuth2Security: type: oauth2 flows: authorizationCode: authorizationUrl: 'https://authserver.example/authorization' tokenUrl: 'https://authserver.example/token' scopes: quote-capitalization-title-lead: Escopo necessário para acesso à API Quote Capitalization Title. quote-capitalization-title: Escopo necessário para acesso à API Quote Capitalization Title. quote-capitalization-title-raffle: Escopo necessário para acesso à API Quote Capitalization Title. responses: BadRequest: description: 'A requisição foi malformada, omitindo atributos obrigatórios, seja no payload ou através de atributos na URL' content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' Forbidden: description: O token tem escopo incorreto ou uma política de segurança foi violada content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' InternalServerError: description: Ocorreu um erro no gateway da API ou no microsserviço content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' MethodNotAllowed: description: O consumidor tentou acessar o recurso com um método não suportado content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' NotAcceptable: description: A solicitação continha um cabeçalho Accept diferente dos tipos de mídia permitidos ou um conjunto de caracteres diferente de UTF-8 content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' NotFound: description: O recurso solicitado não existe ou não foi implementado content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' TooManyRequests: description: 'A operação foi recusada, pois muitas solicitações foram feitas dentro de um determinado período ou o limite global de requisições concorrentes foi atingido' content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' Unauthorized: description: Cabeçalho de autenticação ausente/inválido ou token inválido content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' UnprocessableEntity: description: O servidor entende o tipo de conteúdo da entidade da requisição, e a sintaxe da requisição esta correta, mas não foi possível processar as instruções presentes. Seguir as orientações presentes na descrição deste endpoint. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/ResponseError' UnprocessableEntityRaffle: description: O servidor entende o tipo de conteúdo da entidade da requisição, e a sintaxe da requisição esta correta, mas não foi possível processar as instruções presentes. Seguir as orientações presentes na descrição deste endpoint. content: application/json; charset=utf-8: schema: $ref: '#/components/schemas/422ResponseErrorCreateCapitalizationTitle' OKResponseQuoteRequestCapitalizationTitleLead: description: Dados de CapitalizationTitleLead criados com sucesso headers: x-fapi-interaction-id: schema: $ref: '#/components/schemas/XFapiInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseQuoteCapitalizationTitleLead' 200UpdatedQuoteCapitalizationTitleLead: description: "Atualização de CapitalizationTitleLead feita com sucesso" headers: x-fapi-interaction-id: description: | Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta. schema: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' minLength: 1 maxLength: 100 example: 73cac523-d3ae-2289-b106-330a6218710d content: application/json: schema: $ref: '#/components/schemas/ResponseRevokePatch' OKResponseQuoteRequestCapitalizationTitle: description: Dados de CapitalizationTitle criados com sucesso headers: x-fapi-interaction-id: schema: $ref: '#/components/schemas/XFapiInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseQuoteCapitalizationTitle' 200QuoteStatusCapitalizationTitle: description: Dados de CapitalizationTitle obtidos com sucesso headers: x-fapi-interaction-id: description: | Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta. schema: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' minLength: 1 maxLength: 100 example: 73cac523-d3ae-2289-b106-330a6218710d content: application/json: schema: $ref: '#/components/schemas/ResponseQuoteStatusCapitalizationTitle' 200UpdatedQuoteCapitalizationTitle: description: "Atualização de CapitalizationTitle feita com sucesso" headers: x-fapi-interaction-id: description: | Um UID [RFC4122](https://tools.ietf.org/html/rfc4122) usado como um ID de correlação. Se fornecido, o transmissor deve "reproduzir" esse valor no cabeçalho de resposta. schema: type: string pattern: '^[a-zA-Z0-9][a-zA-Z0-9\-]{0,99}$' minLength: 1 maxLength: 100 example: 73cac523-d3ae-2289-b106-330a6218710d content: application/json: schema: $ref: '#/components/schemas/ResponsePatch' CreatedCapitalizationTitleRaffle: description: Dados do sorteio enviado com sucesso headers: x-fapi-interaction-id: schema: $ref: '#/components/schemas/XFapiInteractionId' content: application/json: schema: $ref: '#/components/schemas/ResponseCapitalizationTitleRaffle'