Acesso e Segurança (sam)

Models

credentialSituation
cardTechnology
biometricManufacturer
procedureType
procedureDirection
physicalLocationStatus
visitSituation
visitLimitControl
visitorInvitationStatus
visitorVehicleSituation
visitorSituation
credentialOrigin
timeValidityType
personSituationType
phoneType
statusHistoric
blockingType
availability
createVisitorProvisoryCredential
informationCardCredentialRecord
visitor
scheduling
visitType
visitProcedure
procedure
role
visitResource
lobbyResource
physicalLocation
visitedPerson
schedulingResource
lobby
lobbyCredentialTechnology
personProcedure
consentEvidence
visitorInvitation
visitorVehicle
visitorCompany
createPersonProvisoryCredential
provisoryCredentialReasonRecord
personRecord
physicalLocationRecord
documentRecord
documentTypeRecord
phoneRecord
emailRecord
personRoleRecord
roleRecord
roleAccessPhysicalLocationRecord
personRoleSuspensionRecord
personSituationRecord
groupPersonRecord
groupRecord
organizationalStructurePersonRecord
organizationalStructureRecord
organizationalStructureTypeRecord
lobbyRecord
genericError
Error
2.0info: 2.91.2 Portaria description: Gestao de Portaria x-senior-domain: Acesso e Segurança x-senior-domain-path: sam x-senior-service-path: lobby contact: name: Senior X Platform url: https://dev.senior.com.br email: seniorx-dev@senior.com.brhost: api.senior.com.br /sam/lobbysecurityDefinitions: bearerAuth: type: apiKey in: header name: Authorization – application/json – application/jsonparameters: clientId: name: client_id type: string in: header required: true description: Identificação da aplicação cadastrada no portal do desenvolvedor (api.xplatform.com.br)paths: /createPersonProvisoryCredentialCard: post: description: Cria credencial temporária para uma pessoa previamente cadastrada, visitantes podem ser cadastradas utilizando a ação createVisitorProvisoryCredentialCard x-senior-event: false deprecated: false tags: – Endpoints security: – bearerAuth: [] parameters: – #/parameters/clientId – name: input in: body required: true schema: #/definitions/createPersonProvisoryCredential responses: 200: description: Ok schema: type: object required: – id properties: id: type: integer description: Identificador da credencial situation: #/definitions/credentialSituation endDate: type: string description: Data de expiração da credencial startDate: type: string description: Data de início da credencial person: #/definitions/personRecord role: #/definitions/roleRecord schedulingId: type: integer description: Identificador do agendamento cardCredentialList: #/definitions/informationCardCredentialRecord virtualLobbyId: type: integer description: A portaria virtual onde foi emitida a credencial provisoryCredentialReason: #/definitions/provisoryCredentialReasonRecord lobby: #/definitions/lobbyRecord default: description: Error response schema: #/definitions/genericError /createVisitorProvisoryCredentialCard: post: description: Cria credencial para um visitante x-senior-event: false deprecated: false tags: – Endpoints security: – bearerAuth: [] parameters: – #/parameters/clientId – name: input in: body required: true schema: #/definitions/createVisitorProvisoryCredential responses: 200: description: Ok schema: type: object required: – id properties: id: type: integer description: Identificador da credencial situation: #/definitions/credentialSituation endDate: type: string description: Data de expiração da credencial startDate: type: string description: Data de início da credencial person: #/definitions/personRecord role: #/definitions/roleRecord schedulingId: type: integer description: Identificador do agendamento cardCredentialList: #/definitions/informationCardCredentialRecord virtualLobbyId: type: integer description: A portaria virtual onde foi emitida a credencial provisoryCredentialReason: #/definitions/provisoryCredentialReasonRecord lobby: #/definitions/lobbyRecord default: description: Error response schema: #/definitions/genericErrordefinitions: credentialSituation: type: string enum: – RELEASED – BLOCKED cardTechnology: type: string enum: – BARCODE_CARD – RFID_CARD – SMART_CARD biometricManufacturer: type: string enum: – NONE – FINGERPRINT_SAGEM – FINGERPRINT_SUPREMA – FINGERPRINT_VIRDI – FINGERPRINT_NITGEN – FINGERPRINT_CAMA – FINGERPRINT_INNOVATRICS – HANDKEY_IR – FACIAL – FINGERPRINT_SECUKEY – FACIAL_VISICA – FINGERPRINT_DIXI – FACIAL_DIXI – FACIAL_HENRY procedureType: type: string enum: – NOT_REQUIRES_INFORMATION_GATHERING – REQUIRES_INFORMATION_GATHERING – CONSENT procedureDirection: type: string enum: – ENTRY – EXIT physicalLocationStatus: type: string enum: – DISABLED – ENABLED visitSituation: type: string enum: – PENDING – IN_PROGRESS – FINISHED – NOT_OCCURRED visitLimitControl: type: string enum: – DOES_NOT_CONTROL – ALERT – BLOCK visitorInvitationStatus: type: string enum: – CREATED – SENT – ACCEPTED – REFUSED – EXPIRED – CONFIRMED – DECLINED visitorVehicleSituation: type: string enum: – CHECK_IN_PENDING – CHECK_IN_REALIZED – VISITING – CHECK_OUT_REALIZED – CHECK_IN_NOT_REALIZED – CHECK_IN_EXPIRED visitorSituation: type: string enum: – CHECK_IN_PENDING – CHECK_IN_REALIZED – VISITING – CHECK_OUT_REALIZED – CHECK_IN_NOT_REALIZED – CHECK_IN_EXPIRED credentialOrigin: type: string enum: – UNKNOWN – LOBBY – SELF_SERVICE_TERMINAL timeValidityType: type: string enum: – HOUR – DAY personSituationType: type: string enum: – ACTIVE – BLOCKED phoneType: type: string enum: – UNDEFINED – WORK – MOBILE – HOME – OTHERS statusHistoric: type: string enum: – FUTURE – PRESENT – PAST blockingType: type: string enum: – DEFINITIVE – TEMPORARY availability: type: string enum: – ABSENT – AVAILABLE createVisitorProvisoryCredential: type: object required: – isCheckedOverlap – cardCredentialList – endDate – roleId – visitor – schedulingId properties: isCheckedOverlap: type: boolean description: Se deve suspender a credencial existente cardCredentialList: type: array items: #/definitions/informationCardCredentialRecord description: Lista de cartões de credenciais a serem cadastradas provisoryCredentialReasonId: type: integer description: Id do motivo da credencial provisória, cadastro pela entidade provisoryCredentialReason. É utilizado apenas para consultas e estatísticas startDate: type: string description: A data de início da credencial format: date-time endDate: type: string description: A data de expiração da credencial format: date-time biometricManufacturer: #/definitions/biometricManufacturer biometricId: type: integer description: O identificador da biometria da pessoa virtualLobbyId: type: integer description: O identificador da portaria virtual, cadastro pelo serviço virtualLobby roleId: type: integer description: O papel da credencial que o visitante vai assumir, usado principalmente para visitantes sem cadastro prévio, cadastro em sam-aplicacao-backend/entities/role visitor: #/definitions/visitor schedulingId: type: integer description: O agendamento relacionado à credencial, id da entidade scheduling, apenas para visitas agendadas credentialOrigin: #/definitions/credentialOrigin selfServiceTerminalId: type: integer description: id do terminal de autoatendimento informationCardCredentialRecord: type: object required: – cardTechnology – cardNumber properties: id: type: integer description: Código identificador cardTechnology: #/definitions/cardTechnology cardNumber: type: integer description: Número do Cartão visitor: type: object properties: id: type: integer description: ID personId: type: integer description: Visitante scheduling: #/definitions/scheduling visitorSituation: #/definitions/visitorSituation company: #/definitions/visitorCompany locator: type: string description: Código localizador checkinDate: type: string description: Data do Checkin format: date-time entranceDate: type: string description: Data de entrada format: date-time checkoutDate: type: string description: Data do checkout format: date-time personVehicleId: type: integer description: Id da Associação da Pessoa com Veículo createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time scheduling: type: object required: – title – expectedEndDate – visitType – visitSituation properties: id: type: integer description: ID type: string description: Título da visita expectedStartDate: type: string description: Data prevista de início do agendamento format: date-time expectedEndDate: type: string description: Data prevista de fim do agendamento format: date-time visitType: #/definitions/visitType physicalLocation: #/definitions/physicalLocation visitedPeople: type: array items: #/definitions/visitedPerson description: Lista de visitados visitors: type: array items: #/definitions/visitor description: Lista de visitantes schedulingResources: type: array items: #/definitions/schedulingResource description: Recursos da visita visitSituation: #/definitions/visitSituation lobby: #/definitions/lobby personProcedures: type: array items: #/definitions/personProcedure description: Procedimentos realizados visitorInvitations: type: array items: #/definitions/visitorInvitation description: Lista de convites para visitantes visitorVehicles: type: array items: #/definitions/visitorVehicle description: Lista de veículos visitantes createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time visitType: type: object required: – name – role – usedBySelfServiceTerminal – sendEmailToVisited properties: id: type: integer description: ID name: type: string description: Nome do tipo de visita visitProcedures: type: array items: #/definitions/visitProcedure description: Procedimentos da visita role: #/definitions/role visitResources: type: array items: #/definitions/visitResource description: Recursos padrão do tipo de visita usedBySelfServiceTerminal: type: boolean description: Flag se o tipo de visita é utilizado pelo totem sendEmailToVisited: type: boolean description: Flag se envia email de notificação ao visitado integratedWithGAS: type: boolean description: Possui integração com Ronda Senior allowsVisitorInvitation: type: boolean description: Permite convite para visitante allowsDeliveryOfCredentialByBot: type: boolean description: Permite entrega de credencial via bot createFacialCredential: type: boolean description: Cria credencial facial allowsVisitorPortal: type: boolean description: Permite portal de visitante createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time visitProcedure: type: object required: – procedure – required properties: id: type: integer description: ID visitType: #/definitions/visitType procedure: #/definitions/procedure required: type: boolean description: Flag sinalizando se execução do procedimento é obrigatória integratedWithGAS: type: boolean description: Possui integração com Ronda Senior createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time procedure: type: object required: – name – validityDays properties: id: type: integer description: ID name: type: string description: Nome do procedimento description: type: string description: Descrição do procedimento validityDays: type: integer description: Validade do procedimento em dias integratedWithGAS: type: boolean description: Possui integração com Ronda Senior consent: #/definitions/consent procedureType: #/definitions/procedureType direction: #/definitions/procedureDirection createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time consent: type: object required: – consentTerm – name properties: id: type: integer description: ID consentTerm: type: integer description: Termo de consentimento name: type: string description: Nome do termo de consentimento allowsPrinting: type: boolean description: Permite impressão do termo de consentimento sendEmail: type: boolean description: Envia email com informações para visualização do termo de consentimento createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time role: type: object required: – name – usedByProvisory – receiveVisit properties: id: type: integer description: ID name: type: string description: Nome usedByProvisory: type: boolean description: Papel Utilizado pelo Provisório receiveVisit: type: boolean description: Papel que Recebe Visita visitResource: type: object properties: id: type: integer description: ID visitType: #/definitions/visitType lobbyResource: #/definitions/lobbyResource createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time lobbyResource: type: object required: – name properties: id: type: integer description: ID name: type: string description: Nome do recurso visitResources: type: array items: #/definitions/visitResource description: Tipo de Visita ligados ao Recurso createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time physicalLocation: type: object required: – parent – name – status properties: id: type: integer description: ID parent: type: integer description: Local Físico Pai name: type: string description: Nome status: #/definitions/physicalLocationStatus visitedPerson: type: object properties: id: type: integer description: ID personId: type: integer description: Visitado scheduling: #/definitions/scheduling createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time schedulingResource: type: object properties: id: type: integer description: ID scheduling: #/definitions/scheduling lobbyResource: #/definitions/lobbyResource quantity: type: integer description: Quantidade note: type: string description: Observação createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time lobby: type: object required: – name – physicalLocation – provisoryCredentialValidityInDays – schedulingCredentialValidityInHours – isActive – visitLimitControl properties: id: type: integer description: ID name: type: string description: Nome da portaria physicalLocation: #/definitions/physicalLocation provisoryCardPhotoValidityInDays: type: integer description: Validade da foto do colaborador em dias scheduledVisitPhotoValidityInDays: type: integer description: Validade da foto do visitante em dias provisoryCredentialValidityInDays: type: integer description: Validade da credencial provisória em dias schedulingCredentialValidityInHours: type: integer description: Validade da credencial de visitante em horas schedulingToleranceInMinutes: type: integer description: Tolerância no agendamento em minutos provisoryCredentialsMonthlyLimit: type: integer description: Limite mensal de credenciais provisórias isActive: type: boolean description: Estado da portaria integratedWithGAS: type: boolean description: Possui integração com Ronda Senior schedulingReportId: type: string description: Identificador do Relatório de Agendamento na Plataforma usesCredential: type: boolean description: Utiliza credencial lobbyCredentialTechnologies: type: array items: #/definitions/lobbyCredentialTechnology description: Tecnologia disponível para credencial visitLimitControl: #/definitions/visitLimitControl limitOfDaysWithVisitPerWeek: type: integer description: Limite de dias com visita por semana linkToBot: type: string description: Link para o bot createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time lobbyCredentialTechnology: type: object properties: id: type: integer description: ID lobby: #/definitions/lobby cardTechnology: #/definitions/cardTechnology createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time personProcedure: type: object required: – personId – procedure properties: id: type: integer description: ID personId: type: integer description: Visitante procedure: #/definitions/procedure completionDate: type: string description: Data de finalização do procedimento format: date-time responsibleUser: type: string description: Responsável pela finalização do procedimento procedureDetails: type: string description: Detalhes do procedimento scheduling: #/definitions/scheduling consentEvidences: type: array items: #/definitions/consentEvidence description: Evidências de Consentimento createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time consentEvidence: type: object required: – evidencedBy – evidenceDate – person – consentTermVersion properties: id: type: integer description: ID evidencedBy: type: string description: Evidenciado por evidenceDate: type: string description: Data da evidência format: date-time person: type: integer description: Pessoa que consentiu com o termo consentTermVersion: type: integer description: Versão do termo de consentimento recipientEmail: type: string description: Email do destinatário emailSent: type: boolean description: Email enviado personProcedure: #/definitions/personProcedure createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time visitorInvitation: type: object properties: id: type: integer description: ID scheduling: #/definitions/scheduling visitorEmail: type: string description: Email do visitante locator: type: string description: Código localizador do visitante invitationStatus: #/definitions/visitorInvitationStatus botConversationId: type: string description: ID da convera do Bot consentTermVersionId: type: integer description: ID da versão do termo de consentimento consentDate: type: string description: Data do consentimento format: date-time documentTypeId: type: integer description: ID do tipo de documento document: type: string description: Documento visitorName: type: string description: Nome do visitante personId: type: integer description: ID da pessoa visitor: #/definitions/visitor credentialNumber: type: integer description: Número da credencial hasFacialCredential: type: boolean description: Tem credencial facial createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time visitorVehicle: type: object properties: id: type: integer description: ID scheduling: #/definitions/scheduling vehicleId: type: integer description: ID do veículo visitorVehicleSituation: #/definitions/visitorVehicleSituation company: #/definitions/visitorCompany checkinDate: type: string description: Data do check-in format: date-time entranceDate: type: string description: Data da entrada format: date-time checkoutDate: type: string description: Data do check-out format: date-time createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time visitorCompany: type: object required: – name properties: id: type: integer description: ID name: type: string description: Nome createdBy: type: string description: createdDate: type: string description: format: date-time lastModifiedBy: type: string description: lastModifiedDate: type: string description: format: date-time createPersonProvisoryCredential: type: object required: – isCheckedOverlap – cardCredentialList – endDate – personId – lobbyId properties: isCheckedOverlap: type: boolean description: Se deve suspender a credencial existente cardCredentialList: type: array items: #/definitions/informationCardCredentialRecord description: Lista de cartões de credenciais a serem cadastradas provisoryCredentialReasonId: type: integer description: Id do motivo da credencial provisória, cadastro pela entidade provisoryCredentialReason. É utilizado apenas para consultas e estatísticas startDate: type: string description: A data de início da credencial format: date-time endDate: type: string description: A data de expiração da credencial format: date-time biometricManufacturer: #/definitions/biometricManufacturer biometricId: type: integer description: O identificador da biometria da pessoa virtualLobbyId: type: integer description: O identificador da portaria virtual, cadastro pelo serviço virtualLobby personId: type: integer description: O identificador da pessoa que receberá a credencial, cadastro em sam-aplicacao-backend/entities/person lobbyId: type: integer description: O identificador da portaria, cadastro pela entidade lobby credentialOrigin: #/definitions/credentialOrigin selfServiceTerminalId: type: integer description: Id do terminal de autoatendimento provisoryCredentialReasonRecord: type: object required: – reasonInPortuguese – reasonInEnglish – reasonInSpanish – validityTime – timeValidityType – isActive properties: id: type: integer description: ID reasonInPortuguese: type: string description: Motivo em Português reasonInEnglish: type: string description: Motivo em Inglês reasonInSpanish: type: string description: Motivo em Espanhol validityTime: type: integer description: Tempo de Validade timeValidityType: #/definitions/timeValidityType isActive: type: boolean description: Motivo Ativo personRecord: type: object required: – id properties: id: type: integer description: ID name: type: string description: Nome photoDate: type: string description: Data da atualização da foto format: date-time lastAccessDate: type: string description: Último acesso format: date-time currentPhysicalLocation: #/definitions/physicalLocationRecord situation: #/definitions/personSituationType lastAccessAllowedDate: type: string description: Data do último acesso permitido format: date-time lastAccessAllowedPhysicalLocation: #/definitions/physicalLocationRecord documents: type: array items: #/definitions/documentRecord description: Documento phones: type: array items: #/definitions/phoneRecord description: Telefone emails: type: array items: #/definitions/emailRecord description: Email personRoles: type: array items: #/definitions/personRoleRecord description: Papéis da pessoa situations: type: array items: #/definitions/personSituationRecord description: Lista de situação da pessoa groups: type: array items: #/definitions/groupPersonRecord description: Grupos availability: #/definitions/availability organizationalStructures: type: array items: #/definitions/organizationalStructurePersonRecord description: Estruturas organizacionais physicalLocationRecord: type: object required: – parent – name – status properties: id: type: integer description: ID parent: type: integer description: Local físico pai name: type: string description: Nome status: #/definitions/physicalLocationStatus documentRecord: type: object required: – id – documentType – document properties: id: type: integer description: ID documentType: #/definitions/documentTypeRecord document: type: string description: Documento documentTypeRecord: type: object required: – id – name – label – required properties: id: type: integer description: ID name: type: string description: Nome do tipo de documento label: type: string description: Label do documento mask: type: string description: Máscara do documento required: type: boolean description: Documento obrigatório phoneRecord: type: object required: – id – number properties: id: type: integer description: ID preferential: type: boolean description: Telefone Preferencial idd: type: integer description: DDI/IDD (International Direct Dialing) number: type: string description: Número do telefone phoneExtension: type: string description: Ramal phoneType: #/definitions/phoneType emailRecord: type: object required: – id – email properties: id: type: integer description: ID preferential: type: boolean description: Email Preferencial email: type: string description: Endereço do email personRoleRecord: type: object required: – id – startDate properties: id: type: integer description: ID person: #/definitions/personRecord role: #/definitions/roleRecord startDate: type: string description: Data início format: date-time endDate: type: string description: Data fim format: date-time status: #/definitions/statusHistoric personRoleSuspensions: type: array items: #/definitions/personRoleSuspensionRecord description: Suspensões de papéis roleRecord: type: object required: – id – name – usedByProvisory – receiveVisit properties: id: type: integer description: ID name: type: string description: Nome usedByProvisory: type: boolean description: Papel utilizado pelo provisório receiveVisit: type: boolean description: Papel que Recebe Visita personRoles: type: array items: #/definitions/personRoleRecord description: Relação pessoa papel roleAccessPhysicalLocations: type: array items: #/definitions/roleAccessPhysicalLocationRecord description: Relação de papel que acessa o local físico roleAccessPhysicalLocationRecord: type: object required: – id – role – physicalLocation properties: id: type: integer description: ID role: #/definitions/roleRecord physicalLocation: #/definitions/physicalLocationRecord personRoleSuspensionRecord: type: object required: – id – startDate – justification properties: id: type: integer description: ID personRole: #/definitions/personRoleRecord startDate: type: string description: Data início format: date-time endDate: type: string description: Data fim format: date-time justification: type: string description: Justificativa status: #/definitions/statusHistoric personSituationRecord: type: object required: – id – person – blockDate – blockReason properties: id: type: integer description: ID person: #/definitions/personRecord blockDate: type: string description: Data do bloqueio format: date-time blockReason: type: string description: Motivo do bloqueio unblockDate: type: string description: Data do desbloqueio format: date-time unblockProcedure: type: string description: Procedimento de desbloqueio unblockJustification: type: string description: Justificativa do desbloqueio blockingType: #/definitions/blockingType groupPersonRecord: type: object required: – id – person – group properties: id: type: integer description: ID person: #/definitions/personRecord group: #/definitions/groupRecord groupRecord: type: object required: – id – parent – name properties: id: type: integer description: ID parent: type: integer description: ID do pai name: type: string description: Nome do grupo physicalLocation: #/definitions/physicalLocationRecord people: type: array items: #/definitions/groupPersonRecord description: Pessoas do grupo organizationalStructurePersonRecord: type: object properties: id: type: integer description: ID organizationalStructure: #/definitions/organizationalStructureRecord organizationalStructureRecord: type: object required: – parent – organizationalStructureType – description – integrated properties: id: type: integer description: ID parent: type: integer description: Estrutura organizacional pai organizationalStructureType: #/definitions/organizationalStructureTypeRecord description: type: string description: Descrição integrated: type: boolean description: Realiza Validação de Papel organizationalStructureTypeRecord: type: object required: – name properties: id: type: integer description: ID name: type: string description: Nome lobbyRecord: type: object properties: id: type: integer description: ID name: type: string description: Nome da portaria 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