2.0info: 2.1.1 HCM – Payroll Calculation Manager Backend description: HCM – Payroll Calculation Manager Backend x-senior-domain: HCM – Payroll Calculation Manager Backend x-senior-domain-path: hcm_payroll_calculation x-senior-service-path: manager contact: name: Senior X Platform url: https://dev.senior.com.br email: seniorx-dev@senior.com.brhost: platform.senior.com.br /t/senior.com.br/bridge/1.0/rest/hcm_payroll_calculationsecurityDefinitions: APIKeyHeader: type: apiKey in: header name: Authorizationsecurity: – APIKeyHeader: [] – application/json – application/jsonpaths: /manager/queries/healthcheck: post: description: HealthCheck plataforma tags: – Queries x-senior-visibility: PRIVATE responses: 200: description: Ok schema: type: object required: – status – checks properties: status: type: string allOf: – #/definitions/heathcheckDTO description: Status de retorno checks: type: object allOf: – #/definitions/checkDTO description: Checks executados 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: HealthCheck plataforma tags: – Queries x-senior-visibility: PRIVATE responses: 200: description: Ok schema: type: object required: – status – checks properties: status: type: string allOf: – #/definitions/heathcheckDTO description: Status de retorno checks: type: object allOf: – #/definitions/checkDTO description: Checks executados 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/queries/getCacheData: post: description: Busca um valor no cache correspondente a chave. tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – key properties: key: type: string description: Chave gravada no cache hashKey: type: string description: Chave hash na gravada no cache responses: 200: description: Ok schema: type: object required: – value properties: value: type: string description: Valor do cache armazenadas na chave 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Busca um valor no cache correspondente a chave. tags: – Queries x-senior-visibility: PRIVATE parameters: – name: key description: Chave gravada no cache in: query required: true type: string – name: hashKey description: Chave hash na gravada no cache in: query type: string responses: 200: description: Ok schema: type: object required: – value properties: value: type: string description: Valor do cache armazenadas na chave 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/queries/getCacheKeys: post: description: Busca as chaves armazenadas no cache que correspondem ao padrão informado. tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – pattern properties: pattern: type: string description: Pattern para busca das chaves responses: 200: description: Ok schema: type: object required: – cacheKeys properties: cacheKeys: type: array items: type: string minimum: 1 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Busca as chaves armazenadas no cache que correspondem ao padrão informado. tags: – Queries x-senior-visibility: PRIVATE parameters: – name: pattern description: Pattern para busca das chaves in: query required: true type: string responses: 200: description: Ok schema: type: object required: – cacheKeys properties: cacheKeys: type: array items: type: string minimum: 1 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/queries/getMetadata: post: description: Default getMetadata query. Every service must handle this command and return metadata in the format requested. tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object properties: metadataFormat: type: string description: responses: 200: description: Ok schema: type: object required: – metadata properties: metadata: type: string description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Default getMetadata query. Every service must handle this command and return metadata in the format requested. tags: – Queries x-senior-visibility: PRIVATE parameters: – name: metadataFormat description: in: query type: string responses: 200: description: Ok schema: type: object required: – metadata properties: metadata: type: string description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/queries/getDependencies: post: description: Returns a list with all dependencies from this service, along with their respective versions tags: – Queries x-senior-visibility: PRIVATE responses: 200: description: Ok schema: type: object required: – dependencies properties: dependencies: type: array items: type: object allOf: – #/definitions/dependency minimum: 1 description: List with this service dependencies 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Returns a list with all dependencies from this service, along with their respective versions tags: – Queries x-senior-visibility: PRIVATE responses: 200: description: Ok schema: type: object required: – dependencies properties: dependencies: type: array items: type: object allOf: – #/definitions/dependency minimum: 1 description: List with this service dependencies 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/actions/calculate: post: description: Inicia o cálculo da Folha. Será considerada apenas a empresa da definição de cálculo para o processo de cálculo. Serão ignorados outros filtros de empresa aplicados. tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – calculationDefinitionId properties: calculationDefinitionId: type: string description: Id das definições do código de cálculo. employees: type: array items: type: string description: Lista de colaboradores advancedFilter: type: string maxLength: 36 description: Identificador do filtro avançado responses: 200: description: Ok schema: type: object required: – processId properties: processId: type: string maxLength: 36 description: Identificador do processo 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/actions/calculateSingleEmployee: post: description: Inicia o cálculo da folha para um colaborador. tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – calculationDefinitionId – employee properties: calculationDefinitionId: type: string description: Id das definições do código de cálculo. employee: type: string description: Id do colaborador responses: 200: description: Ok schema: type: object required: – processId properties: processId: type: string maxLength: 36 description: Identificador do processo 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /manager/signals/finishedProcess: post: description: Realiza as ações necessárias ao finalizar um processo. tags: – Signals parameters: – name: input in: body required: true schema: type: object required: – processId – processType – processTypeDescription – startDate – startedBy – unit properties: processId: type: string description: Identificador único do processo processType: type: string description: Tipo de processo processTypeDescription: type: string description: Descrição do tipo do Processo. startDate: type: string format: date-time description: Data de Início do Processo endDate: type: string format: date-time description: Data de Término do Processo total: type: integer format: int64 description: Quantidade total de registros a serem processados default: 0 processed: type: integer format: int64 description: Quantidade total de registros processados processedWithError: type: integer format: int64 description: Quantidade de registros processados com erro default: 0 successfullyProcessed: type: integer format: int64 description: Quantidade de registros processados com sucesso default: 0 unprocessed: type: integer format: int64 description: Quantidade de registros não processados default: 0 startedBy: type: string description: Usuário que iniciou o processo unit: type: string description: Unidade dos itens que estão sendo processados (colaboradores, apurações, etc.) cancelledBy: type: string description: Usuário que cancelou o processo cancellationDate: type: string format: date-time description: Data de cancelamento do processo responses: 202: description: Accepted default: description: Error response schema: #/definitions/genericError /manager/signals/processBatch: post: description: Processamento dos lotes de colaboradores tags: – Signals parameters: – name: input in: body required: true schema: type: object required: – processId – batchId – startIndex – endIndex properties: processId: type: string description: Id do processo calculationType: type: string allOf: – #/definitions/calculationType description: Tipo de cálculo batchId: type: string description: Id do lote de colaboradores. company: type: object allOf: – #/definitions/companyData description: Informações referentes à empresa. calculationDefinitionData: type: object allOf: – #/definitions/calculationDefinitionData description: Informações referentes ao código de cálculo. logDebugEnabled: type: boolean description: Log de depuração habilitado default: false monitorEnabled: type: boolean description: Monitor habilitado default: false startIndex: type: integer format: int64 description: Posição inicial endIndex: type: integer format: int64 description: Posição final startDate: type: string format: date description: Data inicial endDate: type: string format: date description: Data final disregardedDays: type: array items: type: string format: date description: Dias a desconsiderar hiredInTheYearWithBalance: type: string allOf: – #/definitions/hiredInCurrentYearType description: Admitidos no ano com saldo de férias hiredInTheYearWithoutBalance: type: string allOf: – #/definitions/hiredInCurrentYearType description: Admitidos no ano sem saldo de férias filters: type: object allOf: – #/definitions/filtersDTO description: Filtros competence: type: string format: date description: Competência paymentDate: type: string format: date description: Data de pagamento responses: 202: description: Accepted default: description: Error response schema: #/definitions/genericError /manager/events/calculationBatchStarted: post: description: Notifica o inícia do cálculo da Folha de um lote de colaboradores. x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – processId – batchId – company – calculationDefinitionData – batchDescription properties: processId: type: string description: Id do processo batchId: type: string description: Id do lote de colaboradores. company: type: object allOf: – #/definitions/companyData description: Informações referentes à empresa. calculationDefinitionData: type: object allOf: – #/definitions/calculationDefinitionData description: Informações referentes ao código de cálculo. batchDescription: type: string description: Descrição logDebugEnabled: type: boolean description: Log de depuração habilitado default: false monitorEnabled: type: boolean description: Monitor habilitado default: false responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /manager/events/vacationBatchStarted: post: description: Notifica o inícia do cálculo de férias de um lote de colaboradores. x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – processId – batchId – batchDescription – filters properties: processId: type: string description: Id do processo calculationType: type: string allOf: – #/definitions/calculationType description: Tipo de cálculo batchId: type: string description: Id do lote de colaboradores. batchDescription: type: string description: Descrição logDebugEnabled: type: boolean description: Log de depuração habilitado default: false monitorEnabled: type: boolean description: Monitor habilitado default: false startDate: type: string format: date description: Data inicial endDate: type: string format: date description: Data final disregardedDays: type: array items: type: string format: date description: Dias a desconsiderar hiredInTheYearWithBalance: type: string allOf: – #/definitions/hiredInCurrentYearType description: Admitidos no ano com saldo de férias hiredInTheYearWithoutBalance: type: string allOf: – #/definitions/hiredInCurrentYearType description: Admitidos no ano sem saldo de férias filters: type: object allOf: – #/definitions/filtersDTO description: Filtros responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /manager/events/batchEmployeesFinished: post: description: Notifica a finalização do loteamento dos participantes do cálculo x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – processId – company – calculationDefinitionData – filters properties: processId: type: string description: Id do processo calculationType: type: string allOf: – #/definitions/calculationType description: Tipo de cálculo company: type: object allOf: – #/definitions/companyData description: Informações referentes à empresa. calculationDefinitionData: type: object allOf: – #/definitions/calculationDefinitionData description: Informações referentes ao código de cálculo. logDebugEnabled: type: boolean description: Log de depuração habilitado default: false monitorEnabled: type: boolean description: Monitor habilitado default: false startDate: type: string format: date description: Data inicial endDate: type: string format: date description: Data final disregardedDays: type: array items: type: string format: date description: Dias a desconsiderar hiredInTheYearWithBalance: type: string allOf: – #/definitions/hiredInCurrentYearType description: Admitidos no ano com saldo de férias hiredInTheYearWithoutBalance: type: string allOf: – #/definitions/hiredInCurrentYearType description: Admitidos no ano sem saldo de férias filters: type: object allOf: – #/definitions/filtersDTO description: Filtros competence: type: string format: date description: Competência paymentDate: type: string format: date description: Data de pagamento responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /manager/events/calculateFinancialStatementFinished: post: description: Evento websocket para avisar que o cálculo já gravou os eventos x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – processId properties: processId: type: string description: Identificador do processo do calculo responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /manager/events/thirdPartyBatchStarted: post: description: Notifica o inícia do cálculo de RPA de um lote de colaboradores. x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – processId – calculationType – competence – batchId – batchDescription properties: processId: type: string description: Id do processo calculationType: type: string allOf: – #/definitions/calculationType description: Tipo de cálculo competence: type: string format: date description: Competência paymentDate: type: string format: date description: Data de pagamento batchId: type: string description: Id do lote de colaboradores. batchDescription: type: string description: Descrição logDebugEnabled: type: boolean description: Log de depuração habilitado default: false monitorEnabled: type: boolean description: Monitor habilitado default: false responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /manager/events/batchEmployeesThirdPartyFinished: post: description: Notifica a finalização do loteamento dos participantes do cálculo de terceiros x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – processId – filters properties: processId: type: string description: Id do processo calculationType: type: string allOf: – #/definitions/calculationType description: Tipo de cálculo competence: type: string format: date description: Competência paymentDate: type: string format: date description: Data de pagamento logDebugEnabled: type: boolean description: Log de depuração habilitado default: false monitorEnabled: type: boolean description: Monitor habilitado default: false filters: type: object allOf: – #/definitions/filtersDTO description: Filtros responses: 200: description: OK default: description: Error response schema: #/definitions/genericErrordefinitions: heathcheckDTO: type: string enum: – UP – DOWN description: Status do healthcheck: * `UP` – Saudável * `DOWN` – Ruim calculationType: type: string enum: – MONTHLY_PAYROLL – ADVANCE_SALARY – THIRTEENTH_SALARY – ADVANCE_THIRTEENTH_SALARY – INDIVIDUAL_VACATION – COLLECTIVE_VACATION – DISMISSAL – SUPPLEMENTARY_PAYROLL – SUPPLEMENTARY_LABOR_AGREEMENT – SUPPLEMENTARY_LABOR_AGREEMENT_PAYROLL – SUPPLEMENTARY_DISMISSAL_ERROR_OR_OMISSION – SUPPLEMENTARY_DISMISSAL_PENDING_COMISSIONS – SUPPLEMENTARY_DISMISSAL_LABOR_AGREEMENT_PAYROLL – THIRD_PARTY_PAYMENT description: Tipo de cálculo: * `MONTHLY_PAYROLL` – Folha mensal * `ADVANCE_SALARY` – Adiantamento salarial * `THIRTEENTH_SALARY` – 13º salário integral * `ADVANCE_THIRTEENTH_SALARY` – Adiantamento 13º salário * `INDIVIDUAL_VACATION` – Férias individuais * `COLLECTIVE_VACATION` – Férias coletivas * `DISMISSAL` – Rescisão individual * `SUPPLEMENTARY_PAYROLL` – Folha complementar * `SUPPLEMENTARY_LABOR_AGREEMENT` – Dissídio complementar * `SUPPLEMENTARY_LABOR_AGREEMENT_PAYROLL` – Folha de pagamento de dissídio * `SUPPLEMENTARY_DISMISSAL_ERROR_OR_OMISSION` – Rescisão complementar – Erro ou omissão * `SUPPLEMENTARY_DISMISSAL_PENDING_COMISSIONS` – Rescisão complementar – Comissões pendentes * `SUPPLEMENTARY_DISMISSAL_LABOR_AGREEMENT_PAYROLL` – Rescisão complementar – Dissídio * `THIRD_PARTY_PAYMENT` – Cálculo de RPA processType: type: string enum: – WAGETYPE_CALCULATION – CALCULATION_SAVE description: Tipo de processo: * `WAGETYPE_CALCULATION` – Cálculo de eventos * `CALCULATION_SAVE` – Gravação dos eventos de Folha calculados. generateNegativeType: type: string enum: – YES – NO – VACATION_PREMIUM description: Tipo de geração negativa: * `YES` – Sim * `NO` – Não * `VACATION_PREMIUM` – Abonado hiredInTheYearType: type: string enum: – NEGATIVE_BALANCE_PERIOD – PAID_LEAVE – PAY_ENTITLEMENT_VACATION_DAYS – ENDS_PERIOD_REGARDLESS_BALANCE description: Tipo de admitidos no ano: * `NEGATIVE_BALANCE_PERIOD` – Período com saldo negativo * `PAID_LEAVE` – Licença remunerada folha * `PAY_ENTITLEMENT_VACATION_DAYS` – Quita para direito = dias de férias * `ENDS_PERIOD_REGARDLESS_BALANCE` – Encerra período independente de saldo hiredInCurrentYearType: type: string enum: – CURRENT_ACQUISITIVE_PERIOD_REMAINS_OPEN – OPEN_NEW_ACQUISITIVE_PERIOD description: Admitidos no ano: * `CURRENT_ACQUISITIVE_PERIOD_REMAINS_OPEN` – Período aquisitivo permanece aberto. Apenas fecha o período aquisitivo se os dias de direito forem totalmente consumidos. * `OPEN_NEW_ACQUISITIVE_PERIOD` – Abre novo período aquisitivo. userNotificationKind: type: string enum: – Operational – Management – News description: User notification kind.: * `Operational` – Operational * `Management` – Management * `News` – News userNotificationPriority: type: string enum: – Error – Alert – None description: User notification priority.: * `Error` – Error * `Alert` – Alert * `None` – None eventEmailFormat: type: string enum: – HTML – PLAIN_TEXT description: Format of the email: * `HTML` – Html * `PLAIN_TEXT` – Plain Text checkDTO: description: Retorno status usados de retorno type: object required: – name – status properties: name: type: string description: Nome do status status: type: string allOf: – #/definitions/heathcheckDTO description: Status companyData: description: Dados da empresa. type: object required: – id – code – description properties: id: type: string maxLength: 36 description: Id code: type: integer format: int64 description: Código description: type: string description: Nome calculationDefinitionData: description: Dados do código de cálculo. type: object required: – id – code – competence – calculationType – paymentDate – startDatePayroll – endDatePayroll properties: id: type: string maxLength: 36 description: Id code: type: integer format: int64 description: Código competence: type: string format: date description: Competência calculationType: type: string allOf: – #/definitions/calculationType description: Tipo de cálculo paymentDate: type: string format: date description: Data de pagamento startDatePayroll: type: string format: date description: Período da folha inicial endDatePayroll: type: string format: date description: Período da folha final advanceThirteenthSalaryPercentage: type: number format: double description: % adiantamento 13º filtersDTO: description: Filtros type: object required: – companies properties: companies: type: array items: type: string minimum: 1 description: Empresas employees: type: array items: type: string description: Colaboradores notifyUserEventPayload: description: Represents a regular user event notification payload discriminator: _discriminator type: object required: – notificationKind – notificationPriority – notificationSubject – notificationContent – sourceDomain – sourceService – destinationUser – _discriminator properties: notificationClass: type: string description: Class of notification notificationOrigin: type: string description: Origin of notification. Free text. Optional. notificationKind: type: string allOf: – #/definitions/userNotificationKind description: Notification kind. notificationPriority: type: string allOf: – #/definitions/userNotificationPriority description: Notification priority. notificationSubject: type: string description: Notification subject. notificationContent: type: string description: Notification content. sourceDomain: type: string description: Domain that generates the notification. sourceService: type: string description: Service that generates the notification. destinationUser: type: string description: Username of the destination user. link: type: string description: Notification link _discriminator: type: string description: emailNotifyUserEventPayload: description: Represents an email notification payload allOf: – #/definitions/notifyUserEventPayload – type: object required: – from properties: from: type: string description: Email sender address sendTo: type: array items: type: string description: Additional recipients to send the email to format: type: string allOf: – #/definitions/eventEmailFormat description: Email format pushNotifyUserEventPayload: description: Represents a push notification payload allOf: – #/definitions/notifyUserEventPayload – type: object required: – applicationId properties: applicationId: type: string description: Apple/Google application id blobReference: description: Default blob reference type. Every service defines its own. type: object required: – targetObjectId properties: domainName: type: string description: The domain the blob belongs to. serviceName: type: string description: The service the blob belongs to. targetObjectId: type: string description: The basic id of the blob. targetCopyId: type: string description: The id of the blob copy. basicErrorPayload: description: Default error payload type. Every service defines its own. type: object properties: message: type: string description: The user-facing error message, if any. errorCode: type: string description: The program-accessible (and service-specific) error code. dependency: description: Represents a service dependency type: object required: – domain – service – version properties: domain: type: string description: Domain of the dependency service service: type: string description: Name of the dependency service type: string description: Version of the dependency service genericError: properties: message: type: string description: Messaging describing the error. reason: type: string enum: – BAD_REQUEST – UNAUTHORIZED – PAYMENT_REQUIRED – FORBIDDEN – OBJECT_NOT_FOUND – REQUEST_TIMEOUT – GONE – UNPROCESSABLE – INTERNAL_ERROR – NOT_IMPLEMENTED – SERVICE_UNAVAILABLE – INSUFFICIENT_STORAGE description: A symbolic code identifying the category of the reason of the error: * `BAD_REQUEST` – Bad Request * `UNAUTHORIZED` – Unauthorized * `PAYMENT_REQUIRED` – Payment Required * `OBJECT_NOT_FOUND` – Object Not Found * `REQUEST_TIMEOUT` – Request Timeout * `GONE` – Gone * `UNPROCESSABLE` – Unprocessable * `INTERNAL_ERROR` – Internal Error * `NOT_IMPLEMENTED` – Not Implemented * `SERVICE_UNAVAILABLE` – Service Unavailable * `INSUFFICIENT_STORAGE` – Insufficient Storage