BigML Unsupervised Learning API

Topic models, association rules, and PCA

Operations 15

GET /topicmodel List Topic Models #
POST /topicmodel Create a Topic Model #
GET /topicmodel/{resource_id} Get a Topic Model #
PUT /topicmodel/{resource_id} Update a Topic Model #
DELETE /topicmodel/{resource_id} Delete a Topic Model #
GET /association List Associations #
POST /association Create an Association #
GET /association/{resource_id} Get an Association #
PUT /association/{resource_id} Update an Association #
DELETE /association/{resource_id} Delete an Association #
GET /pca List PCA Models #
POST /pca Create a PCA Model #
GET /pca/{resource_id} Get a PCA Model #
PUT /pca/{resource_id} Update a PCA Model #
DELETE /pca/{resource_id} Delete a PCA Model #

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/bigml-unsupervised-learning-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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

bigml-unsupervised-learning-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: BigML REST Anomaly Detection Unsupervised Learning API
  description: 'The BigML REST API provides programmatic access to the full BigML machine learning platform. Create and manage sources, datasets, models, ensembles, clusters, anomaly detectors, topic models, time series forecasters, deepnets, linear and logistic regression models, PCA, and generate predictions — both individual and batch — over HTTPS using username and API key authentication.

    '
  version: 1.0.0
  contact:
    name: BigML Support
    url: https://support.bigml.com/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  x-api-id: bigml:bigml-api
  x-provider: https://bigml.com/
servers:
- url: https://bigml.io/andromeda
  description: BigML production API (use username/api_key query params)
security:
- ApiKeyAuth: []
tags:
- name: Unsupervised Learning
  description: Topic models, association rules, and PCA
paths:
  /topicmodel:
    get:
      summary: List Topic Models
      operationId: listTopicModels
      tags:
      - Unsupervised Learning
      parameters:
      - $ref: '#/components/parameters/username'
      - $ref: '#/components/parameters/apiKey'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: List of topic models
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
    post:
      summary: Create a Topic Model
      operationId: createTopicModel
      tags:
      - Unsupervised Learning
      parameters:
      - $ref: '#/components/parameters/username'
      - $ref: '#/components/parameters/apiKey'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - dataset
              properties:
                dataset:
                  type: string
                number_of_topics:
                  type: integer
                  default: 8
      responses:
        '201':
          description: Topic model created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopicModel'
  /topicmodel/{resource_id}:
    parameters:
    - $ref: '#/components/parameters/resourceId'
    - $ref: '#/components/parameters/username'
    - $ref: '#/components/parameters/apiKey'
    get:
      summary: Get a Topic Model
      operationId: getTopicModel
      tags:
      - Unsupervised Learning
      responses:
        '200':
          description: Topic model details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopicModel'
    put:
      summary: Update a Topic Model
      operationId: updateTopicModel
      tags:
      - Unsupervised Learning
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Topic model updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TopicModel'
    delete:
      summary: Delete a Topic Model
      operationId: deleteTopicModel
      tags:
      - Unsupervised Learning
      responses:
        '204':
          description: Topic model deleted
  /association:
    get:
      summary: List Associations
      operationId: listAssociations
      tags:
      - Unsupervised Learning
      parameters:
      - $ref: '#/components/parameters/username'
      - $ref: '#/components/parameters/apiKey'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: List of associations
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
    post:
      summary: Create an Association
      operationId: createAssociation
      tags:
      - Unsupervised Learning
      parameters:
      - $ref: '#/components/parameters/username'
      - $ref: '#/components/parameters/apiKey'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - dataset
              properties:
                dataset:
                  type: string
      responses:
        '201':
          description: Association created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Association'
  /association/{resource_id}:
    parameters:
    - $ref: '#/components/parameters/resourceId'
    - $ref: '#/components/parameters/username'
    - $ref: '#/components/parameters/apiKey'
    get:
      summary: Get an Association
      operationId: getAssociation
      tags:
      - Unsupervised Learning
      responses:
        '200':
          description: Association details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Association'
    put:
      summary: Update an Association
      operationId: updateAssociation
      tags:
      - Unsupervised Learning
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Association updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Association'
    delete:
      summary: Delete an Association
      operationId: deleteAssociation
      tags:
      - Unsupervised Learning
      responses:
        '204':
          description: Association deleted
  /pca:
    get:
      summary: List PCA Models
      operationId: listPCAs
      tags:
      - Unsupervised Learning
      parameters:
      - $ref: '#/components/parameters/username'
      - $ref: '#/components/parameters/apiKey'
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/offset'
      responses:
        '200':
          description: List of PCA models
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListResponse'
    post:
      summary: Create a PCA Model
      operationId: createPCA
      tags:
      - Unsupervised Learning
      parameters:
      - $ref: '#/components/parameters/username'
      - $ref: '#/components/parameters/apiKey'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - dataset
              properties:
                dataset:
                  type: string
      responses:
        '201':
          description: PCA model created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PCA'
  /pca/{resource_id}:
    parameters:
    - $ref: '#/components/parameters/resourceId'
    - $ref: '#/components/parameters/username'
    - $ref: '#/components/parameters/apiKey'
    get:
      summary: Get a PCA Model
      operationId: getPCA
      tags:
      - Unsupervised Learning
      responses:
        '200':
          description: PCA model details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PCA'
    put:
      summary: Update a PCA Model
      operationId: updatePCA
      tags:
      - Unsupervised Learning
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: PCA updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PCA'
    delete:
      summary: Delete a PCA Model
      operationId: deletePCA
      tags:
      - Unsupervised Learning
      responses:
        '204':
          description: PCA deleted
