Xerox EULA API

End-user license agreement management

OpenAPI Specification

xerox-eula-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Xerox Public Print EULA 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: EULA
  description: End-user license agreement management
paths:
  /EULA:
    get:
      operationId: getEULA
      summary: Get Provider EULA
      description: Retrieves the end-user license agreement for a specific provider.
      tags:
      - EULA
      security:
      - xrxauth: []
        appId: []
      parameters:
      - name: providerId
        in: query
        required: true
        description: The unique identifier of the provider
        schema:
          type: string
      responses:
        '200':
          description: EULA retrieved successfully
          headers:
            Agree-Uri:
              description: URI for the user to agree to the EULA
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EULA'
        '404':
          description: Provider not found
    post:
      operationId: createOrUpdateEULA
      summary: Create or Update Provider EULA
      description: Creates or updates the end-user license agreement for a provider.
      tags:
      - EULA
      security:
      - xrxauth: []
        appId: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EULA'
      responses:
        '200':
          description: EULA created or updated successfully
        '400':
          description: Bad request
  /EULA/Agree:
    put:
      operationId: agreeToEULA
      summary: Agree To EULA
      description: Records user agreement to a provider's end-user license agreement.
      tags:
      - EULA
      security:
      - xrxauth: []
        userEmail: []
        appId: []
      parameters:
      - name: providerId
        in: query
        required: true
        description: The unique identifier of the provider
        schema:
          type: string
      responses:
        '200':
          description: EULA agreement recorded successfully
        '400':
          description: Bad request
components:
  schemas:
    EULA:
      type: object
      description: End-user license agreement
      properties:
        providerId:
          type: string
          description: ID of the provider
        content:
          type: string
          description: EULA text content
        version:
          type: string
          description: Version of the EULA
        effectiveDate:
          type: string
          format: date
          description: Date EULA becomes effective
  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/