> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devmob.app.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Trip Review

> Creates a trip review.



## OpenAPI

````yaml /api-reference/customer/openapi.json post /api/v1/customer/orders/{orderId}/trip-reviews
openapi: 3.0.0
info:
  title: OABUS Customer API
  description: OABUS API
  version: '1.0'
  contact: {}
servers: []
security: []
tags: []
paths:
  /api/v1/customer/orders/{orderId}/trip-reviews:
    post:
      tags:
        - Order
      summary: Create Trip Review
      description: Creates a trip review.
      operationId: createTripReview
      parameters:
        - name: orderId
          required: true
          in: path
          schema:
            type: string
            format: uuid
            description: Order identifier
            example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3a
        - name: fields
          required: false
          in: query
          description: >-
            Comma-separated list of fields to include in the response. Supports
            dot notation for nested projection (e.g.
            `id,name,user.email,trips.route.id`). Unknown fields are silently
            dropped.
          schema:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/CreateTripReviewRequestBody'
      responses:
        '201':
          $ref: '#/components/responses/CreateTripReview201Response'
        '400':
          $ref: '#/components/responses/CreateTripReview400Response'
        '401':
          $ref: '#/components/responses/CreateTripReview401Response'
        '500':
          $ref: '#/components/responses/CreateTripReview500Response'
      security:
        - bearer: []
components:
  requestBodies:
    CreateTripReviewRequestBody:
      required: true
      content:
        application/json:
          schema:
            type: object
            properties:
              driverRating:
                type: integer
                description: Driver rating
                example: 5
              overallRating:
                type: integer
                description: Overall rating
                example: 5
              transportOperatorRating:
                type: integer
                description: Transport operator rating
                example: 4
              tripId:
                type: string
                format: uuid
                description: Trip identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3c
              driverComment:
                description: Driver comment
                example: Motorista atencioso e pontual
                nullable: true
                type: string
              overallComment:
                description: Overall comment
                example: Experiência geral muito boa
                nullable: true
                type: string
              transportOperatorComment:
                description: Transport operator comment
                example: Viagem confortável
                nullable: true
                type: string
              vehicleRating:
                description: Vehicle rating
                example: 4
                nullable: true
                type: integer
            required:
              - driverRating
              - overallRating
              - transportOperatorRating
              - tripId
            additionalProperties: false
            description: Create review
  responses:
    CreateTripReview201Response:
      content:
        application/json:
          schema:
            type: object
            properties:
              tripReviewId:
                type: string
                format: uuid
                description: Trip review identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3a
              tripId:
                type: string
                format: uuid
                description: Trip identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3c
              orderId:
                type: string
                format: uuid
                description: Order identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3c
              customerId:
                type: string
                format: uuid
                description: Customer identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3b
              cooperativeId:
                type: string
                format: uuid
                description: Cooperative identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3e
              transportOperatorId:
                type: string
                format: uuid
                description: Transport operator identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3e
              driverId:
                type: string
                format: uuid
                description: Driver identifier
                example: 0195e7a1-8b5c-7d3e-9f4a-2c6b8d0e1f3d
              overallRating:
                type: integer
                description: Overall rating
                example: 5
              driverRating:
                type: integer
                description: Driver rating
                example: 5
              driverComment:
                description: Driver comment
                example: Motorista atencioso e pontual
                nullable: true
                type: string
              transportOperatorRating:
                type: integer
                description: Transport operator rating
                example: 4
              transportOperatorComment:
                description: Transport operator comment
                example: Viagem confortável
                nullable: true
                type: string
              vehicleRating:
                description: Vehicle rating
                example: 4
                nullable: true
                type: integer
              overallComment:
                description: Overall comment
                example: Experiência geral muito boa
                nullable: true
                type: string
              cooperativeResponseMessage:
                description: Cooperative response message
                example: Obrigado pelo feedback
                nullable: true
                type: string
              respondedByCooperativeId:
                description: Responding cooperative identifier
                example: null
                nullable: true
                type: string
                format: uuid
              respondedByUserId:
                description: Responding user identifier
                example: null
                nullable: true
                type: string
                format: uuid
              moderationStatus:
                type: string
                enum:
                  - VISIBLE
                  - FLAGGED
                  - HIDDEN
                description: Trip review moderation status
                example: VISIBLE
              moderationReason:
                description: Moderation reason
                example: null
                nullable: true
                type: string
              moderatedByUserId:
                description: Moderating user identifier
                example: null
                nullable: true
                type: string
                format: uuid
              createdBy:
                description: Created by
                example: null
                nullable: true
                type: string
                format: uuid
              updatedBy:
                description: Updated by
                example: null
                nullable: true
                type: string
                format: uuid
              respondedAt:
                description: Response timestamp
                example: null
                nullable: true
                type: string
                format: date-time
              moderatedAt:
                description: Moderation timestamp
                example: null
                nullable: true
                type: string
                format: date-time
              createdAt:
                type: string
                format: date-time
                description: Creation timestamp
                example: '2026-07-04T13:10:00.000Z'
              updatedAt:
                type: string
                format: date-time
                description: Update timestamp
                example: '2026-07-04T13:10:00.000Z'
            required:
              - tripReviewId
              - tripId
              - orderId
              - customerId
              - cooperativeId
              - transportOperatorId
              - driverId
              - overallRating
              - driverRating
              - transportOperatorRating
              - moderationStatus
              - createdAt
              - updatedAt
            additionalProperties: false
            description: Trip review
      description: Created
    CreateTripReview400Response:
      content:
        application/json:
          example:
            errors:
              - message: required
                path: name
            message: Bad Request Error
            statusCode: 400
          schema:
            properties:
              message:
                type: string
              statusCode:
                enum:
                  - 400
                type: number
              errors:
                items:
                  properties:
                    message:
                      type: string
                    path:
                      type: string
                  required:
                    - message
                    - path
                  type: object
                type: array
            required:
              - message
              - statusCode
            type: object
      description: Bad Request Error
    CreateTripReview401Response:
      content:
        application/json:
          example:
            message: Missing or invalid access token
            statusCode: 401
          schema:
            properties:
              message:
                type: string
              statusCode:
                enum:
                  - 401
                type: number
            required:
              - message
              - statusCode
            type: object
      description: Unauthorized
    CreateTripReview500Response:
      content:
        application/json:
          example:
            message: Internal Server Error
            statusCode: 500
          schema:
            properties:
              message:
                type: string
              statusCode:
                enum:
                  - 500
                type: number
            required:
              - message
              - statusCode
            type: object
      description: Internal Server Error
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````