Ordoro Goods Receipt API

Goods Receipts are used for receiving items on a Purchase Order. You may have multiple Goods Receipts per Purchase Order and can have multiple lines and quantities of products related to the Purchase Order.

OpenAPI Specification

ordoro-goods-receipt-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Ordoro API Documentation Address Goods Receipt API
  description: "# Introduction\n\nThe Ordoro API can be used to access data or integrate to add functionality to Ordoro. The Ordoro API uses the application/json Content-Type. The Ordoro API documentation is in beta. [See our forum](https://forums.ordoro.com) for questions or comments to help us improve the docs or request features.\n#### Note: Any routes with a /v3 designation will not allow for trailing slashes while all other routes and endpoints will require a trailing slash.\n\n# Authentication\n\nThe Ordoro API uses [Basic HTTP Authentication](http://en.wikipedia.org/wiki/Basic_access_authentication). Please create API keys via Settings->Account Settings->API Keys in app and use those for basic auth in your API requests.\n\n# Additional Resources\n\nFor a look at some code examples on how to use the API check out our github repo https://github.com/ordoro/api-examples.\n\n# API Responses\n\nMost of our endpoints return either a list of objects or a single object instance. They share similar response shapes.\n\n## List endpoints\n\nList endpoints respond with the following parameters:\n\n| Name           | Type                     | Description |\n|----------------|--------------------------|-------------|\n| `count`        | int                      | The total number of objects returned by a query ( **not** necessarily the number of objects included in a response). |\n| `limit`        | int                      | The maximum number of objects returned per request. Defaults to 10. Maximum is 100. You can set this as a URL parameter. |\n| `offset`       | int                      | The number of objects being offset in the response. May be altered as a URL Parameter. |\n| `<model name>` | array | An array of objects. The name of the model should be singular. For example, the /v3/order endpoint will have an `order` parameter, as opposed to `orders`.|\n\nHere is an example response for the `/v3/order` list endpoint.\n\n```\n{\n    \"count\": 2,\n    \"limit\": 10,\n    \"offset\" 0,\n    \"order\": [\n        {\n            // an order object\n        },\n        {\n            // another order object\n        }\n    ]\n}\n```\n\n## Instance endpoints\n\nInstance endpoints return a single instance of a serialized model. `/v3/order/{order_number}` is an example of an instance endpoint.\n\n# Error Handling\n\nError responses contain the following parameters:\n\n| Name            | Type             | Description                                                          |\n|-----------------|------------------|----------------------------------------------------------------------|\n| `error_message` | string           | Some human-readable error message.                                   |\n| `param`         | string or `null` | The name of the corresponding parameter, or null for general errors. |\n\n# Rate Limiting\n\nAPI requests will be limited to 500 requests per minute. Any requests over this threshold will respond with a 429 status code."
  contact: {}
  version: '1.0'
servers:
- url: https://api.ordoro.com/
  variables: {}
tags:
- name: Goods Receipt
  description: Goods Receipts are used for receiving items on a Purchase Order. You may have multiple Goods Receipts per Purchase Order and can have multiple lines and quantities of products related to the Purchase Order.
