Rotageek Sales Total API
The SalesTotal API from Rotageek — 1 operation(s) for salestotal.
The SalesTotal API from Rotageek — 1 operation(s) for salestotal.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/rotageek:rotageek-salestotal-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Rotageek API v1 Sales Total API
description: Hello World!
contact:
name: Rotageek
email: office@rotageek.com
version: '1.0'
security:
- Bearer: []
tags:
- name: SalesTotal
paths:
/api/v1/sales/{locationId}/{type}:
get:
tags:
- SalesTotal
summary: Retrieve paginated sales record list for location
description: Retrieves a paginated sales record list for location filtered by parameters
operationId: SalesTotal_GetSales
parameters:
- name: locationId
in: path
description: Target location id
required: true
schema:
type: string
- name: type
in: path
description: Type of sales total to be retrieved i.e. Forecast or Actual
required: true
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalType'
- name: from
in: query
description: Start date from which records be fetched.
schema:
type: string
format: date-time
- name: Sort
in: query
description: 'Sorting field for pages sorting. Default: sales total date'
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalRecordSortField'
- name: Page
in: query
description: 'Zero based page number. Default: 0'
schema:
maximum: 32767
minimum: 0
type: integer
format: int32
- name: PageSize
in: query
description: 'Number of records per page (1-50). Default: 30'
schema:
maximum: 50
minimum: 1
type: integer
format: int32
- name: Order
in: query
description: 'Sorting order. Default: Ascending'
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SortOrder'
- name: to
in: query
description: 'End date from which records be fetched. Default: no end date filtering'
schema:
type: string
format: date-time
responses:
'200':
description: Paginated sales records
content:
text/plain:
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.ListWrapperModel_1__Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel__Rotageek.AspNetCore.PublicApi__Version_2026.10.9.7962__Culture_neutral__PublicKeyToken_null'
application/json:
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.ListWrapperModel_1__Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel__Rotageek.AspNetCore.PublicApi__Version_2026.10.9.7962__Culture_neutral__PublicKeyToken_null'
text/json:
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.ListWrapperModel_1__Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel__Rotageek.AspNetCore.PublicApi__Version_2026.10.9.7962__Culture_neutral__PublicKeyToken_null'
'400':
description: Request parameters are invalid
'401':
description: Access to resource denied
'404':
description: Location not found
'500':
description: Internal Server Error
put:
tags:
- SalesTotal
summary: Add or update sales records for a location
description: Add or update actual or forecast sales records for location
operationId: SalesTotal_AddOrUpdate
parameters:
- name: locationId
in: path
description: Target location id
required: true
schema:
type: string
- name: type
in: path
description: Type of sales total to be saved i.e. Forecast or Actual
required: true
schema:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalType'
requestBody:
description: Sales data to be saved
content:
application/json-patch+json:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
application/*+json:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
responses:
'200':
description: List of sales records that were successfully saved
content:
text/plain:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
'400':
description: Request parameters are invalid
'401':
description: Access to resource denied
'404':
description: Location not found
'500':
description: Internal Server Error
components:
schemas:
Rotageek.AspNetCore.PublicApi.Models.PaginationModel:
type: object
properties:
pageNumber:
type: integer
description: Current number of the requested page (zero based)
format: int32
pageSizeRequested:
type: integer
description: Number of items that were requested
format: int32
itemsCount:
type: integer
description: Number of items fetched
format: int32
hasMore:
type: boolean
description: Flag informing that there are more records then was fetched with this request
additionalProperties: false
description: Container object for pagination information
Rotageek.AspNetCore.PublicApi.Models.SortOrder:
enum:
- Ascending
- Descending
type: string
description: Describes items sort order
? Rotageek.AspNetCore.PublicApi.Models.ListWrapperModel_1__Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel__Rotageek.AspNetCore.PublicApi__Version_2026.10.9.7962__Culture_neutral__PublicKeyToken_null
: type: object
properties:
items:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel'
description: Collection of items returned from the request
pagination:
$ref: '#/components/schemas/Rotageek.AspNetCore.PublicApi.Models.PaginationModel'
additionalProperties: false
description: Container for pagination information and items collection
Rotageek.AspNetCore.PublicApi.Models.SalesTotalModel:
type: object
properties:
date:
type: string
description: Reference date for sales figure
format: date-time
total:
type: number
description: Value of the sales figure
format: double
additionalProperties: false
description: Container for sales figures for a specific date
Rotageek.AspNetCore.PublicApi.Models.SalesTotalType:
enum:
- Forecast
- Actual
type: string
description: Describes the variations of sales figures supported
Rotageek.AspNetCore.PublicApi.Models.SalesTotalRecordSortField:
enum:
- Date
- Total
type: string
description: Describes possible fields for sales total list ordering
securitySchemes:
Bearer:
type: http
description: Paste the JWT access token returned by POST /api/v1/auth. Swagger adds the 'Bearer ' prefix automatically.
scheme: bearer
bearerFormat: JWT
oauth2:
type: oauth2
description: OAuth2 Password Grant
flows:
password:
tokenUrl: /api/v1/auth
scopes: {}