openapi: 3.2.0 info: title: Pay I Categories API version: v1 description: 'Operations tagged Categories across 2 of this provider''s published API definitions: pay-i-openapi-original.json, pay-i-openapi.yml. Each path carries the servers of the definition it was published in.' servers: - url: https://api.pay-i.com security: - Pay_I_API_Key: [] tags: - name: Categories description: System and Custom Categories paths: /api/v1/categories: get: tags: - Categories summary: Get all Categories operationId: getCategories parameters: - name: Active in: query schema: type: boolean - name: sort_ascending in: query schema: type: boolean - name: limit in: query schema: type: integer format: int32 - name: cursor in: query schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PayI.Calculator.Models.ApiQueries.PaginatedCursorCategoryResponseList' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' servers: - url: https://api.pay-i.com /api/v1/categories/{category}/resources: get: tags: - Categories summary: Get all Resources for a Category operationId: getResourcesList parameters: - name: Active in: query schema: type: boolean - name: sort_ascending in: query schema: type: boolean - name: limit in: query schema: type: integer format: int32 - name: cursor in: query schema: type: string - name: category in: path description: category required: true schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/PayI.Calculator.Models.ApiQueries.PaginatedCursorCategoryResourceResponseList' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' servers: - url: https://api.pay-i.com /api/v1/categories/{category}: delete: tags: - Categories summary: Delete a Category and all of its Resources operationId: deleteCategoryResources parameters: - name: category in: path description: Category required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/PayI.Common.Models.CategoryResource.CategoryResourceResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' servers: - url: https://api.pay-i.com /api/v1/categories/{category}/resources/{resource}: delete: tags: - Categories summary: Delete all versions of Resource from a Category operationId: deleteCategoryResource parameters: - name: category in: path description: Category required: true schema: type: string - name: resource in: path description: Resource required: true schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/PayI.Common.Models.CategoryResource.CategoryResourceResponse' '401': description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' '403': description: Forbidden content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' '404': description: Not Found content: application/json: schema: $ref: '#/components/schemas/PayI.Common.Models.ApiError' servers: - url: https://api.pay-i.com components: schemas: PayI.Common.Models.CategoryResource.SystemResourceScope: enum: - global - datazone - region type: string PayI.Common.Models.Reservation.GoogleVertexReservationResource: required: - gsus type: object properties: gsus: type: integer format: int32 additionalProperties: false PayI.Calculator.Models.ApiQueries.PaginatedCursorCategoryResourceResponseList: type: object properties: request_id: type: - string - 'null' cursor: type: - string - 'null' items: type: - array - 'null' items: $ref: '#/components/schemas/PayI.Common.Models.CategoryResource.CategoryResourceResponse' additionalProperties: false PayI.Common.Models.Reservation.AzureReservationResource: required: - ptus type: object properties: ptus: type: integer format: int32 additionalProperties: false PayI.Common.Models.Reservation.AwsBedrockReservationResource: required: - model_units type: object properties: model_units: type: integer format: int32 additionalProperties: false PayI.Calculator.Models.ApiQueries.PaginatedCursorCategoryResponseList: type: object properties: request_id: type: - string - 'null' cursor: type: - string - 'null' items: type: - array - 'null' items: $ref: '#/components/schemas/PayI.Calculator.Models.CategoryResponse' additionalProperties: false PayI.Common.Models.ApiError: required: - message - statusCode type: object properties: message: minLength: 1 type: string statusCode: type: integer format: int32 xproxy_error: $ref: '#/components/schemas/PayI.Common.Models.ProxyError' additionalProperties: false PayI.Common.Models.CategoryResource.MappedResourceResponse: required: - category - host_name - mapping_name - resource type: object properties: host_name: type: - string - 'null' mapping_name: type: - string - 'null' resource: type: - string - 'null' category: type: - string - 'null' scope: allOf: - $ref: '#/components/schemas/PayI.Common.Models.CategoryResource.SystemResourceScope' sub_scope: type: - string - 'null' additionalProperties: false PayI.Common.Models.ProxyError: type: object properties: code: type: - string - 'null' message: type: - string - 'null' additionalProperties: false PayI.Common.Models.CategoryResource.ResourcePriceUnits: type: object properties: input_price: type: number format: double output_price: type: number format: double additionalProperties: false PayI.Common.Models.CategoryResource.CategoryResourceResponse: required: - active - category - proxy_allowed - resource - resource_id - start_timestamp - units type: object properties: max_input_units: type: - integer - 'null' format: int32 max_output_units: type: - integer - 'null' format: int32 max_total_units: type: - integer - 'null' format: int32 units: type: object additionalProperties: $ref: '#/components/schemas/PayI.Common.Models.CategoryResource.ResourcePriceUnits' resource_id: minLength: 1 type: string start_timestamp: type: string format: date-time end_timestamp: type: - string - 'null' format: date-time category: minLength: 1 type: string resource: minLength: 1 type: string active: type: boolean description: type: - string - 'null' deprecated_timestamp: type: - string - 'null' format: date-time proxy_allowed: type: boolean mapped_resource: type: - object - 'null' allOf: - $ref: '#/components/schemas/PayI.Common.Models.CategoryResource.MappedResourceResponse' cost_per_hour: type: - number - 'null' format: double character_billing: type: - boolean - 'null' large_context_threshold: type: - integer - 'null' format: int32 aliased_resource: type: - string - 'null' reservation_id: type: - string - 'null' azure_resource: type: - object - 'null' allOf: - $ref: '#/components/schemas/PayI.Common.Models.Reservation.AzureReservationResource' aws_bedrock_resource: type: - object - 'null' allOf: - $ref: '#/components/schemas/PayI.Common.Models.Reservation.AwsBedrockReservationResource' google_vertex_resource: type: - object - 'null' allOf: - $ref: '#/components/schemas/PayI.Common.Models.Reservation.GoogleVertexReservationResource' additionalProperties: false PayI.Calculator.Models.CategoryResponse: required: - category type: object properties: category: minLength: 1 type: string additionalProperties: false securitySchemes: Pay_I_API_Key: type: apiKey description: 'Pay-I API Key. Example: "{apikey}"' name: xProxy-api-key in: header x-refined-from: - pay-i-openapi-original.json - pay-i-openapi.yml