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

# Criar intenção

> Adiciona uma nova intenção ao agente



## OpenAPI

````yaml POST /v2/agent/{agentId}/intentions
openapi: 3.0.1
info:
  title: OpenAPI GPT Maker
  description: Documentação completa da API do GPT Maker
  license:
    name: MIT
  version: 1.0.0
servers:
  - url: https://api.gptmaker.ai
security:
  - bearerAuth: []
paths:
  /v2/agent/{agentId}/intentions:
    post:
      description: Adiciona uma nova intenção ao agente
      parameters:
        - name: agentId
          in: path
          description: ID do agente
          required: true
          schema:
            type: string
      requestBody:
        description: Dados da intenção a ser adicionada
        content:
          application/json:
            schema:
              type: object
              properties:
                description:
                  type: string
                  description: Descrição da intenção
                details:
                  type: string
                  description: >-
                    Detalhamento e instruções de quando o agente deve usar essa
                    intenção.
                instructions:
                  type: string
                  description: >-
                    Instruções para o agente caso o atributo type seja
                    INSTRUCTIONS.
                fields:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: Nome do campo
                      jsonName:
                        type: string
                        description: Nome JSON do campo
                      description:
                        type: string
                        description: Descrição do campo
                      type:
                        type: string
                        description: Tipo do campo
                        enum:
                          - STRING
                          - URL
                          - DATE_TIME
                          - DATE
                          - NUMBER
                          - BOOLEAN
                      required:
                        type: boolean
                        description: Campo obrigatório
                    required:
                      - name
                      - jsonName
                      - description
                      - type
                      - required
                type:
                  type: string
                  description: Tipo de intenção
                  enum:
                    - WEBHOOK
                    - INSTRUCTIONS
                httpMethod:
                  type: string
                  description: Método HTTP
                  enum:
                    - GET
                    - POST
                url:
                  type: string
                  description: URL do webhook
                headers:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: Nome do cabeçalho
                      value:
                        type: string
                        description: Valor do cabeçalho
                    required:
                      - name
                      - value
                params:
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: Nome do parâmetro
                      value:
                        type: string
                        description: Valor do parâmetro
                    required:
                      - name
                      - value
                variables:
                  type: array
                  items:
                    type: object
                    properties:
                      valueExpression:
                        type: string
                        description: >-
                          Expressão do valor a ser adicionado no campo padrão ou
                          customizado
                      defaultFieldKey:
                        type: string
                        description: >-
                          Nome do campo padrão. Aceitos são: chat_id,
                          contact_name, contact_phone, contact_email,
                          contact_gender, contact_birthday, contact_job_title,
                          contact_org_name, contact_org_state, contact_org_city
                      customField:
                        type: object
                        description: >-
                          Caso não seja um campo padrão informado em
                          defaultFieldKey, informe o customField obtido em
                          Listar campos.
                        properties:
                          id:
                            type: string
                            description: Id do campo a ser atualizado
                          name:
                            type: string
                            description: Nome do campo
                          description:
                            type: string
                            description: descrição do campo
                          type:
                            enum:
                              - STRING
                              - DATE
                              - DATE_TIME
                              - NUMBER
                              - BOOLEAN
                              - MONEY
                          jsonName:
                            type: string
                            description: nome do arquivo JSON
                    required:
                      - valueExpression
                requestBody:
                  type: string
                  description: >-
                    String contendo um JSON que será enviado no corpo da
                    requisição
                autoGenerateParams:
                  type: boolean
                  description: Geração automática de parâmetros
                autoGenerateBody:
                  type: boolean
                  description: Geração automática do corpo da requisição
              required:
                - description
                - type
                - httpMethod
                - url
                - autoGenerateParams
                - autoGenerateBody
        required: true
      responses:
        '200':
          description: Intenção adicionada com sucesso
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
        '400':
          description: Erro inesperado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: Erro de token
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error403'
components:
  schemas:
    Error:
      required:
        - error
      type: object
      properties:
        error:
          type: string
    Error403:
      required:
        - error
      type: object
      properties:
        error:
          type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````