BokaMera.API.Host

<back to all web services

RecordAiChatUsage

Requires Authentication
The following routes are available for this service:
POST/assistant/ai-chat/usageRecord AI assistant token usage for a companyRecords the tokens consumed by an AI assistant chat turn (input + output) against the company's rolling-window budget and returns the updated usage. Defaults to the logged-in user's company when no CompanyId is supplied.
RecordAiChatUsage Parameters:
NameParameterData TypeRequiredDescription
CompanyIdquerystringNoThe company id. Defaults to the logged-in user's company when omitted.
TokensUsedbodyintegerYesNumber of tokens consumed by the chat turn (input + output).
AiChatUsageResponse Parameters:
NameParameterData TypeRequiredDescription
CompanyIdformGuidNoThe company the usage applies to.
TokensUsedformlongNoTokens consumed within the current rolling window.
TokenLimitformintNoThe company's token limit for the window.
TokensRemainingformlongNoTokens remaining before the limit is reached (never negative).
IsWithinBudgetformboolNoTrue while the company is still below its token limit.
WindowDaysformintNoLength of the rolling usage window, in days.
ResponseStatusformResponseStatusYes

To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml

HTTP + XML

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

POST /assistant/ai-chat/usage HTTP/1.1 
Host: api.bookmore.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<RecordAiChatUsage xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
  <TokensUsed>0</TokensUsed>
</RecordAiChatUsage>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<AiChatUsageResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/BokaMera.API.ServiceModel.Dtos">
  <CompanyId>00000000-0000-0000-0000-000000000000</CompanyId>
  <IsWithinBudget>false</IsWithinBudget>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
  <TokenLimit>0</TokenLimit>
  <TokensRemaining>0</TokensRemaining>
  <TokensUsed>0</TokensUsed>
  <WindowDays>0</WindowDays>
</AiChatUsageResponse>