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

# Add a note to an asset

> Adds a note to an asset you have permission to access. Send `AssetID` and `Context` in a JSON body.

The success body is `{"Code":200,"Message":"Success"}`. It does not return a note identifier or the stored entry. There is no idempotency key, and every successful request creates a separate note, so do not automatically retry a request whose result is uncertain.

Adding a note generates an event named `User comment`, and configured email notifications for that event may be sent. Notes can be added regardless of the asset's status.



## OpenAPI

````yaml /openapi/openapi.json post /Assets/UserComment
openapi: 3.1.0
info:
  title: Aiyoti Integration API Basic
  description: Create, retrieve, update, and manage the tracking lifecycle of assets.
  version: 0.0.1
servers:
  - url: https://api.aiyoticloud.com
security: []
tags:
  - name: Users
    description: Log in and refresh credentials.
  - name: Carriers
    description: Look up the carriers available to an account.
  - name: Labels
    description: Look up the labels available for new assets.
  - name: Assets / Shipments
    description: Create, list, retrieve, edit, annotate, and delete assets.
paths:
  /Assets/UserComment:
    post:
      tags:
        - Assets / Shipments
      summary: Add a note to an asset
      description: >-
        Adds a note to an asset you have permission to access. Send `AssetID`
        and `Context` in a JSON body.


        The success body is `{"Code":200,"Message":"Success"}`. It does not
        return a note identifier or the stored entry. There is no idempotency
        key, and every successful request creates a separate note, so do not
        automatically retry a request whose result is uncertain.


        Adding a note generates an event named `User comment`, and configured
        email notifications for that event may be sent. Notes can be added
        regardless of the asset's status.
      operationId: user_comment_Assets_UserComment_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UserComment'
            examples:
              comment:
                summary: Add a note
                value:
                  AssetID: '00000000000000000000000000000003'
                  Context: Shipment handoff confirmed.
      responses:
        '200':
          description: Successful response. The body does not contain a note identifier.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MutationResult'
              example:
                Code: 200
                Message: Success
        '400':
          description: >-
            Request rejected, for example for an invalid or expired AccessKey,
            an unknown asset, or an asset you do not have permission to access.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ApiError'
              example:
                Code: 400
                Message: Asset not found.
        '422':
          description: Request validation failed. Check required fields and value types.
      security:
        - accessKey: []
components:
  schemas:
    UserComment:
      properties:
        AssetID:
          type: string
          description: Unique identifier of the asset to add the note to.
        Context:
          type: string
          description: Text of the note.
      type: object
      required:
        - AssetID
        - Context
    MutationResult:
      type: object
      properties:
        Code:
          type: integer
          description: >-
            Application code in the response body. Separate from the HTTP
            status.
        Message:
          type: string
          description: Result message.
      description: Response body for successful asset changes.
    ApiError:
      type: object
      properties:
        Code:
          type: integer
          description: Application error code.
        Message:
          type: string
          description: Error message.
      description: Request error.
  securitySchemes:
    accessKey:
      type: apiKey
      in: header
      name: AccessKey
      description: >-
        Send the `access` token returned by Login. Both `access` and `refresh`
        tokens are accepted; reserve `refresh` for credential renewal.

````

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