> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tangoanalytics.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Retrieve Standard Statement

> Retrieves a Generic statement from the system.

*Response Body Structure*

| Path | Type | Description |
| --- | --- | --- |
| `uuid` | `UUID` | EnergyWatch universally unique identifier |
| `statementId` | `Integer` | EnergyWatch statement identifier |
| `accountId` | `Integer` | EnergyWatch account identifier |
| `clientId` | `Integer` | EnergyWatch client node identifier |
| `accountCode` | `String` | EnergyWatch account number |
| `commodity` | `Enum` | Available values : CHILLEDWATER, ELECTRIC, NATURALGAS, STEAM, WATERSEWER |
| `glCode` | `String` | EnergyWatch GL mapping identifier |
| `chargeAmount` | `Number` | Charge amount for statement |
| `status` | `Enum` | Available values : ERROR, NEW, PROCESSED, RETRIEVED, SYSTEM_UPDATED, UPDATED |
| `statusMessage` | `String` | Status message |
| `pdfUrl` | `String` | EnergyWatch Control Code identifier for PDFs |
| `property` | `String` | Property name for statement |
| `vendor` | `String` | Supply vendor |
| `serviceAddress` | `String` | Service address for property |
| `city` | `String` | City name for property |
| `state` | `String` | 2-letter state abbreviation |
| `zipCode` | `String` | Zip code / postal code |
| `currency` | `String` | Currency code |
| `startDate` | `Date (MM/dd/yyyy)` | Start date for statement |
| `endDate` | `Date (MM/dd/yyyy)` | End date for statement |
| `month` | `Integer` | Month for statement |
| `year` | `Integer` | Year for statement |
| `dueDate` | `Date (MM/dd/yyyy)` | The due date |
| `newCharges` | `Number` | New charges for statement |
| `totalAmountDue` | `Number` | The invoice total due |
| `glSettings` | `Json Object` | Open-ended GL mappings |
| `lines` | `Generic Line Item Model` | The statement's line items |



## OpenAPI

````yaml /tango_watchwire/integrations/guides/watchwire-api.yaml get /statement/standard/{statementId}
openapi: 3.1.0
info:
  title: WatchWire API
  version: 1.0.0
  description: >-
    The WatchWire Platform has APIs that allow you to access your data
    programmatically. There are several APIs designed for the modules in the
    WatchWire platform including - Invoice Data, Real-Time, Accounts Payable,
    and Measurement & Verification. All are highly scalable, and secure APIs
    that communicate over HTTPS RESTful protocols with JSON based documents.


    > **Note**: Not all WatchWire modules are available as an API.


    # Authentication


    You need credentials to access the APIs - it is the same credentials as your
    WatchWire login. The `/authenticate` will return a Token that needs to be
    included in the header of every subsequent request. The token renews with
    each request and expires after 60 minutes of inactivity (at which point you
    will need to re-authenticate and get a new token).


    > Please contact the WatchWire team for any questions or request for API
    credential access.


    # Error Codes


    There will be various error codes specific to the API you are using, but
    generally follows these principles:


    *   `Unauthorized` - *you are unauthenticated or unauthorized to request
    actions on an asset*

    *   `Asset doesn't exist` - *the item you are querying for doesn't exist*

    *   `Server error`\- *general exception raised in our application code*
        

    # Rate limit


    Rate limited to 10 transactions per meter / second
servers:
  - url: https://auth.replace-me.example.com
    description: Authentication service (Postman variable {{ww-api-baseurl}})
  - url: https://realtime.replace-me.example.com
    description: RealTime API (Postman variable {{gateway-realtime-api}})
  - url: https://ap.replace-me.example.com
    description: Accounts Payable API (Postman variable {{gateway-ap-api}})
  - url: https://invoice.replace-me.example.com
    description: Invoice API (Postman variable {{portal-api-baseurl}})
  - url: https://mv.replace-me.example.com
    description: Measurement & Verification API (Postman variable {{invoice-api}})
security:
  - BearerAuth: []
tags:
  - name: Authentication
  - name: RealTime API - Custom Meter
  - name: RealTime API - Meter Readings
  - name: RealTime API - Meter Readings Aggregations
  - name: RealTime API - Meter Readings Batch Operations
  - name: RealTime API - Obvius Meter Readings
  - name: Accounts Payable API - Audit Statements
  - name: Accounts Payable API - Nexus Statements
  - name: Accounts Payable API - Standard Statements
  - name: Accounts Payable API - Statement PDFs
  - name: Invoice API - Reference IDs
  - name: Invoice API - Invoice
  - name: Measurement & Verification API - M&V
