Materials Zone Parsers API
Parsers are used to convert instrument specific output files to a MaterialsZone common format.
Parsers are used to convert instrument specific output files to a MaterialsZone common format.
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/materials-zone-parsers-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: Materials Zone Parsers API
version: 2.0.0
description: MaterialsZone's RESTful API is designed to facilitate seamless integration with your existing systems, enabling you to automate workflows, connect diverse data sources, and perform domain-specific analysis.
servers:
- url: https://api.materials.zone/v2beta1
security:
- ApiKey: []
tags:
- name: Parsers
description: Parsers are used to convert instrument specific output files to a MaterialsZone common format.
paths:
/parsers:
post:
tags:
- Parsers
summary: Create a new parser
description: Creates a new parser.
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
example: CSV Parser for JEOL JSM IT700HR
description: The name of this parser.
description:
type: string
example: Parses the <Date>.part4.csv files output from the JEOL JSM IT700HR
description: The description of this parser.
nullable: true
physicalMeasurement:
type: string
description: The physical measurement whose data is parsed by this parser.
example: Fourier-Transform Infrared Spectroscopy
instrumentModel:
type: string
description: The model of the instrument used to measure the data parsed by this parser.
example: JSM IT700HR
instrumentManufacturer:
type: string
description: The manufacturer of the instrument used to measure the data parsed by this parser.
example: JEOL
enabledState:
type: boolean
description: The enabled state of this parser, false means it cant be used.
example: true
nullable: true
parserConfiguration:
type: object
properties:
configurationColumns:
type: array
description: A list of configuration details specifying what columns of data to extract from the raw file.
items:
type: object
properties:
columnNameInFile:
type: string
nullable: true
example: Wavelength (nm)
description: The column used to get the raw data, specified by name.
columnIndexInFile:
type: integer
nullable: true
example: 3
description: The column used to get the raw data, specified by index.
columnNameInResult:
type: string
example: Wavelength
description: The name of the column to place the parsed data in.
unit:
type: string
example: nm
description: The unit of the data in this column.
computedColumns:
type: array
description: A list of configuration details specifying what columns of data to compute from the parsed file.
items:
type: object
properties:
function:
type: string
enum:
- IDENTITY
- DELTA
- ABSOLUTE_DELTA
- DIVIDE
- DIVIDE_BY_TWO_ROUND_UP
- ABSOLUTE_TIMES_SIGN
example: IDENTITY
description: The function used to computed data in this column.
computedColumnName:
type: string
example: Wavelength 2
description: The name of the parsed column to place the computed data in.
inputColumnNames:
type: array
items:
type: string
example: Wavelength
description: The name of the column used as an input to the computation in this column.
unit:
type: string
example: nm
description: The unit of the data in this column.
metadataExpected:
type: boolean
description: Whether header metadata is expected in this parser before the actual data.
example: false
nullable: true
footerExpected:
type: boolean
description: Whether footer metadata is expected in this parser after the actual data.
example: false
nullable: true
viewType:
type: string
enum:
- VIEW_IMAGE
- VIEW_2D_CUSTOM_AXES
- VIEW_3D
- VIEW_HEATMAP
- VIEW_DOCX
- VIEW_SCATTER_PLOT
- VIEW_BOX_PLOT
- VIEW_HISTOGRAM_SINGLE
- VIEW_WAFER_MAP
- VIEW_VECTOR_WAFER_MAP
- VIEW_CORRELATION_MATRIX
- VIEW_PDF
example: VIEW_2D_CUSTOM_AXES
description: The view type of this parser, changes how data is displayed on the FE.
supportedFileExtensions:
type: array
description: A list of file extensions supported by this parser.
items:
type: string
example: xlsx
description: A file extension supported by this parser.
required:
- name
- physicalMeasurement
- instrumentModel
- instrumentManufacturer
- viewType
- supportedFileExtensions
responses:
'201':
description: Success
content:
application/json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/Parser'
'400':
description: Bad Request
'401':
$ref: '#/components/responses/Unauthorized'
'403':
description: Forbidden
operationId: postParsers
x-operation-id-source: derived
get:
tags:
- Parsers
summary: Get all parsers
description: Get all parsers accessible to this user's organization.
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/Parser'
'401':
$ref: '#/components/responses/Unauthorized'
operationId: getParsers
x-operation-id-source: derived
/parsers/{parserId}:
patch:
tags:
- Parsers
summary: Update a parser
description: Updates an existing parser.
parameters:
- name: parserId
in: path
required: true
description: The UUID of the parser to update.
example: eb1aa7b4-0e21-46de-b448-0c4eabdd32b7
schema:
type: string
format: uuid
minLength: 1
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
example: CSV Parser for JEOL JSM IT700HR
description: The name of this parser.
description:
type: string
example: Parses the <Date>.part4.csv files output from the JEOL JSM IT700HR
description: The description of this parser.
nullable: true
physicalMeasurement:
type: string
description: The physical measurement whose data is parsed by this parser.
example: Fourier-Transform Infrared Spectroscopy
instrumentModel:
type: string
description: The model of the instrument used to measure the data parsed by this parser.
example: JSM IT700HR
instrumentManufacturer:
type: string
description: The manufacturer of the instrument used to measure the data parsed by this parser.
example: JEOL
enabledState:
type: boolean
description: The enabled state of this parser, false means it cant be used.
example: true
parserConfiguration:
type: object
properties:
configurationColumns:
type: array
description: A list of configuration details specifying what columns of data to extract from the raw file.
items:
type: object
properties:
columnNameInFile:
type: string
nullable: true
example: Wavelength (nm)
description: The column used to get the raw data, specified by name.
columnIndexInFile:
type: integer
nullable: true
example: 3
description: The column used to get the raw data, specified by index.
columnNameInResult:
type: string
example: Wavelength
description: The name of the column to place the parsed data in.
unit:
type: string
example: nm
description: The unit of the data in this column.
computedColumns:
type: array
description: A list of configuration details specifying what columns of data to compute from the parsed file.
items:
type: object
properties:
function:
type: string
enum:
- IDENTITY
- DELTA
- ABSOLUTE_DELTA
- DIVIDE
- DIVIDE_BY_TWO_ROUND_UP
- ABSOLUTE_TIMES_SIGN
example: IDENTITY
description: The function used to computed data in this column.
computedColumnName:
type: string
example: Wavelength 2
description: The name of the parsed column to place the computed data in.
inputColumnNames:
type: array
items:
type: string
example: Wavelength
description: The name of the column used as an input to the computation in this column.
unit:
type: string
example: nm
description: The unit of the data in this column.
metadataExpected:
type: boolean
description: Wether header metadata is expected in this parser before the actual data.
example: false
footerExpected:
type: boolean
description: Wether footer metadata is expected in this parser after the actual data.
example: false
viewType:
type: string
enum:
- VIEW_IMAGE
- VIEW_2D_CUSTOM_AXES
- VIEW_3D
- VIEW_HEATMAP
- VIEW_DOCX
- VIEW_SCATTER_PLOT
- VIEW_BOX_PLOT
- VIEW_HISTOGRAM_SINGLE
- VIEW_WAFER_MAP
- VIEW_VECTOR_WAFER_MAP
- VIEW_CORRELATION_MATRIX
- VIEW_PDF
example: VIEW_2D_CUSTOM_AXES
description: The view type of this parser, changes how data is displayed on the FE.
supportedFileExtensions:
type: array
description: A list of file extensions supported by this parser.
items:
type: string
example: xlsx
description: A file extension supported by this parser.
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/Parser'
'400':
description: Bad Request
'401':
$ref: '#/components/responses/Unauthorized'
'403':
description: Forbidden
operationId: patchParsersByParserId
x-operation-id-source: derived
delete:
tags:
- Parsers
summary: Delete a parser
description: Deletes a parser.
parameters:
- name: parserId
in: path
required: true
description: The UUID of the parser to delete.
example: eb1aa7b4-0e21-46de-b448-0c4eabdd32b7
schema:
type: string
format: uuid
minLength: 1
responses:
'204':
description: Success
'400':
description: Bad Request
'401':
$ref: '#/components/responses/Unauthorized'
'403':
description: Forbidden
operationId: deleteParsersByParserId
x-operation-id-source: derived
get:
tags:
- Parsers
summary: Get a parser
description: Gets a parser's configuration.
parameters:
- name: parserId
in: path
required: true
description: The UUID of the parser to get.
example: eb1aa7b4-0e21-46de-b448-0c4eabdd32b7
schema:
type: string
format: uuid
minLength: 1
responses:
'200':
description: Success
content:
application/json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/Parser'
'400':
description: Bad Request
'401':
$ref: '#/components/responses/Unauthorized'
'403':
description: Forbidden
operationId: getParsersByParserId
x-operation-id-source: derived
components:
schemas:
Parser:
properties:
id:
type: string
format: uuid
description: The id of this parser.
code:
type: string
description: The code of this parser, used to easily identify it.
example: ME-MA-MO-00
name:
type: string
example: CSV Parser for JEOL JSM IT700HR
description: The name of this parser.
description:
type: string
example: Parses the <Date>.part4.csv files output from the JEOL JSM IT700HR
description: The description of this parser.
nullable: true
type:
type: string
enum:
- ARCHIVE
- CSV
- PARSER_SERVICE
- BROWSER
example: CSV
description: The type of this parser.
physicalMeasurement:
type: string
description: The physical measurement whose data is parsed by this parser.
example: Fourier-Transform Infrared Spectroscopy
instrumentModel:
type: string
description: The model of the instrument used to measure the data parsed by this parser.
example: JSM IT700HR
instrumentManufacturer:
type: string
description: The manufacturer of the instrument used to measure the data parsed by this parser.
example: JEOL
enabledState:
type: boolean
description: The enabled state of this parser, false means it cant be used.
example: true
parserConfiguration:
type: object
properties:
configurationColumns:
type: array
description: A list of configuration details specifying what columns of data to extract from the raw file.
items:
type: object
properties:
columnNameInFile:
type: string
nullable: true
example: Wavelength (nm)
description: The column used to get the raw data, specified by name.
columnIndexInFile:
type: integer
nullable: true
example: 3
description: The column used to get the raw data, specified by index.
columnNameInResult:
type: string
example: Wavelength
description: The name of the column to place the parsed data in.
unit:
type: string
example: nm
description: The unit of the data in this column.
computedColumns:
type: array
description: A list of configuration details specifying what columns of data to compute from the parsed file.
items:
type: object
properties:
function:
type: string
enum:
- IDENTITY
- DELTA
- ABSOLUTE_DELTA
- DIVIDE
- DIVIDE_BY_TWO_ROUND_UP
- ABSOLUTE_TIMES_SIGN
example: IDENTITY
description: The function used to computed data in this column.
computedColumnName:
type: string
example: Wavelength 2
description: The name of the parsed column to place the computed data in.
inputColumnNames:
type: array
items:
type: string
example: Wavelength
description: The name of the column used as an input to the computation in this column.
unit:
type: string
example: nm
description: The unit of the data in this column.
metadataExpected:
type: boolean
description: Whether header metadata is expected in this parser before the actual data.
example: false
nullable: true
footerExpected:
type: boolean
description: Whether footer metadata is expected in this parser after the actual data.
example: false
nullable: true
viewType:
type: string
enum:
- VIEW_IMAGE
- VIEW_2D_CUSTOM_AXES
- VIEW_3D
- VIEW_HEATMAP
- VIEW_DOCX
- VIEW_SCATTER_PLOT
- VIEW_BOX_PLOT
- VIEW_HISTOGRAM_SINGLE
- VIEW_WAFER_MAP
- VIEW_VECTOR_WAFER_MAP
- VIEW_CORRELATION_MATRIX
- VIEW_PDF
example: VIEW_2D_CUSTOM_AXES
description: The view type of this parser, changes how data is displayed on the FE.
dataType:
type: string
enum:
- DATA_COMPLEX
- DATA_FILE
- DATA_JSON
- DATA_TEXT
example: DATA_COMPLEX
description: The data type of this parser, changes how data is used on the FE.
supportedFileExtensions:
type: array
description: A list of file extensions supported by this parser.
items:
type: string
example: xlsx
description: A file extension supported by this parser.
dateCreated:
type: integer
description: A unix timestamp of when this parser was created.
dateUpdated:
type: integer
description: A unix timestamp of when this parser was last updated.
systemParser:
type: boolean
example: false
description: Whether this parser belongs to your specific organization or is it a system parser that all organizations can use.
required:
- id
- code
- name
- description
- type
- physicalMeasurement
- instrumentModel
- instrumentManufacturer
- enabledState
- parserConfiguration
- viewType
- dataType
- supportedFileExtensions
- dateCreated
- dateUpdated
- systemParser
Error:
type: object
properties:
code:
type: string
message:
type: string
required:
- code
- message
responses:
Unauthorized:
description: Unauthorized
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
ApiKey:
type: apiKey
in: header
name: Authorization