openapi: 3.2.0 info: title: Billing Management Milestone Schedule API version: 1.0.0 servers: - url: https://rls.congacloud.com/api/billing/v1 security: - Bearer: [] tags: - name: Milestone Schedule paths: /milestone/complete: put: tags: - Milestone Schedule summary: Mark billing schedule details complete description: This API marks milestone-type billing schedule details as complete. When the milestones are complete, the actual fee amount is computed using the percentage of TCV (sales) contained in the BSDs. requestBody: description: Complete Milestone Requests content: application/json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneRequest' text/json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneRequest' application/*+json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneRequest' responses: '200': description: OK content: text/plain: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneResponse' '201': description: Created content: text/plain: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/CompleteMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' /milestone/header: post: tags: - Milestone Schedule summary: Get billing schedule details for billing headers description: The API fetches the milestone-type billing schedule details for a list of billing header IDs. Click **ADD OBJECT** to enter the required parameters. Click **ADD STRING** in the ObjectIds field to enter the billing header ID. Repeat this to add more billing header IDs. requestBody: description: Milestone Schedule Requests content: application/json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' text/json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' application/*+json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' responses: '200': description: OK content: text/plain: schema: type: array items: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' '404': description: Not Found content: text/plain: schema: type: array items: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' /milestone/header/{billingHeaderId}: post: tags: - Milestone Schedule summary: Get billing schedule details for a billing header description: The API fetches milestone-type billing schedule details for a billing header. Enter the billing header ID in the billingHeaderId field to fetch the billing schedule detail. parameters: - name: billingHeaderId in: path description: Billing Header Id required: true schema: type: string requestBody: description: Filter to query billing schedule details of milestone type content: application/json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' text/json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' application/*+json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' application/json: schema: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' text/json: schema: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' application/json: schema: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' text/json: schema: $ref: '#/components/schemas/BillingHeaderMilestoneResponse' /milestone/order-line-item: post: tags: - Milestone Schedule summary: Get billing schedule details for order line items description: The API fetches milestone-type billing schedule details for a list of order line-item IDs. Click **ADD OBJECT** to enter the required parameters. Click **ADD STRING** in the ObjectIds field to enter the order line item ID. Repeat this to add multiple order line item IDs. requestBody: description: Milestone Schedule Requests content: application/json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' text/json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' application/*+json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' responses: '200': description: OK content: text/plain: schema: type: array items: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' '404': description: Not Found content: text/plain: schema: type: array items: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' /milestone/order-line-item/{orderLineItemId}: post: tags: - Milestone Schedule summary: Get billing schedule details for an order line item description: This API fetches the milestone-type billing schedule details for one order line item ID. Enter the order line item ID in the orderLineItemId field to fetch the billing schedule detail. parameters: - name: orderLineItemId in: path description: Order Line Item Id required: true schema: type: string requestBody: description: Filter to query billing schedule details of milestone type content: application/json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' text/json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' application/*+json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' application/json: schema: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' text/json: schema: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' application/json: schema: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' text/json: schema: $ref: '#/components/schemas/OrderLineItemMilestoneResponse' /milestone/schedule-record: post: tags: - Milestone Schedule summary: Get milestone-type billing schedule details by record IDs description: The API fetches milestone-type billing schedule details for a list of billing schedule record IDs. Click **ADD OBJECT** to enter the required parameters. Click **ADD STRING** in the ObjectIds field to enter the billing schedule record ID. Repeat this to add billing schedule record IDs. requestBody: description: Milestone Schedule Requests content: application/json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' text/json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' application/*+json: schema: type: array items: $ref: '#/components/schemas/MilestoneScheduleRequest' responses: '200': description: OK content: text/plain: schema: type: array items: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' '404': description: Not Found content: text/plain: schema: type: array items: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' application/json: schema: type: array items: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' text/json: schema: type: array items: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' /milestone/schedule-record/{scheduleRecordId}: post: tags: - Milestone Schedule summary: Get milestone-type billing schedule details by a record ID description: The API fetches milestone-type billing schedule details for a billing schedule by record ID. Enter the billing schedule record ID in the scheduleRecordId field to fetch the billing schedule detail. parameters: - name: scheduleRecordId in: path description: Billing Schedule Record Id required: true schema: type: string requestBody: description: Filter to query billing schedule details of milestone type content: application/json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' text/json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' application/*+json: schema: $ref: '#/components/schemas/MilestoneScheduleFilter' responses: '200': description: OK content: text/plain: schema: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' application/json: schema: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' text/json: schema: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' '400': description: Bad Request content: text/plain: schema: type: array items: $ref: '#/components/schemas/ApiError' application/json: schema: type: array items: $ref: '#/components/schemas/ApiError' text/json: schema: type: array items: $ref: '#/components/schemas/ApiError' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' application/json: schema: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' text/json: schema: $ref: '#/components/schemas/BillingScheduleRecordMilestoneResponse' components: schemas: ApiError: type: object properties: Source: type: - string - 'null' Title: type: - string - 'null' Detail: {} Help: type: - string - 'null' additionalProperties: false CompleteMilestoneResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' BillingHeaderId: type: - string - 'null' description: Updated billing schedule header Id BillingScheduleDetailId: type: - string - 'null' description: Updated billing schedule detail Id additionalProperties: false MilestoneScheduleDetailsDTO: type: object properties: BillingScheduleDetails: $ref: '#/components/schemas/LookupObject' RecordType: type: - string - 'null' description: Indicates whether this entry is being created for regular/usage products or is being sourced from a billing plan MilestoneExpectedDate: type: - string - 'null' description: The “Tentative Date” by which the milestone is expected to be completed. Applicable only if the billing plan is of “Milestone” type. format: date-time Percent: type: number description: Indicates the percent expected to be completed for this milestone. format: double MilestoneCompletionDate: type: - string - 'null' description: The “Actual Date” by when the milestone is completed. Applicable only if the billing plan is of “Milestone” type. format: date-time MilestoneStatus: type: - string - 'null' description: The status of this milestone. additionalProperties: false MilestoneScheduleHeaderDTO: type: object properties: BillingHeader: $ref: '#/components/schemas/LookupObject' MilestoneScheduleRecords: type: - array - 'null' items: $ref: '#/components/schemas/MilestoneScheduleRecordDTO' description: Associated list of schedule records for the milestone type billing schedule details. additionalProperties: false OrderLineItemMilestoneResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' OrderLineItem: $ref: '#/components/schemas/LookupObject' Summary: $ref: '#/components/schemas/MilestoneScheduleHeaderDTO' additionalProperties: false MilestoneScheduleRequest: type: object properties: MilestoneExpectedFromDate: type: string description: The beginning date for retrieving the milestone type billing schedule information. format: date-time MilestoneExpectedToDate: type: string description: The end date for retrieving milestone-type billing schedule information. format: date-time ShowDataFor: type: - string - 'null' description: Choose whether to display the whole billing schedule with all milestone pending and completed records, or just the pending ones. ObjectIds: type: - array - 'null' items: type: string description: Indicates the object id for fetching milestone type records. additionalProperties: false MilestoneScheduleRecordDTO: type: object properties: ScheduleRecord: $ref: '#/components/schemas/LookupObject' ScheduleDetails: type: - array - 'null' items: $ref: '#/components/schemas/MilestoneScheduleDetailsDTO' description: Associated list of billing schedule details of milestone type. additionalProperties: false MilestoneScheduleFilter: type: object properties: MilestoneExpectedFromDate: type: string description: The beginning date for retrieving the milestone type billing schedule information. format: date-time MilestoneExpectedToDate: type: string description: The end date for retrieving milestone-type billing schedule information. format: date-time ShowDataFor: type: - string - 'null' description: Choose whether to display the whole billing schedule with all milestone pending and completed records, or just the pending ones. additionalProperties: false LookupObject: type: object properties: Id: type: - string - 'null' Name: type: - string - 'null' additionalProperties: false BillingScheduleRecordMilestoneResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' ScheduleRecord: $ref: '#/components/schemas/LookupObject' ScheduleDetails: type: - array - 'null' items: $ref: '#/components/schemas/MilestoneScheduleDetailsDTO' description: Associated list of billing schedule details of milestone type. additionalProperties: false CompleteMilestoneRequest: type: object properties: BillingScheduleDetailId: type: - string - 'null' description: Billing schedule detail id to complete milestone. MilestoneCompletionDate: type: string description: The “Actual Date” by when the milestone is completed. format: date-time MilestoneCompletedBy: type: - string - 'null' description: The user ID who marked this milestone as “Completed.” additionalProperties: false BillingHeaderMilestoneResponse: type: object properties: IsSuccess: type: boolean ErrorMessage: type: - string - 'null' BillingHeader: $ref: '#/components/schemas/LookupObject' MilestoneScheduleRecords: type: - array - 'null' items: $ref: '#/components/schemas/MilestoneScheduleRecordDTO' description: Associated list of schedule records for the milestone type billing schedule details. additionalProperties: false securitySchemes: Bearer: type: apiKey description: Please insert JWT with Bearer into field name: Authorization in: header