paths:
  /statement/standard/{statementId}:
    get:
      tags:
        - Accounts Payable API - Standard Statements
      summary: Retrieve Standard Statement
      description: >-
        Retrieves a Generic statement from the system.


        *Response Body Structure*


        | Path | Type | Description |

        | --- | --- | --- |

        | `uuid` | `UUID` | EnergyWatch universally unique identifier |

        | `statementId` | `Integer` | EnergyWatch statement identifier |

        | `accountId` | `Integer` | EnergyWatch account identifier |

        | `clientId` | `Integer` | EnergyWatch client node identifier |

        | `accountCode` | `String` | EnergyWatch account number |

        | `commodity` | `Enum` | Available values : CHILLEDWATER, ELECTRIC,
        NATURALGAS, STEAM, WATERSEWER |

        | `glCode` | `String` | EnergyWatch GL mapping identifier |

        | `chargeAmount` | `Number` | Charge amount for statement |

        | `status` | `Enum` | Available values : ERROR, NEW, PROCESSED,
        RETRIEVED, SYSTEM_UPDATED, UPDATED |

        | `statusMessage` | `String` | Status message |

        | `pdfUrl` | `String` | EnergyWatch Control Code identifier for PDFs |

        | `property` | `String` | Property name for statement |

        | `vendor` | `String` | Supply vendor |

        | `serviceAddress` | `String` | Service address for property |

        | `city` | `String` | City name for property |

        | `state` | `String` | 2-letter state abbreviation |

        | `zipCode` | `String` | Zip code / postal code |

        | `currency` | `String` | Currency code |

        | `startDate` | `Date (MM/dd/yyyy)` | Start date for statement |

        | `endDate` | `Date (MM/dd/yyyy)` | End date for statement |

        | `month` | `Integer` | Month for statement |

        | `year` | `Integer` | Year for statement |

        | `dueDate` | `Date (MM/dd/yyyy)` | The due date |

        | `newCharges` | `Number` | New charges for statement |

        | `totalAmountDue` | `Number` | The invoice total due |

        | `glSettings` | `Json Object` | Open-ended GL mappings |

        | `lines` | `Generic Line Item Model` | The statement's line items |
      operationId: retrieveStandardStatement
      parameters:
        - name: statementId
          in: path
          required: true
          schema:
            type: integer
          description: EnergyWatch statement identifier.
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  uuid:
                    type: string
                  statementId:
                    type: integer
                  accountId:
                    type: integer
                  clientId:
                    type: integer
                  accountCode:
                    type: string
                  commodity:
                    type: string
                  glCode:
                    type: string
                  chargeAmount:
                    type: integer
                  status:
                    type: string
                  statusMessage:
                    type: string
                  pdfUrl:
                    type: string
                  property:
                    type: string
                  vendor:
                    type: string
                  serviceAddress:
                    type: string
                  city:
                    type: string
                  state:
                    type: string
                  zipCode:
                    type: string
                  currency:
                    type: string
                  startDate:
                    type: string
                  endDate:
                    type: string
                  month:
                    type: integer
                  year:
                    type: integer
                  dueDate:
                    type: string
                  newCharges:
                    type: integer
                  totalAmountDue:
                    type: integer
                  glSettings:
                    type: object
                    properties: {}
                  lines:
                    type: array
                    items:
                      type: object
                      properties:
                        lineItemUuid:
                          type: string
                        statementUuid:
                          type: string
                        statementId:
                          type: integer
                        chargeName:
                          type: string
                        chargeAmount:
                          type: integer
                        chargeClassification:
                          type: string
              example:
                uuid: 1d4e2181-eb9d-4229-88fa-6c332387336c
                statementId: 0
                accountId: 0
                clientId: 0
                accountCode: string
                commodity: CHILLEDWATER
                glCode: string
                chargeAmount: 0
                status: ERROR
                statusMessage: string
                pdfUrl: string
                property: string
                vendor: string
                serviceAddress: string
                city: string
                state: string
                zipCode: string
                currency: string
                startDate: 01/01/2021
                endDate: 01/01/2021
                month: 0
                year: 0
                dueDate: 01/01/2021
                newCharges: 0
                totalAmountDue: 0
                glSettings: {}
                lines:
                  - lineItemUuid: f364a5b9-0981-4434-badf-e750880effab
                    statementUuid: 1d4e2181-eb9d-4229-88fa-6c332387336c
                    statementId: 0
                    chargeName: string
                    chargeAmount: 0
                    chargeClassification: string
        '401':
          description: Unauthorized - missing, invalid or expired token
      security:
        - BearerAuth: []
      servers:
        - url: https://ap.replace-me.example.com
          description: Accounts Payable API (Postman variable {{gateway-ap-api}})
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Token returned by `POST /authenticate`. Expires after 60 minutes of
        inactivity.

````