Retraced Product / Material Headers API

The Product / Material Headers API from Retraced — 3 operation(s) for product / material headers.

OpenAPI Specification

retraced-product-material-headers-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Public API Reference Certificates Product / Material Headers API
  description: 'The retraced API comprises all publicly enabled options to make

    machine-to-machine changes in the retraced platform. The retraced dashboard uses the

    same endpoints, but also in addition more. If you wish to use the API of the dashboard,

    it is possible but not versioned cleanly like the public API.


    ## Authentication


    The authentication procedure is passwordless and uses an API key in the header. To get

    an API key log into the Retraced Platform and navigate to **Developers HQ > API Keys**

    then click **Create**. Be sure to copy the key somewhere safe, as you won''t be able to

    view it again. If you don''t see Developers HQ in the sidebar contact your Customer

    Success Manager to enable this for you. You can now set the key directly in request

    headers. To authenticate using an API key, set the header key `companyapikey` to the

    value of your API key.


    ## Getting Started


    Retraced has 2 environments against which you can send your requests and receive the

    expected response: staging (for development and testing) and production. Your API key

    is scoped for both environments. The staging Base URL is

    https://publicapi.staging.retraced.com. Staging copies production data once daily, and

    all changes made on staging will be deleted.


    Find detailed guides on how to use the endpoints and how we recommend building an

    integration given your use case in our

    [guides](https://publicapi.retraced.com/api/v2/guides). A history of public API

    changes is available in the

    [release notes](https://publicapi.retraced.com/api/v2/release-notes).'
  version: 2.938.1
servers: []
tags:
- name: Product / Material Headers
paths:
  /api/v2/material-headers/:
    post:
      tags:
      - Product / Material Headers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 255
                description:
                  anyOf:
                  - type: string
                    maxLength: 4000
                  - type: 'null'
                link:
                  type: object
                  properties:
                    styleId:
                      type: string
                      minLength: 1
                    isMainMaterial:
                      type: boolean
                  required:
                  - styleId
                  - isMainMaterial
                forCompanyId:
                  type: string
                  minLength: 1
              required:
              - name
              - link
      responses:
        '201':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: object
                    properties:
                      success:
                        default: true
                        type: boolean
                      pagination:
                        type: object
                        properties:
                          page:
                            default: 1
                            type: number
                          limit:
                            default: 10
                            type: number
                          total:
                            default: 0
                            type: number
                          totalPages:
                            default: 0
                            type: number
                        required:
                        - page
                        - limit
                        - total
                        - totalPages
                        additionalProperties: false
                    required:
                    - success
                    additionalProperties: false
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                      name:
                        type: string
                        minLength: 1
                        maxLength: 255
                      forCompanyId:
                        type: string
                        minLength: 1
                      description:
                        anyOf:
                        - type: string
                          maxLength: 4000
                        - type: 'null'
                      link:
                        type: object
                        properties:
                          styleId:
                            type: string
                            minLength: 1
                          isMainMaterial:
                            type: boolean
                          isOwner:
                            type: boolean
                        required:
                        - styleId
                        - isMainMaterial
                        additionalProperties: false
                      createdAt:
                        anyOf:
                        - type: string
                          format: date-time
                        - type: 'null'
                      createdByUserId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      createdByCompanyId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      updatedAt:
                        anyOf:
                        - type: string
                          format: date-time
                        - type: 'null'
                      updatedByUserId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      updatedByCompanyId:
                        anyOf:
                        - type: string
                        - type: 'null'
                    required:
                    - id
                    - name
                    - forCompanyId
                    - link
                    additionalProperties: false
                required:
                - metadata
                - data
                additionalProperties: false
    get:
      tags:
      - Product / Material Headers
      parameters:
      - schema:
          default: 1
          type: integer
          minimum: 1
          maximum: 9007199254740991
        in: query
        name: page
        required: false
      - schema:
          default: 20
          type: integer
          minimum: 1
          maximum: 100
        in: query
        name: limit
        required: false
      - schema:
          default: desc
          type: string
          enum:
          - asc
          - desc
          - ASC
          - DESC
        in: query
        name: order
        required: false
      - schema:
          default: name
          type: string
          enum:
          - name
          - styleId
          - createdAt
          - updatedAt
        in: query
        name: sort
        required: false
      - schema:
          type: string
          minLength: 1
        in: query
        name: styleId
        required: true
      - schema:
          type: string
        in: query
        name: name
        required: false
      - schema:
          type: string
        in: query
        name: description
        required: false
      - schema:
          anyOf:
          - type: boolean
          - type: string
            enum:
            - 'true'
          - type: string
            enum:
            - 'false'
        in: query
        name: isMainMaterial
        required: false
      - schema:
          anyOf:
          - type: boolean
          - type: string
            enum:
            - 'true'
          - type: string
            enum:
            - 'false'
        in: query
        name: isOwner
        required: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: object
                    properties:
                      success:
                        default: true
                        type: boolean
                      pagination:
                        type: object
                        properties:
                          page:
                            default: 1
                            type: number
                          limit:
                            default: 10
                            type: number
                          total:
                            default: 0
                            type: number
                          totalPages:
                            default: 0
                            type: number
                        required:
                        - page
                        - limit
                        - total
                        - totalPages
                        additionalProperties: false
                    required:
                    - success
                    additionalProperties: false
                  data:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          minLength: 1
                        name:
                          type: string
                          minLength: 1
                          maxLength: 255
                        forCompanyId:
                          type: string
                          minLength: 1
                        description:
                          anyOf:
                          - type: string
                            maxLength: 4000
                          - type: 'null'
                        link:
                          type: object
                          properties:
                            styleId:
                              type: string
                              minLength: 1
                            isMainMaterial:
                              type: boolean
                            isOwner:
                              type: boolean
                          required:
                          - styleId
                          - isMainMaterial
                          additionalProperties: false
                        createdAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        createdByUserId:
                          anyOf:
                          - type: string
                          - type: 'null'
                        createdByCompanyId:
                          anyOf:
                          - type: string
                          - type: 'null'
                        updatedAt:
                          anyOf:
                          - type: string
                            format: date-time
                          - type: 'null'
                        updatedByUserId:
                          anyOf:
                          - type: string
                          - type: 'null'
                        updatedByCompanyId:
                          anyOf:
                          - type: string
                          - type: 'null'
                      required:
                      - id
                      - name
                      - forCompanyId
                      - link
                      additionalProperties: false
                required:
                - metadata
                - data
                additionalProperties: false
  /api/v2/material-headers/{id}:
    get:
      tags:
      - Product / Material Headers
      parameters:
      - schema:
          type: string
          minLength: 1
        in: path
        name: id
        required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: object
                    properties:
                      success:
                        default: true
                        type: boolean
                      pagination:
                        type: object
                        properties:
                          page:
                            default: 1
                            type: number
                          limit:
                            default: 10
                            type: number
                          total:
                            default: 0
                            type: number
                          totalPages:
                            default: 0
                            type: number
                        required:
                        - page
                        - limit
                        - total
                        - totalPages
                        additionalProperties: false
                    required:
                    - success
                    additionalProperties: false
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                      name:
                        type: string
                        minLength: 1
                        maxLength: 255
                      forCompanyId:
                        type: string
                        minLength: 1
                      description:
                        anyOf:
                        - type: string
                          maxLength: 4000
                        - type: 'null'
                      link:
                        type: object
                        properties:
                          styleId:
                            type: string
                            minLength: 1
                          isMainMaterial:
                            type: boolean
                          isOwner:
                            type: boolean
                        required:
                        - styleId
                        - isMainMaterial
                        additionalProperties: false
                      createdAt:
                        anyOf:
                        - type: string
                          format: date-time
                        - type: 'null'
                      createdByUserId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      createdByCompanyId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      updatedAt:
                        anyOf:
                        - type: string
                          format: date-time
                        - type: 'null'
                      updatedByUserId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      updatedByCompanyId:
                        anyOf:
                        - type: string
                        - type: 'null'
                    required:
                    - id
                    - name
                    - forCompanyId
                    - link
                    additionalProperties: false
                required:
                - metadata
                - data
                additionalProperties: false
    put:
      tags:
      - Product / Material Headers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  minLength: 1
                  maxLength: 255
                description:
                  anyOf:
                  - type: string
                    maxLength: 4000
                  - type: 'null'
                link:
                  type: object
                  properties:
                    styleId:
                      type: string
                      minLength: 1
                    isMainMaterial:
                      type: boolean
                  required:
                  - styleId
                  - isMainMaterial
                forCompanyId:
                  type: string
                  minLength: 1
              required:
              - name
              - link
      parameters:
      - schema:
          type: string
          minLength: 1
        in: path
        name: id
        required: true
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: object
                    properties:
                      success:
                        default: true
                        type: boolean
                      pagination:
                        type: object
                        properties:
                          page:
                            default: 1
                            type: number
                          limit:
                            default: 10
                            type: number
                          total:
                            default: 0
                            type: number
                          totalPages:
                            default: 0
                            type: number
                        required:
                        - page
                        - limit
                        - total
                        - totalPages
                        additionalProperties: false
                    required:
                    - success
                    additionalProperties: false
                  data:
                    type: object
                    properties:
                      id:
                        type: string
                        minLength: 1
                      name:
                        type: string
                        minLength: 1
                        maxLength: 255
                      forCompanyId:
                        type: string
                        minLength: 1
                      description:
                        anyOf:
                        - type: string
                          maxLength: 4000
                        - type: 'null'
                      link:
                        type: object
                        properties:
                          styleId:
                            type: string
                            minLength: 1
                          isMainMaterial:
                            type: boolean
                          isOwner:
                            type: boolean
                        required:
                        - styleId
                        - isMainMaterial
                        additionalProperties: false
                      createdAt:
                        anyOf:
                        - type: string
                          format: date-time
                        - type: 'null'
                      createdByUserId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      createdByCompanyId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      updatedAt:
                        anyOf:
                        - type: string
                          format: date-time
                        - type: 'null'
                      updatedByUserId:
                        anyOf:
                        - type: string
                        - type: 'null'
                      updatedByCompanyId:
                        anyOf:
                        - type: string
                        - type: 'null'
                    required:
                    - id
                    - name
                    - forCompanyId
                    - link
                    additionalProperties: false
                required:
                - metadata
                - data
                additionalProperties: false
  /api/v2/material-headers/delete:
    post:
      tags:
      - Product / Material Headers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                styleId:
                  type: string
                  minLength: 1
                materialHeaderIds:
                  minItems: 1
                  type: array
                  items:
                    type: string
                    minLength: 1
              required:
              - styleId
              - materialHeaderIds
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  metadata:
                    type: object
                    properties:
                      success:
                        default: true
                        type: boolean
                      pagination:
                        type: object
                        properties:
                          page:
                            default: 1
                            type: number
                          limit:
                            default: 10
                            type: number
                          total:
                            default: 0
                            type: number
                          totalPages:
                            default: 0
                            type: number
                        required:
                        - page
                        - limit
                        - total
                        - totalPages
                        additionalProperties: false
                    required:
                    - success
                    additionalProperties: false
                  data:
                    type: object
                    properties:
                      deletedHeaders:
                        type: array
                        items:
                          type: string
                      deletedLinks:
                        type: array
                        items:
                          type: string
                      errors:
                        type: array
                        items:
                          type: object
                          properties:
                            materialHeaderId:
                              type: string
                            message:
                              type: string
                          required:
                          - materialHeaderId
                          - message
                          additionalProperties: false
                    required:
                    - deletedHeaders
                    - deletedLinks
                    - errors
                    additionalProperties: false
                required:
                - metadata
                - data
                additionalProperties: false