WooCommerce Order Notes API

Manage private and customer-facing notes on orders

Operations 4

GET /orders/{order_id}/notes WooCommerce List All Order Notes #
POST /orders/{order_id}/notes WooCommerce Create an Order Note #
GET /orders/{order_id}/notes/{id} WooCommerce Retrieve an Order Note #
DELETE /orders/{order_id}/notes/{id} WooCommerce Delete an Order Note #

Documentation

Specifications

Schemas & Data

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/woocommerce-order-notes-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

woocommerce-order-notes-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: WooCommerce REST Cart Order Notes API
  description: The WooCommerce REST API is the primary server-side interface for reading and writing WooCommerce store data programmatically. It follows REST conventions, uses JSON for all requests and responses, and is fully integrated with the WordPress REST API under the /wp-json/wc/v3/ namespace. The API covers products, product variations, product categories, product attributes, orders, order notes, order refunds, customers, coupons, tax rates, shipping zones, payment gateways, settings, webhooks, reports, and system status. Authentication uses Consumer Key and Consumer Secret pairs generated in the WooCommerce admin, transmitted over HTTPS via HTTP Basic Auth or OAuth 1.0a over plain HTTP.
  version: v3
  contact:
    name: WooCommerce Developer Support
    url: https://developer.woocommerce.com/docs/apis/rest-api/
  termsOfService: https://woocommerce.com/terms-conditions/
servers:
- url: https://example.com/wp-json/wc/v3
  description: Production Server (replace example.com with your store domain)
security:
- basicAuth: []
tags:
- name: Order Notes
  description: Manage private and customer-facing notes on orders
paths:
  /orders/{order_id}/notes:
    get:
      operationId: listOrderNotes
      summary: WooCommerce List All Order Notes
      description: Returns all notes associated with a specific order. Notes can be customer-facing or private (internal) and are ordered by date created.
      tags:
      - Order Notes
      parameters:
      - $ref: '#/components/parameters/order_id'
      - name: type
        in: query
        description: 'Limit results to a note type. Options: any, customer, internal.'
        required: false
        schema:
          type: string
          enum:
          - any
          - customer
          - internal
        example: any
      responses:
        '200':
          description: List of order notes
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/OrderNote'
              examples:
                listOrderNotes200Example:
                  summary: Default listOrderNotes 200 response
                  x-microcks-default: true
                  value:
                  - id: 1
                    date_created: '2026-05-03T14:30:00Z'
                    note: string-value
                    customer_note: true
                    added_by_user: true
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: createOrderNote
      summary: WooCommerce Create an Order Note
      description: Adds a new note to an order. Notes can be marked as customer-facing, causing them to appear in order confirmation emails and the customer's order history.
      tags:
      - Order Notes
      parameters:
      - $ref: '#/components/parameters/order_id'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OrderNoteInput'
      responses:
        '201':
          description: Order note created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderNote'
              examples:
                createOrderNote201Example:
                  summary: Default createOrderNote 201 response
                  x-microcks-default: true
                  value:
                    id: 1
                    date_created: '2026-05-03T14:30:00Z'
                    note: string-value
                    customer_note: true
                    added_by_user: true
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /orders/{order_id}/notes/{id}:
    get:
      operationId: getOrderNote
      summary: WooCommerce Retrieve an Order Note
      description: Returns a single note for a specific order by note ID.
      tags:
      - Order Notes
      parameters:
      - $ref: '#/components/parameters/order_id'
      - $ref: '#/components/parameters/id'
      responses:
        '200':
          description: Order note details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderNote'
              examples:
                getOrderNote200Example:
                  summary: Default getOrderNote 200 response
                  x-microcks-default: true
                  value:
                    id: 1
                    date_created: '2026-05-03T14:30:00Z'
                    note: string-value
                    customer_note: true
                    added_by_user: true
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: deleteOrderNote
      summary: WooCommerce Delete an Order Note
      description: Permanently deletes a specific note from an order.
      tags:
      - Order Notes
      parameters:
      - $ref: '#/components/parameters/order_id'
      - $ref: '#/components/parameters/id'
      - $ref: '#/components/parameters/force'
      responses:
        '200':
          description: Order note deleted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrderNote'
              examples:
                deleteOrderNote200Example:
                  summary: Default deleteOrderNote 200 response
                  x-microcks-default: true
                  value:
                    id: 1
                    date_created: '2026-05-03T14:30:00Z'
                    note: string-value
                    customer_note: true
                    added_by_user: true
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  responses:
    BadRequest:
      description: The request body contains invalid or missing parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication credentials are missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  parameters:
    force:
      name: force
      in: query
      description: Set to true to permanently delete the resource, bypassing the trash.
      required: false
      schema:
        type: boolean
        default: false
    id:
      name: id
      in: path
      description: Unique identifier for the resource.
      required: true
      schema:
        type: integer
    order_id:
      name: order_id
      in: path
      description: Unique identifier of the parent order.
      required: true
      schema:
        type: integer
  schemas:
    OrderNoteInput:
      type: object
      description: Input for creating an order note.
      required:
      - note
      properties:
        note:
          type: string
          description: Note content.
          example: string-value
        customer_note:
          type: boolean
          description: Whether to display this note to the customer.
          default: false
          example: true
        added_by_user:
          type: boolean
          description: Whether to mark note as added by a user.
          default: false
          example: true
    OrderNote:
      type: object
      description: A note attached to an order.
      properties:
        id:
          type: integer
          description: Note unique identifier.
          example: 1
        date_created:
          type: string
          format: date-time
          description: Date the note was created.
          example: '2026-05-03T14:30:00Z'
        note:
          type: string
          description: Note text content.
          example: string-value
        customer_note:
          type: boolean
          description: Whether this note is visible to the customer.
          example: true
        added_by_user:
          type: boolean
          description: Whether the note was added by a store user (vs system).
          example: true
    Error:
      type: object
      properties:
        code:
          type: string
          description: Machine-readable error code.
          example: string-value
        message:
          type: string
          description: Human-readable error message.
          example: string-value
        data:
          type: object
          description: Additional error context including HTTP status code.
          properties:
            status:
              type: integer
              description: HTTP status code associated with the error.
          example:
            status: 1
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Auth using the WooCommerce Consumer Key as the username and Consumer Secret as the password over HTTPS. Over plain HTTP use OAuth 1.0a one-legged authentication instead.
externalDocs:
  description: WooCommerce REST API Documentation
  url: https://woocommerce.github.io/woocommerce-rest-api-docs/