Materials

Materials are types of items that are stored. When creating and updating materials, the changes need to be verified and updated asynchronously by PowerPick.

Attributes

  • id uuid

  • name string

    The name of the material.

  • creationDate datetime

    When this material was created.

  • reOrderPoint float

    The minimum level of the material.

  • canOrderPoint float

    An alternate minimum or maximum level of the material.

  • currentQuantity integer

    How many of this material is in PowerPick

  • currentValue integer

    The current quantity of this material multiplied by the value.

  • expectedQuantity string

  • pickQuantity integer

    Amount in pending pick orders.

  • putQuantity integer

    Amount in pending put orders.

  • netQuantity integer

    Current quantity plus put quantity minus pick quantity.

  • unitOfMeasure string

    What measurement is used.

  • materialPropertyId UUID

    The id of the property this material belongs to.

  • weightPerUnit float

    How much each material weighs.

  • valuePerUnit float

    How much each individual material is worth.

  • isBlocked integer

    Whether the material is inactive.

  • blockReason string

    Why the material is inactive.

  • Info1 string

    A generic field for custom use.

  • Info2 string

    A generic field for custom use.

  • Info3 string

    A generic field for custom use.

  • Info4 string

    A generic field for custom use.

  • Info5 string

    A generic field for custom use.

  • [DynamicField] string

    Any custom fields set up in PowerPick.

Endpoints

List Materials

get /api/materials

Get the materials from the PPG database and return a JSON response.

Arguments

  • name string

    Only return materials that have the given name.

  • limit integer

    A limit on the number of objects to be returned. Limit can range between 1 and 1000, and the default is 250.

  • offset integer

    Will return items, but only those after the integer amount.

  • countOnly boolean

    When true, will only return a count of the amount of items in the query.

  • orderBy string, array

    Order the response by the selected field. Multiple values can be passed, separated by a comma.

  • countOnly boolean

    If set to true, will only return a count.

  • [dynamic_field]

    Any dynamic fields that have been set up can be used as a filter.

  • status string

    Only return order with a certain status.

Request with curl
curl "http://[Your IP]/api/materials" \ -X get \-H "Content-Type: application/json" \-H "Authorization: Bearer [Your JWT Access Token]"
Example Response
{ "materials": [{ "id": "F38A05A7-D445-494F-B759-001F08329703", "name": "Sample Material", "creationDate": "2019-12-12 11:58:39.507", "reOrderPoint": "10.0", "canOrderPoint": "50.0", "currentQuantity": "100", "currentValue": "244.20", "expectedQuantity": "string", "pickQuantity": "10", "putQuantity": "5", "netQuantity": "95.0", "unitOfMeasure": "lbs.", "materialPropertyId": "73B4D986-CECE-4823-B0A3-7B870E5994CD", "weightPerUnit": "3.0", "valuePerUnit": "5.0", "isBlocked": "integer", "blockReason": "string", "Info1": "string", "Info2": "string", "Info3": "string", "Info4": "string", "Info5": "string", "[DynamicField]": "string", }] }] }

Create Material

post /api/materials

Create a material and get a response.

Body Parameters

  • name string REQUIRED

    The name of the material.

  • materialPropertyId uuid

    The ID of the material property assigned to this material. If this and materialProperty are both blank, the first material property found will be the default.

  • materialProperty string

    The name of the material property assigned to this material. If this and materialPropertyId are both blank, the first material property found will be the default.

  • clientId uuid

    The ID of the client that will be the owner of this material. If this and client are both blank, the first client found will be the default.

  • client string

    The name of the client that will be the owner of this material. If this and clientId are both blank, the first client found will be the default.

  • reOrderPoint float

    The minimum level of the material.

  • canOrderPoint float

    An alternate minimum or maximum level of the material.

  • unitOfMeasure string

    What measurement is used.

  • weightPerUnit float

    How much each material weighs at the unit level.

  • valuePerUnit float

    How much the material is worth at the unit level.

  • isBlocked integer

    Whether the material is inactive.

  • blockReason string

    Why the material is inactive.

  • Info1 string

  • Info2 string

  • Info3 string

  • Info4 string

  • Info5 string

  • family string

    The name of a group this material belongs to.

  • [DynamicField] string

    Any material dynamic field that is in PowerPick.

