Operations 6
Documentation
Documentation
https://api.malt.com/
APIReference
https://api.malt.com/
Authentication
https://artifacts.apis.io/malt/authentication/malt-authentication.yml
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/malt:malt-scim-api"
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.
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: Malt - API Guidelines SCIM API
version: 0.0.1
description: '# Table of contents
1.'
contact:
name: Malt API Support
url: https://malt.com/support
servers:
- url: https://api.malt.com
description: Production API server
security: []
tags:
- description: Manage users
name: SCIM
paths:
/scim/v2/Users:
get:
description: 'Query existing users.
See RFC 7643 - "User" Resource Schema
See RFC 7644 - Query Resources'
operationId: findUsers
parameters:
- description: 'Non-negative integer.
Specifies the desired maximum number of query results per page, e.g., 10.
A value of "0" indicates that no resource results are to be returned except for "totalResults".
If unspecified, the maximum number of results is set by the service provider.
'
example: 10
explode: true
in: query
name: count
required: false
schema:
type: integer
style: form
- description: 'The only supported operator is `eq` (meaning "equal").
The attribute and operator values must be identical for a match.
'
example: filter=userName eq "jane.doe@acme.com"
explode: true
in: query
name: filter
required: false
schema:
type: string
style: form
- description: 'The 1-based index of the first query result.
'
example: 1
explode: true
in: query
name: startIndex
required: false
schema:
type: integer
style: form
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UserPage'
application/scim+json:
schema:
$ref: '#/components/schemas/UserPage'
description: Success
security:
- ApiKeyAuth: []
summary: Query existing users
tags:
- SCIM
post:
description: See RFC 7644 - Creating Resources
operationId: createUser
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/SubmittedUserResource'
required: true
responses:
'201':
content:
application/json:
schema:
$ref: '#/components/schemas/UserResource'
application/scim+json:
schema:
$ref: '#/components/schemas/UserResource'
description: User successfully created
security:
- ApiKeyAuth: []
summary: Create a user
tags:
- SCIM
/scim/v2/Users/{userId}:
delete:
description: 'Delete a user on Malt, if possible.
Should the user have pending actions that must be completed, the deletion will fail.
See RFC 7644 - Deleting Resources'
operationId: deleteUser
parameters:
- description: The ID of the user concerned
explode: false
in: path
name: userId
required: true
schema:
pattern: ^(?!\s*$).+
type: string
style: simple
responses:
'204':
description: User successfully deleted
'403':
description: 'Deletion is forbidden, for instance because the user has actions that must be completed
first.
'
security:
- ApiKeyAuth: []
summary: Delete a user
tags:
- SCIM
get:
operationId: getUserById
parameters:
- description: The ID of the user concerned
explode: false
in: path
name: userId
required: true
schema:
pattern: ^(?!\s*$).+
type: string
style: simple
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UserResource'
application/scim+json:
schema:
$ref: '#/components/schemas/UserResource'
description: The requested user.
'404':
description: No user exists with the provided ID
security:
- ApiKeyAuth: []
summary: Fetch an existing user
tags:
- SCIM
patch:
description: '**For now this operation only supports passing the `active` attribute of the user to `false`,
which is equivalent to deleting the user.**
See RFC 7644 - Modifying with PATCH'
operationId: modifyUser
parameters:
- description: The ID of the user concerned
explode: false
in: path
name: userId
required: true
schema:
pattern: ^(?!\s*$).+
type: string
style: simple
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/UserPatchBody'
required: true
responses:
'204':
description: User successfully modified
'404':
description: No user exists with the provided ID
security:
- ApiKeyAuth: []
summary: Modify a user (only accepts setting `active` to `false` for now)
tags:
- SCIM
put:
description: 'Replace all (non-readonly, non-immutable) details of the user with the ones provided.
MUST NOT be used to create new users.
You MAY explicitly pass `null` to unset a (readable, non-required) value.
See RFC 7644 - Replacing with PUT'
operationId: replaceUser
parameters:
- description: The ID of the user concerned
explode: false
in: path
name: userId
required: true
schema:
pattern: ^(?!\s*$).+
type: string
style: simple
requestBody:
content:
'*/*':
schema:
$ref: '#/components/schemas/SubmittedUserResource'
required: true
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/UserResource'
application/scim+json:
schema:
$ref: '#/components/schemas/UserResource'
description: User successfully replaced
'404':
description: No user exists with the provided ID
security:
- ApiKeyAuth: []
summary: Replace a user
tags:
- SCIM
components:
schemas:
UserPatchBody:
description: Body of a PATCH request for a given user
properties:
schemas:
items:
enum:
- urn:ietf:params:scim:api:messages:2.0:PatchOp
type: string
type: array
Operations:
description: Operations to apply on the user.
items:
$ref: '#/components/schemas/UserPatchBody_Operations_inner'
type: array
required:
- Operations
- schemas
type: object
SubmittedUserResource_phoneNumbers_inner:
properties:
value:
example: '33606060606'
type: string
primary:
default: true
description: A boolean indicating if this is the preferred phone number among others, if any
type: boolean
type: object
SubmittedUserResource:
description: A user
properties:
externalId:
example: '12345678'
type: string
userName:
description: 'A service provider''s unique identifier for the user, typically
used by the user to directly authenticate to the service provider.
Often displayed to the user as their unique identifier within the
system (as opposed to "id" or "externalId", which are generally
opaque and not user-friendly identifiers).
'
example: jane.doe@acme.com
pattern: ^(?!\s*$).+
type: string
name:
$ref: '#/components/schemas/SubmittedUserResource_name'
phoneNumbers:
description: Phone numbers for the user, formatted as per [RFC 3966](https://tools.ietf.org/html/rfc3966)
items:
$ref: '#/components/schemas/SubmittedUserResource_phoneNumbers_inner'
maxItems: 3
minItems: 0
type: array
urn:ietf:params:scim:schemas:extension:malt:2.0:User:
$ref: '#/components/schemas/MaltUserExtension'
required:
- name
- userName
type: object
PageResource:
description: A page of resources
properties:
totalResults:
example: 153
type: integer
startIndex:
example: 1
type: integer
itemsPerPage:
example: 10
type: integer
schemas:
items:
enum:
- urn:ietf:params:scim:api:messages:2.0:ListResponse
type: string
type: array
Resources:
items:
type: object
type: array
type: object
UserPatchBody_Operations_inner:
properties:
op:
type: string
value: {}
required:
- op
- value
type: object
MaltUserExtension:
description: Malt User Extension
properties:
companyAttributionId:
description: Company-specific attribute identifier for company attribution
example: hr-group
type: string
type: object
SubmittedUserResource_name:
description: Actual name of the user
properties:
givenName:
description: The given name of the User, or first name in most Western languages
example: Jane
maxLength: 100
pattern: ^(?!\s*$)[\p{L}\p{M}\p{Pd}\p{Z}\d'’‘`.]+$
type: string
familyName:
description: The family name of the User, or last name in most Western languages
example: Doe
maxLength: 100
pattern: ^(?!\s*$)[\p{L}\p{M}\p{Pd}\p{Z}\d'’‘`.]+$
type: string
required:
- familyName
- givenName
type: object
UserResource:
allOf:
- $ref: '#/components/schemas/ScimEntity'
- $ref: '#/components/schemas/SubmittedUserResource'
- properties:
displayName:
description: 'The name of the user, suitable for display to end-users. Each
user returned MAY include a non-empty displayName value. The name
SHOULD be the full name of the User being described, if known
(e.g., "Babs Jensen" or "Ms. Barbara J Jensen, III") but MAY be a
username or handle, if that is all that is available (e.g.,
"bjensen"). The value provided SHOULD be the primary textual
label by which this User is normally displayed by the service
provider when presenting it to end-users.
'
example: Jane Doe
type: string
active:
description: 'A Boolean value indicating the user''s administrative status.
Users are always active on Malt.
'
example: true
type: boolean
emails:
description: Email addresses for the User.
items:
$ref: '#/components/schemas/UserResource_allOf_emails'
maxItems: 1
minItems: 1
type: array
type: object
description: A user
ScimEntity_meta:
description: Metadata related to this resource
properties:
resourceType:
description: The type of this SCIM resource
enum:
- User
example: User
type: string
created:
description: This resource's creation date, using ISO 8601 format
example: '2010-01-23T04:56:22Z'
type: string
lastModified:
description: This resource's last modification date, using ISO 8601 format
example: '2011-05-13T04:42:34Z'
type: string
type: object
ScimEntity:
description: A SCIM entity
properties:
id:
example: 2920b403-fb3b-4e14-9b56-440b218374b6
type: string
externalId:
example: '12345678'
type: string
meta:
$ref: '#/components/schemas/ScimEntity_meta'
schemas:
items:
enum:
- urn:ietf:params:scim:schemas:core:2.0:User
- urn:ietf:params:scim:schemas:extension:malt:2.0:User
type: string
type: array
type: object
UserPage:
allOf:
- $ref: '#/components/schemas/PageResource'
- properties:
Resources:
items:
$ref: '#/components/schemas/UserResource'
type: array
type: object
description: A page of users
UserResource_allOf_emails:
properties:
value:
example: john.doe@malt.com
type: string
primary:
default: true
description: A boolean indicating if this is the preferred email among others, if any
type: boolean
type: object
securitySchemes:
BearerAuth:
bearerFormat: JWT
description: API token obtained from your Malt representative
scheme: bearer
type: http
ApiKeyAuth:
description: 'To obtain an access token, please follow [these instructions](https://api.malt.com).
'
in: header
name: Authorization
type: apiKey