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

# Vytvoření šablony zprávy

> Vytvoří šablonu zprávy na WABA. Objekt `template` odpovídá modelu šablon zpráv Meta (`name`, `language`, `category`, `components`). Obrázkovou hlavičku lze odeslat jako base64 data URL v `components[].example.base64_image` — je automaticky nahrána do Meta a nahrazena hodnotou `header_handle`.




## OpenAPI

````yaml /openapi/waba_rest/waba_restapi_v1.yaml post /whatsapp/templates/create
openapi: 3.1.0
info:
  title: WhatsApp Business Partner API
  description: >
    API pro registraci a správu WhatsApp Business účtů (WABA): vestavěná
    registrace (embedded signup), telefonní čísla, šablony zpráv a analytika.


    ## Autentizace


    Požadavky jsou autentizovány buď vaším API klíčem v HTTP hlavičce
    `x-api-key`, nebo — v případě hostovaného registračního procesu —
    krátkodobým polem `token` v těle požadavku (získaným z `/whatsapp/signup`,
    platným 1 hodinu).


    ## Konvence odpovědí


    Selhání na úrovni byznys logiky (neznámá WABA, zamítnutí ze strany Meta,
    neautentizovaný požadavek) jsou vracena jako HTTP `200` s `{ "success":
    false, "message": "..." }`. HTTP chybové stavové kódy (`400`, `401`, `500`)
    se používají pouze pro chybějící povinná pole a neočekávané chyby.
  version: v1
  contact:
    url: https://smsmanager.com
    email: cc@smsmanager.com
servers:
  - url: https://rest-api.smsmngr.com/v1
    description: Produkční server
security:
  - x-api-key: []
tags:
  - name: waba
    x-displayName: WhatsApp účty
    x-group: WhatsApp účty
    description: |
      Vestavěná registrace a správa připojených WhatsApp Business účtů.
  - name: waba-numbers
    x-displayName: Telefonní čísla
    x-group: Telefonní čísla
    description: |
      Správa a ověřování WhatsApp telefonních čísel.
  - name: waba-templates
    x-displayName: Šablony zpráv
    x-group: Šablony zpráv
    description: |
      Vytváření, úprava, mazání a testování šablon WhatsApp zpráv.
  - name: waba-analytics
    x-displayName: Analytika
    x-group: Analytika
    description: |
      Analytika zpráv, konverzací a šablon dané WABA.
paths:
  /whatsapp/templates/create:
    post:
      tags:
        - waba-templates
      summary: Vytvoření šablony zprávy
      description: >
        Vytvoří šablonu zprávy na WABA. Objekt `template` odpovídá modelu šablon
        zpráv Meta (`name`, `language`, `category`, `components`). Obrázkovou
        hlavičku lze odeslat jako base64 data URL v
        `components[].example.base64_image` — je automaticky nahrána do Meta a
        nahrazena hodnotou `header_handle`.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - waba_id
                - template
              properties:
                waba_id:
                  type: string
                token:
                  type: string
                  description: Registrační token (alternativní autentizace).
                template:
                  type: object
                  required:
                    - name
                    - language
                    - category
                    - components
                  properties:
                    name:
                      type: string
                    language:
                      type: string
                      description: Kód jazyka šablony (např. `cs`, `en_US`).
                    category:
                      type: string
                      enum:
                        - MARKETING
                        - UTILITY
                        - AUTHENTICATION
                    components:
                      type: array
                      description: >-
                        Komponenty šablony Meta (`HEADER`, `BODY`, `FOOTER`,
                        `BUTTONS`). Zástupné symboly proměnných jsou poziční
                        (`{{1}}` + `example.body_text`) nebo pojmenované
                        (`{{name}}` + `example.body_text_named_params`).
                      items:
                        type: object
            examples:
              Marketing template with image header:
                value:
                  waba_id: '1234567890'
                  template:
                    name: autumn_sale
                    language: en_US
                    category: MARKETING
                    components:
                      - type: HEADER
                        format: IMAGE
                        example:
                          base64_image: data:image/jpeg;base64,/9j/4AAQSk...
                      - type: BODY
                        text: Hi {{1}}, use code {{2}} for {{3}} off.
                        example:
                          body_text:
                            - - Alex
                              - 25OFF
                              - 25%
                      - type: FOOTER
                        text: Reply STOP to opt out
                      - type: BUTTONS
                        buttons:
                          - type: QUICK_REPLY
                            text: Shop now
      responses:
        '200':
          description: Výsledek
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  template_id:
                    type: string
                  message:
                    type: string
                    description: Důvod selhání, když je `success` `false`.
              examples:
                Created:
                  value:
                    success: true
                    template_id: '9876543210'
                Failed:
                  value:
                    success: false
                    message: Whatsapp template creation failed
        '400':
          description: Špatný požadavek
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
              example:
                message: Missing 'waba_id' in request data
components:
  schemas:
    Error:
      type: object
      properties:
        message:
          type: string
          description: Chybová zpráva.
  securitySchemes:
    x-api-key:
      type: apiKey
      in: header
      name: x-api-key

````