MX Technologies Categories API
The categories API from MX Technologies — 5 operation(s) for categories.
The categories API from MX Technologies — 5 operation(s) for categories.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/mx-technologies-categories-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Mx Technologies Categories API
contact:
name: MX Platform API
url: https://www.mx.com/products/platform-api
version: '1.0'
description: 'Operations tagged categories across 2 of this provider''s published API definitions: mx-technologies-platform-openapi.yml, mx-technologies-platform-v20250224-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
security:
- basicAuth: []
tags:
- name: Categories
paths:
/categories/default:
get:
description: Use this endpoint to retrieve a list of all the default categories and subcategories offered within the MX Platform API. In other words, each item in the returned list will have its `is_default` field set to `true`. There are currently 119 default categories and subcategories. Both the _list default categories_ and _list default categories by user_ endpoints return the same results. The different routes are provided for convenience.
operationId: listDefaultCategories
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/recordsPerPage'
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoriesResponseBody'
description: OK
summary: List default categories
tags:
- Categories
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
/categories/{category_guid}:
get:
description: Use this endpoint to read the attributes of a default category.
operationId: readDefaultCategory
parameters:
- $ref: '#/components/parameters/categoryGuid'
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoryResponseBody'
description: OK
summary: Read a default category
tags:
- Categories
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
/users/{user_guid}/categories:
get:
description: Use this endpoint to list all categories associated with a `user`, including both default and custom categories.
operationId: listCategories
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/recordsPerPageMax1000'
- $ref: '#/components/parameters/userGuid'
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoriesResponseBody'
description: OK
summary: List categories
tags:
- Categories
post:
description: Use this endpoint to create a new custom category for a specific `user`.
operationId: createCategory
parameters:
- $ref: '#/components/parameters/userGuid'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CategoryCreateRequestBody'
description: Custom category object to be created
required: true
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoryResponseBody'
description: OK
summary: Create category
tags:
- Categories
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
/users/{user_guid}/categories/default:
get:
description: Use this endpoint to retrieve a list of all the default categories and subcategories, scoped by user, offered within the MX Platform API. In other words, each item in the returned list will have its `is_default` field set to `true`. There are currently 119 default categories and subcategories. Both the _list default categories_ and _list default categories by user_ endpoints return the same results. The different routes are provided for convenience.
operationId: listDefaultCategoriesByUser
parameters:
- $ref: '#/components/parameters/page'
- $ref: '#/components/parameters/recordsPerPageMax1000'
- $ref: '#/components/parameters/userGuid'
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoriesResponseBody'
description: OK
summary: List default categories by user
tags:
- Categories
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
/users/{user_guid}/categories/{category_guid}:
delete:
description: Use this endpoint to delete a specific custom category according to its unique GUID. The API will respond with an empty object and a status of `204 No Content`.
operationId: deleteCategory
parameters:
- $ref: '#/components/parameters/categoryGuid'
- $ref: '#/components/parameters/userGuid'
responses:
'204':
description: No Content
summary: Delete category
tags:
- Categories
get:
description: Use this endpoint to read the attributes of either a default category or a custom category.
operationId: readCategory
parameters:
- $ref: '#/components/parameters/categoryGuid'
- $ref: '#/components/parameters/userGuid'
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoryResponseBody'
description: OK
summary: Read a custom category
tags:
- Categories
put:
description: Use this endpoint to update the attributes of a custom category according to its unique GUID.
operationId: updateCategory
parameters:
- $ref: '#/components/parameters/categoryGuid'
- $ref: '#/components/parameters/userGuid'
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/CategoryUpdateRequestBody'
description: Category object to be updated (While no single parameter is required, the `category` object cannot be empty)
required: true
responses:
'200':
content:
application/vnd.mx.api.v1+json:
schema:
$ref: '#/components/schemas/CategoryResponseBody'
description: OK
summary: Update category
tags:
- Categories
servers:
- url: https://int-api.mx.com
- url: https://api.mx.com
components:
parameters:
recordsPerPageMax1000:
description: This specifies the number of records to be returned on each page. Defaults to `25`. The valid range is from `10` to `1000`. If the value exceeds `1000`, the default value of `25` will be used instead.
example: 10
in: query
name: records_per_page
schema:
type: integer
page:
description: Results are paginated. Specify current page.
example: 1
in: query
name: page
schema:
type: integer
categoryGuid:
name: category_guid
description: The unique id for a `category`.
in: path
required: true
schema:
type: string
example: CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874
userGuid:
description: The unique identifier for a `user`, beginning with the prefix `USR-`.
example: USR-fa7537f3-48aa-a683-a02a-b18940482f54
in: path
name: user_guid
required: true
schema:
type: string
recordsPerPage:
description: This specifies the number of records to be returned on each page. Defaults to `25`. The valid range is from `10` to `100`. If the value exceeds `100`, the default value of `25` will be used instead.
example: 10
in: query
name: records_per_page
schema:
type: integer
acceptVersion:
name: Accept-Version
in: header
required: true
schema:
type: string
default: v20250224
example: v20250224
description: MX Platform API version.
schemas:
CategoryUpdateRequest:
properties:
metadata:
example: some metadata
type: string
name:
example: Web shopping
type: string
type: object
CategoryUpdateRequestBody:
properties:
category:
$ref: '#/components/schemas/CategoryUpdateRequest'
type: object
CategoriesResponseBody:
properties:
categories:
items:
$ref: '#/components/schemas/CategoryResponse'
type: array
pagination:
$ref: '#/components/schemas/PaginationResponse'
type: object
CategoryCreateRequest:
properties:
metadata:
example: some metadata
type: string
name:
example: Online Shopping
type: string
parent_guid:
example: CAT-aad51b46-d6f7-3da5-fd6e-492328b3023f
type: string
required:
- name
- parent_guid
type: object
CategoryResponse:
properties:
created_at:
description: Category creation date-time.
example: '2015-04-13T18:01:23.000Z'
type:
- string
- 'null'
guid:
example: CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874
type:
- string
- 'null'
is_default:
example: true
type:
- boolean
- 'null'
is_income:
example: false
type:
- boolean
- 'null'
metadata:
example: some metadata
type:
- string
- 'null'
name:
example: Auto Insurance
type:
- string
- 'null'
parent_guid:
example: CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874
type:
- string
- 'null'
updated_at:
example: '2015-05-13T18:01:23.000Z'
type:
- string
- 'null'
type: object
CategoryCreateRequestBody:
properties:
category:
$ref: '#/components/schemas/CategoryCreateRequest'
type: object
PaginationResponse:
properties:
current_page:
example: 1
type: integer
per_page:
example: 25
type: integer
total_entries:
example: 1
type: integer
total_pages:
example: 1
type: integer
type: object
CategoryResponseBody:
properties:
category:
$ref: '#/components/schemas/CategoryResponse'
type: object
CategoryUpdateRequest_2:
properties:
metadata:
description: Additional information you can store on the `category`.
example: some metadata
type: string
name:
example: Web shopping
type: string
description: The name of the category.
type: object
CategoryCreateRequest_2:
properties:
metadata:
description: Additional information you can store on the `category`.
example: some metadata
type: string
name:
example: Online Shopping
type: string
description: The name of the category.
parent_guid:
example: CAT-aad51b46-d6f7-3da5-fd6e-492328b3023f
type: string
description: The unique identifier for the parent category.
required:
- name
- parent_guid
type: object
CategoryResponse_2:
properties:
created_at:
description: The date and time the category was created, represented in ISO 8601 format with a timestamp.
example: '2025-02-13T18:08:00+00:00'
type:
- string
- 'null'
guid:
description: The unique identifier for the category. Defined by MX.
example: CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874
type:
- string
- 'null'
is_default:
description: Indicates whether the category is an MX-created default category. This will always be `false` for custom categories.
example: true
type:
- boolean
- 'null'
is_income:
description: Indicates whether the transaction is income.
example: false
type:
- boolean
- 'null'
metadata:
description: Additional information you stored on the `category`.
example: some metadata
type:
- string
- 'null'
name:
example: Auto Insurance
type:
- string
- 'null'
description: The name of the category.
parent_guid:
description: The unique identifier for the parent category. Defined by MX.
example: CAT-7829f71c-2e8c-afa5-2f55-fa3634b89874
type:
- string
- 'null'
updated_at:
description: 'The date and time the resource was last updated in ISO 8601 format with a timestamp.
For categories, this field will always be `null` when `is_default` is `true`.
'
example: '2025-02-13T18:09:00+00:00'
type:
- string
- 'null'
type: object
PaginationResponse_2:
properties:
current_page:
description: The page delivered by the current response.
example: 1
type: integer
per_page:
description: The number of records delivered with each page.
example: 25
type: integer
total_entries:
description: The total number of records available.
example: 1
type: integer
total_pages:
description: The total number of pages available.
example: 1
type: integer
type: object
securitySchemes:
bearerAuth:
type: http
scheme: bearer
basicAuth:
scheme: basic
type: http
x-refined-from:
- mx-technologies-platform-openapi.yml
- mx-technologies-platform-v20250224-openapi.yml