1Factory · Capability

1Factory API — Part Master

1Factory API — Part Master. 3 operations. Lead operation: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.. Self-contained Naftiko capability covering one 1factory business surface.

Run with Naftiko 1factoryPart Master

What You Can Do

PUT
Put — 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.
/v1/partmasters
GET
Get — 1Factory Gets a List of Part Masters for Your Organization.
/v1/partmasters
PUT
Put — 1Factory Defines Assembly Relationships Between Part Masters.
/v1/partmasters/assemblies

MCP Tools

1factory-creates-new-updates-existing

1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.

idempotent
1factory-gets-list-part-masters

1Factory Gets a List of Part Masters for Your Organization.

read-only idempotent
1factory-defines-assembly-relationships-between

1Factory Defines Assembly Relationships Between Part Masters.

idempotent

Capability Spec

1factory-part-master.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: 1Factory API — Part Master
  description: '1Factory API — Part Master. 3 operations. Lead operation: 1Factory Creates a New (or Updates Existing) Part
    Master Entry for Your Organization.. Self-contained Naftiko capability covering one 1factory business surface.'
  tags:
  - 1factory
  - Part Master
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    1FACTORY_API_KEY: 1FACTORY_API_KEY
capability:
  consumes:
  - type: http
    namespace: 1factory-part-master
    baseUri: https://www.1factory.co/api/v1
    description: 1Factory API — Part Master business capability. Self-contained, no shared references.
    resources:
    - name: partMasters
      path: /partMasters
      operations:
      - name: put
        method: PUT
        description: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: get
        method: GET
        description: 1Factory Gets a List of Part Masters for Your Organization.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: parent_part_number
          in: query
          type: string
          description: Parent Part number to filter on for Table of Size entries.
        - name: parent_rev
          in: query
          type: string
          description: Parent Part rev to filter on for Table of Size entries.
        - name: is_library
          in: query
          type: boolean
          description: If the part is a configured as a library.
        - name: is_assembly
          in: query
          type: boolean
          description: If the part is a configured as an assembly.
        - name: is_itar
          in: query
          type: boolean
          description: If the part is a configured as an ITAR part.
        - name: has_ppap
          in: query
          type: boolean
          description: If the part has any PPAP documents.
        - name: type
          in: query
          type: string
          description: If the part has any PPAP documents.
    - name: partMasters-assemblies
      path: /partMasters/assemblies
      operations:
      - name: put
        method: PUT
        description: 1Factory Defines Assembly Relationships Between Part Masters.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    authentication:
      type: apikey
      key: x-1factory-org
      value: '{{env.1FACTORY_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: 1factory-part-master-rest
    port: 8080
    description: REST adapter for 1Factory API — Part Master. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/partmasters
      name: partmasters
      description: REST surface for partMasters.
      operations:
      - method: PUT
        name: put
        description: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.
        call: 1factory-part-master.put
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: get
        description: 1Factory Gets a List of Part Masters for Your Organization.
        call: 1factory-part-master.get
        with:
          parent_part_number: rest.parent_part_number
          parent_rev: rest.parent_rev
          is_library: rest.is_library
          is_assembly: rest.is_assembly
          is_itar: rest.is_itar
          has_ppap: rest.has_ppap
          type: rest.type
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/partmasters/assemblies
      name: partmasters-assemblies
      description: REST surface for partMasters-assemblies.
      operations:
      - method: PUT
        name: put
        description: 1Factory Defines Assembly Relationships Between Part Masters.
        call: 1factory-part-master.put
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: 1factory-part-master-mcp
    port: 9090
    transport: http
    description: MCP adapter for 1Factory API — Part Master. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: 1factory-creates-new-updates-existing
      description: 1Factory Creates a New (or Updates Existing) Part Master Entry for Your Organization.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: 1factory-part-master.put
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: 1factory-gets-list-part-masters
      description: 1Factory Gets a List of Part Masters for Your Organization.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: 1factory-part-master.get
      with:
        parent_part_number: tools.parent_part_number
        parent_rev: tools.parent_rev
        is_library: tools.is_library
        is_assembly: tools.is_assembly
        is_itar: tools.is_itar
        has_ppap: tools.has_ppap
        type: tools.type
      outputParameters:
      - type: object
        mapping: $.
    - name: 1factory-defines-assembly-relationships-between
      description: 1Factory Defines Assembly Relationships Between Part Masters.
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: 1factory-part-master.put
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.