paths:
  /goods_receipt/:
    get:
      tags:
      - Goods Receipt
      summary: Get a list of Goods Receipts
      description: ''
      operationId: GoodsReceipt_GET
      parameters:
      - $ref: '#/components/parameters/offsetParam'
      - $ref: '#/components/parameters/limitParam'
      - $ref: '#/components/parameters/searchParam'
      - name: sort
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      - name: status
        in: query
        description: ''
        style: form
        explode: true
        schema:
          $ref: '#/components/schemas/status'
      - name: start_date
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      - name: end_date
        in: query
        description: ''
        style: form
        explode: true
        schema:
          type: string
      responses:
        '200':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/goods_receipt_list'
      deprecated: false
    post:
      tags:
      - Goods Receipt
      summary: Create a Goods Receipt
      description: ''
      operationId: GoodsReceipt_POST
      parameters: []
      responses:
        '201':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/goods_receipt'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/post_goods_receipt'
      deprecated: false
  /goods_receipt/{goods_receipt_id}/:
    delete:
      tags:
      - Goods Receipt
      summary: Delete a Goods Receipt by ID
      description: ''
      operationId: GoodsReceiptByGoodsReceiptId_DELETE
      parameters:
      - $ref: '#/components/parameters/goodsReceiptIDPath'
      responses:
        '200':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/goods_receipt'
      deprecated: false
    get:
      tags:
      - Goods Receipt
      summary: Get a Goods Receipt by ID
      description: ''
      operationId: GoodsReceiptByGoodsReceiptId_GET
      parameters:
      - $ref: '#/components/parameters/goodsReceiptIDPath'
      responses:
        '200':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/goods_receipt'
      deprecated: false
    put:
      tags:
      - Goods Receipt
      summary: Update a Goods Receipt by ID
      description: ''
      operationId: GoodsReceiptByGoodsReceiptId_PUT
      parameters:
      - $ref: '#/components/parameters/goodsReceiptIDPath'
      responses:
        '200':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/goods_receipt'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/put_goods_receipt'
      deprecated: false
  /goods_receipt/{goods_receipt_id}/comment/:
    post:
      tags:
      - Goods Receipt
      summary: Create a Goods Receipt Comment by ID
      description: ''
      operationId: GoodsReceiptCommentByGoodsReceiptId_POST
      parameters:
      - $ref: '#/components/parameters/goodsReceiptIDPath'
      responses:
        '200':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/comment'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/post_comment'
      deprecated: false
    get:
      summary: Retrieve Comments
      operationId: GoodsReceiptCommentByGoodsReceiptId_GET
      description: ''
      tags:
      - Goods Receipt
      parameters:
      - $ref: '#/components/parameters/goodsReceiptIDPath'
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
                limit: 10
                offset: 0
                count: 1
                comment:
                - user: user@ordoro.com
                  date: '2026-03-05T21:10:26.911724+00:00'
                  text: This is a very important comment
              schema:
                $ref: '#/components/schemas/comment'
  /goods_receipt/{goods_receipt_id}/line/{goods_receipt_item_id}/:
    put:
      tags:
      - Goods Receipt
      summary: Update a Goods Receipt Line by Goods Receipt ID and Line ID
      description: ''
      operationId: GoodsReceiptLineByGoodsReceiptId_PUT
      parameters:
      - $ref: '#/components/parameters/goodsReceiptIDPath'
      - name: goods_receipt_item_id
        in: path
        description: ''
        required: true
        style: simple
        schema:
          type: string
      responses:
        '200':
          description: ''
          headers: {}
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/goods_receipt'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/put_goods_receipt_item'
      deprecated: false
