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

# Send an SMS notification

> Sends an SMS message to a clinic client on behalf of a clinic.

**Important limitations:**

- **Message length:** Individual carriers impose their own limits on message length, and these limits can change over time. Messages that exceed a carrier's limit may be split, truncated, or outright rejected.
- **Rate limits:** SMS sending is subject to overall, per-carrier, and daily rate limits. These limits are shared across all messages sent from your clinics — including messages sent by Vetcove on your behalf through other features in our platform. This endpoint enforces a limit of 20 requests per second and 200,000 requests per day per organization. These limits are not per carrier, so if your messages are not well distributed across carriers it is possible to stay within our limits while still exceeding the per-carrier limits of our third-party SMS provider.
- **Trust score:** Your organization is assigned a trust score by the underlying SMS provider. The content and volume of messages you send directly affects this score. Sending spammy, inappropriate, or excessive messages can lower your score, resulting in stricter rate limits and reduced deliverability across all of your clinic communications.



## OpenAPI

````yaml post /ext/v2/sms-notifications/
openapi: 3.1.0
info:
  description: ''
  title: NinjaAPI
  version: 2.0.0
servers:
  - url: https://connect.vetcove.com/
security: []
paths:
  /ext/v2/sms-notifications/:
    post:
      tags:
        - Inbox
      summary: Send an SMS notification
      description: >-
        Sends an SMS message to a clinic client on behalf of a clinic.


        **Important limitations:**


        - **Message length:** Individual carriers impose their own limits on
        message length, and these limits can change over time. Messages that
        exceed a carrier's limit may be split, truncated, or outright rejected.

        - **Rate limits:** SMS sending is subject to overall, per-carrier, and
        daily rate limits. These limits are shared across all messages sent from
        your clinics — including messages sent by Vetcove on your behalf through
        other features in our platform. This endpoint enforces a limit of 20
        requests per second and 200,000 requests per day per organization. These
        limits are not per carrier, so if your messages are not well distributed
        across carriers it is possible to stay within our limits while still
        exceeding the per-carrier limits of our third-party SMS provider.

        - **Trust score:** Your organization is assigned a trust score by the
        underlying SMS provider. The content and volume of messages you send
        directly affects this score. Sending spammy, inappropriate, or excessive
        messages can lower your score, resulting in stricter rate limits and
        reduced deliverability across all of your clinic communications.
      operationId: sms_notifications_create
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateSmsNotificationRequestSchema'
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExternalSmsNotificationSchema'
          description: Created
        '429':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ThrottledResponseSchema'
          description: Too Many Requests
      security:
        - ExternalAPIAuth: []
components:
  schemas:
    CreateSmsNotificationRequestSchema:
      description: Schema for creating an SMS notification via the Connect API.
      properties:
        body:
          description: The SMS message body.
          maxLength: 1600
          minLength: 1
          title: Body
          type: string
        clinic_client_id:
          description: The ID of the clinic client to send the SMS to.
          title: Clinic Client Id
          type: integer
      required:
        - clinic_client_id
        - body
      title: CreateSmsNotificationRequestSchema
      type: object
    ExternalSmsNotificationSchema:
      properties:
        body:
          description: The SMS message body.
          title: Body
          type: string
        client_communication_number_id:
          description: The ID of the client communication number the SMS was sent to.
          title: Client Communication Number Id
          type: integer
        clinic_client_id:
          description: The ID of the clinic client the SMS was sent to.
          title: Clinic Client Id
          type: integer
        clinic_id:
          description: The ID of the clinic the SMS was sent from.
          title: Clinic Id
          type: integer
        created_at:
          description: When the SMS notification was created.
          format: date-time
          title: Created At
          type: string
        error_code:
          anyOf:
            - type: string
            - type: 'null'
          description: Error code from the SMS provider if sending failed.
          title: Error Code
        error_reason:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            Human-readable reason for the error, if the error code is
            recognized.
          title: Error Reason
        id:
          description: The ID of the SMS notification.
          title: Id
          type: integer
        status:
          $ref: '#/components/schemas/ExternalSmsNotificationStatus'
          description: |-
            The delivery status of the SMS.
            - `SENT`: Message was sent but delivery is not yet confirmed.
            - `DELIVERED`: Message was successfully delivered.
            - `FAILED_TO_SEND`: Message failed to send.
      required:
        - id
        - clinic_client_id
        - client_communication_number_id
        - clinic_id
        - body
        - status
        - created_at
        - error_code
        - error_reason
      title: ExternalSmsNotificationSchema
      type: object
    ThrottledResponseSchema:
      properties:
        detail:
          title: Detail
          type: string
      required:
        - detail
      title: ThrottledResponseSchema
      type: object
    ExternalSmsNotificationStatus:
      description: Delivery status of an SMS notification sent via the Connect API.
      enum:
        - SENT
        - DELIVERED
        - FAILED_TO_SEND
      title: ExternalSmsNotificationStatus
      type: string
  securitySchemes:
    ExternalAPIAuth:
      scheme: bearer
      type: http

````