def create(self, request): obj = self._schema_draft().loads(request.body) if isinstance(obj.destination, types.SqsDestination): dest = obj.destination message = ( "A test message could not be delivered to this destination: " "SQS %r in %r for %r. " "Please make sure your destination is correctly configured." ) % (dest.queue_url, dest.region, dest.access_key) error = types.ErrorResponse( status_code=400, message=message, errors=[types.InvalidInputError(message=message)], ) error_data = schemas.ErrorResponseSchema().dumps(error).encode("utf-8") return create_response(request, content=error_data, status_code=400) data = self.model.add(obj) return create_response(request, json=data)
def post_load(self, data): del data["code"] return types.InvalidInputError(**data)