Xerox Providers API

Provider management operations

OpenAPI Specification

xerox-providers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Xerox Public Print EULA Providers API
  description: REST API for managing print jobs through the Xerox Public Print Service. Provides endpoints for job creation, status monitoring, site discovery, provider management, EULA handling, and print history management. All secure calls require xrxauth, user-email, and appid headers. If user-email is omitted the request is treated as an application request.
  version: 5.5.0
  contact:
    name: Xerox Developer Program
    url: https://www.xerox.com/en-us/about/developer-program
    email: xerox.global.developer.program@xerox.com
  termsOfService: https://www.xerox.com/en-us/about/legal
servers:
- url: https://publicprintapi.services.xerox.com/api/v1
  description: Xerox Public Print API Production Server
security:
- xrxauth: []
tags:
- name: Providers
  description: Provider management operations
paths:
  /Provider:
    put:
      operationId: createProvider
      summary: Create Provider
      description: Creates a new print provider.
      tags:
      - Providers
      security:
      - xrxauth: []
        appId: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Provider'
      responses:
        '201':
          description: Provider created successfully
        '400':
          description: Bad request
    post:
      operationId: updateProvider
      summary: Update Provider
      description: Updates an existing print provider.
      tags:
      - Providers
      security:
      - xrxauth: []
        appId: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Provider'
      responses:
        '200':
          description: Provider updated successfully
    get:
      operationId: getProvider
      summary: Get Provider
      description: Retrieves details of a specific print provider.
      tags:
      - Providers
      security:
      - xrxauth: []
        appId: []
      parameters:
      - name: id
        in: query
        required: true
        description: The unique identifier of the provider
        schema:
          type: string
      responses:
        '200':
          description: Provider details retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Provider'
        '404':
          description: Provider not found
  /Provider/Delete:
    delete:
      operationId: deleteProvider
      summary: Delete Provider
      description: Deletes a specific print provider.
      tags:
      - Providers
      security:
      - xrxauth: []
        appId: []
      parameters:
      - name: id
        in: query
        required: true
        description: The unique identifier of the provider to delete
        schema:
          type: string
      responses:
        '204':
          description: Provider deleted
        '404':
          description: Provider not found
  /Provider/Search:
    get:
      operationId: searchProviders
      summary: Search Providers
      description: Searches for providers with optional filtering.
      tags:
      - Providers
      security:
      - xrxauth: []
        appId: []
      parameters:
      - name: name
        in: query
        required: false
        description: Provider name to search for
        schema:
          type: string
      - name: $skip
        in: query
        required: false
        schema:
          type: integer
      - name: $take
        in: query
        required: false
        schema:
          type: integer
      responses:
        '200':
          description: Matching providers retrieved
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProviderListResponse'
components:
  schemas:
    ProviderListResponse:
      type: object
      description: Paginated list of providers
      properties:
        total:
          type: integer
        items:
          type: array
          items:
            $ref: '#/components/schemas/Provider'
    Provider:
      type: object
      description: A print provider
      properties:
        id:
          type: string
          description: Unique identifier
        name:
          type: string
          description: Provider name
        typeId:
          type: string
          description: Provider type ID
        contactEmail:
          type: string
          description: Contact email for the provider
        websiteUrl:
          type: string
          description: Provider website URL
  securitySchemes:
    xrxauth:
      type: apiKey
      in: header
      name: xrxauth
      description: Xerox authentication credentials
    userEmail:
      type: apiKey
      in: header
      name: user-email
      description: User email address for user-context requests
    appId:
      type: apiKey
      in: header
      name: appid
      description: Application identifier
externalDocs:
  description: Xerox Public Print API Documentation
  url: https://publicprintapi.services.xerox.com/