2.0info: 1.1.0 rating description: Serviço de avaliações x-senior-domain: platform x-senior-domain-path: platform x-senior-service-path: rating 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: /rating/queries/listRatings: post: description: Lista as avaliações filtrando obrigatoriamente pela aplicação responsável e pelo nome no cadastro da avaliação tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – appKey – name properties: appKey: type: string description: Chave da aplicação, deve ser a mesma utilizada durante o registro da avaliação com a primitiva saveRating name: type: string description: Identificador do objeto avaliado username: type: string description: Para filtrar as avaliações de um usuário específico type: string description: Filtrar por avaliações em uma versão específica subGroup: type: string description: Filtrar por avaliações em um subgrupo específico do objeto avaliado startDate: type: string format: date description: Listar apenas avaliações feitas após a data inicial endDate: type: string format: date description: Listar apenas avaliações feitas antes da data final page: type: integer format: int64 description: Número da página, o valor default é 1, sendo também o valor mínimo minimum: 1 default: 1 size: type: integer format: int64 description: Tamanho da página, o valor default é 10 sendo o valor mínimo 1 minimum: 1 default: 10 responses: 200: description: Ok schema: type: object required: – ratings – totalPages – totalElements properties: ratings: type: array items: type: object allOf: – #/definitions/ratingSummary minimum: 1 description: Lista de avaliações de acordo com os filtros aplicados totalPages: type: integer format: int64 description: Quantidade total de páginas totalElements: type: integer format: int64 description: Quantidade total de elementos 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Lista as avaliações filtrando obrigatoriamente pela aplicação responsável e pelo nome no cadastro da avaliação tags: – Queries x-senior-visibility: PRIVATE parameters: – name: appKey description: Chave da aplicação, deve ser a mesma utilizada durante o registro da avaliação com a primitiva saveRating in: query required: true type: string – name: name description: Identificador do objeto avaliado in: query required: true type: string – name: username description: Para filtrar as avaliações de um usuário específico in: query type: string – name: version description: Filtrar por avaliações em uma versão específica in: query type: string – name: subGroup description: Filtrar por avaliações em um subgrupo específico do objeto avaliado in: query type: string – name: startDate description: Listar apenas avaliações feitas após a data inicial in: query type: string format: date – name: endDate description: Listar apenas avaliações feitas antes da data final in: query type: string format: date – name: page description: Número da página, o valor default é 1, sendo também o valor mínimo in: query type: integer format: int64 – name: size description: Tamanho da página, o valor default é 10 sendo o valor mínimo 1 in: query type: integer format: int64 responses: 200: description: Ok schema: type: object required: – ratings – totalPages – totalElements properties: ratings: type: array items: type: object allOf: – #/definitions/ratingSummary minimum: 1 description: Lista de avaliações de acordo com os filtros aplicados totalPages: type: integer format: int64 description: Quantidade total de páginas totalElements: type: integer format: int64 description: Quantidade total de elementos 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/queries/getAverageRating: post: description: Calcula a nota média das avaliações tags: – Queries x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – appKey – names properties: appKey: type: string description: Chave da aplicação, deve ser a mesma utilizada durante o registro da avaliação com a primitiva saveRating names: type: array items: type: string minimum: 1 description: Lista com o identificador dos objetos avaliados type: string description: Filtrar por avaliações em uma versão específica subGroup: type: string description: Filtrar por avaliações em um subgrupo específico do objeto avaliado startDate: type: string format: date description: Usar como base de cálculo apenas avaliações feitas após a data inicial endDate: type: string format: date description: Usar como base de cálculo apenas avaliações feitas antes da data final responses: 200: description: Ok schema: type: object required: – ratings properties: ratings: type: array items: type: object allOf: – #/definitions/averageRate minimum: 1 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: description: Calcula a nota média das avaliações tags: – Queries x-senior-visibility: PRIVATE parameters: – name: appKey description: Chave da aplicação, deve ser a mesma utilizada durante o registro da avaliação com a primitiva saveRating in: query required: true type: string – name: names description: Lista com o identificador dos objetos avaliados in: query required: true type: array items: type: string minimum: 1 – name: version description: Filtrar por avaliações em uma versão específica in: query type: string – name: subGroup description: Filtrar por avaliações em um subgrupo específico do objeto avaliado in: query type: string – name: startDate description: Usar como base de cálculo apenas avaliações feitas após a data inicial in: query type: string format: date – name: endDate description: Usar como base de cálculo apenas avaliações feitas antes da data final in: query type: string format: date responses: 200: description: Ok schema: type: object required: – ratings properties: ratings: type: array items: type: object allOf: – #/definitions/averageRate minimum: 1 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/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 /rating/queries/exportRatingDefinition: post: description: tags: – Queries x-senior-visibility: PUBLIC 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 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/queries/exportRating: post: description: tags: – Queries x-senior-visibility: PUBLIC 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 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/queries/exportAppKey: post: description: tags: – Queries x-senior-visibility: PUBLIC 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 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/queries/getDependencies: post: description: Returns a list with all dependencies from this service, along with their respective versions tags: – Queries x-senior-visibility: PUBLIC 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: PUBLIC 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 /rating/actions/saveRating: post: description: Salva uma determinada avaliação apartir de uma aplicação, um nome da avaliação e uma nota tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – appKey – name – rate properties: appKey: type: string description: Chave da aplicação responsável pelo rating, apenas esta aplicação poderá consultar o rating no futuro name: type: string description: Identificar do que se está avaliando rate: type: integer format: int64 description: Nota do usuário comment: type: string description: Comentário que o usuário pode fazer junto da nota type: string description: Versão do que se está avaliando, utilizado para gerar histórico de versões x notas, para ajudar a identificar se as melhorias da versão foram efetivas subGroup: type: string description: Caso o mesmo objeto identificador seja avaliado mais vezes em pontos diferentes do serviço, ou alguma outra informação que torne as avaliações do mesmo identificador diferentes responses: 200: description: Ok schema: type: object 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/actions/generateAppKey: post: description: Gera um appkey para vincular aos ratings, todas as chamadas de listagem e cadastro de rating deve estar vinculado a um appKey, por tanto após a geração o mesmo deve ser salvo, visto que o appKey gerado é randômico e chamando duas vezes este endpoint com os mesmos parâmetros não retorna o mesmo resultado tags: – Actions x-senior-visibility: PRIVATE parameters: – name: input in: body required: true schema: type: object required: – domainName – serviceName properties: domainName: type: string description: serviceName: type: string description: responses: 200: description: Ok schema: type: object required: – appKey properties: appKey: type: string description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/actions/importRatingDefinition: post: description: tags: – Actions x-senior-visibility: PUBLIC 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 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/actions/importRating: post: description: tags: – Actions x-senior-visibility: PUBLIC 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 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/actions/importAppKey: post: description: tags: – Actions x-senior-visibility: PUBLIC 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 description: 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/entities/ratingDefinition: post: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/ratingDefinition responses: 200: description: The created resource schema: #/definitions/ratingDefinition 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/ratingDefinition responses: 200: description: The created resource schema: #/definitions/ratingDefinition 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: offset in: query type: number – name: size in: query type: number responses: 200: description: Ok schema: type: array items: #/definitions/ratingDefinition 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/entities/ratingDefinition/{id}: put: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/ratingDefinition responses: 200: description: Ok schema: #/definitions/ratingDefinition 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/ratingDefinition responses: 200: description: Ok schema: #/definitions/ratingDefinition 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok schema: #/definitions/ratingDefinition 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError delete: 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 /rating/entities/ratingDefinition/bulk: post: tags: – Bulk parameters: – name: entities in: body required: true schema: type: array items: #/definitions/ratingDefinition responses: 200: description: The bulk creation has created resources 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/entities/rating: post: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/rating responses: 200: description: The created resource schema: #/definitions/rating 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/rating responses: 200: description: The created resource schema: #/definitions/rating 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: offset in: query type: number – name: size in: query type: number responses: 200: description: Ok schema: type: array items: #/definitions/rating 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/entities/rating/{id}: put: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/rating responses: 200: description: Ok schema: #/definitions/rating 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/rating responses: 200: description: Ok schema: #/definitions/rating 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok schema: #/definitions/rating 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError delete: 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 /rating/entities/rating/bulk: post: tags: – Bulk parameters: – name: entities in: body required: true schema: type: array items: #/definitions/rating responses: 200: description: The bulk creation has created resources 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/entities/appKey: post: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/appKey responses: 200: description: The created resource schema: #/definitions/appKey 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: entity in: body required: true schema: type: object allOf: – #/definitions/appKey responses: 200: description: The created resource schema: #/definitions/appKey 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: offset in: query type: number – name: size in: query type: number responses: 200: description: Ok schema: type: array items: #/definitions/appKey 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError /rating/entities/appKey/{id}: put: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/appKey responses: 200: description: Ok schema: #/definitions/appKey 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError patch: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string – name: entity in: body required: true schema: #/definitions/appKey responses: 200: description: Ok schema: #/definitions/appKey 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError get: tags: – CRUD x-senior-visibility: PRIVATE parameters: – name: id in: path required: true type: string responses: 200: description: Ok schema: #/definitions/appKey 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError delete: 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 /rating/entities/appKey/bulk: post: tags: – Bulk parameters: – name: entities in: body required: true schema: type: array items: #/definitions/appKey responses: 200: description: The bulk creation has created resources 401: description: Invalid Credentials default: description: Error response schema: #/definitions/genericError definitions: 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 – 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 averageRate: description: Média de avaliação de um objeto type: object required: – name – rate – ratingCount properties: name: type: string description: Identificador do objeto avaliado rate: type: number format: double description: Nota média das avaliações ratingCount: type: integer format: int64 description: Quantidade de avaliações ratingSummary: description: Avaliação de um ítem type: object required: – date – rate properties: date: type: string format: date description: Data da avaliação rate: type: integer format: int64 description: Nota da avaliação comment: type: string description: Comentário da avaliação subGroup: type: string description: Subgrupo do ítem avaliado username: type: string description: Nome do usuário que efetuou a avaliação type: string description: Versão do objeto avaliado ratingDefinition: description: Definição da avaliação type: object required: – appKey – name properties: id: type: string format: uuid description: Identificador appKey: type: object allOf: – #/definitions/appKey description: AppKey do serviço name: type: string description: Nome do objeto da avaliação rating: description: Avaliação type: object required: – ratingDefinition – rate – date properties: id: type: string format: uuid description: Identificador ratingDefinition: type: object allOf: – #/definitions/ratingDefinition description: Definição da avaliação subGroup: type: string description: Subgrupo do objeto avaliado username: type: string description: Nome do usuário que efetuou a avaliação rate: type: integer format: int64 description: Nota da avaliação comment: type: string description: Comentário da avaliação date: type: string format: date description: Data da avaliação type: string description: Versão do objeto avaliado appKey: description: Registro dos AppKey gerados type: object required: – domainName – serviceName properties: id: type: string format: uuid description: AppKey gerado domainName: type: string description: Domínio que gerou o identificador serviceName: type: string description: Serviço que gerou o identificador 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. 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 description: message: type: string description: exceptionClass: type: string description: fielddto: description: type: object required: – id – name – fieldType properties: id: type: integer format: int64 description: name: type: string description: fieldType: type: string allOf: – #/definitions/fieldType description: start: type: integer format: int64 description: size: type: integer format: int64 description: maskPattern: type: string description: hookdto: description: type: object required: – hookFunction – script properties: hookFunction: type: string allOf: – #/definitions/hookFunction description: script: type: string description: layoutdto: description: type: object required: – id – description – fileFormat – errorStrategy – skipLines – fields properties: id: type: integer format: int64 description: description: type: string description: fileFormat: type: string allOf: – #/definitions/fileFormat description: errorStrategy: type: string allOf: – #/definitions/errorStrategy description: delimiter: type: string 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 description: startTime: type: string format: date-time description: endTime: type: string format: date-time description: uri: type: string description: beanClass: type: string description: serviceClass: type: string 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 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 description: eventType: type: string allOf: – #/definitions/eventType description: status: type: string allOf: – #/definitions/status description: errorMessage: type: string 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 description: layout: type: object allOf: – #/definitions/layoutdto description: async: type: boolean description: errorStrategy: type: string description: importConfig: description: type: object required: – uri – layout – async – batchSize – errorStrategy properties: uri: type: string 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 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