openapi: 3.0.0 info: title: helicone-api Agent Property API version: 1.0.0 license: name: MIT contact: {} servers: - url: https://api.helicone.ai/ - url: http://localhost:8585/ tags: - name: Property paths: /v1/property/properties/over-time: post: operationId: GetPropertiesOverTime responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/Result__property-string--total_cost-number--request_count-number--created_at_trunc-string_-Array.string_' tags: - Property security: - api_key: [] parameters: [] requestBody: required: true content: application/json: schema: allOf: - $ref: '#/components/schemas/DataOverTimeRequest' - properties: propertyKey: type: string required: - propertyKey type: object /v1/property/query: post: operationId: GetProperties responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/Result_Property-Array.string_' tags: - Property security: - api_key: [] parameters: [] requestBody: required: true content: application/json: schema: properties: {} type: object /v1/property/hide: post: operationId: HideProperty responses: '200': description: Ok content: application/json: schema: anyOf: - $ref: '#/components/schemas/ResultError_string_' - $ref: '#/components/schemas/ResultSuccess_string_' - $ref: '#/components/schemas/ResultSuccess_unknown-Array_' - properties: error: {} data: properties: ok: type: boolean required: - ok type: object required: - error - data type: object tags: - Property security: - api_key: [] parameters: [] requestBody: required: true content: application/json: schema: properties: key: type: string required: - key type: object /v1/property/hidden/query: post: operationId: GetHiddenProperties responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/Result_Property-Array.string_' tags: - Property security: - api_key: [] parameters: [] /v1/property/restore: post: operationId: RestoreProperty responses: '200': description: Ok content: application/json: schema: anyOf: - $ref: '#/components/schemas/ResultError_string_' - $ref: '#/components/schemas/ResultSuccess_string_' - $ref: '#/components/schemas/ResultSuccess_unknown-Array_' - properties: error: {} data: properties: ok: type: boolean required: - ok type: object required: - error - data type: object tags: - Property security: - api_key: [] parameters: [] requestBody: required: true content: application/json: schema: properties: key: type: string required: - key type: object /v1/property/{propertyKey}/search: post: operationId: SearchProperties responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/Result_string-Array.string_' tags: - Property security: - api_key: [] parameters: - in: path name: propertyKey required: true schema: type: string requestBody: required: true content: application/json: schema: properties: searchTerm: type: string required: - searchTerm type: object /v1/property/{propertyKey}/top-costs/query: post: operationId: GetTopCosts responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/Result__value-string--cost-number_-Array.string_' tags: - Property security: - api_key: [] parameters: - in: path name: propertyKey required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TimeFilterRequest' /v1/property/{propertyKey}/top-requests/query: post: operationId: GetTopRequests responses: '200': description: Ok content: application/json: schema: $ref: '#/components/schemas/Result__value-string--count-number_-Array.string_' tags: - Property security: - api_key: [] parameters: - in: path name: propertyKey required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/TimeFilterRequest' components: schemas: Partial_RequestResponseRMTToOperators_: properties: country_code: $ref: '#/components/schemas/Partial_TextOperators_' latency: $ref: '#/components/schemas/Partial_NumberOperators_' cost: $ref: '#/components/schemas/Partial_NumberOperators_' provider: $ref: '#/components/schemas/Partial_TextOperators_' time_to_first_token: $ref: '#/components/schemas/Partial_NumberOperators_' status: $ref: '#/components/schemas/Partial_NumberOperators_' request_created_at: $ref: '#/components/schemas/Partial_TimestampOperatorsTyped_' response_created_at: $ref: '#/components/schemas/Partial_TimestampOperatorsTyped_' model: $ref: '#/components/schemas/Partial_TextOperators_' user_id: $ref: '#/components/schemas/Partial_TextOperators_' organization_id: $ref: '#/components/schemas/Partial_TextOperators_' node_id: $ref: '#/components/schemas/Partial_TextOperators_' job_id: $ref: '#/components/schemas/Partial_TextOperators_' threat: $ref: '#/components/schemas/Partial_BooleanOperators_' request_id: $ref: '#/components/schemas/Partial_TextOperators_' prompt_tokens: $ref: '#/components/schemas/Partial_NumberOperators_' completion_tokens: $ref: '#/components/schemas/Partial_NumberOperators_' prompt_cache_read_tokens: $ref: '#/components/schemas/Partial_NumberOperators_' prompt_cache_write_tokens: $ref: '#/components/schemas/Partial_NumberOperators_' total_tokens: $ref: '#/components/schemas/Partial_NumberOperators_' target_url: $ref: '#/components/schemas/Partial_TextOperators_' property_key: properties: equals: type: string required: - equals type: object properties: properties: {} additionalProperties: $ref: '#/components/schemas/Partial_TextOperators_' type: object search_properties: properties: {} additionalProperties: $ref: '#/components/schemas/Partial_TextOperators_' type: object scores: properties: {} additionalProperties: $ref: '#/components/schemas/Partial_TextOperators_' type: object scores_column: $ref: '#/components/schemas/Partial_TextOperators_' request_body: $ref: '#/components/schemas/Partial_TextOperators_' response_body: $ref: '#/components/schemas/Partial_TextOperators_' cache_enabled: $ref: '#/components/schemas/Partial_BooleanOperators_' cache_reference_id: $ref: '#/components/schemas/Partial_TextOperators_' cached: $ref: '#/components/schemas/Partial_BooleanOperators_' assets: $ref: '#/components/schemas/Partial_TextOperators_' helicone-score-feedback: $ref: '#/components/schemas/Partial_BooleanOperators_' prompt_id: $ref: '#/components/schemas/Partial_TextOperators_' prompt_version: $ref: '#/components/schemas/Partial_TextOperators_' request_referrer: $ref: '#/components/schemas/Partial_TextOperators_' is_passthrough_billing: $ref: '#/components/schemas/Partial_BooleanOperators_' type: object description: Make all properties in T optional Property: properties: property: type: string required: - property type: object additionalProperties: false Result_string-Array.string_: anyOf: - $ref: '#/components/schemas/ResultSuccess_string-Array_' - $ref: '#/components/schemas/ResultError_string_' Result__property-string--total_cost-number--request_count-number--created_at_trunc-string_-Array.string_: anyOf: - $ref: '#/components/schemas/ResultSuccess__property-string--total_cost-number--request_count-number--created_at_trunc-string_-Array_' - $ref: '#/components/schemas/ResultError_string_' DataOverTimeRequest: properties: timeFilter: properties: end: type: string start: type: string required: - end - start type: object userFilter: $ref: '#/components/schemas/RequestClickhouseFilterNode' dbIncrement: $ref: '#/components/schemas/TimeIncrement' timeZoneDifference: type: number format: double required: - timeFilter - userFilter - dbIncrement - timeZoneDifference type: object additionalProperties: false Partial_TextOperators_: properties: not-equals: type: string equals: type: string like: type: string ilike: type: string contains: type: string not-contains: type: string type: object description: Make all properties in T optional Result__value-string--cost-number_-Array.string_: anyOf: - $ref: '#/components/schemas/ResultSuccess__value-string--cost-number_-Array_' - $ref: '#/components/schemas/ResultError_string_' TimeFilterRequest: properties: timeFilter: properties: end: type: string start: type: string required: - end - start type: object required: - timeFilter type: object additionalProperties: false ResultSuccess__value-string--cost-number_-Array_: properties: data: items: properties: cost: type: number format: double value: type: string required: - cost - value type: object type: array error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false Result_Property-Array.string_: anyOf: - $ref: '#/components/schemas/ResultSuccess_Property-Array_' - $ref: '#/components/schemas/ResultError_string_' RequestClickhouseFilterBranch: properties: right: $ref: '#/components/schemas/RequestClickhouseFilterNode' operator: type: string enum: - or - and left: $ref: '#/components/schemas/RequestClickhouseFilterNode' required: - right - operator - left type: object Partial_BooleanOperators_: properties: equals: type: boolean type: object description: Make all properties in T optional Partial_NumberOperators_: properties: not-equals: type: number format: double equals: type: number format: double gte: type: number format: double lte: type: number format: double lt: type: number format: double gt: type: number format: double type: object description: Make all properties in T optional ResultSuccess__value-string--count-number_-Array_: properties: data: items: properties: count: type: number format: double value: type: string required: - count - value type: object type: array error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false TimeIncrement: type: string enum: - min - hour - day - week - month - year Result__value-string--count-number_-Array.string_: anyOf: - $ref: '#/components/schemas/ResultSuccess__value-string--count-number_-Array_' - $ref: '#/components/schemas/ResultError_string_' ResultSuccess_unknown-Array_: properties: data: items: {} type: array error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false RequestClickhouseFilterNode: anyOf: - $ref: '#/components/schemas/FilterLeafSubset_request_response_rmt_' - $ref: '#/components/schemas/RequestClickhouseFilterBranch' - type: string enum: - all ResultSuccess_Property-Array_: properties: data: items: $ref: '#/components/schemas/Property' type: array error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false ResultSuccess_string-Array_: properties: data: items: type: string type: array error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false ResultSuccess_string_: properties: data: type: string error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false Partial_TimestampOperatorsTyped_: properties: equals: type: string format: date-time gte: type: string format: date-time lte: type: string format: date-time lt: type: string format: date-time gt: type: string format: date-time type: object description: Make all properties in T optional FilterLeafSubset_request_response_rmt_: $ref: '#/components/schemas/Pick_FilterLeaf.request_response_rmt_' ResultSuccess__property-string--total_cost-number--request_count-number--created_at_trunc-string_-Array_: properties: data: items: properties: created_at_trunc: type: string request_count: type: number format: double total_cost: type: number format: double property: type: string required: - created_at_trunc - request_count - total_cost - property type: object type: array error: type: number enum: - null nullable: true required: - data - error type: object additionalProperties: false Pick_FilterLeaf.request_response_rmt_: properties: request_response_rmt: $ref: '#/components/schemas/Partial_RequestResponseRMTToOperators_' type: object description: From T, pick a set of properties whose keys are in the union K ResultError_string_: properties: data: type: number enum: - null nullable: true error: type: string required: - data - error type: object additionalProperties: false securitySchemes: api_key: type: apiKey name: Authorization in: header description: 'Bearer token authentication. Format: ''Bearer YOUR_API_KEY'''