Brújula API

Brújula API as documented publicly: 15 operations. Contract generated from the documentation by API Evangelist (2026-11-03); not the provider's own document.

Operations 15

GET /api/v1/gastos GET /gastos #
POST /api/v1/gastos POST /api/v1/gastos #
POST /api/v1/mensaje POST /api/v1/mensaje #
GET /api/v1/tareas GET /api/v1/tareas #
POST /api/v1/tareas POST /api/v1/tareas #
GET /api/v1/yo GET /api/v1/yo #
GET /gastos GET devuelve los gastos de un mes (mes=AAAA-MM, por defecto el actual). #
POST /gastos Anota un gasto. #
POST /ingresos Anota un ingreso. #
POST /listas/items Agrega cosas a una lista de un espacio. #
POST /mensaje Hablarle al asistente como por WhatsApp. #
GET /tareas Tareas entre desde y hasta (por defecto, los próximos 7 días). #
POST /tareas Crea una tarea. Solo titulo es obligatorio. #
GET /tareas/{id} Ver, cambiar o borrar una tarea. #
GET /yo Tu cuenta y lo que necesitás para armar pedidos: roles, espacios compartidos, funciones activas, categorías de gasto y monedas. #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/brujula-day:brujula-day-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

brujula-day-openapi-generated.yml Raw ↑
openapi: 3.1.0
info:
  title: Brújula API
  version: '2026-11-03'
  description: 'GENERATED FROM DOCUMENTATION by API Evangelist on 2026-11-03: 15 operation(s) read from 1 public documentation page(s) (each operation
    names its page in x-source). This is not the provider''s published contract; Brújula has published no machine-readable contract that the pipeline
    could find. Engine: local.'
  x-evidence-tiers:
    code-example: 5
    documentation: 10
    pages-with-code: 1
    pages-read: 1
  x-generated-from: documentation
  x-provenance: generated
  x-authored-by: API Evangelist
  x-generated: '2026-11-03'
  x-generator: generate-contract-from-docs.py
  x-engine: local
  x-sources:
  - https://api.brujula.day/desarrolladores