Request with curl
curl "http://[Your IP]/api/materials" \ -X post \ -H "Content-Type: application/json" \-H "Authorization: Bearer [Your JWT Access Token]" \ -d '{ "name": "string", }'
Example Response
{ "material": { "id": "F38A05A7-D445-494F-B759-001F08329703", "name": "Sample Material", "creationDate": "2019-12-12 11:58:39.507", "reOrderPoint": "10.0", "canOrderPoint": "50.0", "currentQuantity": "100", "currentValue": "244.20", "expectedQuantity": "string", "pickQuantity": "10", "putQuantity": "5", "netQuantity": "95.0", "unitOfMeasure": "lbs.", "materialPropertyId": "73B4D986-CECE-4823-B0A3-7B870E5994CD", "weightPerUnit": "3.0", "valuePerUnit": "5.0", "isBlocked": "integer", "blockReason": "string", "Info1": "string", "Info2": "string", "Info3": "string", "Info4": "string", "Info5": "string", "[DynamicField]": "string", } }

Show Material

get /api/materials/[id]

Get a specific material from the PPG database and return a JSON response. The order will be pulled from the Material table.

Arguments

  • Info1 String

  • Info2 String

  • Info3 String

  • Info4 String

  • Info5 String

  • canOrderPoint Integer

    An alternate minimum or maximum level of the material.

  • creationDate DateTime

    The date when material was created.

  • currentQuantity Decimal

  • currentValue Integer

  • expectedQuantity Decimal

  • id uuid

  • materialProperty String

    The name of the material property assigned to this material. If this and materialPropertyId are both blank, the first material property found will be the default.

  • name String

    The name of the material.

  • netQuantity Decimal

  • pickQuantity Decimal

  • pullQuantity Decimal

  • reOrderPoint Integer

    The minimum level of the material.

  • unitOfMeasure String

    What measurement is used.

  • valuePerUnit Integer

    How much the material is worth at the unit level.

  • weightPerUnit Integer

    How much each material weighs at the unit level.

Request with curl
curl "http://[Your IP]/api/materials/[id]" \ -X get \-H "Content-Type: application/json" \ -H "Authorization: Bearer [Your JWT Access Token]"
Example Response
{ "material": { "id": F38A05A7-D445-494F-B759-001F08329703, "name": "Sample Material", "creationDate": 2019-12-12 11:58:39.507, "reOrderPoint": 10.0, "canOrderPoint": 50.0, "currentQuantity": 100, "currentValue": 244.20, "expectedQuantity": "string", "pickQuantity": 10, "putQuantity": 5, "netQuantity": 95.0, "unitOfMeasure": "lbs.", "materialPropertyId": 73B4D986-CECE-4823-B0A3-7B870E5994CD, "weightPerUnit": 3.0, "valuePerUnit": 5.0, "isBlocked": integer, "blockReason": "string", "Info1": "string", "Info2": "string", "Info3": "string", "Info4": "string", "Info5": "string", "[DynamicField]": "string", } }

Update Material

put /api/materials/[id]

Update a material and get a response. Each key/value is optional. Only keys sent will be updated, but an object is required to be sent.

Arguments

  • name string

    The name of the material.

  • reOrderPoint integer

    The minimum level of the material.

  • canOrderPoint integer

    The max level of the material.

  • unitOfMeasure string

    What measurement is used.

  • weightPerUnit integer

    How much each material weighs.

  • valuePerUnit integer

    How much each individual material is worth.

  • isBlocked integer

    Whether the material is inactive.

Request with curl
curl "http://[Your IP]/api/materials/[id]" \ -X put \-H "Content-Type: application/json" \-H "Authorization: Bearer [Your JWT Access Token]"
Example Response
{ "material": { "id": "F38A05A7-D445-494F-B759-001F08329703", "name": "Sample Material", "creationDate": "2019-12-12 11:58:39.507", "reOrderPoint": "10.0", "canOrderPoint": "50.0", "currentQuantity": "100", "currentValue": "244.20", "expectedQuantity": "string", "pickQuantity": "10", "putQuantity": "5", "netQuantity": "95.0", "unitOfMeasure": "lbs.", "materialPropertyId": "73B4D986-CECE-4823-B0A3-7B870E5994CD", "weightPerUnit": "3.0", "valuePerUnit": "5.0", "isBlocked": "integer", "blockReason": "string", "Info1": "string", "Info2": "string", "Info3": "string", "Info4": "string", "Info5": "string", "[DynamicField]": "string", } }

Delete Material

get /api/materials/[id]/delete

Delete a specific material from the PPG database and return a JSON response.

Arguments

Request with curl
curl "http://[Your IP] /api/materials/[id]/delete" \ -X get \-H "Content-Type: application/json" \-H "Authorization: Bearer [Your JWT Access Token]"
Example Response
{"deleted": "true" }