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

# Raise a work request

> Raise a request against an asset, or against nothing in particular.

The asset is optional because somebody reporting a smell in a corridor should not have to identify
the asset first.

Who should take it and who else should be told may be answered here and are both optional. The
first is a suggestion rather than an assignment — a request is not work anybody is holding — and
the job it becomes starts there unless whoever triages it decides otherwise. The second is carried
onto that job, so somebody copied on the report stays copied on the repair.



## OpenAPI

````yaml /api-reference/integration.json post /rpc/create_work_request
openapi: 3.0.0
info:
  description: >-
    The calls an integration needs first. Every endpoint the application uses is
    in the complete reference.
  title: Asset Infinity integration API
  version: 12.2.3
servers:
  - url: https://app.assetinfinity.ai/api
security: []
tags:
  - description: >-
      Exchange an API key, or an email and password, for a short-lived session
      token, and send it as `Authorization: Bearer <token>` on every other call.
    name: Signing in
  - description: >-
      Where assets are and work happens. A location belongs to a site and may
      sit inside another location.
    name: Sites and locations
  - description: >-
      The asset register: read it, add to it, correct it, move an asset between
      sites and locations, and change its status.
    name: Assets
  - description: >-
      Report a problem. A request is triaged by a person, who turns it into a
      work order or turns it down.
    name: Work requests
  - description: >-
      Raise a job, give it to somebody, move it through the organisation's
      statuses, complete it and close it.
    name: Work orders
  - description: >-
      Send readings in. A meter reading brings the meter forward and raises any
      maintenance the usage has made due. A sensor reading can open or clear an
      alert.
    name: Meters and sensors
  - description: >-
      The part catalogue and what is on the shelf in each store, and the three
      movements an outside system most often records: a delivery in, an issue
      out and a correction.
    name: Parts and stock
  - description: >-
      Have the product call your system when something happens, instead of
      asking it on a timer.
    name: Webhooks
  - description: >-
      The calls behind every register that has no call of its own, answers to
      the organisation's own fields, and the two calls that answer what to send.
      `list_options` returns the ids a field accepts. `describe_call` returns
      the fields any call takes.
    name: Any record
externalDocs:
  description: PostgREST Documentation
  url: https://postgrest.org/en/v12/references/api.html