servers:
- url: https://brujula.day
paths:
  /api/v1/gastos:
    get:
      operationId: get_api_v1_gastos
      tags:
      - Api
      summary: GET /gastos
      x-source: https://api.brujula.day/desarrolladores
      parameters:
      - name: mes
        in: query
        required: false
        schema:
          type: string
        description: Mes de los gastos (AAAA-MM), por defecto el actual.
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    post:
      operationId: post_api_v1_gastos
      tags:
      - Api
      summary: POST /api/v1/gastos
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiV1GastosRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl https://brujula.day/api/v1/gastos  -H \"Authorization: Bearer brj_…\"  -H \"Content-Type: application/json\"  -d '{\"descripcion\"\
          : \"Supermercado\", \"monto\": 1250.50, \"categoria\": \"Súper\", \"forma_pago\": \"Visa BBVA\"}' \n POST /ingresos \n Anota un ingreso\
          \ (prende Ingresos si estaba apagado): descripcion y monto son obligatorios; moneda , fecha y categoria (Sueldo, Honorarios, Ventas,\
          \ Turnos, Alquileres"
  /api/v1/mensaje:
    post:
      operationId: post_api_v1_mensaje
      tags:
      - Api
      summary: POST /api/v1/mensaje
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiV1MensajeRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl https://brujula.day/api/v1/mensaje  -H \"Authorization: Bearer brj_…\"  -H \"Content-Type: application/json\"  -d '{\"\
          texto\": \"mañana a las 10, dentista\"}'\n{\"respuesta\": \"Listo: dentista, mañana a las 10:00.\", \"opciones\": []} \n Atiende un\
          \ mensaje por vez por cuenta, como por WhatsApp. Si todavía está terminando uno anterior (de la API, Slack o WhatsApp), espera hasta\
          \ 9 segundos; si sigue ocupado, "
  /api/v1/tareas:
    get:
      operationId: get_api_v1_tareas
      tags:
      - Api
      summary: GET /api/v1/tareas
      x-source: https://api.brujula.day/desarrolladores
      parameters:
      - name: desde
        in: query
        required: false
        schema:
          type: string
      - name: hasta
        in: query
        required: false
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl \"https://brujula.day/api/v1/tareas?desde=2026-10-12&hasta=2026-10-18\"  -H \"Authorization: Bearer brj_…\" \n POST /tareas\
          \ \n Crea una tarea. Solo titulo es obligatorio. \n Campo Qué es \n titulo Qué hay que hacer. \n fecha, hora Cuándo. Sin fecha queda\
          \ en \"Sin fecha\". \n duracion Minutos. \n notas Detalle libre. \n rol Nombre de una parte de tu vida (\"Trabajo\"), o rol_id . \n\
          \ aviso Minutos antes para av"
    post:
      operationId: post_api_v1_tareas
      tags:
      - Api
      summary: POST /api/v1/tareas
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostApiV1TareasRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl https://brujula.day/api/v1/tareas  -H \"Authorization: Bearer brj_…\"  -H \"Content-Type: application/json\"  -d '{\"titulo\"\
          : \"Revisar el formulario de Ana\", \"fecha\": \"2026-10-14\", \"hora\": \"09:30\", \"rol\": \"Trabajo\"}' \n GET /tareas/{id} PATCH\
          \ DELETE \n Ver, cambiar o borrar una tarea. Con PATCH mandá solo lo que cambia, por ejemplo {\"estado\": \"hecha\"} o {\"fecha\": \"\
          2026-10-15\"} . \n GET /gastos POST \n"
  /api/v1/yo:
    get:
      operationId: get_api_v1_yo
      tags:
      - Api
      summary: GET /api/v1/yo
      x-source: https://api.brujula.day/desarrolladores
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: code-example
        language: curl
        snippet: "curl https://brujula.day/api/v1/yo  -H \"Authorization: Bearer brj_…\" \n POST /mensaje \n Hablarle al asistente como por WhatsApp.\
          \ Entiende lenguaje natural: agenda, consulta, marca como hecho y anota gastos. Devuelve respuesta (texto) y opciones (si te pregunta\
          \ algo con respuestas cortas, mandá la elegida en el próximo mensaje; respuesta también las nombra al final, para que Siri las lea). "
  /gastos:
    get:
      operationId: get_gastos
      tags:
      - Gastos
      summary: GET devuelve los gastos de un mes (mes=AAAA-MM, por defecto el actual).
      description: Obtiene la lista de gastos.
      x-source: https://api.brujula.day/desarrolladores
      parameters:
      - name: mes
        in: query
        required: false
        schema:
          type: string
        description: Mes a consultar (AAAA-MM).
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    post:
      operationId: post_gastos
      tags:
      - Gastos
      summary: Anota un gasto.
      description: Anota un gasto.
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostGastosRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /ingresos:
    post:
      operationId: post_ingresos
      tags:
      - Ingresos
      summary: Anota un ingreso.
      description: Registra un ingreso.
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostIngresosRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /listas/items:
    post:
      operationId: post_listas_items
      tags:
      - Listas
      summary: Agrega cosas a una lista de un espacio.
      description: Añade ítems a una lista.
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostListasItemsRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /mensaje:
    post:
      operationId: post_mensaje
      tags:
      - Mensaje
      summary: Hablarle al asistente como por WhatsApp.
      description: Envía un mensaje al asistente.
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostMensajeRequest'
      responses:
        '201':
          description: Success (status as documented)
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PostMensajeResponse'
      x-evidence:
        kind: documentation
  /tareas:
    get:
      operationId: get_tareas
      tags:
      - Tareas
      summary: Tareas entre desde y hasta (por defecto, los próximos 7 días).
      description: Obtiene la lista de tareas.
      x-source: https://api.brujula.day/desarrolladores
      parameters:
      - name: desde
        in: query
        required: false
        schema:
          type: string
        description: Fecha de inicio (AAAA-MM-DD).
      - name: hasta
        in: query
        required: false
        schema:
          type: string
        description: Fecha de fin (AAAA-MM-DD).
      - name: estado
        in: query
        required: false
        schema:
          type: string
        description: pendiente, hecha o todas.
      - name: sin_fecha
        in: query
        required: false
        schema:
          type: integer
        description: 1 para incluir sin fecha.
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
    post:
      operationId: post_tareas
      tags:
      - Tareas
      summary: Crea una tarea. Solo titulo es obligatorio.
      description: Crea una tarea.
      x-source: https://api.brujula.day/desarrolladores
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostTareasRequest'
      responses:
        '201':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /tareas/{id}:
    get:
      operationId: get_tareas_id
      tags:
      - Tareas
      summary: Ver, cambiar o borrar una tarea.
      description: Obtiene los detalles de una tarea específica.
      x-source: https://api.brujula.day/desarrolladores
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
  /yo:
    get:
      operationId: get_yo
      tags:
      - Yo
      summary: 'Tu cuenta y lo que necesitás para armar pedidos: roles, espacios compartidos, funciones activas, categorías de gasto y monedas.'
      description: Información de la cuenta del usuario.
      x-source: https://api.brujula.day/desarrolladores
      responses:
        '200':
          description: Success (status as documented)
      x-evidence:
        kind: documentation
