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

# Send a shared transactional message

> Requires `notify:send` on an organization service key. Project/environment/sender restrictions apply. See the matching guide for prerequisites and limits.

Requires `notify:send`. See [authentication](https://docs.sendlyy.app/guides/authentication.md) and the matching product guide before live use.


## OpenAPI

````yaml POST /api/v1/notify/messages
openapi: 3.1.0
info:
  title: Sendlyy Developer API
  version: v1
  description: >-
    WhatsApp messaging, shared Verify/Notify, contacts and delivery
    infrastructure. AI agents are a dashboard offering and are excluded. Live
    provider services require approval and enablement; see availability.
servers:
  - url: https://api.sendlyy.app
    description: >-
      Live API host; availability depends on deployed version and enabled
      services.
security:
  - bearerAuth: []
paths:
  /api/v1/notify/messages:
    post:
      tags:
        - Notify
      summary: Send a shared transactional message
      description: >-
        Requires `notify:send` on an organization service key.
        Project/environment/sender restrictions apply. See the matching guide
        for prerequisites and limits.
      operationId: post-notify-messages
      parameters:
        - in: header
          name: Idempotency-Key
          required: true
          description: >-
            A stable printable key (1–128 characters) per logical send. Retry
            unknown transport outcomes with the same key and identical request.
          schema:
            type: string
            minLength: 1
            maxLength: 128
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NotifySendRequest'
          text/json:
            schema:
              $ref: '#/components/schemas/NotifySendRequest'
          application/*+json:
            schema:
              $ref: '#/components/schemas/NotifySendRequest'
        required: true
      responses:
        '202':
          description: Send a shared transactional message
          headers:
            X-Request-Id:
              schema:
                type: string
              description: Server-generated correlation identifier.
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        format: uuid
                      service:
                        type: string
                      status:
                        type: string
                      amount:
                        type: number
                      vatAmount:
                        type: number
                      createdAt:
                        type: string
                        format: date-time
                required:
                  - message
                  - data
        '400':
          description: Invalid input
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '401':
          description: Invalid, expired or revoked credential
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '403':
          description: Permission denied
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '404':
          description: Resource missing or outside allowed scope
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '409':
          description: State, funds or idempotency conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '422':
          description: Semantic validation failed
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '429':
          description: Rate limited
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '500':
          description: Unexpected server failure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '502':
          description: Upstream provider failure
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
        '503':
          description: Service or provider not enabled
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeveloperError'
      security:
        - bearerAuth: []
components:
  schemas:
    NotifySendRequest:
      required:
        - projectId
        - environmentId
        - templateId
        - recipient
        - variables
      type: object
      properties:
        projectId:
          type: string
          format: uuid
        environmentId:
          type: string
          format: uuid
        templateId:
          type: string
          format: uuid
        recipient:
          type: string
        variables:
          type: array
          items:
            type: string
    DeveloperError:
      type: object
      properties:
        message:
          type: string
        errors:
          type: object
          additionalProperties:
            type: array
            items:
              type: string
      required:
        - message
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: Sendlyy organization service key

````

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