Whiplash Shipnotices API

Incoming inventory shipments — list, create, bulk operations, count, retrieve, update, destroy, items, and meta fields

OpenAPI Specification

whiplash-shipnotices-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Whiplash (Rydership) Bundle Items Shipnotices API
  description: The Whiplash REST API (now RyderShip API under Ryder System) enables developers to manage orders, items, inventory, shipments, consumer returns, customers, notification subscriptions, and documents programmatically. The API uses OAuth 2.0 Bearer token authentication and supports both authorization code and client credentials flows. The V2 API is open by invite only.
  version: '2.0'
  contact:
    name: Rydership Development Team
    email: tech@whiplash.com
    url: https://www.getwhiplash.com
  x-logo:
    url: https://wl-s3-assets.s3.amazonaws.com/rydership/RyderShip-horizontal-safe-padding.svg
servers:
- url: https://api.getwhiplash.com
  description: Whiplash Production API
security:
- bearerAuth: []
tags:
- name: Shipnotices
  description: Incoming inventory shipments — list, create, bulk operations, count, retrieve, update, destroy, items, and meta fields
paths:
  /v2/shipnotices:
    get:
      operationId: listShipnotices
      summary: List shipnotices
      description: Returns a paginated list of advance shipment notices (ASNs).
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/PageParam'
      - $ref: '#/components/parameters/LimitParam'
      responses:
        '200':
          description: Shipnotices list
        '401':
          $ref: '#/components/responses/Unauthorized'
    post:
      operationId: createShipnotice
      summary: Create a shipnotice
      tags:
      - Shipnotices
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '201':
          description: Shipnotice created
        '401':
          $ref: '#/components/responses/Unauthorized'
        '422':
          $ref: '#/components/responses/UnprocessableEntity'
  /v2/shipnotices/bulk:
    post:
      operationId: bulkCreateShipnotices
      summary: Bulk create shipnotices
      tags:
      - Shipnotices
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                type: object
      responses:
        '201':
          description: Shipnotices created
        '401':
          $ref: '#/components/responses/Unauthorized'
  /v2/shipnotices/count:
    get:
      operationId: countShipnotices
      summary: Count shipnotices
      tags:
      - Shipnotices
      responses:
        '200':
          description: Count response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CountResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /v2/shipnotices/actions:
    get:
      operationId: listShipnoticeActions
      summary: List available shipnotice actions
      tags:
      - Shipnotices
      responses:
        '200':
          description: Available actions
        '401':
          $ref: '#/components/responses/Unauthorized'
  /v2/shipnotices/{id}:
    get:
      operationId: getShipnotice
      summary: Retrieve a shipnotice
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/IdParam'
      responses:
        '200':
          description: Shipnotice details
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    put:
      operationId: updateShipnotice
      summary: Update a shipnotice
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/IdParam'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
      responses:
        '200':
          description: Shipnotice updated
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
    delete:
      operationId: deleteShipnotice
      summary: Delete a shipnotice
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/IdParam'
      responses:
        '204':
          description: Shipnotice deleted
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
  /v2/shipnotices/{id}/shipnotice_items:
    get:
      operationId: listShipnoticeItems
      summary: List items in a shipnotice
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/IdParam'
      responses:
        '200':
          description: Shipnotice items
        '401':
          $ref: '#/components/responses/Unauthorized'
  /v2/shipnotices/{id}/shipnotice_items/count:
    get:
      operationId: countShipnoticeItems
      summary: Count items in a shipnotice
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/IdParam'
      responses:
        '200':
          description: Shipnotice item count
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CountResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /v2/shipnotices/{id}/meta_fields:
    get:
      operationId: listShipnoticeMetaFields
      summary: List meta fields for a shipnotice
      tags:
      - Shipnotices
      parameters:
      - $ref: '#/components/parameters/IdParam'
      responses:
        '200':
          description: Meta fields
        '401':
          $ref: '#/components/responses/Unauthorized'
components:
  parameters:
    IdParam:
      name: id
      in: path
      required: true
      schema:
        type: string
      description: Unique identifier of the resource
    LimitParam:
      name: limit
      in: query
      required: false
      schema:
        type: integer
        minimum: 1
        maximum: 500
      description: Number of results per page
    PageParam:
      name: page
      in: query
      required: false
      schema:
        type: integer
        minimum: 1
        default: 1
      description: Page number for pagination
  schemas:
    ErrorResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: string
    CountResponse:
      type: object
      properties:
        count:
          type: integer
          description: Total number of matching resources
  responses:
    NotFound:
      description: Resource not found
    UnprocessableEntity:
      description: Validation error — the request body contains invalid data
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized:
      description: Unauthorized — invalid or missing Bearer token
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: OAuth2
      description: OAuth 2.0 Bearer token. Obtain via authorization code or client credentials flow. See https://help.whiplash.com/hc/en-us/articles/360050870691-Authentication-for-the-V2-API
externalDocs:
  description: Whiplash API Developer Documentation
  url: https://help.whiplash.com/hc/en-us/categories/13378954544411-Whiplash-Application-Developers