components:
  schemas:
    PostApiV1GastosRequest:
      type: object
      properties:
        descripcion:
          type: string
        monto:
          type: number
        categoria:
          type: string
        forma_pago:
          type: string
    PostApiV1MensajeRequest:
      type: object
      properties:
        texto:
          type: string
    PostApiV1TareasRequest:
      type: object
      properties:
        titulo:
          type: string
        fecha:
          type: string
          format: date
        hora:
          type: string
        rol:
          type: string
    PostGastosRequest:
      type: object
      properties:
        descripcion:
          type: string
          description: Descripción del gasto.
        monto:
          type: number
          description: Monto del gasto.
        moneda:
          type: string
          description: UYU o USD.
        categoria:
          type: string
          description: Categoría del gasto.
        fecha:
          type: string
          description: Fecha (AAAA-MM).
        notas:
          type: string
          description: Notas.
        espacio_id:
          type: string
          description: Espacio compartido.
        forma_pago:
          type: string
          description: Forma de pago.
        cuotas:
          type: integer
          description: Número de cuotas.
      required:
      - descripcion
      - monto
    PostIngresosRequest:
      type: object
      properties:
        descripcion:
          type: string
          description: Descripción del ingreso.
        monto:
          type: number
          description: Monto del ingreso.
        moneda:
          type: string
          description: Moneda.
        fecha:
          type: string
          description: Fecha (AAAA-MM-DD).
        categoria:
          type: string
          description: Categoría (Sueldo, Honorarios, etc.).
      required:
      - descripcion
      - monto
    PostListasItemsRequest:
      type: object
      properties:
        items:
          type: array
          description: Lista de textos o texto separado por comas.
        lista:
          type: string
          description: Nombre o parte de la lista; sin él, la última abierta.
        espacio_id:
          type: string
          description: Identificador del espacio; sin él, tu único espacio.
      required:
      - items
    PostMensajeRequest:
      type: object
      properties:
        texto:
          type: string
          description: Mensaje en lenguaje natural.
      required:
      - texto
    PostMensajeResponse:
      type: object
      properties:
        respuesta:
          type: string
          description: Respuesta del asistente.
        opciones:
          type: array
          description: Opciones si el asistente pregunta.
    PostTareasRequest:
      type: object
      properties:
        titulo:
          type: string
          description: Qué hay que hacer.
        fecha:
          type: string
          description: Fecha (AAAA-MM-DD).
        hora:
          type: string
          description: Hora (HH:MM).
        duracion:
          type: integer
          description: Minutos.
        notas:
          type: string
          description: Detalle libre.
        rol:
          type: string
          description: Nombre de una parte de tu vida o rol_id.
        aviso:
          type: integer
          description: Minutos antes para avisarte por WhatsApp.
        espacio_id:
          type: string
          description: Para crearla en un espacio compartido.
        en_google_calendar:
          type: boolean
          description: true o false.
      required:
      - titulo
  securitySchemes:
    bearer:
      type: http
      scheme: bearer
security:
- bearer: []
tags:
- name: Api
- name: Gastos
- name: Ingresos
- name: Listas
- name: Mensaje
- name: Tareas
- name: Yo