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 string

  • name string

    The name of the material.

  • status string

    If the material has been updated or created successfully.

  • createdAt datetime

    When this material was created.

  • reOrderPoint integer

    The minimum level of the material.

  • canOrderPoint integer

    An alternate minimum or maximum 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.

  • 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", "status": "pending", "createdAt": "2019-12-12 11:58:39.507", "reOrderPoint": "10", "canOrderPoint": "50", "unitOfMeasure": "lbs.", "weightPerUnit": "3", "valuePerUnit": "5", "isBlocked": "integer", "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.

  • materialProperty string REQUIRED

    The property assigned to this material.

  • supplementLink string

    The link to the image for this material.

  • reOrderPoint integer

    The minimum level of the material.

  • canOrderPoint integer

    An alternate minimum or maximum level of the material.

  • unitOfMeasure string

    What measurement is used.

  • weightPerUnit integer

    How much each material weighs at the unit level.

  • valuePerUnit integer

    How much the material is worth at the unit level.

  • isBlocked integer

    Whether 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 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", "materialProperty": "string", }'
Example Response
{ "material": { "id": "F38A05A7-D445-494F-B759-001F08329703", "name": "Sample Material", "status": "pending", "createdAt": "2019-12-12 11:58:39.507", "reOrderPoint": "10", "canOrderPoint": "50", "unitOfMeasure": "lbs.", "weightPerUnit": "3", "valuePerUnit": "5", "isBlocked": "integer", "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

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", "status": "pending", "createdAt": 2019-12-12 11:58:39.507, "reOrderPoint": 10, "canOrderPoint": 50, "unitOfMeasure": "lbs.", "weightPerUnit": 3, "valuePerUnit": 5, "isBlocked": integer, "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", "status": "pending", "createdAt": "2019-12-12 11:58:39.507", "reOrderPoint": "10", "canOrderPoint": "50", "unitOfMeasure": "lbs.", "weightPerUnit": "3", "valuePerUnit": "5", "isBlocked": "integer", "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" }