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

# Approve order



## OpenAPI

````yaml /openapi.json put /v1/orders/{id}/approval/
openapi: 3.0.3
info:
  title: Velocity for BigCommerce Zapier API
  version: 0.0.1
servers:
  - url: https://{tenant}.api.velocity.medshift.com/integrations/zapier
    variables:
      tenant:
        default: your-subdomain
        description: Your tenant's subdomain.
security: []
paths:
  /v1/orders/{id}/approval/:
    put:
      tags:
        - Orders
      summary: Approve order
      operationId: v1_orders_approval_update
      parameters:
        - in: path
          name: id
          schema:
            type: string
          required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Order'
          description: ''
      security:
        - ZapierAuthentication: []
components:
  schemas:
    Order:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        bigcommerce_id:
          type: integer
          readOnly: true
        created_at:
          type: string
          format: date-time
          readOnly: true
        is_external:
          type: boolean
          readOnly: true
        is_archived:
          type: boolean
          readOnly: true
        archived_at:
          type: string
          format: date-time
          readOnly: true
        customer:
          allOf:
            - $ref: '#/components/schemas/ThinCustomer'
          readOnly: true
        created_by:
          allOf:
            - $ref: '#/components/schemas/User'
          readOnly: true
        bigcommerce_status:
          type: string
          readOnly: true
        bigcommerce_status_id:
          $ref: '#/components/schemas/BigcommerceStatusIdEnum'
        is_approved:
          type: boolean
          readOnly: true
        approved_at:
          type: string
          format: date-time
          readOnly: true
        approved_by:
          allOf:
            - $ref: '#/components/schemas/User'
          readOnly: true
        subtotal_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The total cost of line items before discounts or tax.
        shipping_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          default: '0.00'
          description: The cost of shipping before tax.
        handling_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          default: '0.00'
          description: The cost of handling before tax.
        tax_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The total amount of tax.
        discount_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          default: '0.00'
          description: The total amount of discounts.
        total_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The total cost of the order, less store credit.
        store_credit:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The amount of store credit applied.
        payment:
          allOf:
            - $ref: '#/components/schemas/OrderPayment'
          readOnly: true
        coupons:
          type: array
          items:
            $ref: '#/components/schemas/Coupon'
          readOnly: true
        is_digital:
          type: boolean
          readOnly: true
          description: If the order contains no physical (shippable) products.
        line_items:
          type: array
          items:
            $ref: '#/components/schemas/OrderLineItem'
          readOnly: true
        billing_address:
          $ref: '#/components/schemas/OrderAddress'
        shipping_address:
          allOf:
            - $ref: '#/components/schemas/ShippingAddress'
          readOnly: true
          nullable: true
        shipping_method:
          type: string
          readOnly: true
          nullable: true
          maxLength: 250
        customer_notes:
          type: string
          maxLength: 65535
        staff_notes:
          type: string
          maxLength: 65535
        custom_fields:
          type: array
          items:
            $ref: '#/components/schemas/OrderCustomField'
        subscription:
          allOf:
            - $ref: '#/components/schemas/Subscription'
          readOnly: true
      required:
        - approved_at
        - approved_by
        - archived_at
        - bigcommerce_id
        - bigcommerce_status
        - billing_address
        - coupons
        - created_at
        - created_by
        - customer
        - discount_price
        - handling_price
        - id
        - is_approved
        - is_archived
        - is_digital
        - is_external
        - line_items
        - payment
        - shipping_address
        - shipping_method
        - shipping_price
        - store_credit
        - subscription
        - subtotal_price
        - tax_price
        - total_price
    ThinCustomer:
      type: object
      properties:
        id:
          type: string
          format: uuid
        bigcommerce_id:
          type: integer
        first_name:
          type: string
          minLength: 1
        last_name:
          type: string
          minLength: 1
        company_name:
          type: string
        email:
          type: string
          format: email
          minLength: 1
        phone:
          type: string
      required:
        - bigcommerce_id
        - company_name
        - email
        - first_name
        - id
        - last_name
        - phone
    User:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
          minLength: 1
        email:
          type: string
          format: email
          minLength: 1
        picture:
          type: string
          format: uri
          minLength: 1
      required:
        - email
        - id
        - name
        - picture
    BigcommerceStatusIdEnum:
      enum:
        - 0
        - 1
        - 2
        - 3
        - 4
        - 5
        - 6
        - 7
        - 8
        - 9
        - 10
        - 11
        - 12
        - 13
        - 14
      type: integer
      description: |-
        * `0` - Incomplete
        * `1` - Pending
        * `2` - Shipped
        * `3` - Partially Shipped
        * `4` - Refunded
        * `5` - Cancelled
        * `6` - Declined
        * `7` - Awaiting Payment
        * `8` - Awaiting Pickup
        * `9` - Awaiting Shipment
        * `10` - Completed
        * `11` - Awaiting Fulfillment
        * `12` - Manual Verification Required
        * `13` - Disputed
        * `14` - Partially Refunded
    OrderPayment:
      type: object
      properties:
        type:
          $ref: '#/components/schemas/OrderPaymentTypeEnum'
        online:
          allOf:
            - $ref: '#/components/schemas/OnlinePayment'
          nullable: true
        terms:
          allOf:
            - $ref: '#/components/schemas/TermsPayment'
          nullable: true
      required:
        - online
        - terms
        - type
    Coupon:
      type: object
      properties:
        bigcommerce_coupon_id:
          type: integer
        code:
          type: string
          minLength: 1
        discount_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
      required:
        - bigcommerce_coupon_id
        - code
        - discount_price
    OrderLineItem:
      type: object
      properties:
        id:
          type: string
          format: uuid
          readOnly: true
        bigcommerce_id:
          type: integer
          readOnly: true
        name:
          type: string
          readOnly: true
        sku:
          type: string
          readOnly: true
        type:
          type: string
          readOnly: true
          description: Either "physical" or "digital".
        quantity:
          type: integer
          maximum: 1000000
          minimum: 1
          readOnly: true
          description: Number of units ordered.
        unit_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The per-unit cost before discounts or tax.
        total_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: For historical reasons, this field is an alias for `unit_price`.
          deprecated: true
        tax_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The per-unit amount of tax before discounts.
        subtotal_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The total cost of this line before discounts or tax.
        total_tax_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The total amount of tax applied to this line.
        discount_price:
          type: string
          format: decimal
          pattern: ^-?\d{0,18}(?:\.\d{0,2})?$
          readOnly: true
          description: The total discount amount applied to this line.
        options:
          type: array
          items:
            $ref: '#/components/schemas/Option'
          readOnly: true
      required:
        - bigcommerce_id
        - discount_price
        - id
        - name
        - options
        - quantity
        - sku
        - subtotal_price
        - tax_price
        - total_price
        - total_tax_price
        - type
        - unit_price
    OrderAddress:
      type: object
      properties:
        first_name:
          type: string
          minLength: 1
          maxLength: 255
        last_name:
          type: string
          minLength: 1
          maxLength: 255
        company:
          type: string
          default: ''
          maxLength: 255
        phone:
          type: string
          default: ''
          maxLength: 255
        street_1:
          type: string
          minLength: 1
          maxLength: 100
        street_2:
          type: string
          default: ''
          maxLength: 100
        city:
          type: string
          minLength: 1
          maxLength: 100
        state_province:
          type: string
          default: ''
          description: >-
            The full state/province name ("North Carolina"). Required for some
            countries.
          maxLength: 255
        postal_code:
          type: string
          default: ''
          description: Postal/ZIP code. Required for some countries.
          maxLength: 30
        country_iso2:
          type: string
          minLength: 2
          description: ISO 3166-1 alpha-2 country code ("US").
          maxLength: 2
      required:
        - city
        - country_iso2
        - first_name
        - last_name
        - street_1
    ShippingAddress:
      type: object
      properties:
        first_name:
          type: string
          minLength: 1
          maxLength: 255
        last_name:
          type: string
          minLength: 1
          maxLength: 255
        company:
          type: string
          default: ''
          maxLength: 255
        phone:
          type: string
          default: ''
          maxLength: 255
        street_1:
          type: string
          minLength: 1
          maxLength: 100
        street_2:
          type: string
          default: ''
          maxLength: 100
        city:
          type: string
          minLength: 1
          maxLength: 100
        state_province:
          type: string
          default: ''
          description: >-
            The full state/province name ("North Carolina"). Required for some
            countries.
          maxLength: 255
        postal_code:
          type: string
          default: ''
          description: Postal/ZIP code. Required for some countries.
          maxLength: 30
        country_iso2:
          type: string
          minLength: 2
          description: ISO 3166-1 alpha-2 country code ("US").
          maxLength: 2
      required:
        - city
        - country_iso2
        - first_name
        - last_name
        - street_1
    OrderCustomField:
      type: object
      properties:
        id:
          type: string
          format: uuid
        name:
          type: string
          readOnly: true
        value:
          nullable: true
      required:
        - id
        - name
        - value
    Subscription:
      type: object
      properties:
        id:
          type: string
          format: uuid
      required:
        - id
    OrderPaymentTypeEnum:
      enum:
        - online
        - offline
        - terms
      type: string
      description: |-
        * `online` - online
        * `offline` - offline
        * `terms` - terms
    OnlinePayment:
      type: object
      properties:
        stripe_payment_intent_id:
          type: string
          minLength: 1
      required:
        - stripe_payment_intent_id
    TermsPayment:
      type: object
      properties:
        due_date:
          type: string
          format: date
        is_capital:
          type: boolean
        outstanding_balance:
          type: string
          format: decimal
      required:
        - due_date
        - is_capital
        - outstanding_balance
    Option:
      type: object
      properties:
        display_name:
          type: string
          minLength: 1
        display_value:
          type: string
          minLength: 1
      required:
        - display_name
        - display_value
  securitySchemes:
    ZapierAuthentication:
      type: apiKey
      in: header
      name: X-API-Key

````