openapi: 3.0.0 info: title: Uber for Business Codes Programs API description: The Uber for Business API enables organizations to automate workflows within their enterprise Uber accounts. Provides access to trip invoices, receipts, and business travel data for expense management and reporting. version: 1.2.0 contact: name: Uber Developer Support url: https://developer.uber.com/support servers: - url: https://api.uber.com/v1.2 description: Production - url: https://sandbox-api.uber.com/v1.2 description: Sandbox security: - BearerAuth: [] tags: - name: Programs description: Voucher program management paths: /voucher-programs: post: operationId: createVoucherProgram summary: Create Voucher Program description: Create a new voucher program for rides or meals. tags: - Programs requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VoucherProgramRequest' responses: '201': description: Voucher program created. content: application/json: schema: $ref: '#/components/schemas/VoucherProgram' get: operationId: listVoucherPrograms summary: List Voucher Programs description: Returns all voucher programs for the authenticated account. tags: - Programs parameters: - name: limit in: query required: false schema: type: integer default: 20 - name: offset in: query required: false schema: type: integer default: 0 responses: '200': description: List of voucher programs. content: application/json: schema: type: object properties: programs: type: array items: $ref: '#/components/schemas/VoucherProgram' /voucher-programs/search: post: operationId: searchVoucherPrograms summary: Search Voucher Programs description: Search for voucher programs by criteria. tags: - Programs requestBody: required: true content: application/json: schema: type: object properties: name: type: string status: type: string enum: - active - inactive - expired type: type: string responses: '200': description: Matching voucher programs. content: application/json: schema: type: object properties: programs: type: array items: $ref: '#/components/schemas/VoucherProgram' /voucher-programs/{program_id}: get: operationId: getVoucherProgram summary: Get Voucher Program description: Returns details for a specific voucher program. tags: - Programs parameters: - name: program_id in: path required: true schema: type: string responses: '200': description: Voucher program details. content: application/json: schema: $ref: '#/components/schemas/VoucherProgram' patch: operationId: updateVoucherProgram summary: Update Voucher Program description: Update an existing voucher program. tags: - Programs parameters: - name: program_id in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/VoucherProgramUpdate' responses: '200': description: Updated voucher program. content: application/json: schema: $ref: '#/components/schemas/VoucherProgram' delete: operationId: cancelVoucherProgram summary: Cancel Voucher Program description: Cancel and deactivate a voucher program. tags: - Programs parameters: - name: program_id in: path required: true schema: type: string responses: '200': description: Program cancelled successfully. components: schemas: VoucherProgramRequest: type: object required: - name - type properties: name: type: string description: Program display name. type: type: string enum: - rides - eats description: Type of voucher program. budget: type: number description: Total budget for the program. currency_code: type: string description: ISO 4217 currency code. start_date: type: string format: date-time end_date: type: string format: date-time VoucherProgram: type: object properties: id: type: string description: Unique program identifier. name: type: string type: type: string status: type: string enum: - active - inactive - expired budget: type: number currency_code: type: string created_at: type: string format: date-time updated_at: type: string format: date-time VoucherProgramUpdate: type: object properties: name: type: string end_date: type: string format: date-time securitySchemes: BearerAuth: type: http scheme: bearer description: OAuth 2.0 Bearer token with business.receipts scope