Equipment Details

Resource description

All endpoints adhere to the JSON API specification.

Attributes

Name

Description

Required?

Type

Notes

equipmentAction

Action performed on equipment

True

string

Accepted values are:
- Restoration
- Repair
- Replace
- Work Detail

notes

Any notes about this Equipment related to the Outage

True

string

POST empty string for blank value.

numberOfOperations

Number of times this Equipment worked properly

False

integer

operatedProperly

Mark whether the equipment worked properly or not

False

boolean

restorationNotes

Notes for equipment used during restoration

False

string

Only valid for equipmentAction == "Restoration"
Valid choices include:
- Automatic Substation Transfer
- Automatic Circuit Sectionalizing
- Manual Circuit Sectionalizing
- Left Disconnected
- Reenergized at Station
- Repaired Defective Equipment
- Replaced Defective Equipment
- Replaced Fuse
- Reset Transformer Breaker
- Installed Temporary

Relationships

Name

Description

Required?

Type

Notes

equipment

Equipment for this Equipment Detail

True

Foreign Key

outage

Outage for this Equipment Detail

True

Foreign Key

List Equipment Details

A user must have at least “member” authorization to list Equipment Details for their Utility.

GET https://reliability.api.publicpower.org/v1/equipment-details/

Example request:

GET /v1/equipment-details/ HTTP/1.1
Host: reliability.api.publicpower.org
Content-Type: application/vnd.api+json
Authorization: Bearer myaccesstoken
Request Headers
Query Parameters
  • page (int) – Page Number of results to request.

  • page_size (int) – Number of results to return per-page.

  • filter[outage] (int) – Only return results for a given Outage ID.

Example response:

HTTP/1.1 200 OK
Content-Type: application/vnd.api+json

{
  "links": {
    "first": "https://reliability.api.publicpower.dev/v1/equipment-details/?page=1",
    "last": "https://reliability.api.publicpower.dev/v1/equipment-details/?page=1",
    "next": null,
    "prev": null
  },
  "data": [
    {
      "type": "EquipmentDetail",
      "id": "1069554",
      "attributes": {
        "equipmentAction": "Work Detail",
        "notes": "Tree Work.",
        "numberOfOperations": null,
        "operatedProperly": false,
        "restorationNotes": ""
      },
      "relationships": {
        "equipment": {
          "data": {
            "type": "Equipment",
            "id": "38016"
          }
        },
        "outage": {
          "data": {
            "type": "Outage",
            "id": "1246349"
          }
        }
      }
    }
  ],
  "meta": {
    "pagination": {
      "page": 1,
      "pages": 1,
      "count": 1
    }
  }
}
Status Codes
  • 200 OK – Successful response

  • 401 Unauthorized – You did not provide a valid Authorization: Bearer token.

  • 403 Forbidden – Your user role is not authorized to access this endpoint.

Create an Equipment Detail

A user must have “member” authorization to create Equipment Details for an Outage.

POST https://reliability.api.publicpower.org/v1/equipment-details/

Example request:

POST /v1/equipment-details/ HTTP/1.1
Host: reliability.api.publicpower.org
Content-Type: application/vnd.api+json
Authorization: Bearer myaccesstoken

{
  "data": {
    "type": "EquipmentDetail",
    "attributes": {
      "equipmentAction": "Restoration",
      "restorationNotes": "Left Disconnected",
      "notes": "Critical replacement"
    },
    "relationships": {
      "outage": {
        "data": {
          "type": "Outage",
          "id": "1246349"
        }
      },
      "equipment": {
        "data": {
          "type": "Equipment",
          "id": "41659"
        }
      }
    }
  }
}
Request Headers

Example response:

HTTP/1.1 201 Created
Vary: Accept
Content-Type: application/vnd.api+json

{
  "data": {
    "type": "EquipmentDetail",
    "id": "1070755",
    "attributes": {
      "equipmentAction": "Restoration",
      "notes": "Critical replacement",
      "numberOfOperations": null,
      "operatedProperly": false,
      "restorationNotes": "Left Disconnected"
    },
    "relationships": {
      "equipment": {
        "data": {
          "type": "Equipment",
          "id": "41659"
        }
      },
      "outage": {
        "data": {
          "type": "Outage",
          "id": "1246349"
        }
      }
    }
  }
}
Status Codes

Retrieve an Equipment Detail

A user must have at least “member” authorization to retrieve Equipment Details for their Utility.

GET https://reliability.api.publicpower.org/v1/equipment-details/(int: equipment_detail_id)/

Example request:

GET /v1/equipment-details/1070755/ HTTP/1.1
Host: reliability.api.publicpower.org
Content-Type: application/vnd.api+json
Authorization: Bearer myaccesstoken
Request Headers

Example response:

HTTP/1.1 200 OK
Content-Type: application/vnd.api+json

{
  "data": {
    "type": "EquipmentDetail",
    "id": "1070755",
    "attributes": {
      "equipmentAction": "Restoration",
      "notes": "Critical replacement",
      "numberOfOperations": null,
      "operatedProperly": false,
      "restorationNotes": "Left Disconnected"
    },
    "relationships": {
      "equipment": {
        "data": {
          "type": "Equipment",
          "id": "41659"
        }
      },
      "outage": {
        "data": {
          "type": "Outage",
          "id": "1246349"
        }
      }
    }
  }
}
Status Codes
  • 200 OK – Successful response

  • 401 Unauthorized – You did not provide a valid Authorization: Bearer token.

  • 403 Forbidden – Your user role is not authorized to access this endpoint.

Update an Equipment Detail

A user must have “member” authorization to update Equipment Details for their Utility.

PATCH https://reliability.api.publicpower.org/v1/equipment-details/(int: equipment_detail_id)/

Example request:

PATCH /v1/equipment-details/1070755/ HTTP/1.1
Host: reliability.api.publicpower.org
Content-Type: application/vnd.api+json
Authorization: Bearer myaccesstoken


{
  "data": {
    "id": "1070755",
    "type": "EquipmentDetail",
    "attributes": {
      "notes": "Updating notes"
    }
  }
}
Request Headers

Example response:

HTTP/1.1 200 OK
Content-Type: application/vnd.api+json

{
  "data": {
    "type": "EquipmentDetail",
    "id": "1070755",
    "attributes": {
      "equipmentAction": "Restoration",
      "notes": "Updating notes",
      "numberOfOperations": null,
      "operatedProperly": false,
      "restorationNotes": "Left Disconnected"
    },
    "relationships": {
      "equipment": {
        "data": {
          "type": "Equipment",
          "id": "41659"
        }
      },
      "outage": {
        "data": {
          "type": "Outage",
          "id": "1246349"
        }
      }
    }
  }
}
Status Codes
  • 200 OK – EquipmentDetail updated

  • 401 Unauthorized – You did not provide a valid Authorization: Bearer token.

  • 403 Forbidden – Your user role is not authorized to access this endpoint.

Delete an Equipment Detail

A user must have “member” authorization to delete Equipment Details for their Utility.

DELETE https://reliability.api.publicpower.org/v1/equipment-details/(int: equipment_detail_id)/

Example request:

DELETE /v1/equipment-details/1070755/ HTTP/1.1
Host: reliability.api.publicpower.org
Content-Type: application/vnd.api+json
Authorization: Bearer myaccesstoken
Request Headers

Example response:

HTTP/1.1 204 No Content
Content-Type: application/vnd.api+json
Status Codes