2.0info: 3.1.0 Gerenciamento de licenças description: Responsável pelo gerenciamento de licenças na plataforma G7. x-senior-domain: Plataforma x-senior-domain-path: platform x-senior-service-path: licensing 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/platformsecurityDefinitions: APIKeyHeader: type: apiKey in: header name: Authorizationsecurity: – APIKeyHeader: [] – application/json – application/jsonpaths: /licensing/queries/listLicenseHistory: post: description: Lista todas as mudanças de licenças realizadas, podendo filtrar por data de criação, status, domínio, serviço, ou recurso tags: – Queries x-senior-visibility: PUBLIC parameters: – name: input in: body required: true schema: type: object required: – tenant properties: tenant: type: string description: Nome do tenant from: type: string format: date description: Data inicial to: type: string format: date description: Data final searchValue: type: string description: Valor a ser procurado no domínio, serviço ou recurso status: type: array items: type: string allOf: – #/definitions/status description: Filtrar para um ou mais estados, por padrão será exibido todos pagination: type: object allOf: – #/definitions/pagination description: As configurações de paginação da listagem. Não definido, retornará os 10 primeiros resultados. responses: 200: description: Ok schema: type: object required: – licenses – listInformation properties: licenses: type: array items: type: object allOf: – #/definitions/licenseHistory minimum: 1 description: Os registros das licenças ordenadas das mais recentes para as mais antigas listInformation: type: object allOf: – #/definitions/listInformation description: Informações sobre os resultados da listagem 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /licensing/queries/getLicenses: post: description: Retorna todas as licenças ativas para o tenant informado tags: – Queries x-senior-visibility: PUBLIC parameters: – name: input in: body required: true schema: type: object required: – tenant properties: tenant: type: string description: Nome do tenant responses: 200: description: Ok schema: type: object required: – licenses properties: licenses: type: array items: type: object allOf: – #/definitions/licenseHistory minimum: 1 description: Os registros das licenças ativas 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Retorna todas as licenças ativas para o tenant informado tags: – Queries x-senior-visibility: PUBLIC parameters: – name: tenant description: Nome do tenant in: query required: true type: string responses: 200: description: Ok schema: type: object required: – licenses properties: licenses: type: array items: type: object allOf: – #/definitions/licenseHistory minimum: 1 description: Os registros das licenças ativas 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /licensing/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 /licensing/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 /licensing/actions/saveLicense: post: description: Permite bloquear ou desbloquear funcionalidades por domínio, domínio e serviço, recursos ou atividades.\n Necessário permissão master no recurso/ação res://senior.com.br/platform/licensing/license / Editar.\n As últimas ações tem prioridade sobre as anteriores.\n Exemplo: Bloquear todos os serviços do hcm com trial no analytics\n [\n { status: LOCKED, domain: hcm },\n { status: TRIAL, endDate: 2020-01-01, domain: hcm, service: analytics }\n ] tags: – Actions x-senior-visibility: PUBLIC parameters: – name: input in: body required: true schema: type: object required: – licenses properties: tenant: type: string description: Nome do tenant, se o tenant não for informado a licensa será criada na base compartilhada licenses: type: array items: type: object allOf: – #/definitions/license minimum: 1 description: As licenças que serão vinculadas para o tenant informado responses: 200: description: Ok schema: type: object 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /licensing/actions/saveNotificationUsers: post: description: Permite cadastrar usuários para acompanhar alterações no serviço de licenciamento através de notificações tags: – Actions x-senior-visibility: PUBLIC parameters: – name: input in: body required: true schema: type: object properties: toAdd: type: array items: type: object allOf: – #/definitions/userNotification description: Usuários que serão adicionados no monitoramento toRemove: type: array items: type: object allOf: – #/definitions/userNotification description: Usuários que serão removidos do monitoramento responses: 200: description: Ok schema: type: object 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /licensing/events/licensingChanged: post: description: Notifica que um licenciamento sofreu alteração x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – tenant – to properties: tenant: type: string description: Nome do tenant from: type: array items: type: object allOf: – #/definitions/license description: Estado anterior do licenciamento to: type: object allOf: – #/definitions/license description: Nova licença responses: 200: description: OK default: description: Error response schema: #/definitions/genericErrordefinitions: status: description: Estado da licença type: string enum: – UNLOCKED – LOCKED – TRIAL – DEMO userNotificationKind: description: User notification kind. type: string enum: – Operational – Management – News userNotificationPriority: description: User notification priority. type: string enum: – Error – Alert – None eventEmailFormat: description: Format of the email type: string enum: – HTML – PLAIN_TEXT license: description: Registro para bloquear ou desbloquear recursos discriminator: _discriminator type: object required: – status – _discriminator properties: status: type: string allOf: – #/definitions/status description: Informar se irá bloquear ou desbloquear recursos endDate: type: string format: date description: Data de fim do registro\n No próximo dia em relação a data de fim, o status sofrerá a seguinte alteração:\n – De UNLOCKED para LOCKED\n – De LOCKED para UNLOCKED\n – De TRIAL ou DEMO para LOCKED _discriminator: type: string description: domainLicense: description: Registro para bloquear ou desbloquear um domínio completo allOf: – #/definitions/license – type: object required: – domain properties: domain: type: string description: Nome do domínio serviceLicense: description: Registro para bloquear ou desbloquear um serviço específico allOf: – #/definitions/domainLicense – type: object required: – service properties: service: type: string description: Nome do serviço permissionLicense: description: Registro para bloquear ou desbloquear permissões específicas allOf: – #/definitions/license – type: object required: – permissions properties: permissions: type: array items: type: object allOf: – #/definitions/permission minimum: 1 description: Conjunto de permissões (recurso e ação) taskLicense: description: Registro para bloquear ou desbloquear todos recursos de uma atividade allOf: – #/definitions/license – type: object required: – task properties: task: type: string description: URI da task licenseHistory: description: Registro de histórico das alterações de licenças/bloqueios type: object required: – domain – createdDate – username – status properties: domain: type: string description: Nome do domínio service: type: string description: Nome do serviço resource: type: string description: O uri do resource action: type: string description: O nome da ação createdDate: type: string format: date-time description: Data da ocorrência username: type: string description: Usuário responsável status: type: string allOf: – #/definitions/status description: Status do registro endDate: type: string format: date description: Data de fim permission: description: Um conjunto de resource e ação type: object required: – resource – action properties: resource: type: string maxLength: 255 description: O uri do resource action: type: string description: O nome da ação userNotification: description: Registro de um usuário que irá receber notificações type: object required: – tenant – username properties: tenant: type: string description: Nome do tenant que o usuário pertence username: type: string description: Nome completo do usuário com domínio pagination: description: As configurações de paginação de uma listagem type: object properties: pageNumber: type: integer format: int64 description: O número da página retornado. A primeira página corresponde ao índice 0 default: 0 pageSize: type: integer format: int64 description: Quantidade de registros por página default: 10 listInformation: description: As informações sobre os resultados de listagem realizada type: object required: – totalElements – totalPages properties: totalElements: type: integer format: int64 description: Quantidade total de resultados encontrados totalPages: type: integer format: int64 description: Quantidade total de páginas encontradas 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 description: A symbolic code identifying the category of the reason of the error. enum: – BAD_REQUEST – UNAUTHORIZED – PAYMENT_REQUIRED – FORBIDDEN – OBJECT_NOT_FOUND – REQUEST_TIMEOUT – GONE – UNPROCESSABLE – INTERNAL_ERROR – NOT_IMPLEMENTED – SERVICE_UNAVAILABLE – INSUFFICIENT_STORAGE