US AbilityOne Commission Products API

AbilityOne Procurement List products identified by NSN

OpenAPI Specification

us-abilityone-commission-products-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: AbilityOne Procurement List Agencies Products API
  description: The AbilityOne Procurement List Information Management System (PLIMS) provides search access to the AbilityOne Procurement List — the catalog of products and services that federal agencies are mandated to procure from nonprofit agencies that employ people who are blind or have significant disabilities, under the Javits-Wagner-O'Day (JWOD) Act. This spec represents the conceptual API surface for the PLIMS system at plims.abilityone.gov.
  version: 1.0.0
  contact:
    name: US AbilityOne Commission
    url: https://www.abilityone.gov
    email: info@abilityone.gov
  x-generated-from: documentation
servers:
- url: https://plims.abilityone.gov
  description: AbilityOne PLIMS (Procurement List Information Management System)
security: []
tags:
- name: Products
  description: AbilityOne Procurement List products identified by NSN
paths:
  /api/products:
    get:
      operationId: searchProducts
      summary: AbilityOne Search Procurement List Products
      description: Search the AbilityOne Procurement List for products by National Stock Number (NSN), description, agency, or nonprofit affiliate. Returns products that federal agencies are mandated to procure through the AbilityOne program.
      tags:
      - Products
      parameters:
      - name: nsn
        in: query
        description: National Stock Number (format xxxx-xx-xxx-xxxx)
        schema:
          type: string
          pattern: ^\d{4}-\d{2}-\d{3}-\d{4}$
        example: 7510-01-234-5678
      - name: description
        in: query
        description: Product description keyword search (supports wildcards)
        schema:
          type: string
        example: ballpoint pen
      - name: nonprofit
        in: query
        description: Filter by nonprofit affiliate (NIB or SourceAmerica)
        schema:
          type: string
          enum:
          - NIB
          - SourceAmerica
        example: NIB
      - name: agency
        in: query
        description: Filter by performing nonprofit agency name
        schema:
          type: string
        example: Lighthouse for the Blind
      - name: limit
        in: query
        description: Maximum number of results to return
        schema:
          type: integer
          default: 25
          maximum: 100
        example: 25
      - name: offset
        in: query
        description: Pagination offset
        schema:
          type: integer
          default: 0
        example: 0
      responses:
        '200':
          description: Procurement list product search results
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductSearchResponse'
              examples:
                searchProducts200Example:
                  summary: Default searchProducts 200 response
                  x-microcks-default: true
                  value:
                    total: 48
                    offset: 0
                    limit: 25
                    products:
                    - nsn: 7510-01-234-5678
                      description: PEN, BALLPOINT
                      nonprofitAffiliate: NIB
                      performingAgency: Lighthouse for the Blind - St. Louis
                      unitOfMeasure: DZ
                      approvalDate: '2005-03-15'
                      status: active
        '400':
          description: Invalid search parameters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /api/products/{nsn}:
    get:
      operationId: getProduct
      summary: AbilityOne Get Product by NSN
      description: Retrieve detailed information for a specific AbilityOne Procurement List product by its National Stock Number (NSN).
      tags:
      - Products
      parameters:
      - name: nsn
        in: path
        required: true
        description: National Stock Number (format xxxx-xx-xxx-xxxx)
        schema:
          type: string
        example: 7510-01-234-5678
      responses:
        '200':
          description: Product details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
              examples:
                getProduct200Example:
                  summary: Default getProduct 200 response
                  x-microcks-default: true
                  value:
                    nsn: 7510-01-234-5678
                    description: PEN, BALLPOINT
                    longDescription: Ballpoint pen, retractable, medium point, black ink
                    nonprofitAffiliate: NIB
                    performingAgency: Lighthouse for the Blind - St. Louis
                    unitOfMeasure: DZ
                    approvalDate: '2005-03-15'
                    status: active
                    federalSupplyClass: '7510'
                    productGroupName: Office Supplies
        '404':
          description: Product not found on Procurement List
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    APIError:
      type: object
      description: API error response
      properties:
        error:
          type: string
          description: Error code
          example: not_found
        message:
          type: string
          description: Human-readable error message
          example: NSN not found on Procurement List.
        code:
          type: integer
          description: HTTP status code
          example: 404
    Product:
      type: object
      description: An AbilityOne Procurement List product identified by National Stock Number
      properties:
        nsn:
          type: string
          description: National Stock Number (primary identifier)
          example: 7510-01-234-5678
        description:
          type: string
          description: Short product description
          example: PEN, BALLPOINT
        longDescription:
          type: string
          description: Detailed product description
          example: Ballpoint pen, retractable, medium point, black ink
        nonprofitAffiliate:
          type: string
          description: Central nonprofit agency affiliate (NIB or SourceAmerica)
          enum:
          - NIB
          - SourceAmerica
          example: NIB
        performingAgency:
          type: string
          description: Name of the nonprofit agency producing the product
          example: Lighthouse for the Blind - St. Louis
        unitOfMeasure:
          type: string
          description: Unit of measure for ordering
          example: DZ
        unitPrice:
          type: number
          description: Unit price in USD
          example: 4.85
        approvalDate:
          type: string
          format: date
          description: Date product was added to the Procurement List
          example: '2005-03-15'
        status:
          type: string
          description: Product status on the Procurement List
          enum:
          - active
          - deleted
          example: active
        federalSupplyClass:
          type: string
          description: Federal Supply Class (FSC) code
          example: '7510'
        productGroupName:
          type: string
          description: Product group or category name
          example: Office Supplies
    ProductSearchResponse:
      type: object
      description: Paginated search results for Procurement List products
      properties:
        total:
          type: integer
          description: Total matching products
          example: 48
        offset:
          type: integer
          description: Pagination offset
          example: 0
        limit:
          type: integer
          description: Page size
          example: 25
        products:
          type: array
          description: List of matching products
          items:
            $ref: '#/components/schemas/Product'
externalDocs:
  description: AbilityOne Procurement List
  url: https://www.abilityone.gov/procurement_list/