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/aeb-materialbfbean-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: 3.2.0
info:
title: Product Classification HTTP Material BF Bean API
description: Thank you for using our HTTP API documentation.
version: '4.0'
servers:
- url: https://rz3.aeb.de/test2cl/rest
security:
- SWAGGER_AUTH_KEY: []
- BASIC_AUTH: []
tags:
- name: MaterialBFBean
description: API for maintaining and requesting classification master data.
paths:
/MaterialBFBean/materials/partnerSystems:
put:
tags:
- MaterialBFBean
description: Adds a new partner system to the materials. If a partner system subscription exists, journal entries will be created for the partner system.
operationId: addPartnersystem
parameters:
- name: clientSystemId
in: query
description: clientSystemId Required. The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The unique identification code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the update.
schema:
maxLength: 254
type: string
- name: setOwner
in: query
description: setOwner Optional. If true, the clientSystemId is set as owner of the material. Default value is false.
schema:
type: boolean
default: false
requestBody:
description: materials Required. A list of material numbers (max. 100) which identify a material uniquely for the client.
content:
application/json:
schema:
$ref: '#/components/schemas/MaterialNumbersDTO'
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/AddPartnersystemToMaterialResponseDTO'
delete:
tags:
- MaterialBFBean
description: Removes a partner system from the materials.
operationId: deletePartnersystem
parameters:
- name: clientSystemId
in: query
description: clientSystemId Required. The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The unique identification code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the update.
schema:
maxLength: 254
type: string
requestBody:
description: materials Required. A list of material numbers which identify a material uniquely for the client.
content:
application/json:
schema:
$ref: '#/components/schemas/MaterialNumbersDTO'
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/DeletePartnersystemOfMaterialRepsonseDTO'
/MaterialBFBean/materials/{materialNumber}:
get:
tags:
- MaterialBFBean
summary: Get the data for one material.
operationId: getMaterial
parameters:
- name: materialNumber
in: path
description: The material number which identifies a material uniquely for the client.
required: true
schema:
maxLength: 50
type: string
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the call.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the call.
schema:
maxLength: 254
type: string
- name: decisiveDate
in: query
description: 'If specified, only classification values that are valid on the specified date are returned. Defaults to today, if empty. Format: yyyy-MM-dd.'
schema:
type: string
format: date
- name: ignoreMaterialDetails
in: query
description: If true, material details are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreMaterialDescriptions
in: query
description: If true, material descriptions are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreLinkAttachments
in: query
description: If true, attachments are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreFeatures
in: query
description: If true, features are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreClassifications
in: query
description: If true, classifications are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreClassificationValues
in: query
description: If true, classification values are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreCertificates
in: query
description: If true, certificates are ommited in the response.
schema:
type: boolean
default: false
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/GetMaterialResultDTO'
delete:
tags:
- MaterialBFBean
description: Initiates the deletion of a material if the caller is owner of the material. If this is not the case, the partnersystem with the caller's clientSystemId is removed from the material.
operationId: deleteMaterial
parameters:
- name: materialNumber
in: path
description: The material number which identifies a material uniquely for the client.
required: true
schema:
maxLength: 50
type: string
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the call.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the call.
schema:
maxLength: 254
type: string
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteMaterialResponseDTO'
patch:
tags:
- MaterialBFBean
summary: Update the data of one material.
operationId: updateMaterial
parameters:
- name: materialNumber
in: path
description: The material number which identifies a material uniquely for the client.
required: true
schema:
maxLength: 50
type: string
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the update.
schema:
maxLength: 254
type: string
- name: transferMode
in: query
description: 'The mode in which the data specified in the request body shall be applied.
<dl><dt>ADD_ONLY (default)</dt><dd>Only adds new data.</dd>
<dt>OVERWRITE_ONLY_MASTER_DATA</dt><dd>Changes existing master data (e.g. features, material descriptions). Meanwhile only new classification values and customs documents are added.</dd>
<dt>OVERWRITE</dt><dd>Changes existing data.</dd>
<dt>FULL_SYNC_ONLY_MASTER_DATA</dt><dd>Deletes all existing master data, and adds the sent data.</dd>
<dt>FULL_SYNC</dt><dd>Deletes all existing data, and adds the sent data.</dd></dl>
Hint: Updates for priority/dueDate of a classification are always taken into account. But only changes to more urgency will be accepted.'
schema:
type: string
enum:
- ADD_ONLY
- OVERWRITE
- OVERWRITE_ONLY_MASTER_DATA
- FULL_SYNC
- FULL_SYNC_ONLY_MASTER_DATA
requestBody:
description: The data to add to the material on the engine.
content:
application/json:
schema:
$ref: '#/components/schemas/MaterialDataDTO'
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateMaterialResultDTO'
/MaterialBFBean/businessObjects/{type}/{id}:
get:
tags:
- MaterialBFBean
summary: Gets the data of a material related business object.
description: This method is meant to be used in combination with the ISyncBF API to get data of single business objects separately.
operationId: getBusinessObject
parameters:
- name: id
in: path
description: The unique identification of the business object.
required: true
schema:
maxLength: 36
type: string
- name: type
in: path
description: The type of the business object.
required: true
schema:
maxLength: 20
type: string
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The unique identification code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the call.
schema:
maxLength: 254
type: string
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/GetBusinessObjectResponseDTO'
/MaterialBFBean/materials/{materialNumber}/classificationProfiles/{profileCode}:
get:
tags:
- MaterialBFBean
summary: Returns classification values of a classification profile for the requested material.
operationId: getClassification
parameters:
- name: materialNumber
in: path
description: The material number which identifies a material uniquely for the client.
required: true
schema:
maxLength: 50
type: string
- name: profileCode
in: path
description: The code of the profile to request.
required: true
schema:
maxLength: 40
type: string
- name: decisiveDate
in: query
description: 'If specified, only classification values that are valid on the specified date are returned. Defaults to today, if empty. Format: yyyy-MM-dd.'
schema:
type: string
format: date
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the update.
schema:
maxLength: 254
type: string
- name: useAliasAsTypeName
in: query
description: If true, the typename of the returned classification values will be replaced by their profile specific alias (if available).
schema:
type: boolean
default: false
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/GetClassificationResultDTO'
patch:
tags:
- MaterialBFBean
summary: Ensures, that the a classification for the requested material and profile exists.
description: '<p>Optionally returns all classification values which have been maintained for this classification.</p>
<p>Optionally updates the workflow fields (priority/due date) regarding the worst-case principle:</p>
<ul>
<li>It''s only possible to update to a lower #priority (= more urgent)</li>
<li>It''s only possible to update to an earlier #dueDate</li>
<li>Both fields are taken separately into account, in case one is set the #reference will be set also.</li>
</ul>
'
operationId: requestClassification
parameters:
- name: materialNumber
in: path
description: The material number which identifies a material uniquely for the client.
required: true
schema:
maxLength: 50
type: string
- name: profileCode
in: path
description: The code of the profile to request.
required: true
schema:
maxLength: 40
type: string
- name: priority
in: query
description: Value between -9999 and 9999. A higher value means a higher priority.
schema:
maxLength: 4
type: integer
format: int32
- name: dueDate
in: query
description: Date by which the classification shall be completed.
schema:
maxLength: 10
type: string
format: YYYY-MM-DD
- name: reference
in: query
description: Provides tracking the priority/due date; e.g. an order number.
schema:
maxLength: 255
type: string
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the request.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the request.
schema:
maxLength: 254
type: string
- name: ignoreClassificationValues
in: query
description: If true, classification values are ommited in the response.
schema:
type: boolean
default: false
- name: useAliasAsTypeName
in: query
description: If true, the typename of the returned classification values will be replaced by their profile specific alias (if available).
schema:
type: boolean
default: false
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/RequestClassificationResultDTO'
/MaterialBFBean/materials/classificationProfiles/{profileCode}:
post:
tags:
- MaterialBFBean
summary: Returns classification values of a classification profile for the requested materials.
operationId: getClassificationForMaterials
parameters:
- name: profileCode
in: path
description: The code of the profile to request.
required: true
schema:
maxLength: 40
type: string
- name: decisiveDate
in: query
description: 'If specified, only classification values that are valid on the specified date are returned. Defaults to today, if empty. Format: yyyy-MM-dd.'
schema:
type: string
format: date
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the update.
schema:
maxLength: 254
type: string
- name: useAliasAsTypeName
in: query
description: If true, the typename of the returned classification values will be replaced by their profile specific alias (if available).
schema:
type: boolean
default: false
requestBody:
description: A list of material numbers (max. 100) which identify a material uniquely for the client.
content:
application/json:
schema:
$ref: '#/components/schemas/MaterialNumbersDTO'
required: true
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/GetClassificationForMaterialsResultDTO'
/MaterialBFBean/materials:
post:
tags:
- MaterialBFBean
summary: Get the data for multiple materials.
operationId: getMaterials
parameters:
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the call.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the call.
schema:
maxLength: 254
type: string
- name: decisiveDate
in: query
description: 'If specified, only classification values that are valid on the specified date are returned. Defaults to today, if empty. Format: yyyy-MM-dd.'
schema:
type: string
format: date
- name: ignoreMaterialDetails
in: query
description: If true, material details are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreMaterialDescriptions
in: query
description: If true, material descriptions are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreLinkAttachments
in: query
description: If true, attachments are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreFeatures
in: query
description: If true, features are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreClassifications
in: query
description: If true, classifications are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreClassificationValues
in: query
description: If true, classification values are ommited in the response.
schema:
type: boolean
default: false
- name: ignoreCertificates
in: query
description: If true, certificates are ommited in the response.
schema:
type: boolean
default: false
requestBody:
description: A list of material numbers (max. 100) which identify a material uniquely for the client.
content:
application/json:
schema:
$ref: '#/components/schemas/MaterialNumbersDTO'
required: true
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/GetMaterialsResultDTO'
/MaterialBFBean/materials/{materialNumber}/attachmentFiles/{fileName}:
patch:
tags:
- MaterialBFBean
summary: Update an attachment file in the engine.
operationId: updateFileAttachment
parameters:
- name: materialNumber
in: path
description: The material number which identifies a material uniquely for the client.
required: true
schema:
maxLength: 50
type: string
- name: fileName
in: path
description: The name of the file to add or modify.
required: true
schema:
maxLength: 250
type: string
- name: description
in: query
description: A short description of the file.
schema:
maxLength: 1000
type: string
- name: clientSystemId
in: query
description: The id of the client system. Used to identify the origin of the update.
schema:
maxLength: 20
type: string
- name: clientIdentCode
in: query
description: The code of the client. If empty, the client of the authentication is used.
schema:
maxLength: 10
type: string
- name: userName
in: query
description: Names the user from the client system. Used to identify the origin of the update.
schema:
maxLength: 254
type: string
requestBody:
description: The content of the file.
content:
application/json:
schema:
$ref: '#/components/schemas/FileContentDTO'
responses:
default:
description: default response
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateFileAttachmentResultDTO'
components:
schemas:
RequestClassificationResultDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
classificationValues:
type: array
description: Container with the classification values that belong to the requested classification.
items:
$ref: '#/components/schemas/ClassificationValueDTO'
description: 'Response DTO for #requestClassifications'
GetMaterialResultDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
material:
$ref: '#/components/schemas/MaterialDataDTO'
description: 'Response DTO for #getMaterial'
GetBusinessObjectResponseDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
businessObject:
$ref: '#/components/schemas/GenericDataRecordDTO'
description: Response DTO for <code>IMaterialBF#getBusinessObject</code>.
DeletePartnersystemOfMaterialRepsonseDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
description: Response DTO for <code>IMaterialBF#deletePartnersystem</code>.
DeleteMaterialResponseDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
description: 'Response DTO for #deleteMaterial'
MaterialNumbersDTO:
type: object
properties:
materialNumbers:
type: array
description: The list of material numbers.
items:
type: string
description: The list of material numbers.
description: DTO to hold multiple material numbers.
NamedGenericDataRecordDTO:
type: object
properties:
name:
type: string
description: The name of this record, i.e. the role the record plays in the enclosing record.<br> When the same name is repeated in the context of the same parent record, it is assumed that the parent defines this element as a repeatable (array) element.
record:
$ref: '#/components/schemas/GenericDataRecordDTO'
description: A generic data record with a name.<br> Wrapper class to encapsulate subrecords with their name and with the ability to have explicit null records.
example:
- name: child
record:
fields: []
subrecords: []
UpdateFileAttachmentResultDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
description: 'Response DTO for #updateFileAttachment'
GetMaterialsResultDTO:
type: object
properties:
hasErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>An error usually means that the request could not be performed.</p><p>Error details are provided in the messages[] array.</p>
example: false
hasOnlyRetryableErrors:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
hasWarnings:
type: boolean
description: <p>True, if there are any error messages.</p><p>Error details are provided in the messages[] array.</p>
example: true
messages:
type: array
description: <p>Error or warning messages at the request level.</p><p>There may be additional messages[] arrays at lower data levels as specified in the documentation.</p>
items:
$ref: '#/components/schemas/ResponseMessageDTO'
# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/aeb/refs/heads/main/openapi/aeb-materialbfbean-api-openapi.yml