openapi: 3.0.0 info: title: API Previdência Risco - Open Insurance Brasil description: | API de Previdência Risco do Open Insurance Brasil - Fase 2.\ Traz informações de contrato, contribuições e benefício, portabilidade, resgate e sinistro mantidas nas instituições transmissoras por seus clientes.\ Não possui segregação entre pessoa natural e pessoa jurídica.\ Requer consentimento do cliente para todos os `endpoints`. # Orientações A `Role` do diretório de participantes relacionada à presente API é a `DADOS`.\ 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 devolvidos na consulta desde que o `consentId` relacionado corresponda a um consentimento válido e com o status `AUTHORISED`.\ É também necessário que o recurso em questão (conta, contrato, etc.) esteja disponível na instituição transmissora (ou seja, sem boqueios de qualquer natureza e com todas as autorizações/consentimentos já autorizados).\ 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 a consulta de dados em cada `endpoint` da presente API. ## Permissions necessárias para a API InsurancePensionPlan Para cada um dos `paths` desta API, além dos escopos (`scopes`) indicados existem `permissions` que deverão ser observadas: ### `/contracts` - permissions: - GET: **PENSION_PLAN_READ** ### `/{pensionIdentification}/contract-info` - permissions: - GET: **PENSION_PLAN_CONTRACTINFO_READ** ### `/{pensionIdentification}/movements` - permissions: - GET: **PENSION_PLAN_MOVEMENTS_READ** ### `/{pensionIdentification}/portabilites` - permissions: - GET: **PENSION_PLAN_PORTABILITIES_READ** ### `/{pensionIdentification}/withdrawals` - permissions: - GET: **PENSION_PLAN_WITHDRAWALS_READ** ### `/{pensionIdentification}/claim` - permissions: - GET: **PENSION_PLAN_CLAIM** version: 1.5.0 contact: name: Governança do Open Insurance Brasil url: "https://www.gov.br/susep" servers: - url: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1" description: Servidor de Produção - url: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1" description: Servidor de Homologação tags: - name: InsurancePensionPlan description: Dados transacionais de Previdência Risco paths: /insurance-pension-plan/contracts: get: tags: - InsurancePensionPlan summary: Obtem a lista de identificação de InsurancePensionPlan description: "Método para obter a lista de identificação de InsurancePensionPlan" operationId: "getInsurancePensionPlan" parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/xFapiAuthDate" - $ref: "#/components/parameters/xFapiCustomerIpAddress" - $ref: "#/components/parameters/xFapiInteractionId" - $ref: "#/components/parameters/xCustomerUserAgent" - $ref: "#/components/parameters/x-v" - $ref: "#/components/parameters/x-min-v" - $ref: "#/components/parameters/page" - $ref: "#/components/parameters/pageSize" responses: "200": $ref: "#/components/responses/OKResponseInsurancePensionPlan" "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" security: - OpenId: - openid OAuth2Security: - "consent:consentId" - insurance-pension-plan /insurance-pension-plan/{pensionIdentification}/contract-info: get: tags: - InsurancePensionPlan summary: Obtém as informações gerais do contrato identificado por {pensionIdentification} description: "Método para obter as informações gerais do contrato" operationId: "getInsurancePensionPlanpensionIdentificationContractInfo" parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/xFapiAuthDate" - $ref: "#/components/parameters/xFapiCustomerIpAddress" - $ref: "#/components/parameters/xFapiInteractionId" - $ref: "#/components/parameters/xCustomerUserAgent" - $ref: "#/components/parameters/pensionIdentification" - $ref: "#/components/parameters/x-v" - $ref: "#/components/parameters/x-min-v" responses: "200": $ref: "#/components/responses/OKResponseInsurancePensionPlanContractInfo" "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" security: - OpenId: - openid OAuth2Security: - "consent:consentId" - insurance-pension-plan /insurance-pension-plan/{pensionIdentification}/movements: get: tags: - InsurancePensionPlan summary: Obtém os dados de contribuições do contrato identificado por {pensionIdentification} description: "Método para obter os dados de contribuições do contrato." operationId: "getInsurancePensionPlanpensionIdentificationMovements" parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/xFapiAuthDate" - $ref: "#/components/parameters/xFapiCustomerIpAddress" - $ref: "#/components/parameters/xFapiInteractionId" - $ref: "#/components/parameters/xCustomerUserAgent" - $ref: "#/components/parameters/pensionIdentification" - $ref: "#/components/parameters/x-v" - $ref: "#/components/parameters/x-min-v" responses: "200": $ref: "#/components/responses/OKResponseInsurancePensionPlanMovements" "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" security: - OpenId: - openid OAuth2Security: - "consent:consentId" - insurance-pension-plan /insurance-pension-plan/{pensionIdentification}/portabilities: get: tags: - InsurancePensionPlan summary: Obtém os dados de portabilidades do contrato identificada por {pensionIdentification} description: "Método para obter os dados de portabilidades associadas ao contrato" operationId: "getInsurancePensionPlanpensionIdentificationPortabilities" parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/xFapiAuthDate" - $ref: "#/components/parameters/xFapiCustomerIpAddress" - $ref: "#/components/parameters/xFapiInteractionId" - $ref: "#/components/parameters/xCustomerUserAgent" - $ref: "#/components/parameters/pensionIdentification" - $ref: "#/components/parameters/x-v" - $ref: "#/components/parameters/x-min-v" - $ref: "#/components/parameters/page" - $ref: "#/components/parameters/pageSize" responses: "200": $ref: "#/components/responses/OKResponseInsurancePensionPlanPortabilities" "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" security: - OpenId: - openid OAuth2Security: - "consent:consentId" - insurance-pension-plan /insurance-pension-plan/{pensionIdentification}/withdrawals: get: tags: - InsurancePensionPlan summary: Obtém os dados de resgates do contrato identificado por {pensionIdentification} description: "Método para obter os dados de resgates associados ao contrato" operationId: "getInsurancePensionPlanpensionIdentificationWithdrawals" parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/xFapiAuthDate" - $ref: "#/components/parameters/xFapiCustomerIpAddress" - $ref: "#/components/parameters/xFapiInteractionId" - $ref: "#/components/parameters/xCustomerUserAgent" - $ref: "#/components/parameters/pensionIdentification" - $ref: "#/components/parameters/x-v" - $ref: "#/components/parameters/x-min-v" - $ref: "#/components/parameters/page" - $ref: "#/components/parameters/pageSize" responses: "200": $ref: "#/components/responses/OKResponseInsurancePensionPlanWithdrawals" "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" security: - OpenId: - openid OAuth2Security: - "consent:consentId" - insurance-pension-plan /insurance-pension-plan/{pensionIdentification}/claim: get: tags: - InsurancePensionPlan summary: Obtém os dados de sinistro do contrato identificado por {pensionIdentification} description: "Método para obter os dados de sinistro associados ao contrato" operationId: "getInsurancePensionPlanpensionIdentificationPeople" parameters: - $ref: "#/components/parameters/Authorization" - $ref: "#/components/parameters/xFapiAuthDate" - $ref: "#/components/parameters/xFapiCustomerIpAddress" - $ref: "#/components/parameters/xFapiInteractionId" - $ref: "#/components/parameters/xCustomerUserAgent" - $ref: "#/components/parameters/pensionIdentification" - $ref: "#/components/parameters/x-v" - $ref: "#/components/parameters/x-min-v" - $ref: "#/components/parameters/page" - $ref: "#/components/parameters/pageSize" responses: "200": $ref: "#/components/responses/OKResponseInsurancePensionPlanClaim" "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" security: - OpenId: - openid OAuth2Security: - "consent:consentId" - insurance-pension-plan components: schemas: ResponseInsurancePensionPlan: type: object required: - data - links - meta properties: data: type: array items: type: object required: - brand properties: brand: type: object description: Marca reportada pelo participante do Open Insurance. O conceito a que se refere a marca é em essência uma promessa das sociedades sob ela em fornecer uma série específica de atributos, benefícios e serviços uniformes aos clientes. required: - name - companies properties: name: type: string description: Nome da Marca maxLength: 500 example: EMPRESA A SEGUROS companies: type: array items: type: object required: - companyName - cnpjNumber - contracts properties: companyName: description: Nome da sociedade pertencente à marca type: string maxLength: 80 example: Empresa da Organização A cnpjNumber: description: CNPJ da sociedade pertencente à marca type: string pattern: '^\d{14}$' example: "12345678901234" contracts: type: array items: type: object required: - pensionIdentification - productName properties: productName: type: string description: Nome comercial do produto, pelo qual é identificado nos canais de distribuição e atendimento da sociedade maxLength: 100 pensionIdentification: description: Código único a ser definido pela sociedade participante type: string maxLength: 60 example: "42" links: $ref: "#/components/schemas/Links" meta: $ref: "#/components/schemas/Meta" ResponseInsurancePensionPlanContractInfo: type: object required: - data - links - meta properties: data: $ref: "#/components/schemas/InsurancePensionPlanContractInfo" links: $ref: "#/components/schemas/Links" meta: $ref: "#/components/schemas/Meta" InsurancePensionPlanContractInfo: type: object required: - pensionIdentification - contractingType - documents properties: pensionIdentification: description: Código único a ser definido pela sociedade type: string maxLength: 60 example: "42" contractingType: description: Tipo de contratação type: string enum: [COLETIVO, INDIVIDUAL] example: INDIVIDUAL planType: description: Tipo do plano, obrigatório se houver type: string enum: - AVERBADO - INSTITUIDO_CONTRIBUTARIO - INSTITUIDO_NAO_CONTRIBUTARIO example: AVERBADO documents: type: array items: $ref: "#/components/schemas/InsurancePensionPlanDocuments" InsurancePensionPlanDocuments: type: object required: - certificateId - effectiveDateStart - effectiveDateEnd - proposalId - insureds - plans properties: certificateId: description: Identificador utilizado para as "entidades de 1º nível", a saber, apólices individuais , bilhetes ei certificados de participante individual de previdência; por sua vez, nas operações coletivas equivale às apólices coletivas e aos contratos coletivos de previdência type: string maxLength: 60 example: "67" contractId: description: identificação do contrato/apólice, em caso de contratação coletiva, obrigatório caso Tipo de contratação seja COLETIVO type: string maxLength: 60 example: "681" effectiveDateStart: description: Data de Início da Vigência do documento. type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" effectiveDateEnd: description: Data de Fim da Vigência do documento. type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" proposalId: description: Identificador da Proposta type: string maxLength: 60 example: "987" insureds: type: array items: $ref: "#/components/schemas/InsurancePensionPlanDocumentsInsured" beneficiary: type: array items: $ref: "#/components/schemas/InsurancePensionPlanDocumentsBeneficiary" intermediary: type: array items: $ref: "#/components/schemas/InsurancePensionPlanDocumentsIntermediary" plans: $ref: "#/components/schemas/InsurancePensionPlanDocumentsPlans" InsurancePensionPlanDocumentsInsured: description: Informações do segurado/participante type: object required: - documentType - documentNumber - name - birthDate - gender - postCode - townName - countrySubDivision - countryCode - address properties: documentType: type: string description: Tipo de Documento do Segurado/Participante enum: [CPF, OUTROS] example: CPF documentTypeOthers: description: Descrição do Tipo de Documento quando for informada a opção OUTROS type: string example: OUTROS documentNumber: description: Documento do Segurado/Participante type: string maxLength: 60 example: "12345678910" name: description: Nome do Segurado/Participante type: string maxLength: 80 example: Juan Kaique Cláudio Fernandes birthDate: description: "Data de nascimento, conforme especificação RFC-3339" type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" gender: description: Sexo do Segurado / Participante, Obrigatório, se houver type: string enum: [MASCULINO, FEMININO, NAO_INFORMADO] postCode: 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 Segurado / Participante, Obrigatório, se houver type: string pattern: '\d{8}|^NA$' maxLength: 8 example: "17500001" email: description: Endereço de email, Obrigatório, se houver type: string maxLength: 320 pattern: '^\S+@\S+\.\S+$' example: nome@br.net townName: type: string maxLength: 50 pattern: '^[A-Za-z\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 Segurado / Participante countrySubDivision: description: Estado do Segurado / Participante allOf: - $ref: "#/components/schemas/EnumCountrySubDivision" countryCode: description: | Código do pais de acordo com o código “alpha3” do ISO-3166. País do Segurado / Participante type: string enum: [AFG,ALA,ALB,DZA,ASM,AND,AGO,AIA,ATA,ATG,ARG,ARM,ABW,AUS,AUT,AZE,BHS,BHR,BGD,BRB,BLR,BEL,BLZ,BEN,BMU,BTN,BOL,BES,BIH,BWA,BVT, BRA,IOT,BRN,BGR,BFA,BDI,CPV,KHM,CMR,CAN,CYM,CAF,TCD,CHL,CHN,CXR,CCK,COL,COM,COG,COD,COK,CRI,CIV,HRV,CUB,CUW,CYP,CZE,DNK,DJI,DMA, DOM,ECU,EGY,SLV,GNQ,ERI,EST,SWZ,ETH,FLK,FRO,FJI,FIN,FRA,GUF,PYF,ATF,GAB,GMB,GEO,DEU,GHA,GIB,GRC,GRL,GRD,GLP,GUM,GTM,GGY,GIN,GNB, GUY,HTI,HMD,VAT,HND,HKG,HUN,ISL,IND,IDN,IRN,IRQ,IRL,IMN,ISR,ITA,JAM,JPN,JEY,JOR,KAZ,KEN,KIR,PRK,KOR,KWT,KGZ,LAO,LVA,LBN,LSO,LBR, LBY,LIE,LTU,LUX,MAC,MDG,MWI,MYS,MDV,MLI,MLT,MHL,MTQ,MRT,MUS,MYT,MEX,FSM,MDA,MCO,MNG,MNE,MSR,MAR,MOZ,MMR,NAM,NRU,NPL,NLD,NCL,NZL, NIC,NER,NGA,NIU,NFK,MKD,MNP,NOR,OMN,PAK,PLW,PSE,PAN,PNG,PRY,PER,PHL,PCN,POL,PRT,PRI,QAT,REU,ROU,RUS,RWA,BLM,SHN,KNA,LCA,MAF,SPM, VCT,WSM,SMR,STP,SAU,SEN,SRB,SYC,SLE,SGP,SXM,SVK,SVN,SLB,SOM,ZAF,SGS,SSD,ESP,LKA,SDN,SUR,SJM,SWE,CHE,SYR,TWN,TJK,TZA,THA,TLS,TGO, TKL,TON,TTO,TUN,TUR,TKM,TCA,TUV,UGA,UKR,ARE,GBR,USA,UMI,URY,UZB,VUT,VEN,VNM,VGB,VIR,WLF,ESH,YEM,ZMB,ZWE] example: BRA address: description: | Endereço do Segurado / Participante type: string maxLength: 200 pattern: '[\w\W\s]*' example: "Av Naburo Ykesaki, 1270" addressAdditionalInfo: type: string maxLength: 30 pattern: '[\w\W\s]*' example: Fundos description: Alguns logradouros ainda necessitam ser especificados por meio de complemento. InsurancePensionPlanDocumentsBeneficiary: description: Informações do beneficiário/pessoa associada, obrigatório se houver. type: object required: - name - documentType - documentNumber - participationPercentage properties: documentNumber: description: Documento de Identificação do beneficiário type: string maxLength: 60 example: "12345678910" documentType: description: Tipo de Documento do beneficiário type: string enum: [CPF, OUTROS] documentTypeOthers: description: Descrição do Tipo de Documento quando for informada a opção OUTROS type: string example: OUTROS name: description: Nome beneficiário type: string maxLength: 80 example: Juan Kaique Cláudio Fernandes participationPercentage: description: Percentual de particiapação do beneficiário. type: string pattern: '^100\.0{1,9}$|^\d{1,2}\.\d{1,9}$' example: "10.00" InsurancePensionPlanDocumentsIntermediary: description: Informações de intermediário, obrigatório se houver. type: object required: - type properties: type: description: Tipo do Intermediador type: string enum: [ CORRETOR, REPRESENTANTE, ESTIPULANTE_AVERBADOR_INSTITUIDOR, CORRESPONDENTE, AGENTE_DE_MICROSSEGUROS, OUTROS ] example: CORRETOR typeOthers: description: Descricao do campo de Tipo do Intermediador quando a opcao escolhida for OUTROS type: string maxLength: 100 documentNumber: description: Documento do Intermediador (Caso Tipo de Intermediador nao seja Corretor, ou quando for Corretor, porem o identificador do intermediador nao seja informado) type: string maxLength: 60 example: "12345678910" intermediaryId: description: Identificador do Intermediador, Campo obrigatório quando o campo “Tipo” for preenchido com “1 - Corretor”. type: string maxLength: 60 example: "12097" documentType: description: Tipo de Documento do Intermediador, Campo obrigatório, Caso Tipo de Intermediador não seja Corretor ou quando for Corretor, porém o identificador do intermediador não seja informado) type: string enum: [CPF, CNPJ, OUTROS] example: CPF documentTypeOthers: description: Descrição do Tipo de Documento quando for informada a opção OUTROS type: string example: OUTROS name: description: Nome ou Razão Social do Intermediador, Campo obrigatório, caso Tipo de Intermediador for estipulante /averbador/ instituidor) type: string maxLength: 80 example: Empresa A postCode: 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 Intermediador, Campo obrigatório, caso Tipo de Intermediador for estipulante /averbador/ instituidor) type: string pattern: '\d{8}|^NA$' maxLength: 8 example: "17500001" townName: type: string maxLength: 50 pattern: '^[A-Za-z\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 da Pessoa Intermediador, Campo obrigatório, caso Tipo de Intermediador for estipulante /averbador/ instituidor) countrySubDivision: description: | Estado da Pessoa Intermediador, Campo obrigatório, caso Tipo de Intermediador for estipulante /averbador/ instituidor) allOf: - $ref: "#/components/schemas/EnumCountrySubDivision" countryCode: description: | Código do pais de acordo com o código “alpha3” do ISO-3166. País da Pessoa Intermediador, Campo obrigatório, caso Tipo de Intermediador for estipulante /averbador/ instituidor) type: string enum: [AFG,ALA,ALB,DZA,ASM,AND,AGO,AIA,ATA,ATG,ARG,ARM,ABW,AUS,AUT,AZE,BHS,BHR,BGD,BRB,BLR,BEL,BLZ,BEN,BMU,BTN,BOL,BES,BIH,BWA,BVT, BRA,IOT,BRN,BGR,BFA,BDI,CPV,KHM,CMR,CAN,CYM,CAF,TCD,CHL,CHN,CXR,CCK,COL,COM,COG,COD,COK,CRI,CIV,HRV,CUB,CUW,CYP,CZE,DNK,DJI,DMA, DOM,ECU,EGY,SLV,GNQ,ERI,EST,SWZ,ETH,FLK,FRO,FJI,FIN,FRA,GUF,PYF,ATF,GAB,GMB,GEO,DEU,GHA,GIB,GRC,GRL,GRD,GLP,GUM,GTM,GGY,GIN,GNB, GUY,HTI,HMD,VAT,HND,HKG,HUN,ISL,IND,IDN,IRN,IRQ,IRL,IMN,ISR,ITA,JAM,JPN,JEY,JOR,KAZ,KEN,KIR,PRK,KOR,KWT,KGZ,LAO,LVA,LBN,LSO,LBR, LBY,LIE,LTU,LUX,MAC,MDG,MWI,MYS,MDV,MLI,MLT,MHL,MTQ,MRT,MUS,MYT,MEX,FSM,MDA,MCO,MNG,MNE,MSR,MAR,MOZ,MMR,NAM,NRU,NPL,NLD,NCL,NZL, NIC,NER,NGA,NIU,NFK,MKD,MNP,NOR,OMN,PAK,PLW,PSE,PAN,PNG,PRY,PER,PHL,PCN,POL,PRT,PRI,QAT,REU,ROU,RUS,RWA,BLM,SHN,KNA,LCA,MAF,SPM, VCT,WSM,SMR,STP,SAU,SEN,SRB,SYC,SLE,SGP,SXM,SVK,SVN,SLB,SOM,ZAF,SGS,SSD,ESP,LKA,SDN,SUR,SJM,SWE,CHE,SYR,TWN,TJK,TZA,THA,TLS,TGO, TKL,TON,TTO,TUN,TUR,TKM,TCA,TUV,UGA,UKR,ARE,GBR,USA,UMI,URY,UZB,VUT,VEN,VNM,VGB,VIR,WLF,ESH,YEM,ZMB,ZWE] example: BRA address: description: | Corresponde ao Endereço do Intermediador, Campo obrigatório, caso Tipo de Intermediador for estipulante /averbador/ instituidor) type: string maxLength: 200 pattern: '[\w\W\s]*' example: "Av Naburo Ykesaki, 1270" addressAdditionalInfo: type: string maxLength: 30 pattern: '[\w\W\s]*' example: Fundos description: Alguns logradouros ainda necessitam ser especificados por meio de complemento. InsurancePensionPlanDocumentsPlans: type: object required: - coverages properties: coverages: type: array items: $ref: '#/components/schemas/InsurancePensionPlanDocumentsPlansCoverage' grace: type: array items: $ref: '#/components/schemas/InsurancePensionPlanDocumentsPlansGrace' InsurancePensionPlanDocumentsPlansCoverage: type: object required: - coverageCode - susepProcessNumber - structureModality - periodicity - coverageName - lockedPlan - updateIndexLagging - termStartDate - termEndDate - benefitAmount - financialRegime - benefitPaymentMethod - pricingMethod - updateIndex - contributionAmount - chargedAmount properties: coverageCode: type: string description: Codigo da cobertura maxLength: 5 example: "1999" susepProcessNumber: description: Número do Processo Susep, obrigatório quando aplicável type: string maxLength: 60 example: "12345" structureModality: description: Modalidade de estruturação type: string enum: [BENEFICIO_DEFINIDO, CONTRIBUICAO_VARIAVEL] example: BENEFICIO_DEFINIDO benefitAmount: description: Valor do benefício em reais da cobertura contratada allOf: - $ref: "#/components/schemas/AmountDetails" rentsInterestRate: description: Taxa de Juros Rendas type: string pattern: '^\d{1,3}\.\d{1,9}$' example: "10.00" periodicity: type: string description: Periodicidade de pagamento da Contribuição/Prêmio enum: [ MENSAL, BIMESTRAL, TRIMESTRAL, QUADRIMESTRAL, SEMESTRAL, ANUAL, ESPORADICA, PAGAMENTO_UNICO, OUTROS ] example: MENSAL periodicityOthers: description: Descricao do campo de Periodicidade de pagamento da Contribuicao/Premio quando a opcao escolhida for OUTROS type: string maxLength: 100 coverageName: type: string maxLength: 500 description: Descrição / Nome da Cobertura lockedPlan: description: Indica se o plano consta como bloqueado type: boolean example: false termStartDate: description: Data de início de vigência da cobertura type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" termEndDate: type: string format: date description: Data de fim de vigência da cobertura. Obrigatório se houver. maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" financialRegime: description: Regime financeiro type: string enum: - REPARTICAO_SIMPLES - REPARTICAO_POR_CAPITAIS_DE_COBERTURA - CAPITALIZACAO benefitPaymentMethod: description: Forma de Pagamento do Benefício type: string enum: [UNICO, RENDA] example: UNICO biometricTable: type: string description: Tábua biométrica, se houver example: AT2000_M enum: [AT49_M,AT49_F,AT50_M,AT50_F,AT55_M,AT55_F,AT71_M,AT71_F,AT83_M,AT83_F,AT2000_M,AT2000_F,CS041,CSO58,CSO80_M,CSO80_F,CSG_60,GAM71_M,GAM71_F,SGB51,SGB55,SGB71,SGB75,GKF70,GKF80,GKF95,GKM70,GKM80,GKM95,UP_84,IAPB_57,IAPB57_NIVELADA,ZIMMERMANN,WINKLEVOSS,BENTZIEN,EXP_IAPC,IAPB_57_FRACA,IAPB_57_FORTE,ALVARO_VINDAS,TASA_27,MULLER,HUNTER,EB7,UP94_M,AT49,AT2000_FEMALE_SUAVIZADA_10,TGA,AT2000_MALE_SUAVIZADA_10,BR_EMSSB_V2010M,BR_EMSSB_V2010F,SUSEP_IBGE,PERCENTUAL_FIXO,PERPETUA,BR_EMSMT_V2010M,BR_EMSMT_V2010F,BR_EMSSB_V2015M,BR_EMSSB_V2015F,BR_EMSMT_V2015M,BR_EMSMT_V2015F,BR_EMSMT_M,BR_EMSMT_F,BR_EMSSB_M,BR_EMSSB_F,BR_EMSSB_V2021M,BR_EMSSB_V2021F,BR_EMSMT_V2021M,BR_EMSMT_V2021F,OUTRAS] pricingMethod: description: Forma de Tarifação type: string example: POR_IDADE enum: - POR_IDADE - TAXA_MEDIA - FAIXA_ETÁRIA - OUTROS pricingMethodDescription: type: string description: Obrigatório quando a forma de tarifação for igual a OUTROS maxLength: 500 example: OUTROS events: type: array items: $ref: "#/components/schemas/InsurancePensionPlanEvent" updateIndex: description: Índice de Atualização da Cobertura type: string example: IPC-FGV enum: - IPC-FGV - IGP-DI-FGV - IPCA-IBGE - IGPM-FGV - INPC-IBGE - TR - OUTROS updateIndexDescription: type: string description: Descrição do índice de atualização. Obrigatório quando o updateIndex for OUTROS maxLength: 500 example: OUTROS updatePeriodicity: type: string description: Periodicidade de Atualização example: PERIODICIDADE updatePeriodicityUnit: type: string description: Unidade da Periodicidade de Atualização da Cobertura (Quando Houver) enum: [DIA, MES, ANO] example: DIA updateIndexLagging: description: Defasagem do índice de preços aplicado na atualização da renda (em meses) type: integer maxLength: 2 example: 1 contributionAmount: description: Valor de Contribuição da Cobertura allOf: - $ref: "#/components/schemas/AmountDetails" chargedAmount: description: Valor de Carregamento allOf: - $ref: "#/components/schemas/AmountDetails" InsurancePensionPlanDocumentsPlansGrace: type: object properties: graceType: description: Tipo de carência, Obrigatório se houver type: string example: PORTABILIDADE enum: [PORTABILIDADE, RESGATE] gracePeriod: description: Campo para preenchimento do período de carência de resgate / portabilidade, Obrigatório se houver type: integer maxLength: 5 example: 4 gracePeriodicity: type: string description: Periodicidade da Carência, Obrigatório se houver example: DIA enum: [DIA, MES, ANO] dayIndicator: type: string description: Índicador de dias úteis ou Corridos, Obrigatório se houver example: UTEIS enum: [UTEIS, CORRIDOS] gracePeriodStart: description: Data de Início da Carência. Obrigatório, se houver type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" gracePeriodEnd: description: Data de Fim da carência. Obrigatório se houver type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" gracePeriodBetween: type: integer maxLength: 5 description: Prazo de Carência entre Resgates, Obrigatório se houver example: 6 gracePeriodBetweenType: type: string example: DIA description: Tipo de Prazo de Carência entre Resgates, Obrigatório quando o valor do campo 'carencia_tipo' for 'RESGATE' enum: [DIA, MES, ANO] InsurancePensionPlanEvent: type: object description: Eventos Geradores required: - eventType properties: eventType: description: Indica o tipo de evento gerador aplicável à cobertura type: string example: INVALIDEZ enum: [INVALIDEZ, MORTE, OUTROS] eventTypeOthers: description: Descrição do tipo de evento gerador quando for informada a opção OUTROS type: string example: OUTROS ResponseInsurancePensionPlanMovements: type: object required: - data - links - meta properties: data: $ref: "#/components/schemas/InsurancePensionPlanMovements" links: $ref: "#/components/schemas/Links" meta: $ref: "#/components/schemas/Meta" InsurancePensionPlanMovements: type: object properties: movementContributions: type: array items: type: object required: - contributionAmount - contributionPaymentDate - contributionExpirationDate - chargedInAdvanceAmount - periodicity properties: contributionAmount: description: Valores de contribuições/prêmios comerciais pagos pelo segurado participante (em relação aos últimos 12 meses), Obrigatório se houver allOf: - $ref: "#/components/schemas/AmountDetails" contributionPaymentDate: description: Datas de Pagamentos das contribuições/prêmios comerciais (em relação aos últimos 12 meses), Obrigatório, se houver type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" contributionExpirationDate: description: Datas de Vencimentos das contribuições/prêmios comerciais (em relação aos últimos 12 meses) type: string format: date pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ maxLength: 10 example: "2021-05-21" chargedInAdvanceAmount: description: Valor do carregamento cobrado de forma antecipada, Obrigatório se houver allOf: - $ref: "#/components/schemas/AmountDetails" periodicity: type: string description: Periodicidade da contribuições enum: [ MENSAL, BIMESTRAL, TRIMESTRAL, QUADRIMESTRAL, SEMESTRAL, ANUAL, ESPORADICA, PAGAMENTO_UNICO, OUTROS ] example: MENSAL periodicityOthers: description: Descricao do campo de Periodicidade da contribuicoes quando a opcao escolhida for OUTROS type: string maxLength: 100 movementBenefits: type: array items: type: object properties: benefitAmount: description: Valores de benefícios recebidos (em relação aos últimos 12 meses), Obrigatório, se houver allOf: - $ref: "#/components/schemas/AmountDetails" benefitPaymentDate: description: Datas de Pagamentos de benefícios recebidos (em relação aos últimos 12 meses), Obrigatório, se houver type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" ResponseInsurancePensionPlanPortabilities: type: object required: - data - links - meta properties: data: $ref: "#/components/schemas/InsurancePensionPlanPortability" links: $ref: "#/components/schemas/Links" meta: $ref: "#/components/schemas/Meta" InsurancePensionPlanPortability: type: object required: - hasOccurredPortability properties: hasOccurredPortability: type: boolean description: Campo para ser preenchimento com a identificação da ocorrência da portabilidade example: true portabilityInfo: type: array items: type: object description: Objeto obrigatório caso hasOccurredPortability seja true. required: - direction - amount - requestDate - liquidationDate - chargingValue properties: direction: description: Direção do fluxo de portabilidade type: string enum: [ENTRADA, SAIDA] example: ENTRADA type: type: string description: Tipo de portabilidade, Obrigatório quando Tipo Fluxo for SAIDA enum: [PARCIAL, TOTAL] example: PARCIAL amount: description: Valor portado allOf: - $ref: "#/components/schemas/AmountDetails" requestDate: description: Declara a data em que foi recebida a solicitação de portabilidade 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-08-20T08:30:00Z" liquidationDate: description: Declara a data de ocorrência da efetiva liquidação da portabilidade type: string 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$ format: date-time example: "2021-08-20T08:30:00Z" chargingValue: description: Valor de carregamento cobrado de forma postecipada allOf: - $ref: "#/components/schemas/AmountDetails" sourceEntity: description: Declara o código FIP da entidade de origem (cedente) da portabilidade type: string targetEntity: description: Declara o código FIP da entidade de destino (cessionária) da portabilidade type: string susepProcess: description: Processo Susep do plano originário da portabilidade type: string example: "12345" ResponseInsurancePensionPlanWithdrawals: type: object required: - data - links - meta properties: data: type: array items: $ref: "#/components/schemas/InsurancePensionPlanWithdrawal" links: $ref: "#/components/schemas/Links" meta: $ref: "#/components/schemas/Meta" InsurancePensionPlanWithdrawal: type: object required: - withdrawalOccurence properties: withdrawalOccurence: type: boolean description: Indica se houve resgate example: true type: description: Tipo de resgate, Obrigatório, se houver type: string enum: [TOTAL, PARCIAL] example: PARCIAL requestDate: description: Declara a data da solicitação do resgate, Obrigatório, se houver type: string 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$ maxLength: 20 example: "2021-08-20T08:30:00Z" amount: description: Valor do Resgate allOf: - $ref: "#/components/schemas/AmountDetails" liquidationDate: description: Declara a data da efetiva liquidação do valor resgatado, Obrigatório, se houver type: string 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$ format: date-time maxLength: 20 example: "2021-08-20T08:30:00Z" postedChargedAmount: description: Valor do carregamento cobrado de forma postecipada, Obrigatório, se houver allOf: - $ref: "#/components/schemas/AmountDetails" nature: description: Natureza do resgate, Obrigatório, se houver type: string enum: [ RESGATE_REGULAR, MORTE, INVALIDEZ, PAGAMENTO_FINANCEIRO_PROGRAMADO, CUSTEIO_DE_COBERTURA_DE_RISCO_EM_PLANOS_CONJUGADOS, ASSISTENCIA_FINANCEIRA ] example: RESGATE_REGULAR ResponseInsurancePensionPlanClaim: type: object required: - data - links - meta properties: data: type: array items: $ref: "#/components/schemas/InsurancePensionPlanClaim" minItems: 0 links: $ref: "#/components/schemas/Links" meta: $ref: "#/components/schemas/Meta" InsurancePensionPlanClaim: type: object required: - eventInfo properties: eventInfo: type: object description: Dados Gerais do Evento Gerador required: - eventStatus - eventAlertDate - eventRegisterDate properties: eventStatus: description: Status do Evento Gerador type: string example: ABERTO enum: [ ABERTO, ENCERRADO_COM_INDENIZACAO, ENCERRADO_SEM_INDENIZACAO, REABERTO, CANCELADO_POR_ERRO_OPERACIONAL, AVALIACAO_INICIAL, ENCERRADO_COM_PAGAMENTO_UNICO_BENEFICIO, ENCERRADO_COM_CONCESSAO_DE_RENDA_BENEFICIO, ENCERRADO_INDEFERIDO_BENEFICIO ] eventAlertDate: description: Data de Aviso do Evento Gerador type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" eventRegisterDate: description: Data do Registro de Aviso à Seguradora type: string format: date pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ maxLength: 10 example: "2021-05-21" incomeInfo: type: object description: Informacoes de Renda Concedida (caso renda tenha sido concedida) required: - beneficiaryDocument - beneficiaryDocumentType - beneficiaryName - beneficiaryCategory - beneficiaryBirthDate - incomeType - incomeAmount - benefitAmount - grantedDate - monetaryUpdateIndex - lastUpdateDate properties: beneficiaryDocument: description: Documento de identificação do beneficiário da renda concedida type: string example: "12345678910" beneficiaryDocumentType: description: Tipo de Documento do Beneficiário type: string enum: [CPF, RG, PASSAPORTE, OUTROS] example: "CPF" beneficiaryDocTypeOthers: description: Descricao do campo de Tipo de Documento do Beneficiario quando a opcao escolhida for OUTROS type: string maxLength: 100 beneficiaryName: description: Nome do beneficiário da renda concedida type: string example: "NOME BENEFICIARIO" beneficiaryCategory: description: Classificação do Beneficiário type: string enum: [SEGURADO, CONJUGE, FILHO_MENOR_DE_IDADE, BENEFICIARIO_INDICADO] example: "SEGURADO" beneficiaryBirthDate: description: Data de nascimento do beneficiário da renda concedida type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" incomeType: description: Tipo de Renda type: string enum: - PAGAMENTO_UNICO - RENDA_POR_PRAZO_CERTO - RENDA_TEMPORARIA - RENDA_TEMPORARIA_REVERSIVEL - RENDA_TEMPORARIA_COM_PRAZO_MINIMO_GARANTIDO - RENDA_TEMPORARIA_REVERSIVEL_COM_PRAZO_MINIMO_GARANTIDO - RENDA_VITALICIA - RENDA_VITALICIA_REVERSIVEL_AO_BENEFICIARIO_INDICADO - RENDA_VITALICIA_REVERSIVEL_AO_CONJUGE_COM_CONTINUIDADE_AOS_MENORES - RENDA_VITALICIA_COM_PRAZO_MINIMO_GARANTIDO - RENDA_VITALICIA_REVERSIVEL_COM_PRAZO_MINIMO_GARANTIDO - RENDA_VITALICIA_REVERSIVEL_AO_CONJUGE - OUTROS example: PAGAMENTO_UNICO incomeTypeDetails: description: Descrição do Tipo de Renda, obrigatório se campo Tipo de Renda for OUTROS. type: string maxLength: 100 example: Descrição do Tipo de Renda reversedIncome: description: Renda Revertida, obrigatorio se campo Tipo de Renda for 4, 6, 8, 9, 11 e 12. type: boolean example: false incomeAmount: description: Valor do benefício concedido em forma de renda ou do pagamento único allOf: - $ref: "#/components/schemas/AmountDetails" paymentTerms: description: Prazo pagamento da parcela ou da renda atuarial ou financeira do benefício concedido (quando Tipo de renda for igual a 2, 3, 4, 5 e 6) type: string example: "PRAZO" benefitAmount: description: Número de benefícios a serem recebidos por ano type: integer example: 2 grantedDate: description: Data de Concessão type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" monetaryUpdateIndex: description: Índice de Atualização Monetária type: string enum: - IPC-FGV - IGP-DI-FGV - IPCA-IBGE - IGPM-FGV - INPC-IBGE - TR - OUTROS example: IPC-FGV monetaryUpdIndexOthers: description: Descricao do campo de Indice de Atualizacao Monetaria quando a opcao escolhida for OUTROS type: string maxLength: 100 lastUpdateDate: description: Data da última atualização do benefício type: string format: date maxLength: 10 pattern: ^(\d{4})-(1[0-2]|0[1-9])-(3[01]|[12][0-9]|0[1-9])$ example: "2021-05-21" AmountDetails: type: object description: Detalhes de valores/limites required: - amount - unitType properties: amount: type: string pattern: '^(^(100\.\00|\d{1,2}\.\d{2})$|^(\d{1,6})$|^(\d{1,15}\.\d{2})$)$' description: | Valor. Exemplos de preenchimento do campo: PORCENTAGEM: 90.85 MONETARIO: 62500.67 OUTROS: 1000 (Exemplo de outro tipo: horas) unitType: description: "Tipo da unidade referente ao valor inserido no campo Amount" type: string enum: [PORCENTAGEM, MONETARIO, OUTROS] unitTypeOthers: description: Caso o tipo do valor informado for "Outros", esse campo deve ser preenchido com o tipo do valor, obrigatoriamente. type: string example: Horas unit: description: Preenchimento obrigatório em caso de valor "MONETARIO" ser informado no campo "unitType" type: object required: - code - description properties: code: type: string 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 ] example: R$ description: type: string description: Moeda da Parcela, de acordo com 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 ] 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: RJ Links: type: object properties: self: type: string description: URL da página atualmente requisitada pattern: ^(https:\/\/)(.*?)(\/open-insurance\/insurance-pension-plan\/v\d+)(\/insurance-pension-plan.*)?$ example: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1/insurance-pension-plan" first: type: string description: URL da primeira página de registros pattern: ^(https:\/\/)(.*?)(\/open-insurance\/insurance-pension-plan\/v\d+)(\/insurance-pension-plan.*)?$ example: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1/insurance-pension-plan" prev: type: string description: URL da página anterior de registros pattern: ^(https:\/\/)(.*?)(\/open-insurance\/insurance-pension-plan\/v\d+)(\/insurance-pension-plan.*)?$ example: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1/insurance-pension-plan" next: type: string description: URL da próxima página de registros pattern: ^(https:\/\/)(.*?)(\/open-insurance\/insurance-pension-plan\/v\d+)(\/insurance-pension-plan.*)?$ example: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1/insurance-pension-plan" last: type: string description: URL da última página de registros pattern: ^(https:\/\/)(.*?)(\/open-insurance\/insurance-pension-plan\/v\d+)(\/insurance-pension-plan.*)?$ example: "https://api.organizacao.com.br/open-insurance/insurance-pension-plan/v1/insurance-pension-plan" 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 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-08-20T08:30:00Z" additionalProperties: false meta: $ref: "#/components/schemas/Meta" additionalProperties: false 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.' XV: type: string description: | Versão do endpoint da API requisitado pelo cliente. O titular dos dados deve responder com a versão mais alta suportada entre x-min-v e x-v. Se o valor de x-min-v for igual ou maior que o valor de x-v, o cabeçalho x-min-v deve ser tratado como ausente. Se todas as versões solicitadas não forem suportadas, o titular dos dados deve responder com o código de status 406 Not Acceptable. parameters: pensionIdentification: name: pensionIdentification description: Código único a ser definido pela sociedade 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 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 x-v: name: x-v in: header description: | Versão do endpoint da API requisitado pelo cliente. O titular dos dados deve responder com a versão mais alta suportada entre x-min-v e x-v. Se o valor de x-min-v for igual ou maior que o valor de x-v, o cabeçalho x-min-v deve ser tratado como ausente. Se todas as versões solicitadas não forem suportadas, o titular dos dados deve responder com o código de status 406 Not Acceptable. required: false schema: type: string example: '2.1.3' x-min-v: name: x-min-v in: header description: | Versão mínima do endpoint da API requisitado pelo cliente. O detentor dos dados deve responder com a versão mais alta suportada entre x-min-v e x-v. Se todas as versões solicitadas não forem suportadas, o titular dos dados deve responder com um código de status 406 Not Acceptable. required: false schema: type: string example: '2.0.0' securitySchemes: OpenId: type: openIdConnect openIdConnectUrl: "https://auth.mockbank.poc.raidiam.io/.well-known/openid-configuration" OAuth2Security: type: oauth2 description: Fluxo OAuth necessário para que a receptora tenha acesso aos dados na instituição transmissora. Inclui o processo de redirecionamento e autenticação do usuário a que se referem os dados. flows: authorizationCode: authorizationUrl: "https://authserver.example/authorization" tokenUrl: "https://authserver.example/token" scopes: insurance-pension-plan: Escopo necessário para acesso à API. O controle dos endpoints específicos é feito via permissions. responses: OKResponseInsurancePensionPlan: description: Dados de ResponseInsurancePensionPlan obtidos com sucesso headers: x-fapi-interaction-id: schema: $ref: "#/components/schemas/XFapiInteractionId" x-v: schema: $ref: '#/components/schemas/XV' content: application/json: schema: $ref: "#/components/schemas/ResponseInsurancePensionPlan" OKResponseInsurancePensionPlanContractInfo: description: Dados de ResponseInsurancePensionPlanContractInfo obtidos com sucesso headers: x-fapi-interaction-id: schema: $ref: "#/components/schemas/XFapiInteractionId" x-v: schema: $ref: '#/components/schemas/XV' content: application/json: schema: $ref: "#/components/schemas/ResponseInsurancePensionPlanContractInfo" OKResponseInsurancePensionPlanMovements: description: Dados de ResponseInsurancePensionPlanMovements obtidos com sucesso headers: x-fapi-interaction-id: schema: $ref: "#/components/schemas/XFapiInteractionId" x-v: schema: $ref: '#/components/schemas/XV' content: application/json: schema: $ref: "#/components/schemas/ResponseInsurancePensionPlanMovements" OKResponseInsurancePensionPlanPortabilities: description: Dados de ResponseInsurancePensionPlanPortabilities obtidos com sucesso headers: x-fapi-interaction-id: schema: $ref: "#/components/schemas/XFapiInteractionId" x-v: schema: $ref: '#/components/schemas/XV' content: application/json: schema: $ref: "#/components/schemas/ResponseInsurancePensionPlanPortabilities" OKResponseInsurancePensionPlanWithdrawals: description: Dados de ResponseInsurancePensionPlanWithdrawals obtidos com sucesso headers: x-fapi-interaction-id: schema: $ref: "#/components/schemas/XFapiInteractionId" x-v: schema: $ref: '#/components/schemas/XV' content: application/json: schema: $ref: "#/components/schemas/ResponseInsurancePensionPlanWithdrawals" OKResponseInsurancePensionPlanClaim: description: Dados de ResponseInsurancePensionPlanClaim obtidos com sucesso headers: x-fapi-interaction-id: schema: $ref: "#/components/schemas/XFapiInteractionId" x-v: schema: $ref: '#/components/schemas/XV' content: application/json: schema: $ref: "#/components/schemas/ResponseInsurancePensionPlanClaim" 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 content: application/json; charset=utf-8: schema: $ref: "#/components/schemas/ResponseError"