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

# Enviar localização

> Envie mensagens de localização

## Conceituação

Envia uma mensagem de localização para um contato. O campo `content.type` deve ser `LOCATION` e as coordenadas são informadas no array `attachments` com `latitude` e `longitude`.

Os campos `name` e `address` são opcionais e permitem exibir o nome e o endereço do local diretamente na mensagem.

<Warning>
  A API não valida os campos `latitude` e `longitude`. Requisições sem esses valores serão aceitas, mas a mensagem não exibirá a localização corretamente no WhatsApp. Sempre informe ambos os campos.
</Warning>

<Note>
  Este endpoint só funciona quando a [janela de conversa](/conversation-window) de 24 horas estiver aberta.
</Note>


## OpenAPI

````yaml pt/messages/openapi-location.json POST /v1/channels/{channelId}/messages
openapi: 3.1.0
info:
  title: Hub Message - Enviar Localização
  version: 1.0.0
servers:
  - url: https://api.hubmessage.io
security:
  - bearerAuth: []
paths:
  /v1/channels/{channelId}/messages:
    post:
      tags:
        - Mensagens
      summary: Enviar localização
      description: >-
        Envia uma mensagem de localização. Funciona apenas quando a janela de
        conversa de 24 horas estiver aberta.
      operationId: sendLocationMessage
      parameters:
        - name: channelId
          in: path
          required: true
          description: ID do canal
          schema:
            type: string
            example: SEU_CHANNEL_ID
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendLocationRequest'
            example:
              recipient:
                identifier: '5544936181064'
                name: Nome do Destinatário
                subject: Título
                picture: ''
              sender:
                identifier: '5544936181064'
                name: Nome do Remetente
                picture: ''
              content:
                type: LOCATION
                attachments:
                  - name: Google Brasil
                    address: >-
                      Av. Brg. Faria Lima, 3477 - Itaim Bibi, São Paulo - SP,
                      04538-133
                    latitude: '-23.0696347'
                    longitude: '-50.4357913'
      responses:
        '200':
          $ref: '#/components/responses/MessageSuccess'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/WindowClosed'
components:
  schemas:
    SendLocationRequest:
      type: object
      required:
        - recipient
        - content
      properties:
        recipient:
          type: object
          required:
            - identifier
          description: Dados do destinatário
          properties:
            identifier:
              type: string
              description: Telefone do destinatário (DDI + DDD + número)
              example: '5544936181064'
            name:
              type: string
              description: Nome do destinatário (opcional)
              example: Nome do Destinatário
            subject:
              type: string
              description: Título ou assunto (opcional)
              example: Título
            picture:
              type: string
              description: URL da foto do destinatário (opcional)
              example: ''
        sender:
          type: object
          description: Dados do remetente (opcional)
          properties:
            identifier:
              type: string
              description: Telefone do remetente
              example: '5544936181064'
            name:
              type: string
              description: Nome do remetente
              example: Nome do Remetente
            picture:
              type: string
              description: URL da foto do remetente
              example: ''
        content:
          type: object
          required:
            - type
            - attachments
          properties:
            type:
              type: string
              description: Tipo da mensagem
              enum:
                - LOCATION
            attachments:
              type: array
              description: Lista com os dados da localização
              items:
                type: object
                properties:
                  latitude:
                    type: string
                    description: >-
                      Latitude da localização. Não é validado pela API, mas
                      necessário para exibir o pin corretamente no WhatsApp.
                    example: '-23.0696347'
                  longitude:
                    type: string
                    description: >-
                      Longitude da localização. Não é validado pela API, mas
                      necessário para exibir o pin corretamente no WhatsApp.
                    example: '-50.4357913'
                  name:
                    type: string
                    description: Nome do local (opcional)
                    example: Google Brasil
                  address:
                    type: string
                    description: Endereço do local (opcional)
                    example: >-
                      Av. Brg. Faria Lima, 3477 - Itaim Bibi, São Paulo - SP,
                      04538-133
    MessageResponse:
      type: object
      properties:
        messageId:
          type: string
          description: ID da mensagem enviada
    Error:
      type: object
      properties:
        error:
          type: integer
        message:
          type: string
  responses:
    MessageSuccess:
      description: Mensagem enviada com sucesso
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/MessageResponse'
          example:
            messageId: wamid.HBgNNTU0NDk3MDUwNzg1FQIAERgSM0
    Unauthorized:
      description: Token inválido ou ausente.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: 401
            message: Unauthorized
    WindowClosed:
      description: Janela de conversa de 24 horas fechada.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
          example:
            error: 422
            message: Conversation window is closed
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: Secret Key gerada no painel de Segurança do Hub Message

````