2.0info: 1.1.6 control description: Serviço de controle dos clientes que utilizam o ERP XT x-senior-domain: erpxt x-senior-domain-path: erpxt x-senior-service-path: control 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/erpxtsecurityDefinitions: APIKeyHeader: type: apiKey in: header name: Authorizationsecurity: – APIKeyHeader: [] – application/json – application/jsonpaths: /control/queries/healthcheck: post: description: Verificação disponibilidade do serviço tags: – Queries x-senior-visibility: PRIVATE responses: 200: description: Ok schema: type: object required: – status – checks properties: status: type: string allOf: – #/definitions/healthcheckDTO description: Status do serviço checks: type: object allOf: – #/definitions/checkDTO description: Verificações para assegurar o status 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Verificação disponibilidade do serviço tags: – Queries x-senior-visibility: PRIVATE responses: 200: description: Ok schema: type: object required: – status – checks properties: status: type: string allOf: – #/definitions/healthcheckDTO description: Status do serviço checks: type: object allOf: – #/definitions/checkDTO description: Verificações para assegurar o status 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/queries/listAbTests: post: description: Lista os testes A/B disponíveis para o cliente tags: – Queries x-senior-visibility: PUBLIC parameters: – name: input in: body required: true schema: type: object required: – code properties: code: type: integer format: int64 description: Código do cliente responses: 200: description: Ok schema: type: object required: – tests properties: tests: type: array items: type: object allOf: – #/definitions/abTest minimum: 1 description: Lista de testes A/B ativos para o cliente default: description: Error response schema: #/definitions/genericError get: description: Lista os testes A/B disponíveis para o cliente tags: – Queries x-senior-visibility: PUBLIC parameters: – name: code description: Código do cliente in: query required: true type: integer format: int64 responses: 200: description: Ok schema: type: object required: – tests properties: tests: type: array items: type: object allOf: – #/definitions/abTest minimum: 1 description: Lista de testes A/B ativos para o cliente default: description: Error response schema: #/definitions/genericError /control/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 maxLength: 255 description: responses: 200: description: Ok schema: type: object required: – metadata properties: metadata: type: string maxLength: 255 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 maxLength: 255 responses: 200: description: Ok schema: type: object required: – metadata properties: metadata: type: string maxLength: 255 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/queries/exportCustomer: post: description: tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – config properties: config: type: object allOf: – #/definitions/exportConfig description: responses: 200: description: Ok schema: type: object required: – exportJobId properties: exportJobId: type: string maxLength: 255 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/queries/exportAbTest: post: description: tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – config properties: config: type: object allOf: – #/definitions/exportConfig description: responses: 200: description: Ok schema: type: object required: – exportJobId properties: exportJobId: type: string maxLength: 255 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/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 /control/actions/migrateSchemaReport: post: description: Executa a migração de base para o serviço no tenant repassado tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – tenantName properties: tenantName: type: string maxLength: 255 description: Nome do tenant que deverá ter a base migrada responses: 200: description: Ok schema: type: object required: – success properties: success: type: boolean description: Retorno de sucesso ou falha para a migração da base 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/actions/odata: post: description: tags: – Actions x-senior-visibility: PRIVATE responses: 204: description: No response 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/actions/importCustomer: post: description: tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – config properties: config: type: object allOf: – #/definitions/importConfig description: responses: 200: description: Ok schema: type: object required: – importJobId properties: importJobId: type: string maxLength: 255 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/actions/importAbTest: post: description: tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – config properties: config: type: object allOf: – #/definitions/importConfig description: responses: 200: description: Ok schema: type: object required: – importJobId properties: importJobId: type: string maxLength: 255 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/events/importCustomerEvent: post: description: x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – eventpl properties: eventpl: type: object allOf: – #/definitions/importEventStatus description: responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /control/events/exportCustomerEvent: post: description: x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – eventpl properties: eventpl: type: object allOf: – #/definitions/exportEventStatus description: responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /control/events/importAbTestEvent: post: description: x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – eventpl properties: eventpl: type: object allOf: – #/definitions/importEventStatus description: responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /control/events/exportAbTestEvent: post: description: x-senior-event: true tags: – Events parameters: – name: input in: body required: true schema: type: object required: – eventpl properties: eventpl: type: object allOf: – #/definitions/exportEventStatus description: responses: 200: description: OK default: description: Error response schema: #/definitions/genericError /control/entities/customer: post: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/customer responses: 200: description: The created resource schema: #/definitions/customer 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/customer responses: 200: description: The created resource schema: #/definitions/customer 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: offset in: query type: number – name: size in: query type: number – name: filter in: query type: string – name: groupby in: query type: string – name: displayfields in: query type: string – name: translation in: query type: boolean responses: 200: description: Ok schema: type: array items: #/definitions/customer 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/entities/customer/{id}: put: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/editCustomer responses: 200: description: Ok schema: #/definitions/editCustomer 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/customer responses: 200: description: Ok schema: #/definitions/customer 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok schema: #/definitions/customer 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError delete: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/entities/customer/bulk: post: description: Esta entidade pode ser customizada. tags: – Bulk parameters: – name: entities in: body required: true schema: type: array items: #/definitions/customer responses: 200: description: The bulk creation has created resources 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/entities/abTest: post: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/abTest responses: 200: description: The created resource schema: #/definitions/abTest 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/abTest responses: 200: description: The created resource schema: #/definitions/abTest 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: offset in: query type: number – name: size in: query type: number – name: filter in: query type: string – name: groupby in: query type: string – name: displayfields in: query type: string – name: translation in: query type: boolean responses: 200: description: Ok schema: type: array items: #/definitions/abTest 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/entities/abTest/{id}: put: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/editAbTest responses: 200: description: Ok schema: #/definitions/editAbTest 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/abTest responses: 200: description: Ok schema: #/definitions/abTest 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok schema: #/definitions/abTest 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError delete: description: Esta entidade pode ser customizada. tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /control/entities/abTest/bulk: post: description: Esta entidade pode ser customizada. tags: – Bulk parameters: – name: entities in: body required: true schema: type: array items: #/definitions/abTest responses: 200: description: The bulk creation has created resources 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericErrordefinitions: healthcheckDTO: description: Define o Status do serviço type: string enum: – UP – DOWN 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 fieldType: description: type: string enum: – BINARY – BOOLEAN – DATE – DATETIME – LOCALDATETIME – DOUBLE – ENUM – INTEGER – MONEY – STRING – TIME fileFormat: description: type: string enum: – CSV – FLAT – JSON – XML hookFunction: description: type: string enum: – BEFORE_PARSE – BEFORE_CONVERSION – ON_ERROR – VALIDATE eventType: description: type: string enum: – CHUNK – DOWNLOAD – ERROR – FINISH – START errorStrategy: description: type: string enum: – CALL_SCRIPT – IGNORE – STOP status: description: type: string enum: – DONE – DONE_WITH_ERRORS – DOWNLOADING – ERROR – NOT_STARTED – RUNNING errorType: description: type: string enum: – CONVERT_ERROR – SERVICE_ERROR checkDTO: description: Dados do healthcheck type: object required: – name – status properties: name: type: string maxLength: 255 description: Nome do healthcheck status: type: string allOf: – #/definitions/healthcheckDTO description: Status do healthcheck customer: description: Entidade que representa um cliente da Senior, utilizador do EPR XT type: object required: – code – name properties: id: type: string format: uuid description: Código único da tabela code: type: integer format: int64 description: Código do cliente name: type: string maxLength: 255 description: Nome fantasia do cliente tenant: type: string maxLength: 32 description: Tenant relacionado tests: type: array items: type: object allOf: – #/definitions/abTest description: Lista de testes A/B ativos para o cliente createdBy: type: string maxLength: 255 description: createdDate: type: string format: date-time description: lastModifiedBy: type: string maxLength: 255 description: lastModifiedDate: type: string format: date-time description: editCustomer: type: object required: – id allOf: – #/definitions/customer abTest: description: Entidade que representa um teste AB type: object required: – code – name properties: id: type: string format: uuid description: Código único da tabela code: type: string maxLength: 32 description: Identificador único do teste name: type: string maxLength: 255 description: Nome do teste description: type: string maxLength: 2000 description: Descrição do teste createdBy: type: string maxLength: 255 description: createdDate: type: string format: date-time description: lastModifiedBy: type: string maxLength: 255 description: lastModifiedDate: type: string format: date-time description: editAbTest: type: object required: – id allOf: – #/definitions/abTest 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 maxLength: 255 description: Class of notification notificationOrigin: type: string maxLength: 255 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 maxLength: 255 description: Notification subject. notificationContent: type: string maxLength: 255 description: Notification content. sourceDomain: type: string maxLength: 255 description: Domain that generates the notification. sourceService: type: string maxLength: 255 description: Service that generates the notification. destinationUser: type: string maxLength: 255 description: Username of the destination user. link: type: string maxLength: 255 description: Notification link _discriminator: type: string maxLength: 255 description: emailNotifyUserEventPayload: description: Represents an email notification payload allOf: – #/definitions/notifyUserEventPayload – type: object required: – from properties: from: type: string maxLength: 255 description: Email sender address sendTo: type: array items: type: string maxLength: 255 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 maxLength: 255 description: Apple/Google application id blobReference: description: Default blob reference type. Every service defines its own. type: object required: – targetObjectId properties: domainName: type: string maxLength: 255 description: The domain the blob belongs to. serviceName: type: string maxLength: 255 description: The service the blob belongs to. targetObjectId: type: string maxLength: 255 description: The basic id of the blob. targetCopyId: type: string maxLength: 255 description: The id of the blob copy. basicErrorPayload: description: Default error payload type. Every service defines its own. type: object properties: message: type: string maxLength: 255 description: The user-facing error message, if any. errorCode: type: string maxLength: 255 description: The program-accessible (and service-specific) error code. importError: description: type: object required: – errorType – lineNumber – bean – message – exceptionClass properties: errorType: type: string allOf: – #/definitions/errorType description: lineNumber: type: integer format: int64 description: bean: type: string maxLength: 255 description: message: type: string maxLength: 255 description: exceptionClass: type: string maxLength: 255 description: fielddto: description: type: object required: – id – name – fieldType properties: id: type: integer format: int64 description: name: type: string maxLength: 255 description: fieldType: type: string allOf: – #/definitions/fieldType description: start: type: integer format: int64 description: size: type: integer format: int64 description: maskPattern: type: string maxLength: 255 description: hookdto: description: type: object required: – hookFunction – script properties: hookFunction: type: string allOf: – #/definitions/hookFunction description: script: type: string maxLength: 255 description: layoutdto: description: type: object required: – id – description – fileFormat – errorStrategy – skipLines – fields properties: id: type: integer format: int64 description: description: type: string maxLength: 255 description: fileFormat: type: string allOf: – #/definitions/fileFormat description: errorStrategy: type: string allOf: – #/definitions/errorStrategy description: delimiter: type: string maxLength: 255 description: skipLines: type: integer format: int64 description: fields: type: array items: type: object allOf: – #/definitions/fielddto minimum: 1 description: hooks: type: array items: type: object allOf: – #/definitions/hookdto description: importReport: description: type: object required: – id – startTime – endTime – uri – beanClass – serviceClass – layout – sucessCount – errorsCount – filteredCount – skippedCount properties: id: type: string maxLength: 255 description: startTime: type: string format: date-time description: endTime: type: string format: date-time description: uri: type: string maxLength: 255 description: beanClass: type: string maxLength: 255 description: serviceClass: type: string maxLength: 255 description: layout: type: object allOf: – #/definitions/layoutdto description: sucessCount: type: integer format: int64 description: errorsCount: type: integer format: int64 description: filteredCount: type: integer format: int64 description: skippedCount: type: integer format: int64 description: importErrors: type: array items: type: object allOf: – #/definitions/importError description: exportEventStatus: description: type: object required: – importerId – eventType – recordCount properties: importerId: type: string maxLength: 255 description: eventType: type: string allOf: – #/definitions/eventType description: recordCount: type: integer format: int64 description: importEventStatus: description: type: object required: – importerId – eventType – status – recordCount properties: importerId: type: string maxLength: 255 description: eventType: type: string allOf: – #/definitions/eventType description: status: type: string allOf: – #/definitions/status description: errorMessage: type: string maxLength: 255 description: recordCount: type: integer format: int64 description: importReport: type: object allOf: – #/definitions/importReport description: exportConfig: description: type: object required: – uri – layout – async – errorStrategy properties: uri: type: string maxLength: 255 description: layout: type: object allOf: – #/definitions/layoutdto description: async: type: boolean description: errorStrategy: type: string maxLength: 255 description: importConfig: description: type: object required: – uri – layout – async – batchSize – errorStrategy properties: uri: type: string maxLength: 255 description: layout: type: object allOf: – #/definitions/layoutdto description: async: type: boolean description: batchSize: type: integer format: int64 description: errorStrategy: type: string allOf: – #/definitions/errorStrategy description: dependency: description: Represents a service dependency type: object required: – domain – service – version properties: domain: type: string maxLength: 255 description: Domain of the dependency service service: type: string maxLength: 255 description: Name of the dependency service type: string maxLength: 255 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