BokaMera.API.Host

<back to all web services

RecordMcpUsage

Requires Authentication
The following routes are available for this service:
POST/assistant/mcp/usageRecord public MCP server token usage for a companyRecords the tokens consumed by a public MCP server exchange 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.
RecordMcpUsage Parameters:
NameParameterData TypeRequiredDescription
CompanyIdquerystringNoThe company id. Defaults to the logged-in user's company when omitted.
TokensUsedbodyintegerYesNumber of tokens consumed by the MCP exchange (request + response).
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/mcp/usage HTTP/1.1 
Host: testapi.bokamera.se 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<RecordMcpUsage 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>
</RecordMcpUsage>
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>