paths:
  /rpc/create_work_request:
    post:
      tags:
        - Work requests
      summary: Raise a work request
      description: >-
        Raise a request against an asset, or against nothing in particular.


        The asset is optional because somebody reporting a smell in a corridor
        should not have to identify

        the asset first.


        Who should take it and who else should be told may be answered here and
        are both optional. The

        first is a suggestion rather than an assignment — a request is not work
        anybody is holding — and

        the job it becomes starts there unless whoever triages it decides
        otherwise. The second is carried

        onto that job, so somebody copied on the report stays copied on the
        repair.
      parameters:
        - $ref: '#/components/parameters/preferParams'
      requestBody:
        content:
          application/json:
            schema:
              description: >-
                Raise a request against an asset, or against nothing in
                particular.


                The asset is optional because somebody reporting a smell in a
                corridor should not have to identify

                the asset first.


                Who should take it and who else should be told may be answered
                here and are both optional. The

                first is a suggestion rather than an assignment — a request is
                not work anybody is holding — and

                the job it becomes starts there unless whoever triages it
                decides otherwise. The second is carried

                onto that job, so somebody copied on the report stays copied on
                the repair.
              properties:
                p_asset_id:
                  format: uuid
                  type: string
                p_assign_team_id:
                  format: uuid
                  type: string
                p_assign_vendor_id:
                  format: uuid
                  type: string
                p_assign_worker_id:
                  format: uuid
                  type: string
                p_cc_user_ids:
                  format: uuid[]
                  items:
                    type: string
                  type: array
                p_client_operation_id:
                  format: uuid
                  type: string
                p_description:
                  format: text
                  type: string
                p_device_id:
                  format: uuid
                  type: string
                p_location_id:
                  format: uuid
                  type: string
                p_severity:
                  format: text
                  type: string
                p_site_id:
                  format: uuid
                  type: string
                p_source_code:
                  format: text
                  type: string
                p_summary:
                  format: text
                  type: string
                p_work_request_category_id:
                  format: uuid
                  type: string
              required:
                - p_summary
              type: object
          application/vnd.pgrst.object+json:
            schema:
              description: >-
                Raise a request against an asset, or against nothing in
                particular.


                The asset is optional because somebody reporting a smell in a
                corridor should not have to identify

                the asset first.


                Who should take it and who else should be told may be answered
                here and are both optional. The

                first is a suggestion rather than an assignment — a request is
                not work anybody is holding — and

                the job it becomes starts there unless whoever triages it
                decides otherwise. The second is carried

                onto that job, so somebody copied on the report stays copied on
                the repair.
              properties:
                p_asset_id:
                  format: uuid
                  type: string
                p_assign_team_id:
                  format: uuid
                  type: string
                p_assign_vendor_id:
                  format: uuid
                  type: string
                p_assign_worker_id:
                  format: uuid
                  type: string
                p_cc_user_ids:
                  format: uuid[]
                  items:
                    type: string
                  type: array
                p_client_operation_id:
                  format: uuid
                  type: string
                p_description:
                  format: text
                  type: string
                p_device_id:
                  format: uuid
                  type: string
                p_location_id:
                  format: uuid
                  type: string
                p_severity:
                  format: text
                  type: string
                p_site_id:
                  format: uuid
                  type: string
                p_source_code:
                  format: text
                  type: string
                p_summary:
                  format: text
                  type: string
                p_work_request_category_id:
                  format: uuid
                  type: string
              required:
                - p_summary
              type: object
          application/vnd.pgrst.object+json;nulls=stripped:
            schema:
              description: >-
                Raise a request against an asset, or against nothing in
                particular.


                The asset is optional because somebody reporting a smell in a
                corridor should not have to identify

                the asset first.


                Who should take it and who else should be told may be answered
                here and are both optional. The

                first is a suggestion rather than an assignment — a request is
                not work anybody is holding — and

                the job it becomes starts there unless whoever triages it
                decides otherwise. The second is carried

                onto that job, so somebody copied on the report stays copied on
                the repair.
              properties:
                p_asset_id:
                  format: uuid
                  type: string
                p_assign_team_id:
                  format: uuid
                  type: string
                p_assign_vendor_id:
                  format: uuid
                  type: string
                p_assign_worker_id:
                  format: uuid
                  type: string
                p_cc_user_ids:
                  format: uuid[]
                  items:
                    type: string
                  type: array
                p_client_operation_id:
                  format: uuid
                  type: string
                p_description:
                  format: text
                  type: string
                p_device_id:
                  format: uuid
                  type: string
                p_location_id:
                  format: uuid
                  type: string
                p_severity:
                  format: text
                  type: string
                p_site_id:
                  format: uuid
                  type: string
                p_source_code:
                  format: text
                  type: string
                p_summary:
                  format: text
                  type: string
                p_work_request_category_id:
                  format: uuid
                  type: string
              required:
                - p_summary
              type: object
          text/csv:
            schema:
              description: >-
                Raise a request against an asset, or against nothing in
                particular.


                The asset is optional because somebody reporting a smell in a
                corridor should not have to identify

                the asset first.


                Who should take it and who else should be told may be answered
                here and are both optional. The

                first is a suggestion rather than an assignment — a request is
                not work anybody is holding — and

                the job it becomes starts there unless whoever triages it
                decides otherwise. The second is carried

                onto that job, so somebody copied on the report stays copied on
                the repair.
              properties:
                p_asset_id:
                  format: uuid
                  type: string
                p_assign_team_id:
                  format: uuid
                  type: string
                p_assign_vendor_id:
                  format: uuid
                  type: string
                p_assign_worker_id:
                  format: uuid
                  type: string
                p_cc_user_ids:
                  format: uuid[]
                  items:
                    type: string
                  type: array
                p_client_operation_id:
                  format: uuid
                  type: string
                p_description:
                  format: text
                  type: string
                p_device_id:
                  format: uuid
                  type: string
                p_location_id:
                  format: uuid
                  type: string
                p_severity:
                  format: text
                  type: string
                p_site_id:
                  format: uuid
                  type: string
                p_source_code:
                  format: text
                  type: string
                p_summary:
                  format: text
                  type: string
                p_work_request_category_id:
                  format: uuid
                  type: string
              required:
                - p_summary
              type: object
        required: true
      responses:
        '200':
          description: OK
components:
  parameters:
    preferParams:
      description: Preference
      in: header
      name: Prefer
      required: false
      schema:
        enum:
          - params=single-object
        type: string

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.