> ## Documentation Index
> Fetch the complete documentation index at: https://developers.cconnect.online/llms.txt
> Use this file to discover all available pages before exploring further.

# Reply to a ticket by email

> Queues a plain-text reply to the ticket requester through its configured Gmail/SMTP mailbox. Requires an active ticket, requester email and enabled outgoing mailbox. Other ticket channels are not supported by this operation.

Required scope: `email:send`.



## OpenAPI

````yaml /openapi.json post /api/v1/tickets/{id}/reply
openapi: 3.0.1
info:
  title: Cconnect Customer API
  description: >-
    Company-scoped REST API for Cconnect Desk and Chat. Bearer credentials are
    issued by your company administrator. Public documentation does not grant
    data access. Operations require CustomerApi:Enabled on the API deployment.
  contact:
    name: Cconnect
    url: https://cconnect.online
  version: 1.1.0
servers:
  - url: https://cconnect.online
    description: Cconnect API server (separate from developers.cconnect.online)
security:
  - CustomerBearer: []
externalDocs:
  description: Cconnect developer portal
  url: https://developers.cconnect.online
paths:
  /api/v1/tickets/{id}/reply:
    post:
      tags:
        - Messaging
      summary: Reply to a ticket by email
      description: >-
        Queues a plain-text reply to the ticket requester through its configured
        Gmail/SMTP mailbox. Requires an active ticket, requester email and
        enabled outgoing mailbox. Other ticket channels are not supported by
        this operation.


        Required scope: `email:send`.
      operationId: ReplyToTicket
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
        - name: Idempotency-Key
          in: header
          description: >-
            Unique per operation and company, 1–128 visible ASCII characters.
            Identical retries return the original 202 acceptance and message ID.
            Changed requests return 409. Retained for the company lifetime.
            Check the message resource for current status.
          required: true
          schema:
            maxLength: 128
            minLength: 1
            type: string
          example: crm-reply-1042
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ApiTicketReplyRequest'
            example:
              text: We have resolved your support request.
        required: true
      responses:
        '202':
          description: Accepted
          headers:
            Location:
              description: Message status resource.
              schema:
                type: string
            Idempotency-Replayed:
              description: true for an identical retry.
              schema:
                type: boolean
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiOutboundMessageApiData'
        '400':
          description: Bad Request
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '401':
          description: Unauthorized
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '403':
          description: Forbidden
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '404':
          description: Not Found
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '409':
          description: Conflict
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '413':
          description: Content Too Large
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '415':
          description: Unsupported Media Type
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '429':
          description: Too Many Requests
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            Retry-After:
              description: Seconds until a retry is allowed.
              schema:
                type: integer
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '500':
          description: Internal Server Error
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '502':
          description: Bad Gateway
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
        '503':
          description: Service Unavailable
          headers:
            X-Request-Id:
              description: Support correlation ID.
              schema:
                type: string
            X-RateLimit-Limit:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Remaining:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
            X-RateLimit-Reset:
              description: >-
                Company quota metadata (reset is Unix seconds). Present after
                bearer authentication and company subscription validation.
              schema:
                type: integer
                format: int64
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiErrorResponse'
components:
  schemas:
    ApiTicketReplyRequest:
      required:
        - text
      type: object
      properties:
        text:
          maxLength: 10000
          minLength: 1
          type: string
      additionalProperties: false
    ApiOutboundMessageApiData:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/ApiOutboundMessage'
      additionalProperties: false
    ApiErrorResponse:
      type: object
      properties:
        error:
          $ref: '#/components/schemas/ApiError'
        request_id:
          type: string
      additionalProperties: false
    ApiOutboundMessage:
      type: object
      properties:
        id:
          type: string
          format: uuid
        channel:
          enum:
            - whatsapp
            - email
          type: string
        channel_id:
          type: string
        status:
          enum:
            - queued
            - sending
            - sent
            - delivered
            - read
            - failed
            - delivery_unknown
          type: string
        error_code:
          type: string
          nullable: true
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
      additionalProperties: false
    ApiError:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
        field:
          type: string
          nullable: true
      additionalProperties: false
  securitySchemes:
    CustomerBearer:
      type: http
      description: >-
        Company-owned API token. Supply Authorization: Bearer
        YOUR_CCONNECT_API_TOKEN. Never use provider tokens or member passwords.
        Tokens are shown only once when created.
      scheme: bearer
      bearerFormat: Cconnect API token

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.