components:
  schemas:
    ListResponse:
      type: object
      properties:
        meta:
          type: object
          properties:
            limit:
              type: integer
            offset:
              type: integer
            total_count:
              type: integer
            previous:
              type:
              - string
              - 'null'
            next:
              type:
              - string
              - 'null'
        objects:
          type: array
          items:
            $ref: '#/components/schemas/ResourceBase'
    ResourceStatus:
      type: object
      properties:
        code:
          type: integer
          description: HTTP-style status code (1=queued,2=started,3=waiting,4=processing,5=finished,0=unknown,-1=failed)
        message:
          type: string
        elapsed:
          type: number
          description: Processing time in milliseconds.
    Association:
      allOf:
      - $ref: '#/components/schemas/ResourceBase'
      - type: object
        properties:
          dataset:
            type: string
          rules:
            type: array
            items:
              type: object
    PCA:
      allOf:
      - $ref: '#/components/schemas/ResourceBase'
      - type: object
        properties:
          dataset:
            type: string
          components:
            type: array
            items:
              type: object
    ResourceBase:
      type: object
      properties:
        resource:
          type: string
          description: Resource identifier (e.g., source/5f1a2b3c4d5e6f7890abcdef)
        created:
          type: string
          format: date-time
        updated:
          type: string
          format: date-time
        status:
          $ref: '#/components/schemas/ResourceStatus'
        name:
          type: string
        tags:
          type: array
          items:
            type: string
        private:
          type: boolean
    TopicModel:
      allOf:
      - $ref: '#/components/schemas/ResourceBase'
      - type: object
        properties:
          dataset:
            type: string
          number_of_topics:
            type: integer
          topics:
            type: array
            items:
              type: object
  parameters:
    resourceId:
      name: resource_id
      in: path
      required: true
      schema:
        type: string
        pattern: ^[a-f0-9]{24}$
      description: The 24-character hexadecimal resource identifier.
    limit:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        default: 20
        maximum: 1000
      description: Number of resources to return.
    apiKey:
      name: api_key
      in: query
      required: true
      schema:
        type: string
      description: BigML API key.
    offset:
      name: offset
      in: query
      required: false
      schema:
        type: integer
        default: 0
      description: Index of the first resource to return.
    username:
      name: username
      in: query
      required: true
      schema:
        type: string
      description: BigML username.
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: query
      name: username
      description: 'Authenticate with username and api_key as query parameters. Example: ?username=myuser&api_key=a1b2c3...

        '
x-tagGroups:
- name: Data Management
  tags:
  - Sources
  - Datasets
  - Projects
  - Data Connectors
- name: Supervised Learning
  tags:
  - Models
  - Ensembles
  - Supervised Learning
  - Evaluations
  - Predictions
- name: Unsupervised Learning
  tags:
  - Clustering
  - Anomaly Detection
  - Unsupervised Learning
  - Time Series
- name: Batch Operations
  tags:
  - Batch Operations
- name: Automation
  tags:
  - WhizzML Scripting