Vehicles.dev Control API
The Control API from Vehicles.dev — 23 operation(s) for control.
The Control API from Vehicles.dev — 23 operation(s) for control.
openapi: 3.2.0
info:
description: 'Vehicle identity and intelligence data — VIN decode, market value, listings, depreciation, reports, listing history, photos, specifications, recalls, and ownership costs — plus the account, API-key, and billing control plane. Data endpoints authenticate with a product API key (`Authorization: Bearer <key>`); control-plane endpoints use a dashboard session token. Errors are RFC 9457 application/problem+json, and every response carries an x-request-id header.'
title: Vehicles.dev Control API
version: 0.0.0
servers:
- description: Vehicles.dev API
url: https://api.vehicles.dev
tags:
- name: Control
paths:
/v1/control/bootstrap:
post:
operationId: provisionControlIdentity
tags:
- Control
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- accountName
properties:
accountName:
type: string
maxLength: 120
minLength: 1
additionalProperties: false
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- accountProductId
- principalId
- product
- role
properties:
accountProductId:
type: string
format: uuid
principalId:
type: string
format: uuid
product:
anyOf:
- type: string
enum:
- employment
- type: string
enum:
- vehicles
role:
anyOf:
- type: string
enum:
- owner
- type: string
enum:
- admin
- type: string
enum:
- developer
- type: string
enum:
- billing
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
/v1/control/account:
get:
operationId: getControlAccount
tags:
- Control
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- id
- name
- product
- status
properties:
id:
type: string
format: uuid
name:
type: string
product:
anyOf:
- type: string
enum:
- employment
- type: string
enum:
- vehicles
status:
anyOf:
- type: string
enum:
- active
- type: string
enum:
- suspended
- type: string
enum:
- deleted
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
patch:
operationId: updateControlAccount
tags:
- Control
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- name
properties:
name:
type: string
maxLength: 120
minLength: 1
additionalProperties: false
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- id
- name
- product
- status
properties:
id:
type: string
format: uuid
name:
type: string
product:
anyOf:
- type: string
enum:
- employment
- type: string
enum:
- vehicles
status:
anyOf:
- type: string
enum:
- active
- type: string
enum:
- suspended
- type: string
enum:
- deleted
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
delete:
operationId: deleteControlAccount
tags:
- Control
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- confirmation
properties:
confirmation:
type: string
enum:
- delete
additionalProperties: false
security:
- workosBearer: []
responses:
'204':
description: Default Response
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
/v1/control/dashboard/actions:
get:
operationId: getControlDashboardActions
tags:
- Control
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- byMetric
- catalogVersion
- planId
properties:
byMetric:
type: array
items:
type: object
required:
- calls
- metricId
properties:
calls:
type: integer
minimum: 0
metricId:
type: string
additionalProperties: false
catalogVersion:
type: string
planId:
anyOf:
- type: string
enum:
- starter
- type: string
enum:
- pro
- type: string
enum:
- scale
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
/v1/control/billing/catalog:
get:
operationId: getControlBillingCatalog
tags:
- Control
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- currency
- metrics
- plans
- product
- version
properties:
currency:
type: string
enum:
- USD
metrics:
type: array
items:
type: object
required:
- description
- freeEntitlementEligible
- id
- name
- pricesMicros
- successOnly
- unit
properties:
description:
type: string
freeEntitlementEligible:
type: boolean
id:
type: string
name:
type: string
pricesMicros:
type: object
required:
- pro
- scale
- starter
properties:
pro:
anyOf:
- type: 'null'
- type: integer
minimum: 0
scale:
anyOf:
- type: 'null'
- type: integer
minimum: 0
starter:
anyOf:
- type: 'null'
- type: integer
minimum: 0
additionalProperties: false
successOnly:
type: boolean
unit:
type: string
additionalProperties: false
plans:
type: array
items:
type: object
required:
- annualFeeMicros
- description
- featured
- features
- id
- includedMonthlyCalls
- monthlyFeeMicros
- name
- overagePolicy
- rateLimitRps
- support
- trialDays
properties:
annualFeeMicros:
type: integer
minimum: 0
description:
type: string
featured:
type: boolean
features:
type: array
items:
type: string
id:
anyOf:
- type: string
enum:
- starter
- type: string
enum:
- pro
- type: string
enum:
- scale
includedMonthlyCalls:
anyOf:
- type: 'null'
- type: integer
minimum: 0
monthlyFeeMicros:
type: integer
minimum: 0
name:
type: string
overagePolicy:
type: string
enum:
- metered
rateLimitRps:
type: integer
minimum: 1
support:
type: string
trialDays:
type: integer
minimum: 0
additionalProperties: false
product:
anyOf:
- type: string
enum:
- employment
- type: string
enum:
- vehicles
version:
type: string
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
/v1/control/billing/summary:
get:
operationId: getControlBillingSummary
tags:
- Control
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- catalogVersion
- credits
- entitlement
- product
- subscription
- usage
properties:
catalogVersion:
type: string
credits:
type: object
required:
- balanceMicros
properties:
balanceMicros:
type: integer
minimum: 0
additionalProperties: false
entitlement:
type: object
required:
- granted
- key
- remaining
- used
properties:
granted:
type: integer
minimum: 0
key:
type: string
enum:
- eligible_api_calls
remaining:
type: integer
minimum: 0
used:
type: integer
minimum: 0
additionalProperties: false
product:
anyOf:
- type: string
enum:
- employment
- type: string
enum:
- vehicles
subscription:
type: object
required:
- billingInterval
- cancelAtPeriodEnd
- currentPeriodEnd
- currentPeriodStart
- pastDueGraceEndsAt
- planId
- renewsAt
- status
- trialConsumed
- trialEndsAt
properties:
billingInterval:
anyOf:
- type: string
enum:
- monthly
- type: string
enum:
- annual
cancelAtPeriodEnd:
type: boolean
currentPeriodEnd:
type: string
format: date-time
currentPeriodStart:
type: string
format: date-time
pastDueGraceEndsAt:
anyOf:
- type: 'null'
- type: string
format: date-time
planId:
anyOf:
- type: string
enum:
- starter
- type: string
enum:
- pro
- type: string
enum:
- scale
renewsAt:
anyOf:
- type: 'null'
- type: string
format: date-time
status:
anyOf:
- type: string
enum:
- active
- type: string
enum:
- trialing
- type: string
enum:
- past_due
- type: string
enum:
- canceled
trialConsumed:
type: boolean
trialEndsAt:
anyOf:
- type: 'null'
- type: string
format: date-time
additionalProperties: false
usage:
type: object
required:
- creditsAppliedMicros
- grossAmountMicros
- netAmountMicros
- successfulEvents
properties:
creditsAppliedMicros:
type: integer
minimum: 0
grossAmountMicros:
type: integer
minimum: 0
netAmountMicros:
type: integer
minimum: 0
successfulEvents:
type: integer
minimum: 0
additionalProperties: false
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'500':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'503':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
/v1/control/billing/usage:
get:
operationId: getControlBillingUsage
tags:
- Control
security:
- workosBearer: []
responses:
'200':
description: Default Response
content:
application/json:
schema:
type: object
required:
- byMetric
- items
- period
properties:
byMetric:
type: array
items:
type: object
required:
- calls
- creditsAppliedMicros
- grossAmountMicros
- metricId
- netAmountMicros
- quantity
properties:
calls:
type: integer
minimum: 0
creditsAppliedMicros:
type: integer
minimum: 0
grossAmountMicros:
type: integer
minimum: 0
metricId:
type: string
netAmountMicros:
type: integer
minimum: 0
quantity:
type: integer
minimum: 0
additionalProperties: false
items:
type: array
items:
type: object
required:
- creditsAppliedMicros
- grossAmountMicros
- metricId
- netAmountMicros
- occurredAt
- quantity
properties:
creditsAppliedMicros:
type: integer
minimum: 0
grossAmountMicros:
type: integer
minimum: 0
metricId:
type: string
netAmountMicros:
type: integer
minimum: 0
occurredAt:
type: string
format: date-time
quantity:
type: integer
minimum: 0
additionalProperties: false
period:
type: object
required:
- end
- start
properties:
end:
type: string
format: date-time
start:
type: string
format: date-time
additionalProperties: false
additionalProperties: false
'400':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'401':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'403':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'404':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'409':
description: RFC 9457 problem details.
content:
application/problem+json:
schema:
$ref: '#/components/schemas/def-0'
'429':
descri
# --- truncated at 32 KB (110 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/vehicles-dev-api/refs/heads/main/openapi/vehicles-dev-api-control-api-openapi.yml