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

# Invert an investment objective

> Produces the opposite theme of a natural-language investment objective and a short name for it. For example, a healthy-living objective inverts to a fast-food one.



## OpenAPI

````yaml /api-reference/openapi-v2.json post /reverse-objective
openapi: 3.0.0
info:
  title: Noonum API v2
  version: 2.0.0
  contact:
    name: Noonum Support
    email: hello@noonum.com
  description: >
    Create and manage investment strategies, portfolios, and backtests. The API
    covers the full strategy lifecycle, including creation and editing, the
    archive and revive flow, version submission and run state, result companies,
    evidence, factsheets, exposures, and taxonomy.
servers:
  - url: https://api.noonum.ai/v2
security:
  - bearerAuth: []
tags:
  - name: UserStrategies
    description: Create, read, update, and manage your own investment strategies.
  - name: Helper
    description: >-
      Shared utilities for company lookup and search, objective tooling, and a
      health check.
  - name: Portfolios
    description: Create, read, update, and delete portfolios.
  - name: Backtest
    description: Run a standalone backtest on a portfolio of companies.
paths:
  /reverse-objective:
    post:
      tags:
        - Helper
      summary: Invert an investment objective
      description: >-
        Produces the opposite theme of a natural-language investment objective
        and a short name for it. For example, a healthy-living objective inverts
        to a fast-food one.
      operationId: app.api.v2.helper.reverse_objective
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
                - objective
              properties:
                objective:
                  description: The investment objective in natural language.
                  type: string
      responses:
        '200':
          description: The inverted objective and a short name for it.
          content:
            application/json:
              schema:
                type: object
                properties:
                  reverseObjective:
                    type: string
                    description: >-
                      The investment objective rewritten to target the opposite
                      theme.
                  reverseName:
                    type: string
                    description: A short, memorable name for the inverted objective.
        '400':
          description: The request is invalid, for example a required field is missing.
          content:
            application/json:
              schema:
                type: object
                description: A standard error response.
                properties:
                  error:
                    description: A human-readable description of the error.
                    type: string
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                type: object
                description: A standard error response.
                properties:
                  error:
                    description: A human-readable description of the error.
                    type: string
        '502':
          description: The upstream language model returned an error.
          content:
            application/json:
              schema:
                type: object
                description: A standard error response.
                properties:
                  error:
                    description: A human-readable description of the error.
                    type: string
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT or API Key
      description: |
        Enter 'Bearer' followed by a space and then your JWT or API Key.
        Example: `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`
        or `Bearer YOUR_API_KEY_HERE`

````