openapi: 3.2.0 info: title: Billing Management Forecast Billing API version: 1.0.0 servers: - url: https://rls.congacloud.com/api/billing/v1 security: - Bearer: [] tags: - name: Forecast Billing paths: /forecast: post: tags: - Forecast Billing summary: Create forecast data description: Create forecast data for Proposal, Product Configuration, Order, LineItem, and OrderLineItem. requestBody: description: Forecast Request content: application/json: schema: $ref: '#/components/schemas/ForecastRequest' text/json: schema: $ref: '#/components/schemas/ForecastRequest' application/*+json: schema: $ref: '#/components/schemas/ForecastRequest' responses: '201': description: Created content: text/plain: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' application/json: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' text/json: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' '207': description: Multi-Status content: text/plain: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' application/json: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' text/json: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' application/json: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' text/json: schema: type: array items: $ref: '#/components/schemas/ForecastResponse' '500': description: Internal Server Error content: text/plain: schema: $ref: '#/components/schemas/ErrorApiResponse' application/json: schema: $ref: '#/components/schemas/ErrorApiResponse' text/json: schema: $ref: '#/components/schemas/ErrorApiResponse' /forecast/regenerate-forecast-summary: post: tags: - Forecast Billing summary: Regenerate forecast summary description: Regenerate forecast summary for Proposal, Product Configuration, Order based on Summary Criteria passed. requestBody: description: Forecast Summary Request content: application/json: schema: $ref: '#/components/schemas/ForecastSummaryRequest' text/json: schema: $ref: '#/components/schemas/ForecastSummaryRequest' application/*+json: schema: $ref: '#/components/schemas/ForecastSummaryRequest' responses: '201': description: Created content: text/plain: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' application/json: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' text/json: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' '207': description: Multi-Status content: text/plain: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' application/json: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' text/json: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' application/json: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' text/json: schema: type: array items: $ref: '#/components/schemas/ForecastSummaryResponse' '500': description: Internal Server Error content: text/plain: schema: $ref: '#/components/schemas/ErrorApiResponse' application/json: schema: $ref: '#/components/schemas/ErrorApiResponse' text/json: schema: $ref: '#/components/schemas/ErrorApiResponse' /forecast/{businessObjectType}/{businessObjectId}: get: tags: - Forecast Billing summary: Retrieve forecast data description: Retrieve forecast data for Proposal, Product Configuration, Order, LineItem, and OrderLineItem. parameters: - name: businessObjectType in: path description: Business object type can be Proposal, ProductConfiguration, Order, LineItem or OrderLineItem required: true schema: type: string - name: businessObjectId in: path description: Id of the Business object required: true schema: type: string responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/ForecastScheduleResponse' application/json: schema: $ref: '#/components/schemas/ForecastScheduleResponse' text/json: schema: $ref: '#/components/schemas/ForecastScheduleResponse' '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/ForecastScheduleResponse' application/json: schema: $ref: '#/components/schemas/ForecastScheduleResponse' text/json: schema: $ref: '#/components/schemas/ForecastScheduleResponse' '500': description: Internal Server Error content: text/plain: schema: $ref: '#/components/schemas/ErrorApiResponse' application/json: schema: $ref: '#/components/schemas/ErrorApiResponse' text/json: schema: $ref: '#/components/schemas/ErrorApiResponse' components: schemas: ForecastBillingSummaryRequest: type: object properties: BusinessObjectId: type: - string - 'null' description: Business Object Id for which we need to generate schedules. BusinessObjectType: type: - string - 'null' description: Business Object Type schedule belongs to (Product Configuration, Order, Proposal) additionalProperties: false ForecastScheduleResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' ForecastBillingScheduleRecords: type: - array - 'null' items: $ref: '#/components/schemas/ForecastBillingScheduleRecord' description: Forecast Billing Schedule Records ForecastBillingSummaries: type: - array - 'null' items: $ref: '#/components/schemas/ForecastBillingSummary' description: Forecast Billing Summaries additionalProperties: false CurrencyField: type: object properties: Value: type: number format: double DisplayValue: type: number format: double readOnly: true CurrencyCode: type: - string - 'null' readOnly: true CurrencySymbol: type: - string - 'null' readOnly: true additionalProperties: false ForecastRequest: type: object properties: TransactionSource: type: - string - 'null' description: Transaction source(Conga, External) ForecastBillingRequests: type: - array - 'null' items: $ref: '#/components/schemas/ForecastBillingRequest' description: Forecast Requests SummaryCriterion: type: - string - 'null' description: Criteria for forecast summary additionalProperties: false ForecastSummaryRequest: type: object properties: SummaryCriterion: type: - string - 'null' description: Criteria for forecast summary ForecastBillingSummaryRequests: type: - array - 'null' items: $ref: '#/components/schemas/ForecastBillingSummaryRequest' description: Forecast billing summary requests additionalProperties: false ForecastBillingRequest: type: object properties: BusinessObjectType: type: - string - 'null' description: Business Object Type schedule belongs to (LineItem, OrderLineItem, ProductConfiguration, Order) BusinessObjectId: type: - string - 'null' description: Business Object Id for which we need to generate schedules. additionalProperties: false ErrorApiResponse: type: object properties: Errors: type: - array - 'null' items: $ref: '#/components/schemas/ApiError' additionalProperties: false ApiError: type: object properties: Source: type: - string - 'null' Title: type: - string - 'null' Detail: {} Help: type: - string - 'null' additionalProperties: false ForecastBillingScheduleRecord: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' CreatedBy: $ref: '#/components/schemas/LookupObject' CreatedDate: type: string format: date-time ModifiedBy: $ref: '#/components/schemas/LookupObject' ModifiedDate: type: string format: date-time ExternalId: type: - string - 'null' ETag: type: - string - 'null' PeriodStartDate: type: string format: date-time PeriodEndDate: type: string format: date-time Currency: type: - string - 'null' ForecastedFeeAmount: $ref: '#/components/schemas/CurrencyField' ReadyForInvoiceDate: type: string format: date-time InvoiceStatus: type: - string - 'null' PaymentTerm: $ref: '#/components/schemas/LookupObject' Contracted: type: boolean LineItem: $ref: '#/components/schemas/LookupObject' ProductConfiguration: $ref: '#/components/schemas/LookupObject' OrderLineItem: $ref: '#/components/schemas/LookupObject' Order: $ref: '#/components/schemas/LookupObject' Product: $ref: '#/components/schemas/LookupObject' ChargeType: type: - string - 'null' BillTo: $ref: '#/components/schemas/LookupObject' ShipTo: $ref: '#/components/schemas/LookupObject' AccountLocation: $ref: '#/components/schemas/LookupObject' BillingRule: type: - string - 'null' BillingFrequency: type: - string - 'null' PriceType: type: - string - 'null' FBSRNumber: type: - string - 'null' additionalProperties: {} ForecastSummaryResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' BusinessObjectType: type: - string - 'null' description: Business Object Type schedule belongs to (Product Configuration, Order, Proposal) BusinessObjectId: type: - string - 'null' description: Business Object Id for which we need to generate schedules. additionalProperties: false LookupObject: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' additionalProperties: false ForecastBillingSummary: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' CreatedBy: $ref: '#/components/schemas/LookupObject' CreatedDate: type: string format: date-time ModifiedBy: $ref: '#/components/schemas/LookupObject' ModifiedDate: type: string format: date-time ExternalId: type: - string - 'null' ETag: type: - string - 'null' Currency: type: - string - 'null' TotalForecastFee: $ref: '#/components/schemas/CurrencyField' TotalOneTimeFee: $ref: '#/components/schemas/CurrencyField' TotalRecurringFee: $ref: '#/components/schemas/CurrencyField' CriterionName: type: - string - 'null' CriterionValue: type: - string - 'null' ProductConfiguration: $ref: '#/components/schemas/LookupObject' Order: $ref: '#/components/schemas/LookupObject' FBSMNumber: type: - string - 'null' additionalProperties: {} ForecastResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' BusinessObjectType: type: - string - 'null' description: Business Object Type schedule belongs to (LineItem, OrderLineItem, ProductConfiguration, Order) BusinessObjectId: type: - string - 'null' description: Business Object Id for which we need to generate schedules. additionalProperties: false securitySchemes: Bearer: type: apiKey description: Please insert JWT with Bearer into field name: Authorization in: header