components:
  parameters:
    goodsReceiptIDPath:
      name: goods_receipt_id
      in: path
      description: ''
      required: true
      style: simple
      schema:
        type: string
    searchParam:
      name: search
      in: query
      description: ''
      schema:
        type: string
    limitParam:
      in: query
      name: limit
      required: false
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 10
    offsetParam:
      in: query
      name: offset
      required: false
      description: ''
      schema:
        type: integer
        default: 0
        minimum: 0
  schemas:
    put_goods_receipt_item:
      title: Put Goods Receipt Item Schema
      type: object
      additionalProperties: false
      properties:
        quantity:
          type: number
      required:
      - quantity
    put_goods_receipt:
      title: Put Goods Receipt Schema
      type: object
      additionalProperties: false
      properties:
        goods_receipt_id:
          type: string
        received_lines:
          type: array
          items:
            $ref: '#/components/schemas/goods_receipt_item'
    goods_receipt_list:
      type: object
      properties:
        limit:
          type: integer
        offset:
          type: integer
        count:
          type: integer
        goods_receipt:
          type: array
          items:
            $ref: '#/components/schemas/goods_receipt'
      required:
      - limit
      - offset
      - count
      - goods_receipt
    post_comment:
      title: Create a Comment Schema
      type: object
      additionalProperties: false
      properties:
        comment:
          type: string
      required:
      - comment
    status:
      title: status
      enum:
      - deleted
      - new
      - partial
      - received
      - all
      type: string
    post_goods_receipt:
      title: Post Goods Receipt Schema
      type: object
      additionalProperties: false
      properties:
        po_id:
          type: string
        goods_receipt_id:
          type: string
        received_lines:
          type: array
          items:
            $ref: '#/components/schemas/goods_receipt_item'
      required:
      - po_id
      - received_lines
    v3_tag:
      title: V3 Tag Schema
      type: object
      properties:
        id:
          type: integer
        name:
          type: string
        color:
          type: string
      required:
      - id
      - name
      - color
    goods_receipt:
      title: Goods Receipt Schema
      type: object
      additionalProperties: false
      properties:
        status:
          type: string
        po_id:
          type: string
        po_status:
          type: string
        goods_receipt_id:
          type: string
        created:
          type: string
          format: date-time
        updated:
          type: string
          format: date-time
        received:
          type: string
          format: date-time
        _link:
          type: string
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: integer
              po_item_id:
                type: string
              quantity:
                type: integer
              _link:
                type: string
              product:
                $ref: '#/components/schemas/product_base'
        comments:
          type: array
          items:
            $ref: '#/components/schemas/comment'
    goods_receipt_item:
      title: Goods Receipt Item Schema
      type: object
      additionalProperties: false
      properties:
        po_item_id:
          type: integer
        quantity:
          type: number
      required:
      - po_item_id
      - quantity
    comment:
      title: Comment Schema
      type: object
      additionalProperties: false
      properties:
        user:
          type: string
        date:
          type: string
          format: date-time
        text:
          type: string
    product_base:
      title: Product Schema
      type: object
      additionalProperties: false
      properties:
        type:
          type: string
          example: Tangible
        cost:
          type: number
          example: 4.95
        id:
          type: integer
          example: 19551105
        company_id:
          type: integer
          example: 1985
        name:
          type: string
          example: Flux Capacitor
        sku:
          type: string
          example: outa-time
        taxable:
          type: string
        weight:
          type: number
          example: 1.21
        length:
          type: integer
          example: 12
        width:
          type: integer
          example: 4
        height:
          type: integer
          example: 8
        price:
          type: number
          example: 19.55
        customer_text:
          anyOf:
          - type: string
          - type: 'null'
        internal_notes:
          example: Be sure to include the complimentary almanac
          anyOf:
          - type: string
          - type: 'null'
        total_on_hand:
          type: number
        category:
          type: string
          example: misc-timetravel
        is_kit_parent:
          type: boolean
          example: false
        archive_date:
          format: date-time
          anyOf:
          - type: string
          - type: 'null'
        hs_code:
          anyOf:
          - type: string
          - type: 'null'
        country_of_origin:
          example: US
          anyOf:
          - type: string
          - type: 'null'
        customs_description:
          anyOf:
          - type: string
          - type: 'null'
        created:
          type: string
          format: date-time
          example: '2015-10-26T15:44:17.993588-06:00'
        updated:
          type: string
          format: date-time
          example: '2020-01-01T17:54:05.158248-06:00'
        upc:
          example: '847509005811'
          anyOf:
          - type: string
          - type: 'null'
        asin:
          example: B07WXJHZ1L
          anyOf:
          - type: string
          - type: 'null'
        image_url:
          anyOf:
          - type: string
          - type: 'null'
        default_image_id:
          anyOf:
          - type: string
          - type: 'null'
        _link:
          anyOf:
          - type: string
          - type: 'null'
        tags:
          type: array
          items:
            $ref: '#/components/schemas/v3_tag'
        total_committed:
          type: number
        total_available:
          type: number
        total_allocated:
          type: number
        total_unallocated:
          type: number
        po_total_committed:
          type: number
        fulfillment_type:
          enum:
          - in_house
          - dropshippable
          - automatically_dropshipped
          anyOf:
          - type: string
          - type: 'null'