test(corpus): add remaining acme catalog fixtures
Add the remaining sanitized ACME catalog modules for multi-file corpus coverage.
This commit is contained in:
parent
7c069dce66
commit
aa74cf4332
@ -0,0 +1,25 @@
|
||||
openapi: 3.0.3
|
||||
info:
|
||||
title: Financial Institution Management API
|
||||
version: 0.1.0
|
||||
servers:
|
||||
- url: 'https://api.example.com'
|
||||
security:
|
||||
- default: []
|
||||
components:
|
||||
securitySchemes:
|
||||
default:
|
||||
type: http
|
||||
scheme: bearer
|
||||
tags:
|
||||
- name: Temp
|
||||
paths:
|
||||
/temps:
|
||||
get:
|
||||
description: Temporary endpoint to make lint pass
|
||||
operationId: temp
|
||||
tags:
|
||||
- Temp
|
||||
responses:
|
||||
'200':
|
||||
description: temp
|
||||
@ -0,0 +1,8 @@
|
||||
type: string
|
||||
enum:
|
||||
- LeadCapHit
|
||||
- DemandSubAccountClickCapHit
|
||||
- BudgetCapHit
|
||||
- ClickCapHit
|
||||
description: |
|
||||
The reason for which this demand sub account or static offer inventory cap event was created.
|
||||
@ -0,0 +1,11 @@
|
||||
type: string
|
||||
enum:
|
||||
- BudgetCap
|
||||
- ClickCap
|
||||
- DemandSubAccountClickCap
|
||||
- LeadCap
|
||||
description: |
|
||||
The type of the inventory cap.
|
||||
|
||||
For demand sub account caps, the values `DemandSubAccoutClickCap` and `LeadCap` are
|
||||
allowed. For static offer caps, the values `ClickCap` and `BudgetCap` are allowed.
|
||||
@ -0,0 +1,6 @@
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
properties:
|
||||
type:
|
||||
$ref: ./capType.yml
|
||||
@ -0,0 +1,122 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- version
|
||||
- demandSubAccountId
|
||||
- capType
|
||||
- demandSubAccountInventoryCapEvents
|
||||
- startDate
|
||||
- endDate
|
||||
- createdAt
|
||||
- createdByUuid
|
||||
- updatedAt
|
||||
- updatedByUuid
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
A unique, internal identifier for this resource.
|
||||
version:
|
||||
type: integer
|
||||
format: int32
|
||||
description: |
|
||||
Version number for the cap.
|
||||
demandSubAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
ID of the demand sub-account that corresponds to the cap.
|
||||
capType:
|
||||
$ref: ./capTypeWrapper.yml
|
||||
leadCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
Amount of allowable lead attributions allowed for the cap.
|
||||
|
||||
If non-null, `clickCapAmount` and `budgetCapAmount` must be null.
|
||||
currentAttributedLeads:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
Current number of leads attributed to the cap within the given time window.
|
||||
clickCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
Amount of allowable click attributions allowed for the cap.
|
||||
|
||||
If non-null, `leadCapAmount` and `budgetCapAmount` must be null.
|
||||
currentAttributedClicks:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
Current number of clicks attributed to the cap within the given time window.
|
||||
budgetCapAmount:
|
||||
type: number
|
||||
format: float
|
||||
description: |
|
||||
Amount of allowable revenue attribution allowed for the cap.
|
||||
|
||||
If non-null, `clickCapAmount` and `leadCapAmount` must be null.
|
||||
currentAttributedRevenue:
|
||||
type: number
|
||||
format: float
|
||||
description: |
|
||||
Current amount of revenue attributed to the cap within the given time window.
|
||||
lastCalculatedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
description: |
|
||||
Last time attributed `currentAttributedClicks`, `currentAttributedLeads`, and
|
||||
`currentAttributedRevenue` were calculated.
|
||||
demandSubAccountInventoryCapEvents:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./demandSubAccountInventoryCapEvent.yml
|
||||
description: |
|
||||
List containing events that represent when a cap was exhausted.
|
||||
|
||||
For caps that have naturally expired because their end date has reached,
|
||||
we do not create a cap event.
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
description: |
|
||||
The start date for the window in which the cap should have been in force.
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
description: |
|
||||
The end date for the window in which the cap should have been in force.
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
description: |
|
||||
When the resource was created.
|
||||
createdByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the access token that was used to create this resource.
|
||||
updatedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
description: |
|
||||
When the resource was updated.
|
||||
updatedByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the access token that was used to update this resource.
|
||||
deletedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
description: |
|
||||
When the resource was deleted.
|
||||
deletedByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the access token that was used to delete this resource.
|
||||
@ -0,0 +1,27 @@
|
||||
type: object
|
||||
required:
|
||||
- demandSubAccountId
|
||||
- capType
|
||||
- startDate
|
||||
- endDate
|
||||
properties:
|
||||
demandSubAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
capType:
|
||||
$ref: ./capType.yml
|
||||
leadCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
clickCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
budgetCapAmount:
|
||||
type: number
|
||||
format: double
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
@ -0,0 +1,31 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- demandSubAccountInventoryCapId
|
||||
- capEventReason
|
||||
- createdAt
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
readOnly: true
|
||||
description: |
|
||||
A unique, internal identifier for this resource.
|
||||
demandSubAccountInventoryCapId:
|
||||
type: integer
|
||||
format: int64
|
||||
readOnly: true
|
||||
description: |
|
||||
The id of the demand sub account inventory cap corresponding to the event record.
|
||||
capEventReason:
|
||||
type: string
|
||||
$ref: ./capEventReason.yml
|
||||
readOnly: true
|
||||
description: |
|
||||
The reason why this inventory cap event was created.
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
readOnly: true
|
||||
description: |
|
||||
When the resource was created.
|
||||
@ -0,0 +1,18 @@
|
||||
type: object
|
||||
required:
|
||||
- leadCapAmount
|
||||
- clickCapAmount
|
||||
- budgetCapAmount
|
||||
- startDate
|
||||
- endDate
|
||||
properties:
|
||||
leadCapAmount:
|
||||
type: string
|
||||
clickCapAmount:
|
||||
type: string
|
||||
budgetCapAmount:
|
||||
type: string
|
||||
startDate:
|
||||
type: string
|
||||
endDate:
|
||||
type: string
|
||||
@ -0,0 +1,72 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- version
|
||||
- subAccountId
|
||||
- staticOfferId
|
||||
- capType
|
||||
- staticOfferInventoryCapEvents
|
||||
- startDate
|
||||
- endDate
|
||||
- createdAt
|
||||
- createdByUuid
|
||||
- updatedAt
|
||||
- updatedByUuid
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
version:
|
||||
type: integer
|
||||
format: int32
|
||||
subAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
staticOfferId:
|
||||
type: integer
|
||||
format: int64
|
||||
capType:
|
||||
$ref: ./capTypeWrapper.yml
|
||||
budgetCapAmount:
|
||||
type: number
|
||||
format: double
|
||||
currentAttributedRevenue:
|
||||
type: number
|
||||
format: double
|
||||
clickCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
currentAttributedClicks:
|
||||
type: integer
|
||||
format: int64
|
||||
lastCalculatedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
staticOfferInventoryCapEvents:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./staticOfferInventoryCapEvent.yml
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
createdByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
updatedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
updatedByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
deletedByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,27 @@
|
||||
type: object
|
||||
required:
|
||||
- staticOfferId
|
||||
- subAccountId
|
||||
- startDate
|
||||
- endDate
|
||||
properties:
|
||||
staticOfferId:
|
||||
type: integer
|
||||
format: int64
|
||||
subAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
capType:
|
||||
$ref: ./capType.yml
|
||||
budgetCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
clickCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
@ -0,0 +1,25 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- staticOfferInventoryCapId
|
||||
- capEventReason
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
readOnly: true
|
||||
description: |
|
||||
A unique, internal identifier for this resource.
|
||||
staticOfferInventoryCapId:
|
||||
type: integer
|
||||
format: int64
|
||||
capEventReason:
|
||||
$ref: ./capEventReason.yml
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
readOnly: true
|
||||
description: |
|
||||
When the resource was created.
|
||||
@ -0,0 +1,12 @@
|
||||
type: object
|
||||
required:
|
||||
- eventType
|
||||
- capType
|
||||
- createdEvent
|
||||
properties:
|
||||
eventType:
|
||||
type: string
|
||||
capType:
|
||||
$ref: ./capType.yml
|
||||
createdEvent:
|
||||
$ref: ./staticOfferInventoryCapEvent.yml
|
||||
@ -0,0 +1,17 @@
|
||||
type: object
|
||||
required:
|
||||
- startDate
|
||||
- endDate
|
||||
properties:
|
||||
budgetCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
clickCapAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
@ -0,0 +1,22 @@
|
||||
type: object
|
||||
required:
|
||||
- jsonPatch
|
||||
- createdAt
|
||||
- createdByUuid
|
||||
properties:
|
||||
jsonPatch:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
readOnly: true
|
||||
description: |
|
||||
When the resource was created.
|
||||
createdByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
readOnly: true
|
||||
description: |
|
||||
The UUID of the access token that was used to create this resource.
|
||||
535
Tests/Fixtures/acme/birch-catalog/inventory/spec.yml
Normal file
535
Tests/Fixtures/acme/birch-catalog/inventory/spec.yml
Normal file
@ -0,0 +1,535 @@
|
||||
openapi: 3.0.3
|
||||
info:
|
||||
title: inventory
|
||||
description: Manages inventory caps
|
||||
version: 1.3.0
|
||||
contact:
|
||||
name: Finance Chapter
|
||||
url: >-
|
||||
https://example.com/docs/api-team
|
||||
servers:
|
||||
- url: 'https://api.example.com/inventory'
|
||||
description: Prod
|
||||
- url: 'https://dev-api.example.com/inventory'
|
||||
description: Dev
|
||||
components:
|
||||
x-lint-skip:
|
||||
- inline-schema-is-scalar
|
||||
securitySchemes:
|
||||
oauth:
|
||||
type: oauth2
|
||||
flows:
|
||||
clientCredentials:
|
||||
tokenUrl: /auth/accessTokens
|
||||
scopes:
|
||||
'inventory:read': Allows read access to inventory endpoints
|
||||
'inventory:write': Allows write access to inventory endpoints
|
||||
schemas:
|
||||
ApiError:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
CapEventReason:
|
||||
$ref: ./schemas/capEventReason.yml
|
||||
CapType:
|
||||
$ref: ./schemas/capType.yml
|
||||
CapTypeWrapper:
|
||||
$ref: ./schemas/capTypeWrapper.yml
|
||||
DemandSubAccountInventoryCap:
|
||||
$ref: ./schemas/demandSubAccountInventoryCap.yml
|
||||
DemandSubAccountInventoryCapEvent:
|
||||
$ref: ./schemas/demandSubAccountInventoryCapEvent.yml
|
||||
DemandSubAccountInventoryCapCreateData:
|
||||
$ref: ./schemas/demandSubAccountInventoryCapCreateData.yml
|
||||
DemandSubAccountInventoryCapUpdateData:
|
||||
$ref: ./schemas/demandSubAccountInventoryCapUpdateData.yml
|
||||
ProductType:
|
||||
$ref: ../core/schemas/productType.yml
|
||||
StaticOfferInventoryCap:
|
||||
$ref: ./schemas/staticOfferInventoryCap.yml
|
||||
StaticOfferInventoryCapUpdateData:
|
||||
$ref: ./schemas/staticOfferInventoryCapUpdateData.yml
|
||||
StaticOfferInventoryCapCreateData:
|
||||
$ref: ./schemas/staticOfferInventoryCapCreateData.yml
|
||||
StaticOfferInventoryCapStatus:
|
||||
$ref: ./schemas/staticOfferInventoryCapStatus.yml
|
||||
StaticOfferInventoryCapEvent:
|
||||
$ref: ./schemas/staticOfferInventoryCapEvent.yml
|
||||
VersionDiff:
|
||||
$ref: ./schemas/versionDiff.yml
|
||||
tags:
|
||||
- name: Demand Sub-Account Inventory Cap
|
||||
description: >-
|
||||
Inventory caps set against demand sub-accounts. A means to control the
|
||||
amount of traffic going towards a specific demand sub-account
|
||||
- name: Static Offer Inventory Cap
|
||||
description: >-
|
||||
Inventory caps set against static offers. Represents a static offer that
|
||||
Partner Solutions does not want to have too high of an attributed revenue
|
||||
or attributed clicks
|
||||
paths:
|
||||
/staticOfferInventoryCaps:
|
||||
get:
|
||||
x-lint-skip:
|
||||
- index-endpoint-has-limit
|
||||
summary: Get static offer inventory caps
|
||||
description: >-
|
||||
Return a list of StaticOfferInventoryCaps, filtered by search criteria
|
||||
provided in the URL
|
||||
operationId: getStaticOfferInventoryCaps
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
parameters:
|
||||
- name: id
|
||||
in: query
|
||||
description: A comma separated list of StaticOfferInventoryCap ids
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
minimum: 0
|
||||
style: form
|
||||
required: false
|
||||
deprecated: false
|
||||
allowEmptyValue: true
|
||||
- name: staticOfferId
|
||||
in: query
|
||||
description: A comma separated list of StaticOffer ids
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
minimum: 0
|
||||
style: form
|
||||
required: false
|
||||
deprecated: false
|
||||
allowEmptyValue: true
|
||||
- name: subAccountId
|
||||
in: query
|
||||
description: A comma separated list of SubAccount ids
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
minimum: 1
|
||||
style: form
|
||||
required: false
|
||||
deprecated: false
|
||||
allowEmptyValue: true
|
||||
- name: capType
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./schemas/capType.yml
|
||||
- name: productType
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ProductType'
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCap'
|
||||
'400':
|
||||
description: Invalid request
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ApiError'
|
||||
post:
|
||||
summary: Create a static offer inventory cap
|
||||
description: create a static offer inventory cap
|
||||
operationId: createStaticOfferInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:write'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/staticOfferInventoryCapCreateData.yml
|
||||
responses:
|
||||
'201':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCap'
|
||||
'400':
|
||||
description: Invalid request
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
'/staticOfferInventoryCaps/{id}':
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
delete:
|
||||
summary: Delete a static offer inventory cap
|
||||
description: Delete a static offer inventory cap
|
||||
operationId: deleteStaticOfferInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:write'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
responses:
|
||||
'204':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCap'
|
||||
'404':
|
||||
description: Unknown ID
|
||||
put:
|
||||
summary: Update a static offer inventory cap
|
||||
description: Update a static offer inventory cap
|
||||
operationId: updateStaticOfferInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:write'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/staticOfferInventoryCapUpdateData.yml
|
||||
responses:
|
||||
'204':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCap'
|
||||
'400':
|
||||
description: Invalid request
|
||||
get:
|
||||
summary: Get a static offer inventory cap
|
||||
description: Get a static offer inventory cap
|
||||
operationId: getStaticOfferInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCap'
|
||||
'404':
|
||||
description: Unknown ID
|
||||
'/staticOfferInventoryCaps/{id}/versionDiff':
|
||||
x-lint-skip:
|
||||
- path-resource-is-plural
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
get:
|
||||
summary: Get a version diff of a static offer inventory cap
|
||||
description: Get a version diff of a static offer inventory cap
|
||||
operationId: getStaticOfferInventoryCapVersionDiff
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/versionDiff.yml
|
||||
'404':
|
||||
description: Unknown ID
|
||||
/filterDemandSubAccounts:
|
||||
get:
|
||||
summary: Filter capped sub-account IDs
|
||||
description: >
|
||||
Return a filtered list of sub-account IDs that have not reached cap
|
||||
limit,
|
||||
|
||||
given a list of sub-account IDs
|
||||
operationId: filterCappedSubAccountIds
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
parameters:
|
||||
- name: limit
|
||||
in: query
|
||||
required: true
|
||||
description: The maximum number of resources to include in the results.
|
||||
schema:
|
||||
type: integer
|
||||
format: int32
|
||||
minimum: 1
|
||||
- name: subAccountIds
|
||||
in: query
|
||||
description: A comma separated list of SubAccount IDs
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
minimum: 1
|
||||
style: form
|
||||
required: true
|
||||
deprecated: false
|
||||
allowEmptyValue: false
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
/calculateDemandSubAccountCaps:
|
||||
post:
|
||||
summary: Refresh demand sub-account inventory cache
|
||||
description: |
|
||||
Refresh `DemandSubAccountInventoryCaps` cache manually
|
||||
operationId: refreshDemandSubAccountInventoryCache
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
/demandSubAccountInventoryCaps:
|
||||
get:
|
||||
x-lint-skip:
|
||||
- index-endpoint-has-limit
|
||||
summary: Get demand sub-account inventory caps
|
||||
description: Return demand sub account inventory caps based upon request parameters
|
||||
operationId: getDemandSubAccountInventoryCaps
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
parameters:
|
||||
- name: id
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
- name: demandSubAccountId
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
- name: capType
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./schemas/capType.yml
|
||||
- name: currentDate
|
||||
in: query
|
||||
schema:
|
||||
type: string
|
||||
format: date
|
||||
- name: productType
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ProductType'
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/DemandSubAccountInventoryCap'
|
||||
'400':
|
||||
description: Invalid request
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
post:
|
||||
summary: Create a demand sub-account inventory cap
|
||||
description: Create a demand-sub account inventory cap
|
||||
operationId: createDemandSubAccountInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:write'
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/demandSubAccountInventoryCapCreateData.yml
|
||||
responses:
|
||||
'201':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/DemandSubAccountInventoryCap'
|
||||
'400':
|
||||
description: Invalid request
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
'/demandSubAccountInventoryCaps/{id}':
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
delete:
|
||||
summary: Delete a demand sub-account inventory cap
|
||||
description: Delete a demand sub-account inventory cap
|
||||
operationId: deleteDemandSubAccountInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:write'
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
responses:
|
||||
'204':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/DemandSubAccountInventoryCap'
|
||||
'404':
|
||||
description: Unknown ID
|
||||
put:
|
||||
summary: Update a demand sub-account inventory cap
|
||||
description: Update a demand sub0-account inventory cap
|
||||
operationId: updateDemandSubAccountInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:write'
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/demandSubAccountInventoryCapUpdateData.yml
|
||||
responses:
|
||||
'204':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/DemandSubAccountInventoryCap'
|
||||
'400':
|
||||
description: Invalid request
|
||||
get:
|
||||
summary: Get a demand sub-account inventory cap
|
||||
description: Get a demand sub-account inventory cap
|
||||
operationId: getDemandSubAccountInventoryCap
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
tags:
|
||||
- Demand Sub-Account Inventory Cap
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/DemandSubAccountInventoryCap'
|
||||
'404':
|
||||
description: Unknown ID
|
||||
/staticOfferInvetoryCapsStatuses:
|
||||
get:
|
||||
summary: Get static offer inventory cap statuses
|
||||
description: Get static offer inventory cap statuses
|
||||
operationId: getStaticOfferInventoryCapStatuses
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCapStatus'
|
||||
'402':
|
||||
description: Payment required
|
||||
'/staticOfferInventoryCapsStatus/{id}':
|
||||
x-lint-skip:
|
||||
- path-resource-is-plural
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
get:
|
||||
summary: Get the status of a static offer invetory cap
|
||||
description: Get the status of a static offer invetory cap
|
||||
operationId: getStaticOfferInventoryCapStatus
|
||||
security:
|
||||
- oauth:
|
||||
- 'inventory:read'
|
||||
tags:
|
||||
- Static Offer Inventory Cap
|
||||
responses:
|
||||
'200':
|
||||
description: Success
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/StaticOfferInventoryCapStatus'
|
||||
'402':
|
||||
description: Payment required
|
||||
@ -0,0 +1,48 @@
|
||||
summary: A credit card lead request
|
||||
value:
|
||||
{
|
||||
"productTypes": [
|
||||
"credit_card"
|
||||
],
|
||||
"personalInformation": {
|
||||
"firstName": "John",
|
||||
"lastName": "Doe",
|
||||
"email": "john@example.com",
|
||||
"city": "New York",
|
||||
"state": "NY",
|
||||
"primaryPhone": "2125556789",
|
||||
"address1": "45 West 21st Street",
|
||||
"address2": "5th Floor",
|
||||
"zipcode": "10010",
|
||||
"dateOfBirth": "1993-10-09"
|
||||
},
|
||||
"creditCardInformation": {
|
||||
"allowAnnualFee": true,
|
||||
"cardPurposes": [
|
||||
"travel_incentives"
|
||||
]
|
||||
},
|
||||
"creditInformation": {
|
||||
"providedCreditRating": "excellent",
|
||||
"providedNumericCreditScore": 750
|
||||
},
|
||||
"financialInformation": {
|
||||
"employmentStatus": "employed",
|
||||
"employmentPayFrequency": "weekly",
|
||||
"annualIncome": 120000
|
||||
},
|
||||
"legalInformation": {
|
||||
"consentsToFcra": true,
|
||||
"consentsToTcpa": true,
|
||||
"tcpaLanguage": "I agree to be contacted by Example Co and its partners at the telephone number(s) I have provided above to explore personal loan offers, including contact through automatic dialing systems, artificial or pre-recorded voice messaging, or text message. I understand my consent is not required as a condition to purchasing any goods or services from anyone."
|
||||
},
|
||||
"clientTags": {
|
||||
"hello": [
|
||||
"world",
|
||||
"there"
|
||||
],
|
||||
"something": [
|
||||
"else"
|
||||
]
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,113 @@
|
||||
summary: A lead request
|
||||
value:
|
||||
{
|
||||
"productTypes": [
|
||||
"loan",
|
||||
"savings"
|
||||
],
|
||||
"personalInformation": {
|
||||
"firstName": "John",
|
||||
"lastName": "Doe",
|
||||
"email": "john@example.com",
|
||||
"city": "New York",
|
||||
"state": "NY",
|
||||
"workPhone": "2125551234",
|
||||
"primaryPhone": "2125556789",
|
||||
"address1": "45 West 21st Street",
|
||||
"address2": "5th Floor",
|
||||
"zipcode": "10010",
|
||||
"monthsAtAddress": 5,
|
||||
"driversLicenseNumber": "111222333",
|
||||
"driversLicenseState": "NY",
|
||||
"ipAddress": "8.8.8.8",
|
||||
"activeMilitary": false,
|
||||
"militaryVeteran": true,
|
||||
"dateOfBirth": "1993-10-09",
|
||||
"ssn": "111-22-3333"
|
||||
},
|
||||
"loanInformation": {
|
||||
"purpose": "debt_consolidation",
|
||||
"loanAmount": 10000
|
||||
},
|
||||
"mortgageInformation": {
|
||||
"propertyType": "condo",
|
||||
"propertyStatus": "own_with_mortgage",
|
||||
"propertyValue": 200000,
|
||||
"mortgageBalance": 10000,
|
||||
"lenderName": "Bank OF NY",
|
||||
"hasFHALoan": true,
|
||||
"currentWithLoan": true
|
||||
},
|
||||
"creditCardInformation": {
|
||||
"allowAnnualFee": true,
|
||||
"cardPurposes": [
|
||||
"travel_incentives"
|
||||
]
|
||||
},
|
||||
"savingsInformation": {
|
||||
"minDepositAmount": 1000
|
||||
},
|
||||
"creditInformation": {
|
||||
"providedCreditRating": "excellent",
|
||||
"providedNumericCreditScore": 750
|
||||
},
|
||||
"financialInformation": {
|
||||
"employmentStatus": "employed",
|
||||
"employmentPayFrequency": "weekly",
|
||||
"annualIncome": 120000,
|
||||
"monthlyNetIncome": 10000,
|
||||
"bankName": "Santander",
|
||||
"bankRoutingNumber": "231372691",
|
||||
"bankAccountType": "savings",
|
||||
"monthsAtBank": 10,
|
||||
"bankAccountNumber": "1234567890"
|
||||
},
|
||||
"employmentInformation": {
|
||||
"employerName": "Example Co",
|
||||
"employerAddress": "45 W 21st St",
|
||||
"employerCity": "New York",
|
||||
"employerState": "NY",
|
||||
"employerZip": "10010",
|
||||
"jobTitle": "Software Engineer",
|
||||
"monthsEmployed": 14,
|
||||
"directDeposit": true,
|
||||
"payDate1": "2004-10-06",
|
||||
"payDate2": "2004-11-06"
|
||||
},
|
||||
"educationInformation": {
|
||||
"educationLevel": "masters",
|
||||
"graduateDegreeType": "master_of_science",
|
||||
"universityAttended": "Johns Hopkins University"
|
||||
},
|
||||
"coApplicantInformation": {
|
||||
"firstName": "Jane",
|
||||
"lastName": "Doe",
|
||||
"dateOfBirth": "1984-03-06",
|
||||
"annualIncome": 100000,
|
||||
"streetAddress1": "45 West 21st Street",
|
||||
"streetAddress2": "5th Floor",
|
||||
"city": "New York",
|
||||
"state": "NY",
|
||||
"zipcode": "10010"
|
||||
},
|
||||
"healthInformation": {
|
||||
"gender": "male",
|
||||
"heightInInches": 72,
|
||||
"weightInPounds": 195,
|
||||
"tobaccoSmoker": false,
|
||||
},
|
||||
"legalInformation": {
|
||||
"consentsToFcra": true,
|
||||
"consentsToTcpa": true,
|
||||
"tcpaLanguage": "I agree to be contacted by Example Co and its partners at the telephone number(s) I have provided above to explore personal loan offers, including contact through automatic dialing systems, artificial or pre-recorded voice messaging, or text message. I understand my consent is not required as a condition to purchasing any goods or services from anyone."
|
||||
},
|
||||
"clientTags": {
|
||||
"hello": [
|
||||
"world",
|
||||
"there"
|
||||
],
|
||||
"something": [
|
||||
"else"
|
||||
]
|
||||
}
|
||||
}
|
||||
67
Tests/Fixtures/acme/birch-catalog/lead/examples/loanLead.yml
Normal file
67
Tests/Fixtures/acme/birch-catalog/lead/examples/loanLead.yml
Normal file
@ -0,0 +1,67 @@
|
||||
summary: A loan lead request
|
||||
value:
|
||||
{
|
||||
"productTypes": [
|
||||
"loan",
|
||||
"other"
|
||||
],
|
||||
"personalInformation": {
|
||||
"firstName": "John",
|
||||
"lastName": "Doe",
|
||||
"email": "john@example.com",
|
||||
"city": "New York",
|
||||
"state": "NY",
|
||||
"primaryPhone": "2125556789",
|
||||
"address1": "45 West 21st Street",
|
||||
"address2": "5th Floor",
|
||||
"zipcode": "10010",
|
||||
"dateOfBirth": "1993-10-09",
|
||||
"ssn": "111-22-3333"
|
||||
},
|
||||
"loanInformation": {
|
||||
"purpose": "debt_consolidation",
|
||||
"loanAmount": 10000
|
||||
},
|
||||
"mortgageInformation": {
|
||||
"propertyStatus": "own_with_mortgage"
|
||||
},
|
||||
"creditInformation": {
|
||||
"providedCreditRating": "excellent",
|
||||
"providedNumericCreditScore": 750
|
||||
},
|
||||
"financialInformation": {
|
||||
"employmentStatus": "employed",
|
||||
"employmentPayFrequency": "weekly",
|
||||
"annualIncome": 120000,
|
||||
},
|
||||
"educationInformation": {
|
||||
"educationLevel": "masters",
|
||||
"graduateDegreeType": "master_of_science",
|
||||
"universityAttended": "Johns Hopkins University"
|
||||
},
|
||||
"coApplicantInformation": {
|
||||
"firstName": "Jane",
|
||||
"lastName": "Doe",
|
||||
"dateOfBirth": "1984-03-06",
|
||||
"annualIncome": 100000,
|
||||
"streetAddress1": "45 West 21st Street",
|
||||
"streetAddress2": "5th Floor",
|
||||
"city": "New York",
|
||||
"state": "NY",
|
||||
"zipcode": "10010"
|
||||
},
|
||||
"legalInformation": {
|
||||
"consentsToFcra": true,
|
||||
"consentsToTcpa": true,
|
||||
"tcpaLanguage": "I agree to be contacted by Example Co and its partners at the telephone number(s) I have provided above to explore personal loan offers, including contact through automatic dialing systems, artificial or pre-recorded voice messaging, or text message. I understand my consent is not required as a condition to purchasing any goods or services from anyone."
|
||||
},
|
||||
"clientTags": {
|
||||
"hello": [
|
||||
"world",
|
||||
"there"
|
||||
],
|
||||
"something": [
|
||||
"else"
|
||||
]
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,27 @@
|
||||
summary: A savings lead request
|
||||
value:
|
||||
{
|
||||
"productTypes": [
|
||||
"savings"
|
||||
],
|
||||
"personalInformation": {
|
||||
"state": "NY",
|
||||
"zipcode": "10010",
|
||||
},
|
||||
"creditInformation": {
|
||||
"providedCreditRating": "excellent",
|
||||
"providedNumericCreditScore": 750
|
||||
},
|
||||
"savingsInformation": {
|
||||
"minDepositAmount": 1000
|
||||
},
|
||||
"clientTags": {
|
||||
"hello": [
|
||||
"world",
|
||||
"there"
|
||||
],
|
||||
"something": [
|
||||
"else"
|
||||
]
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,8 @@
|
||||
name: name
|
||||
in: query
|
||||
description: Part of a university name for search
|
||||
schema:
|
||||
type: string
|
||||
examples:
|
||||
with-name-johns:
|
||||
value: johns
|
||||
@ -0,0 +1,11 @@
|
||||
description: Invalid Body
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../../core/schemas/apiError.yml
|
||||
example:
|
||||
- message: >-
|
||||
Cannot parse parameter uuid as UUID: Invalid UUID string:
|
||||
123
|
||||
@ -0,0 +1,9 @@
|
||||
description: Invalid UUID
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../../core/schemas/apiError.yml
|
||||
example:
|
||||
- message: Lead UUID is invalid
|
||||
@ -0,0 +1,7 @@
|
||||
description: Lead created
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ../schemas/leadUuid.yml
|
||||
example:
|
||||
uuid: 81c08fb9-559a-4bab-948c-ba38f8dd0dcc
|
||||
@ -0,0 +1,5 @@
|
||||
description: Lead found
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ../schemas/leadResponseJson.yml
|
||||
@ -0,0 +1,6 @@
|
||||
type: string
|
||||
enum:
|
||||
- checking
|
||||
- savings
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,6 @@
|
||||
type: string
|
||||
enum:
|
||||
- morning
|
||||
- afternoon
|
||||
- evening
|
||||
- night
|
||||
152
Tests/Fixtures/acme/birch-catalog/lead/schemas/cardBenefits.yml
Normal file
152
Tests/Fixtures/acme/birch-catalog/lead/schemas/cardBenefits.yml
Normal file
@ -0,0 +1,152 @@
|
||||
type: string
|
||||
description: Benefits or benefit categories related to a credit card
|
||||
enum:
|
||||
- No Foreign Transaction Fees
|
||||
- Purchase Protection
|
||||
- Return Protection
|
||||
- Price Protection
|
||||
- Fraud Protection
|
||||
- Extended Warranty
|
||||
- Travel Accident Insurance
|
||||
- Trip Interruption Insurance
|
||||
- Car Rental Insurance
|
||||
- Baggage Insurance
|
||||
- Baggage Delay Insurance
|
||||
- Hotel Burglary Insurance
|
||||
- Travel & Emergency Assistance
|
||||
- Roadside Assistance
|
||||
- Concierge Service
|
||||
- Lounge Access
|
||||
- Identity Theft Assistance
|
||||
- In-Flight Savings
|
||||
- Free Checked Bag
|
||||
- Priority Boarding
|
||||
- No Blackout Dates
|
||||
- Free Companion Ticket
|
||||
- Discount Companion Ticket
|
||||
- Global Entry or TSA PreCheck
|
||||
- Private Jet Perks
|
||||
- Lounge Access Discount
|
||||
- 24/7 Cardholder Support
|
||||
- Authorized User
|
||||
- Entertainment Access
|
||||
- Airline Fee Credit
|
||||
- Late Fee Pass
|
||||
- Credit Score Reporting
|
||||
- No Flight Change Fees
|
||||
- 24/7 Account Monitoring
|
||||
- Amex Offers
|
||||
- Visa Signature Offers
|
||||
- MasterCard Offers
|
||||
- Free Hotel Stay
|
||||
- Extended Hotel Stay
|
||||
- Dining Concierge
|
||||
- 2 Lounge Passes
|
||||
- Hilton Honors Silver Membership
|
||||
- Hilton Honors Gold Membership
|
||||
- World of Hyatt Discoverist Status
|
||||
- SPG Gold Membership
|
||||
- Marriott Rewards Silver Status
|
||||
- Hertz Presidents Circle Elite Status
|
||||
- 2 Free Checked Bags
|
||||
- Auto Discounts
|
||||
- InCircle Partnership
|
||||
- ShopRunner
|
||||
- WiFi Access
|
||||
- ShopSafe
|
||||
- BoA Preferred Rewards
|
||||
- MasterCard Fuel Rewards Network
|
||||
- Missed Event Ticket Protection
|
||||
- Account Freezing
|
||||
- Cell Phone Protection
|
||||
- GPA Rewards
|
||||
- In-Flight WiFi Credit
|
||||
- Citi Private Pass
|
||||
- Priceless Cities
|
||||
- The Hotel Collection
|
||||
- By Invitation Only
|
||||
- Luxury Hotel Collection
|
||||
- Expedia+ Silver Status
|
||||
- Expedia+ Gold Status
|
||||
- $100 American Airlines Discount
|
||||
- Disney Parks Perks and Savings
|
||||
- Ritz-Carlton Gold Elite Status
|
||||
- Ritz-Carlton Club Level Upgrade
|
||||
- Annual Travel Credit
|
||||
- IHG Platinum Elite Status
|
||||
- QuickBooks Connect
|
||||
- ReceiptMatch
|
||||
- Employee Spending Limits
|
||||
- FX International Payments
|
||||
- No Pre-Set Spending Limit
|
||||
- Purchase Financing
|
||||
- Amex Open Savings
|
||||
- Amazon Special Financing
|
||||
- $100 Ritz-Carlton Hotel Credit
|
||||
- British Airways Companion Ticket
|
||||
- Mercedes-Benz Gift Certificates
|
||||
- Mercedes-Benz Excess Mileage Waiver
|
||||
- JetBlue Annual Statement Credit
|
||||
- 20% Discount on Delta Flights for Delta Private Jet Members
|
||||
- Expense Report Features
|
||||
- Business Cell Phone Protection
|
||||
- Free Shipping on most Target.com orders
|
||||
- 30 Extra Days for Returns
|
||||
- Free clothing altertaions
|
||||
- Personal shopping
|
||||
- Shopmyway Savings
|
||||
- Online Subscription Credit
|
||||
- Uber Exclusive Access
|
||||
- Airline Benefits
|
||||
- Hotel Benefits
|
||||
- Other Travel Benefits
|
||||
- Emergency Assistance
|
||||
- Experiences
|
||||
- Shopping Benefits
|
||||
- Cardholder Benefits
|
||||
- Enhanced Security
|
||||
- Business Benefits
|
||||
- Other Benefits
|
||||
- In-Flight Discounts
|
||||
- Fee Coverage
|
||||
- Flight Credits & Discounts
|
||||
- Hotel Membership Status
|
||||
- Hotel Credit & Free Stays
|
||||
- Travel Credit
|
||||
- Travel Experiences Programs
|
||||
- Car Rental Membership Status
|
||||
- Extra Gas Rewards
|
||||
- Shopping Protection
|
||||
- Shopping Discounts
|
||||
- Free Shipping
|
||||
- The Boingo American Express Preferred Plan
|
||||
- AirSpace Lounge
|
||||
- Uber Monthly Credit
|
||||
- Ride Share Benefits
|
||||
- Delta Sky Club
|
||||
- Admirals Club Membership
|
||||
- Priority Pass Select Membership (Prestige)
|
||||
- Priority Pass Select Membership (Standard Plus)
|
||||
- Daily Breakfast
|
||||
- Early Check-in & Late Check-out
|
||||
- Room Upgrades
|
||||
- Complementary WiFi
|
||||
- Amex Hotel Collection Credit
|
||||
- Temporary Account Numbers
|
||||
- One-Time 50% Discount on Companion Ticket
|
||||
- Airline Travel Credit
|
||||
- United Club Membership
|
||||
- Chip Technology
|
||||
- Earn More Miles for Sharing Travel Stories
|
||||
- Mastercard World Elite Concierge and Luxury Travel Benefits
|
||||
- 20% Savings on Delta In-Flight Purchases
|
||||
- 25% Savings on United In-Flight Food and Drink Purchases
|
||||
- $100 Hilton Properties Credit
|
||||
- $250 Hilton Resort Credit
|
||||
- Hilton Honors Diamond Membership
|
||||
- Free Birthday Gift
|
||||
- 2x Points During Your Birthday Month
|
||||
- Car Rental VIP Perks
|
||||
- Free shipping with the purchase of a bra
|
||||
- Monthly Dining Credit
|
||||
- Amazon Prime Student
|
||||
@ -0,0 +1,12 @@
|
||||
type: string
|
||||
description: Purposes or categories related to a credit card
|
||||
enum:
|
||||
- balance_transfer
|
||||
- cash_back
|
||||
- earning_rewards
|
||||
- improve_credit
|
||||
- low_interest
|
||||
- new_to_credit
|
||||
- student
|
||||
- travel_incentives
|
||||
- unknown
|
||||
@ -0,0 +1,7 @@
|
||||
type: string
|
||||
description: Citizenship status
|
||||
enum:
|
||||
- citizen
|
||||
- permanent_resident
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,12 @@
|
||||
type: object
|
||||
description: Arbitrary key-values mappings to associate with a `Lead`. This field can be use to attach `subid`s to a `Lead`
|
||||
additionalProperties:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
maxProperties: 1
|
||||
minProperties: 1
|
||||
example:
|
||||
{
|
||||
"subid": ["123"]
|
||||
}
|
||||
@ -0,0 +1,28 @@
|
||||
type: object
|
||||
description: |
|
||||
The personal information of a co-applicant that may be considered in the
|
||||
underwriting and approval of a loan.
|
||||
properties:
|
||||
firstName:
|
||||
type: string
|
||||
lastName:
|
||||
type: string
|
||||
dateOfBirth:
|
||||
type: string
|
||||
format: date
|
||||
annualIncome:
|
||||
type: integer
|
||||
format: int32
|
||||
streetAddress1:
|
||||
type: string
|
||||
description: Street address (primary address line)
|
||||
streetAddress2:
|
||||
type: string
|
||||
description: Secondary address line
|
||||
city:
|
||||
type: string
|
||||
state:
|
||||
$ref: ../../core/schemas/state-lead.yml
|
||||
zipCode:
|
||||
type: string
|
||||
pattern: ^\d{5}([-\s]\d{4})?$
|
||||
@ -0,0 +1,9 @@
|
||||
type: object
|
||||
properties:
|
||||
allowAnnualFee:
|
||||
type: boolean
|
||||
cardPurposes:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./cardPurposes.yml
|
||||
description: A list of card purposes in which the lead is interested
|
||||
@ -0,0 +1,9 @@
|
||||
type: object
|
||||
description: Credit history information relating to a `Lead`
|
||||
properties:
|
||||
providedCreditRating:
|
||||
$ref: ./providedCreditRating.yml
|
||||
providedNumericCreditScore:
|
||||
type: integer
|
||||
format: int32
|
||||
description: FICO credit score provided by a `Lead`
|
||||
@ -0,0 +1,49 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- supplySubAccountId
|
||||
- supplySubAccountUuid
|
||||
- durationMinutes
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
A unique, internal identifier for this resource.
|
||||
supplySubAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
The ID of the supply sub-account for this configuration.
|
||||
supplySubAccountUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the supply sub-account for this configuration.
|
||||
durationMinutes:
|
||||
type: integer
|
||||
format: int32
|
||||
description: |
|
||||
The number of minutes to look back when looking for duplicate leads.
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
description: |
|
||||
When the resource was created.
|
||||
createdBy:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the access token that was used to create this resource.
|
||||
deletedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
description: |
|
||||
When the resource was deleted.
|
||||
deletedBy:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the access token that was used to delete this resource.
|
||||
@ -0,0 +1,46 @@
|
||||
type: object
|
||||
properties:
|
||||
educationLevel:
|
||||
$ref: ./educationLevel.yml
|
||||
graduateDegreeType:
|
||||
$ref: ./graduateDegreeType.yml
|
||||
universityAttended:
|
||||
type: string
|
||||
description: |
|
||||
Name of university where a lead received their undergraduate degree.
|
||||
A lookup service for possible universities is available from using the /leads/universities endpoint.
|
||||
To maximize returned offers, this string must match one of the names returned from the lookup.
|
||||
deprecated: true
|
||||
graduationDate:
|
||||
type: string
|
||||
format: date
|
||||
description: Date the lead graudated from undergrad (YYYY-MM-DD)
|
||||
deprecated: true
|
||||
graduateGraduationDate:
|
||||
type: string
|
||||
format: date
|
||||
description: Lead's graduate school graduation date (YYYY-MM-DD)
|
||||
graduateLastAttendedDate:
|
||||
type: string
|
||||
format: date
|
||||
description: Lead's last attended month/year for graduate school (YYYY-MM-DD)
|
||||
graduateUniversityAttended:
|
||||
type: string
|
||||
description: |
|
||||
Name of university where a lead received their graduate degree.
|
||||
A lookup service for possible universities is available from using the /leads/universities endpoint.
|
||||
To maximize returned offers, this string must match one of the names returned from the lookup.
|
||||
undergraduateGraduationDate:
|
||||
type: string
|
||||
format: date
|
||||
description: Date the lead graduated from undergrad (YYYY-MM-DD).
|
||||
undergraduateLastAttendedDate:
|
||||
type: string
|
||||
format: date
|
||||
description: Lead's last attended month/year for undergrad (YYYY-MM-DD)
|
||||
undergraduateUniversityAttended:
|
||||
type: string
|
||||
description: |
|
||||
Name of university where a lead received their undergraduate degree.
|
||||
A lookup service for possible universities is available from using the /leads/universities endpoint.
|
||||
To maximize returned offers, this string must match one of the names returned from the lookup.
|
||||
@ -0,0 +1,13 @@
|
||||
type: string
|
||||
enum:
|
||||
- high_school
|
||||
- associate
|
||||
- bachelors
|
||||
- masters
|
||||
- doctorate
|
||||
- other_grad_degree
|
||||
- certificate
|
||||
- did_not_graduate
|
||||
- still_enrolled
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,34 @@
|
||||
type: object
|
||||
properties:
|
||||
employerName:
|
||||
type: string
|
||||
employerAddress:
|
||||
type: string
|
||||
employerAddress2:
|
||||
type: string
|
||||
employerCity:
|
||||
type: string
|
||||
employerPhone:
|
||||
type: string
|
||||
employerState:
|
||||
type: string
|
||||
employerZip:
|
||||
type: string
|
||||
jobTitle:
|
||||
type: string
|
||||
monthsEmployed:
|
||||
type: integer
|
||||
format: int32
|
||||
directDeposit:
|
||||
type: boolean
|
||||
description: Whether a `Lead` uses direct deposit for their salary
|
||||
payDate1:
|
||||
type: string
|
||||
format: date
|
||||
payDate2:
|
||||
type: string
|
||||
format: date
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
description: The date the lead started working at their current employer (YYYY-MM-DD)
|
||||
@ -0,0 +1,7 @@
|
||||
type: string
|
||||
enum:
|
||||
- weekly
|
||||
- biweekly
|
||||
- twice_monthly
|
||||
- monthly
|
||||
- unknown
|
||||
@ -0,0 +1,10 @@
|
||||
type: string
|
||||
enum:
|
||||
- employed_full_time
|
||||
- employed_part_time
|
||||
- military
|
||||
- not_employed
|
||||
- self_employed
|
||||
- retired
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,42 @@
|
||||
type: object
|
||||
properties:
|
||||
employmentStatus:
|
||||
$ref: ./employmentStatus.yml
|
||||
employmentPayFrequency:
|
||||
$ref: ./employmentPayFrequency.yml
|
||||
annualIncome:
|
||||
type: integer
|
||||
format: int32
|
||||
monthlyNetIncome:
|
||||
type: integer
|
||||
format: int32
|
||||
bankName:
|
||||
type: string
|
||||
bankRoutingNumber:
|
||||
type: string
|
||||
bankAccountType:
|
||||
$ref: ./bankAccountType.yml
|
||||
monthsAtBank:
|
||||
type: integer
|
||||
format: int32
|
||||
bankAccountNumber:
|
||||
type: string
|
||||
monthlyDebt:
|
||||
type: integer
|
||||
format: int32
|
||||
totalAssets:
|
||||
type: integer
|
||||
format: int32
|
||||
monthlyHousingPayment:
|
||||
type: integer
|
||||
format: int32
|
||||
availableAssets:
|
||||
type: integer
|
||||
format: int32
|
||||
additionalIncome:
|
||||
type: integer
|
||||
format: int32
|
||||
description: The amount of additional income the lead recieves
|
||||
additionalIncomeFrequency:
|
||||
$ref: ./employmentPayFrequency.yml
|
||||
description: The frequency the lead recieves additional income
|
||||
@ -0,0 +1,6 @@
|
||||
type: string
|
||||
enum:
|
||||
- male
|
||||
- female
|
||||
- unknown
|
||||
|
||||
@ -0,0 +1,30 @@
|
||||
type: string
|
||||
enum:
|
||||
- doctor_of_medicine
|
||||
- doctor_of_osteopathic_medicine
|
||||
- doctor_of_optometry
|
||||
- doctor_of_dental_medicine
|
||||
- dentariae_medicinae_doctoris
|
||||
- doctor_of_dental_surgery
|
||||
- doctor_of_veterinary_medicine
|
||||
- doctor_of_pharmacy
|
||||
- veterinariae_medicinae_doctoris
|
||||
- master_of_arts
|
||||
- master_of_science
|
||||
- master_of_research
|
||||
- master_of_research_project
|
||||
- master_of_studies
|
||||
- master_of_business_administration
|
||||
- master_of_library_science
|
||||
- master_of_public_administration
|
||||
- master_of_public_health
|
||||
- master_of_laws
|
||||
- master_of_arts_liberal_studies
|
||||
- master_of_fine_arts
|
||||
- master_of_music
|
||||
- master_of_education
|
||||
- master_of_engineering
|
||||
- master_of_architecture
|
||||
- juris_doctor
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,12 @@
|
||||
type: object
|
||||
properties:
|
||||
gender:
|
||||
$ref: ./gender.yml
|
||||
heightInInches:
|
||||
type: integer
|
||||
format: int32
|
||||
weightInPounds:
|
||||
type: integer
|
||||
format: int32
|
||||
tobaccoSmoker:
|
||||
type: boolean
|
||||
@ -0,0 +1,5 @@
|
||||
type: string
|
||||
enum:
|
||||
- driver_license
|
||||
- state_id
|
||||
- passport
|
||||
@ -0,0 +1,11 @@
|
||||
type: object
|
||||
properties:
|
||||
idNumber:
|
||||
type: string
|
||||
description: The ID number supplied by the lead
|
||||
idState:
|
||||
type: string
|
||||
description: The state of issue of the supplied ID
|
||||
idType:
|
||||
$ref: ./idType.yml
|
||||
description: The form of the ID number supplied by the lead
|
||||
@ -0,0 +1,38 @@
|
||||
type: object
|
||||
required:
|
||||
- uuid
|
||||
- actionType
|
||||
- actionDate
|
||||
- demandSubAccountId
|
||||
- createdAt
|
||||
properties:
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
actionType:
|
||||
$ref: ./leadActionType.yml
|
||||
actionDate:
|
||||
type: string
|
||||
format: date-time
|
||||
originatorKey:
|
||||
type: string
|
||||
demandSubAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
rejectReason:
|
||||
$ref: ./rejectReason.yml
|
||||
amount:
|
||||
type: integer
|
||||
format: int32
|
||||
originationFee:
|
||||
type: integer
|
||||
format: int32
|
||||
offerClickId:
|
||||
type: integer
|
||||
format: int64
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
deletedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
@ -0,0 +1,19 @@
|
||||
type: string
|
||||
enum:
|
||||
- initialized
|
||||
- api_rejected
|
||||
- api_approved
|
||||
- api_listing
|
||||
- clicked_referral_link
|
||||
- clicked_special_offer_link
|
||||
- special_offer_conversion
|
||||
- applied
|
||||
- rejected
|
||||
- approved
|
||||
- listed
|
||||
- funded
|
||||
- not_funded
|
||||
- clicked_credit_card_offer_link
|
||||
- clicked_mortgage_offer_link
|
||||
- clicked_savings_offer_link
|
||||
- unknown
|
||||
@ -0,0 +1,69 @@
|
||||
type: object
|
||||
properties:
|
||||
productTypes:
|
||||
type: array
|
||||
description: Product types in which the `Lead` is interested
|
||||
items:
|
||||
$ref: ../../core/schemas/productType.yml
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: Primary UUID for a `Lead`
|
||||
sessionUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: UUID used to link leads across verticals, unique per user per supply sub-account
|
||||
loanInformation:
|
||||
$ref: ./loanInformation.yml
|
||||
personalInformation:
|
||||
$ref: ./personalInformation.yml
|
||||
personalReferenceInformation:
|
||||
$ref: ./personalReferenceInformation.yml
|
||||
mortgageInformation:
|
||||
$ref: ./mortgageInformation.yml
|
||||
creditCardInformation:
|
||||
$ref: ./creditCardInformation.yml
|
||||
savingsInformation:
|
||||
$ref: ./savingsInformation.yml
|
||||
creditInformation:
|
||||
$ref: ./creditInformation.yml
|
||||
financialInformation:
|
||||
$ref: ./financialInformation.yml
|
||||
employmentInformation:
|
||||
$ref: ./employmentInformation.yml
|
||||
legalInformation:
|
||||
$ref: ./legalInformation.yml
|
||||
educationInformation:
|
||||
$ref: ./educationInformation.yml
|
||||
coApplicantInformation:
|
||||
$ref: ./coApplicantInformation.yml
|
||||
healthInformation:
|
||||
$ref: ./healthInformation.yml
|
||||
refinanceLoans:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./refinanceLoanInformation.yml
|
||||
description: One or more loans that the lead wishes to refinance or consolidate
|
||||
identificationInformation:
|
||||
$ref: ./identificationInformation.yml
|
||||
clientTags:
|
||||
$ref: ./clientTags.yml
|
||||
sessionInformation:
|
||||
$ref: ./sessionInformation.yml
|
||||
formCompleted:
|
||||
type: boolean
|
||||
description: Whether the `Lead` has completed an application form
|
||||
deprecated: true
|
||||
referralCompanyUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: UUID of company from which the `Lead` was referred
|
||||
deprecated: true
|
||||
trackingUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
# TODO this may need to be hidden
|
||||
description: UUID for internal Example Co tracking purposes. This field should never be set by 3rd party API consumers
|
||||
deprecated: true
|
||||
example:
|
||||
$ref: ../examples/leadRequestJson.yml
|
||||
@ -0,0 +1,87 @@
|
||||
type: object
|
||||
required:
|
||||
- leadProviderName
|
||||
- uuid
|
||||
- companyUUID
|
||||
- isTest
|
||||
- status
|
||||
- createdAt
|
||||
- updatedAt
|
||||
properties:
|
||||
leadProviderName:
|
||||
type: string
|
||||
description: Name of company which provided the lead
|
||||
personalInformation:
|
||||
$ref: ./personalInformation.yml
|
||||
personalReferenceInformation:
|
||||
$ref: ./personalReferenceInformation.yml
|
||||
loanInformation:
|
||||
$ref: ./loanInformation.yml
|
||||
mortgageInformation:
|
||||
$ref: ./mortgageInformation.yml
|
||||
creditCardInformation:
|
||||
$ref: ./creditCardInformation.yml
|
||||
savingsInformation:
|
||||
$ref: ./savingsInformation.yml
|
||||
creditInformation:
|
||||
$ref: ./creditInformation.yml
|
||||
financialInformation:
|
||||
$ref: ./financialInformation.yml
|
||||
employmentInformation:
|
||||
$ref: ./employmentInformation.yml
|
||||
legalInformation:
|
||||
$ref: ./legalInformation.yml
|
||||
educationInformation:
|
||||
$ref: ./educationInformation.yml
|
||||
coApplicantInformation:
|
||||
$ref: ./coApplicantInformation.yml
|
||||
healthInformation:
|
||||
$ref: ./healthInformation.yml
|
||||
identificationInformation:
|
||||
$ref: ./identificationInformation.yml
|
||||
lifeInsuranceInformation:
|
||||
$ref: ./lifeInsuranceInformation.yml
|
||||
refinanceLoans:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./refinanceLoanInformation.yml
|
||||
clientTags:
|
||||
$ref: ./clientTags.yml
|
||||
sessionInformation:
|
||||
$ref: ./sessionInformation.yml
|
||||
leadActions:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./leadActionResponse.yml
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: Primary UUID for a `Lead`
|
||||
companyUUID:
|
||||
type: string
|
||||
format: uuid
|
||||
description: UUID for a company which created the `Lead`
|
||||
sessionUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: UUID used to link leads across verticals, unique per user per supply sub-account
|
||||
referralCompanyUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
deprecated: true
|
||||
trackingUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
isTest:
|
||||
type: boolean
|
||||
description: Whether a `Lead` was created using a test access token
|
||||
status:
|
||||
description: The furthest step of the funnel a `Lead` has reached
|
||||
allOf:
|
||||
- $ref: ./leadActionType.yml
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
updatedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
@ -0,0 +1,20 @@
|
||||
type: object
|
||||
required:
|
||||
- leads
|
||||
- offset
|
||||
- limit
|
||||
- count
|
||||
properties:
|
||||
leads:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./leadResponseJson.yml
|
||||
offset:
|
||||
type: integer
|
||||
format: int32
|
||||
limit:
|
||||
type: integer
|
||||
format: int32
|
||||
count:
|
||||
type: integer
|
||||
format: int32
|
||||
@ -0,0 +1,8 @@
|
||||
type: object
|
||||
required:
|
||||
- uuid
|
||||
properties:
|
||||
uuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: UUID corresponding to the created `Lead`
|
||||
@ -0,0 +1,15 @@
|
||||
type: object
|
||||
description: Information regarding a `Lead`'s communication concent
|
||||
properties:
|
||||
consentsToFcra:
|
||||
type: boolean
|
||||
description: Whether the lead was shown, and consented to a Fair Credit Reporting Act notice
|
||||
consentsToTcpa:
|
||||
type: boolean
|
||||
description: Whether the lead was shown, and consented to a Telephone Consumer Protection Act notice
|
||||
tcpaLanguage:
|
||||
type: string
|
||||
description: The exact text to which the lead consented
|
||||
consentsToSms:
|
||||
type: boolean
|
||||
description: The lead agrees to recieve SMS text messages from the Financial Institution
|
||||
@ -0,0 +1,21 @@
|
||||
type: object
|
||||
title: Life insurance information
|
||||
description: Life insurance information
|
||||
required:
|
||||
- carrier
|
||||
- duration
|
||||
- policyAmount
|
||||
properties:
|
||||
carrier:
|
||||
type: string
|
||||
description: >
|
||||
Carrier of the policy
|
||||
duration:
|
||||
type: integer
|
||||
format: int64
|
||||
description: >
|
||||
Duration, in years
|
||||
policyAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
description: Policy amount, in dollars
|
||||
@ -0,0 +1,7 @@
|
||||
type: object
|
||||
properties:
|
||||
purpose:
|
||||
$ref: ./purpose.yml
|
||||
loanAmount:
|
||||
type: integer
|
||||
format: int32
|
||||
@ -0,0 +1,78 @@
|
||||
type: object
|
||||
properties:
|
||||
propertyType:
|
||||
$ref: ./propertyType.yml
|
||||
propertyValue:
|
||||
type: integer
|
||||
format: int32
|
||||
mortgageBalance:
|
||||
type: integer
|
||||
format: int32
|
||||
lenderName:
|
||||
type: string
|
||||
hasFHALoan:
|
||||
type: boolean
|
||||
currentWithLoan:
|
||||
type: boolean
|
||||
propertyStatus:
|
||||
$ref: ./propertyStatus.yml
|
||||
mortgageType:
|
||||
$ref: ./mortgageType.yml
|
||||
mortgageAmount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: Amount the lead will borrow
|
||||
downPaymentAmount:
|
||||
type: integer
|
||||
format: int32
|
||||
propertyState:
|
||||
type: string
|
||||
propertyCounty:
|
||||
type: string
|
||||
propertyAddress1:
|
||||
type: string
|
||||
description: Street address (primary address line)
|
||||
propertyAddress2:
|
||||
type: string
|
||||
description: Secondary address line
|
||||
propertyZipcode:
|
||||
type: string
|
||||
propertyCity:
|
||||
type: string
|
||||
refinanceAmount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: Amount the lead will borrow for refinancing an existing mortgage
|
||||
cashOutAmount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: Additional amount the lead will borrow against existing home equity in the case of refinance
|
||||
occupancyType:
|
||||
$ref: ./occupancyType.yml
|
||||
refinanceType:
|
||||
$ref: ./refinanceType.yml
|
||||
propertySearchStatus:
|
||||
$ref: ./propertySearchStatus.yml
|
||||
numUnits:
|
||||
type: integer
|
||||
format: int32
|
||||
description: The number of legal units on the property
|
||||
closingDate:
|
||||
type: string
|
||||
format: date
|
||||
purchaseStatus:
|
||||
$ref: ./purchaseStatus.yml
|
||||
purchaseDate:
|
||||
type: string
|
||||
format: date
|
||||
monthlyHoaFee:
|
||||
type: number
|
||||
format: float
|
||||
description: The amount of the HOA fee for the lead
|
||||
mortgageCompany:
|
||||
type: string
|
||||
description: The name of the company holding the lead's mortgage
|
||||
mortgageEscrowAmount:
|
||||
type: number
|
||||
format: float
|
||||
description: The amount of escrow the lead pays
|
||||
@ -0,0 +1,5 @@
|
||||
type: string
|
||||
enum:
|
||||
- purchase
|
||||
- refinance
|
||||
- unknown
|
||||
@ -0,0 +1,19 @@
|
||||
type: object
|
||||
required:
|
||||
- durationMinutes
|
||||
properties:
|
||||
supplySubAccountId:
|
||||
type: integer
|
||||
format: int64
|
||||
description: |
|
||||
The ID of the supply sub-account for this configuration.
|
||||
supplySubAccountUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
description: |
|
||||
The UUID of the supply sub-account for this configuration.
|
||||
durationMinutes:
|
||||
type: integer
|
||||
format: int32
|
||||
description: |
|
||||
The number of minutes to look back when looking for duplicate leads.
|
||||
@ -0,0 +1,6 @@
|
||||
type: string
|
||||
enum:
|
||||
- primary
|
||||
- secondary
|
||||
- investment
|
||||
- unknown
|
||||
@ -0,0 +1,69 @@
|
||||
type: object
|
||||
properties:
|
||||
firstName:
|
||||
type: string
|
||||
lastName:
|
||||
type: string
|
||||
aliasFirstName:
|
||||
type: string
|
||||
description: The first name the lead uses as an alias
|
||||
aliasLastName:
|
||||
type: string
|
||||
description: The last name the lead uses as an alias
|
||||
email:
|
||||
$ref: ../../core/schemas/email.yml
|
||||
city:
|
||||
type: string
|
||||
state:
|
||||
$ref: ../../core/schemas/state-lead.yml
|
||||
workPhone:
|
||||
type: string
|
||||
pattern: ^1?\d{10}$
|
||||
primaryPhone:
|
||||
type: string
|
||||
pattern: ^1?\d{10}$
|
||||
bestTimeToCall:
|
||||
$ref: ./bestTimeToCall.yml
|
||||
address1:
|
||||
type: string
|
||||
description: Street address (primary address line)
|
||||
address2:
|
||||
type: string
|
||||
description: Secondary address line
|
||||
addressMoveInDate:
|
||||
type: string
|
||||
format: date
|
||||
description: The date the lead moved into their current address
|
||||
zipcode:
|
||||
type: string
|
||||
pattern: ^\d{5}([-\s]\d{4})?$
|
||||
monthsAtAddress:
|
||||
type: integer
|
||||
format: int32
|
||||
description: Number of months the provided address has been the lead's primary residence
|
||||
driversLicenseNumber:
|
||||
type: string
|
||||
driversLicenseState:
|
||||
type: string
|
||||
description: State in which the driver's license was issued
|
||||
ipAddress:
|
||||
type: string
|
||||
format: ip
|
||||
description: IP address
|
||||
activeMilitary:
|
||||
type: boolean
|
||||
description: Whether the lead is currently in the military (not a veteran)
|
||||
militaryVeteran:
|
||||
type: boolean
|
||||
description: Whether the lead is a veteran (should not be used if the lead is active in the military)
|
||||
dateOfBirth:
|
||||
type: string
|
||||
format: date
|
||||
educationLevel:
|
||||
deprecated: true
|
||||
allOf:
|
||||
- $ref: ./educationLevel.yml
|
||||
ssn:
|
||||
$ref: ../../core/schemas/ssn.yml
|
||||
citizenshipStatus:
|
||||
$ref: ./citizenshipStatus.yml
|
||||
@ -0,0 +1,15 @@
|
||||
type: object
|
||||
properties:
|
||||
firstName:
|
||||
type: string
|
||||
description: The first name of the personal reference supplied by the lead
|
||||
lastName:
|
||||
type: string
|
||||
description: The last name of the personal reference supplied by the lead
|
||||
primaryPhone:
|
||||
type: string
|
||||
pattern: ^1?\d{10}$
|
||||
description: The phone number of the personal reference supplied by the lead
|
||||
relationType:
|
||||
$ref: ./personalReferenceRelationType.yml
|
||||
description: The relation of the personal reference supplied by the lead
|
||||
@ -0,0 +1,10 @@
|
||||
type: string
|
||||
enum:
|
||||
- parent
|
||||
- employer
|
||||
- spouse
|
||||
- guardian
|
||||
- sibling
|
||||
- relative
|
||||
- friend
|
||||
- other
|
||||
@ -0,0 +1,28 @@
|
||||
type: string
|
||||
description: A type of financial product
|
||||
enum:
|
||||
# credit_card
|
||||
- credit_card
|
||||
- secured_card
|
||||
|
||||
# loan
|
||||
- personal_loan
|
||||
- student_loan_refinance
|
||||
- co_applicant_loan
|
||||
- line_of_credit
|
||||
|
||||
# mortgage
|
||||
- purchase
|
||||
- refinance
|
||||
|
||||
# savings
|
||||
- savings_account
|
||||
- money_market_account
|
||||
- certificate_of_deposit
|
||||
- individual_retirement_account
|
||||
- cash_management_account
|
||||
- high_interest_checking
|
||||
|
||||
# life_insurance
|
||||
- accidental_death_benefits
|
||||
- term_life
|
||||
@ -0,0 +1,10 @@
|
||||
type: string
|
||||
enum:
|
||||
- credit_card
|
||||
- insurance
|
||||
- life_insurance
|
||||
- loan
|
||||
- mortgage
|
||||
- savings
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,5 @@
|
||||
type: string
|
||||
enum:
|
||||
- found
|
||||
- not_found
|
||||
- unknown
|
||||
@ -0,0 +1,6 @@
|
||||
type: string
|
||||
enum:
|
||||
- own_outright
|
||||
- own_with_mortgage
|
||||
- rent
|
||||
- unknown
|
||||
@ -0,0 +1,8 @@
|
||||
type: string
|
||||
enum:
|
||||
- rent
|
||||
- condo
|
||||
- multi_unit
|
||||
- single_family
|
||||
- townhouse
|
||||
- unknown
|
||||
@ -0,0 +1,8 @@
|
||||
type: string
|
||||
enum:
|
||||
- excellent
|
||||
- good
|
||||
- fair
|
||||
- poor
|
||||
- limited
|
||||
- unknown
|
||||
@ -0,0 +1,7 @@
|
||||
type: string
|
||||
enum:
|
||||
- no_offer
|
||||
- offer_accepted
|
||||
- offer_pending
|
||||
- under_contract
|
||||
- unknown
|
||||
32
Tests/Fixtures/acme/birch-catalog/lead/schemas/purpose.yml
Normal file
32
Tests/Fixtures/acme/birch-catalog/lead/schemas/purpose.yml
Normal file
@ -0,0 +1,32 @@
|
||||
type: string
|
||||
enum:
|
||||
- auto_purchase
|
||||
- auto_refinance
|
||||
- baby
|
||||
- boat
|
||||
- business
|
||||
- car_repair
|
||||
- cosmetic
|
||||
- credit_card_refi
|
||||
- debt_consolidation
|
||||
- emergency
|
||||
- engagement
|
||||
- green
|
||||
- home_improvement
|
||||
- home_purchase
|
||||
- home_refi
|
||||
- household_expenses
|
||||
- large_purchases
|
||||
- life_event
|
||||
- medical_dental
|
||||
- motorcycle
|
||||
- moving_relocation
|
||||
- rv
|
||||
- special_occasion
|
||||
- student_loan
|
||||
- student_loan_refi
|
||||
- taxes
|
||||
- vacation
|
||||
- wedding
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,31 @@
|
||||
type: object
|
||||
title: Refinance loan information
|
||||
properties:
|
||||
accountNumber:
|
||||
type: string
|
||||
description: The account number for a loan the lead is refinancing
|
||||
incomeBasedRepayment:
|
||||
type: boolean
|
||||
description: If the repayment is income-based for a loan the lead is refinancing
|
||||
interestRate:
|
||||
type: number
|
||||
format: float
|
||||
description: The interest rate for a loan the lead is refinancing
|
||||
loanAmount:
|
||||
type: integer
|
||||
format: int32
|
||||
description: The loan amount for a loan the lead is refinancing
|
||||
loanServicer:
|
||||
type: string
|
||||
description: The name of a loan servicer of a loan the lead is refinancing
|
||||
loanType:
|
||||
$ref: ./refinanceLoanType.yml
|
||||
description: The loan type for a loan the lead is refinancing
|
||||
nextPaymentAmount:
|
||||
type: number
|
||||
format: float
|
||||
description: The amount the next payment will be on a loan the lead is refinancing
|
||||
nextPaymentDate:
|
||||
type: string
|
||||
format: date
|
||||
description: The next payment date for a loan the lead is refinancing
|
||||
@ -0,0 +1,4 @@
|
||||
type: string
|
||||
enum:
|
||||
- federal_student_loan
|
||||
- private_student_loan
|
||||
@ -0,0 +1,5 @@
|
||||
type: string
|
||||
enum:
|
||||
- cash_out
|
||||
- rate_term
|
||||
- unknown
|
||||
@ -0,0 +1,11 @@
|
||||
type: string
|
||||
enum:
|
||||
- low_fico
|
||||
- no_fico
|
||||
- major_derogatory
|
||||
- underwriting_decline
|
||||
- debt_to_income_ratio
|
||||
- not_in_active_state
|
||||
- incorrect_data_provided
|
||||
- duplicate
|
||||
- unknown
|
||||
@ -0,0 +1,6 @@
|
||||
type: object
|
||||
properties:
|
||||
minDepositAmount:
|
||||
type: integer
|
||||
format: int64
|
||||
description: The minimum amount a `Lead` is interesting in depositing when opening a new savings account
|
||||
@ -0,0 +1,7 @@
|
||||
type: object
|
||||
description: Browsing session information accociated with a `Lead`
|
||||
properties:
|
||||
ipAddress:
|
||||
type: string
|
||||
userAgent:
|
||||
type: string
|
||||
@ -0,0 +1,21 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- opeId
|
||||
- name
|
||||
- createdAt
|
||||
- createdByUuid
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
opeId:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
createdByUuid:
|
||||
type: string
|
||||
format: uuid
|
||||
650
Tests/Fixtures/acme/birch-catalog/lead/spec.yml
Normal file
650
Tests/Fixtures/acme/birch-catalog/lead/spec.yml
Normal file
@ -0,0 +1,650 @@
|
||||
openapi: 3.0.3
|
||||
info:
|
||||
title: lead
|
||||
description: Capture and calculate financial informations for our partners
|
||||
version: 1.4.0
|
||||
contact:
|
||||
name: Offers Chapter
|
||||
url: >-
|
||||
https://example.com/docs/api-team
|
||||
servers:
|
||||
- url: 'https://api.example.com'
|
||||
description: Prod
|
||||
- url: 'https://dev-api.example.com'
|
||||
description: Dev
|
||||
components:
|
||||
securitySchemes:
|
||||
oauth:
|
||||
type: oauth2
|
||||
flows:
|
||||
clientCredentials:
|
||||
tokenUrl: /auth/accessTokens
|
||||
scopes:
|
||||
'svc-lead:leads:insert': Allows write access to `Leads`
|
||||
'svc-lead:leads:insert-test': >-
|
||||
Disables non-test write access to `Leads`. An access token with
|
||||
this scope can _only_ create test `Lead`s
|
||||
'svc-lead:leads:readAll': Allows read access to all `Lead`s
|
||||
'svc-lead:admin:read': Allows reads on admin endpoints in lead
|
||||
'svc-lead:admin:write': Allows writes on admin endpoints in lead
|
||||
schemas:
|
||||
ApiError:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
AprType:
|
||||
$ref: ../originator/schemas/aprType.yml
|
||||
BankAccountType:
|
||||
$ref: ./schemas/bankAccountType.yml
|
||||
BestTimeToCall:
|
||||
$ref: ./schemas/bestTimeToCall.yml
|
||||
BonusPersonalization:
|
||||
$ref: ../offer-augmentation/schemas/bonusPersonalization.yml
|
||||
CardBenefits:
|
||||
$ref: ../lead/schemas/cardBenefits.yml
|
||||
CardPurpose:
|
||||
$ref: ./schemas/cardPurposes.yml
|
||||
CardType:
|
||||
$ref: ../originator/schemas/cardType.yml
|
||||
CitizenshipStatus:
|
||||
$ref: ./schemas/citizenshipStatus.yml
|
||||
ClientTags:
|
||||
$ref: ./schemas/clientTags.yml
|
||||
CoApplicantInformation:
|
||||
$ref: ./schemas/coApplicantInformation.yml
|
||||
CreditCardInformation:
|
||||
$ref: ./schemas/creditCardInformation.yml
|
||||
CreditInformation:
|
||||
$ref: ./schemas/creditInformation.yml
|
||||
CreditCardIntroOfferType:
|
||||
$ref: ../originator/schemas/introOfferType.yml
|
||||
CreditCardOffer:
|
||||
$ref: ../originator/schemas/creditCardOffer.yml
|
||||
CreditCardOfferDetails:
|
||||
$ref: ../originator/schemas/creditCardOfferDetails.yml
|
||||
DeduplicationConfiguration:
|
||||
$ref: ./schemas/deduplicationConfiguration.yml
|
||||
DeduplicationConfigurationSort:
|
||||
type: string
|
||||
enum:
|
||||
- id
|
||||
- supplySubAccountId
|
||||
- durationMinutes
|
||||
- createdAt
|
||||
- deletedAt
|
||||
DemandPartner:
|
||||
$ref: ../originator/schemas/demandPartner.yml
|
||||
EarningBonus:
|
||||
$ref: ../offer-augmentation/schemas/earningBonus.yml
|
||||
EarningBonusName:
|
||||
$ref: ../offer-augmentation/schemas/earningBonusName.yml
|
||||
EarningBonusType:
|
||||
$ref: ../offer-augmentation/schemas/earningBonusType.yml
|
||||
EarningContext:
|
||||
$ref: ../offer-augmentation/schemas/earningContext.yml
|
||||
EarningContextType:
|
||||
$ref: ../offer-augmentation/schemas/earningContextType.yml
|
||||
EarningGroup:
|
||||
$ref: ../offer-augmentation/schemas/earningGroup.yml
|
||||
EarningItem:
|
||||
$ref: ../offer-augmentation/schemas/earningItem.yml
|
||||
EarningItemPersonalization:
|
||||
$ref: ../offer-augmentation/schemas/earningItemPersonalization.yml
|
||||
EarningItemType:
|
||||
$ref: ../offer-augmentation/schemas/earningItemType.yml
|
||||
EarningProgram:
|
||||
$ref: ../offer-augmentation/schemas/earningProgram.yml
|
||||
EarningProgramPersonalization:
|
||||
$ref: ../offer-augmentation/schemas/earningProgramPersonalization.yml
|
||||
EducationInformation:
|
||||
$ref: ./schemas/educationInformation.yml
|
||||
EducationLevel:
|
||||
$ref: ./schemas/educationLevel.yml
|
||||
EmploymentInformation:
|
||||
$ref: ./schemas/employmentInformation.yml
|
||||
EmploymentPayFrequency:
|
||||
$ref: ./schemas/employmentPayFrequency.yml
|
||||
EmploymentStatus:
|
||||
$ref: ./schemas/employmentStatus.yml
|
||||
FinancialInformation:
|
||||
$ref: ./schemas/financialInformation.yml
|
||||
IdType:
|
||||
$ref: ./schemas/idType.yml
|
||||
Gender:
|
||||
$ref: ./schemas/gender.yml
|
||||
GraduateDegreeType:
|
||||
$ref: ./schemas/graduateDegreeType.yml
|
||||
HealthInformation:
|
||||
$ref: ./schemas/healthInformation.yml
|
||||
IdentificationInformation:
|
||||
$ref: ./schemas/identificationInformation.yml
|
||||
LeadAction:
|
||||
$ref: ./schemas/leadActionResponse.yml
|
||||
LeadActionRejectReason:
|
||||
$ref: ./schemas/rejectReason.yml
|
||||
LeadActionType:
|
||||
$ref: ./schemas/leadActionType.yml
|
||||
LeadRequest:
|
||||
$ref: ./schemas/leadRequestJson.yml
|
||||
LeadResponse:
|
||||
$ref: ./schemas/leadResponseJson.yml
|
||||
LeadResponseWrapper:
|
||||
$ref: ./schemas/leadResponseWrapper.yml
|
||||
LeadUuid:
|
||||
$ref: ./schemas/leadUuid.yml
|
||||
LegalInformation:
|
||||
$ref: ./schemas/legalInformation.yml
|
||||
LifeInsuranceInformation:
|
||||
$ref: ./schemas/lifeInsuranceInformation.yml
|
||||
LoanInformation:
|
||||
$ref: ./schemas/loanInformation.yml
|
||||
LoanOffer:
|
||||
$ref: ../originator/schemas/loanOfferPublic.yml
|
||||
LoanPurpose:
|
||||
$ref: ./schemas/purpose.yml
|
||||
LoanTermUnit:
|
||||
$ref: ../originator/schemas/termUnit.yml
|
||||
Merchant:
|
||||
$ref: ../offer-augmentation/schemas/merchant.yml
|
||||
MerchantCategory:
|
||||
$ref: ../offer-augmentation/schemas/category.yml
|
||||
MorgageAdjustmentType:
|
||||
$ref: ../originator/schemas/adjustmentType.yml
|
||||
MorgageInformation:
|
||||
$ref: ./schemas/mortgageInformation.yml
|
||||
MorgageLoanType:
|
||||
$ref: ../originator/schemas/mortgageLoanType.yml
|
||||
MortgageOccupancyType:
|
||||
$ref: ./schemas/occupancyType.yml
|
||||
MortgageOffer:
|
||||
$ref: ../originator/schemas/mortgageOffer.yml
|
||||
MortgageOfferDetails:
|
||||
$ref: ../originator/schemas/mortgageOfferDetails.yml
|
||||
MortgagePropertySearchStatus:
|
||||
$ref: ./schemas/propertySearchStatus.yml
|
||||
MortgagePropertyStatus:
|
||||
$ref: ./schemas/propertyStatus.yml
|
||||
MortgagePropertyType:
|
||||
$ref: ./schemas/propertyType.yml
|
||||
MortgagePurchaseStatus:
|
||||
$ref: ./schemas/purchaseStatus.yml
|
||||
MortgageRefinanceType:
|
||||
$ref: ./schemas/refinanceType.yml
|
||||
MortgageType:
|
||||
$ref: ./schemas/mortgageType.yml
|
||||
NewDeduplicationConfiguration:
|
||||
$ref: ./schemas/newDeduplicationConfiguration.yml
|
||||
Offer:
|
||||
$ref: ../originator/schemas/offer.yml
|
||||
Order:
|
||||
$ref: ../core/schemas/order.yml
|
||||
Originator:
|
||||
$ref: ../originator/schemas/originator.yml
|
||||
OriginatorImage:
|
||||
$ref: ../originator/schemas/originatorImage.yml
|
||||
PendingResponse:
|
||||
$ref: ../originator/schemas/pendingResponse.yml
|
||||
PersonalInformation:
|
||||
$ref: ./schemas/personalInformation.yml
|
||||
PersonalReferenceInformation:
|
||||
$ref: ./schemas/personalReferenceInformation.yml
|
||||
PersonalReferenceRelationType:
|
||||
$ref: ./schemas/personalReferenceRelationType.yml
|
||||
ProductSubType:
|
||||
$ref: ./schemas/productSubType.yml
|
||||
ProductType:
|
||||
$ref: ../core/schemas/productType.yml
|
||||
ProvidedCreditRating:
|
||||
$ref: ./schemas/providedCreditRating.yml
|
||||
RateTablePublic:
|
||||
$ref: ../originator/schemas/rateTablePublic.yml
|
||||
RefinanceLoanInformation:
|
||||
$ref: ./schemas/refinanceLoanInformation.yml
|
||||
RefinanceLoanType:
|
||||
$ref: ./schemas/refinanceLoanType.yml
|
||||
SavingsCompoundingMethod:
|
||||
$ref: ../originator/schemas/compoundingMethod.yml
|
||||
SavingsInformation:
|
||||
$ref: ./schemas/savingsInformation.yml
|
||||
SavingsOffer:
|
||||
$ref: ../originator/schemas/savingsOffer.yml
|
||||
SavingsOfferDetails:
|
||||
$ref: ../originator/schemas/savingsOfferDetails.yml
|
||||
SessionInformation:
|
||||
$ref: ./schemas/sessionInformation.yml
|
||||
SpecialOffer:
|
||||
$ref: ../originator/schemas/specialOfferPublic.yml
|
||||
State:
|
||||
$ref: ../core/schemas/state-lead.yml
|
||||
TimestampField:
|
||||
type: string
|
||||
enum:
|
||||
- createdAt
|
||||
- updatedAt
|
||||
University:
|
||||
$ref: ./schemas/university.yml
|
||||
tags:
|
||||
- name: Deduplication Configuration
|
||||
description: >-
|
||||
Used to indicate that leads from the specified supply sub-account should
|
||||
be rejected as duplicate if they have an email that has been submitted by
|
||||
any supply partner, within a configurable number of minutes.
|
||||
- name: Lead
|
||||
description: >-
|
||||
The `Lead` object contains information associated with a possible
|
||||
applicant for one or more products.
|
||||
- name: University
|
||||
description: University endpoints used to improve student loan refinance UX
|
||||
paths:
|
||||
/leads:
|
||||
get:
|
||||
x-lint-skip:
|
||||
- index-endpoint-has-limit
|
||||
summary: Get leads
|
||||
operationId: getLeads
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:leads:readAll'
|
||||
tags:
|
||||
- Lead
|
||||
parameters:
|
||||
- name: uuid
|
||||
in: query
|
||||
description: |
|
||||
Limits results to leads with the specified UUIDs.
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
format: uuid
|
||||
- name: email
|
||||
in: query
|
||||
description: |
|
||||
Limits results to leads with the specified email addresses.
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
- name: credit
|
||||
in: query
|
||||
description: >
|
||||
Limits results to leads that have the specified self-assessed credit
|
||||
bands.
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ProvidedCreditRating'
|
||||
- name: timestampField
|
||||
in: query
|
||||
description: >
|
||||
Defines the timestamp to consider for the `from` and `to`
|
||||
parameters.
|
||||
schema:
|
||||
type: string
|
||||
default: createdAt
|
||||
allOf:
|
||||
- $ref: '#/components/schemas/TimestampField'
|
||||
- name: from
|
||||
in: query
|
||||
description: >
|
||||
The earliest timestamp to include in the result set. Will either
|
||||
match against `createdAt` or `updatedAt`, depending on the value of
|
||||
the `timestampField` parameter.
|
||||
schema:
|
||||
type: string
|
||||
format: date-time
|
||||
- name: to
|
||||
in: query
|
||||
description: >
|
||||
The latest timestamp to include in the result set. Will either match
|
||||
against `createdAt` or `updatedAt`, depending on the value of the
|
||||
`timestampField` parameter.
|
||||
schema:
|
||||
type: string
|
||||
format: date-time
|
||||
- name: company
|
||||
in: query
|
||||
description: >
|
||||
Limits the result set to leads belonging the companies with the
|
||||
specified UUIDs
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
format: uuid
|
||||
- name: test
|
||||
in: query
|
||||
description: >
|
||||
When true, only returns test leads; otherwise, only returns non-test
|
||||
leads
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- name: status
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/LeadActionType'
|
||||
- name: sortDirection
|
||||
in: query
|
||||
schema:
|
||||
$ref: '#/components/schemas/Order'
|
||||
- name: offset
|
||||
in: query
|
||||
description: >
|
||||
The number of resources to skip before the first resource in the
|
||||
results.
|
||||
schema:
|
||||
type: integer
|
||||
format: int32
|
||||
default: 0
|
||||
- name: limit
|
||||
in: query
|
||||
description: |
|
||||
The maximum number of resources to include in the results.
|
||||
schema:
|
||||
type: integer
|
||||
format: int32
|
||||
default: 100
|
||||
responses:
|
||||
'200':
|
||||
description: Leads matching the query parameters
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/LeadResponseWrapper'
|
||||
post:
|
||||
summary: Create a lead
|
||||
operationId: createLead
|
||||
tags:
|
||||
- Lead
|
||||
requestBody:
|
||||
description: A lead object
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/leadRequestJson.yml
|
||||
responses:
|
||||
'200':
|
||||
$ref: ./responses/leadCreated.yml
|
||||
'400':
|
||||
$ref: ./responses/invalidLead.yml
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:leads:insert'
|
||||
- 'svc-lead:leads:insert-test'
|
||||
'/leads/{uuid}':
|
||||
parameters:
|
||||
- name: uuid
|
||||
in: path
|
||||
required: true
|
||||
description: The UUID of the lead
|
||||
schema:
|
||||
type: string
|
||||
format: uuid
|
||||
get:
|
||||
summary: Get a lead
|
||||
description: >-
|
||||
Return a `Lead` given its UUID. Depending on the access token scope, the
|
||||
response may contain a subset of a `Lead` object.
|
||||
operationId: getLead
|
||||
tags:
|
||||
- Lead
|
||||
responses:
|
||||
'200':
|
||||
$ref: ./responses/leadFound.yml
|
||||
'400':
|
||||
$ref: ./responses/invalidLeadUuid.yml
|
||||
'404':
|
||||
description: '`Lead` with the given UUID does not exist'
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:leads:readAll'
|
||||
patch:
|
||||
summary: Update a lead
|
||||
description: >-
|
||||
Update a `Lead` by its UUID. Array fields (like `productTypes`) with new
|
||||
values are _merged_ with existing values.
|
||||
operationId: updateLead
|
||||
tags:
|
||||
- Lead
|
||||
requestBody:
|
||||
description: A Lead object
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/leadRequestJson.yml
|
||||
responses:
|
||||
'200':
|
||||
description: Lead updated
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/leadUuid.yml
|
||||
example:
|
||||
uuid: 81c08fb9-559a-4bab-948c-ba38f8dd0dcc
|
||||
links:
|
||||
lead:
|
||||
operationId: LeadController.getLead
|
||||
description: Get the updated `Lead`
|
||||
parameters:
|
||||
uuid: $request.path.uuid
|
||||
'400':
|
||||
description: Invalid data
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
examples:
|
||||
invalid-uuid:
|
||||
value:
|
||||
- message: >-
|
||||
Cannot parse parameter uuid as UUID: Invalid UUID
|
||||
string: 123
|
||||
invalid-body:
|
||||
value:
|
||||
- message: >-
|
||||
Invalid fields present: List(123 is not a valid email),
|
||||
full request: ...
|
||||
'404':
|
||||
description: '`Lead` with the given UUID does not exist'
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:leads:insert'
|
||||
- 'svc-lead:leads:insert-test'
|
||||
/leads/rateTables:
|
||||
post:
|
||||
summary: Submit a lead and get a rate table
|
||||
description: >-
|
||||
A shorthand operation for `POST /leads` followed by a `POST
|
||||
/originator/rateTables`. The response `RateTable` must still be queried
|
||||
until there are no more `pendingResponses`
|
||||
operationId: getRateTableForLead
|
||||
tags:
|
||||
- Lead
|
||||
requestBody:
|
||||
description: A Lead object
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ./schemas/leadRequestJson.yml
|
||||
responses:
|
||||
'200':
|
||||
description: The generated `RateTable`
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ../originator/schemas/rateTablePublic.yml
|
||||
examples:
|
||||
rateTable:
|
||||
value:
|
||||
$ref: ../originator/examples/rateTablePublic.yml
|
||||
'400':
|
||||
description: Bad Request
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../core/schemas/apiError.yml
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:leads:insert'
|
||||
- 'svc-lead:leads:insert-test'
|
||||
/leads/admin/universities:
|
||||
get:
|
||||
summary: Get all available universites (limited to first 10000)
|
||||
operationId: getUniversities
|
||||
tags:
|
||||
- University
|
||||
responses:
|
||||
'200':
|
||||
description: A list of all available universities
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./schemas/university.yml
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:admin:read'
|
||||
/admin/deduplicationConfigurations:
|
||||
get:
|
||||
x-lint-skip:
|
||||
- index-endpoint-has-limit
|
||||
summary: Get deduplication configurations
|
||||
description: Return deduplication configurations based upon request parameters
|
||||
operationId: getDeduplicationConfigurations
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:admin:read'
|
||||
tags:
|
||||
- Deduplication Configuration
|
||||
parameters:
|
||||
- name: id
|
||||
in: query
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
- name: supplySubAccountId
|
||||
in: query
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
- name: supplySubAccountUuid
|
||||
in: query
|
||||
schema:
|
||||
type: string
|
||||
format: uuid
|
||||
- name: includeDeleted
|
||||
in: query
|
||||
schema:
|
||||
type: boolean
|
||||
- name: offset
|
||||
in: query
|
||||
description: >
|
||||
The number of resources to skip before the first resource in the
|
||||
results.
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
default: 0
|
||||
- name: limit
|
||||
in: query
|
||||
description: |
|
||||
The maximum number of resources to include in the results.
|
||||
schema:
|
||||
type: integer
|
||||
format: int32
|
||||
default: 100
|
||||
- name: sortBy
|
||||
in: query
|
||||
description: |
|
||||
The attribute with which to sort the resources.
|
||||
schema:
|
||||
$ref: '#/components/schemas/DeduplicationConfigurationSort'
|
||||
- name: order
|
||||
in: query
|
||||
description: |
|
||||
The direction to use for ordering resources.
|
||||
schema:
|
||||
$ref: '#/components/schemas/Order'
|
||||
responses:
|
||||
'200':
|
||||
description: Deduplication configurations matching the query parameters
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/DeduplicationConfiguration'
|
||||
'400':
|
||||
description: Invalid request provided
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ApiError'
|
||||
post:
|
||||
summary: Create a deduplication configuration
|
||||
description: |
|
||||
Create a deduplication configuration. Must specify exactly one of
|
||||
`supplySubAccountId` or `supplySubAccountUuid`, otherwise an error will
|
||||
be returned.
|
||||
operationId: createDeduplicationConfiguration
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:admin:write'
|
||||
tags:
|
||||
- Deduplication Configuration
|
||||
requestBody:
|
||||
required: true
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/NewDeduplicationConfiguration'
|
||||
responses:
|
||||
'201':
|
||||
description: The deduplication configuration was created successfully
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: '#/components/schemas/DeduplicationConfiguration'
|
||||
'400':
|
||||
description: Invalid request provided
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: array
|
||||
items:
|
||||
$ref: '#/components/schemas/ApiError'
|
||||
'/admin/deduplicationConfigurations/{id}':
|
||||
delete:
|
||||
parameters:
|
||||
- name: id
|
||||
in: path
|
||||
required: true
|
||||
schema:
|
||||
type: integer
|
||||
format: int64
|
||||
summary: Delete a deduplication configuration
|
||||
description: Delete a deduplication configuration
|
||||
operationId: deleteDeduplicationConfiguration
|
||||
security:
|
||||
- oauth:
|
||||
- 'svc-lead:admin:write'
|
||||
tags:
|
||||
- Deduplication Configuration
|
||||
responses:
|
||||
'204':
|
||||
description: The deduplication configuration was successfully deleted.
|
||||
'404':
|
||||
description: No deduplication configuration exists for the specified ID
|
||||
@ -0,0 +1,48 @@
|
||||
type: object
|
||||
title: accountAdjustment
|
||||
required:
|
||||
- id
|
||||
- accountId
|
||||
- amount
|
||||
- adjustmentReason
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
title: Id
|
||||
type: integer
|
||||
format: int64
|
||||
accountId:
|
||||
title: Account Id
|
||||
type: integer
|
||||
format: int64
|
||||
amount:
|
||||
title: Adjustment Amount
|
||||
type: number
|
||||
format: double
|
||||
adjustmentReason:
|
||||
title: Adjustment Reason
|
||||
$ref: ./adjustmentReason.yml
|
||||
memo:
|
||||
title: Memo
|
||||
type: string
|
||||
ledgerItemId:
|
||||
title: Ledger Item Id
|
||||
type: integer
|
||||
format: int64
|
||||
createdAt:
|
||||
title: Created At
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
title: Created By
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
title: Deleted At
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
title: Deleted By
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,20 @@
|
||||
type: object
|
||||
required:
|
||||
- accountId
|
||||
- amount
|
||||
- adjustmentReason
|
||||
properties:
|
||||
accountId:
|
||||
type: integer
|
||||
format: int64
|
||||
amount:
|
||||
type: number
|
||||
format: double
|
||||
adjustmentReason:
|
||||
$ref: ./adjustmentReason.yml
|
||||
memo:
|
||||
title: Memo
|
||||
type: string
|
||||
ledgerItemId:
|
||||
type: integer
|
||||
format: int64
|
||||
@ -0,0 +1,13 @@
|
||||
title: Adjustment Reason
|
||||
type: string
|
||||
enum:
|
||||
- monthly_ten_percent
|
||||
- customer_reporting
|
||||
- savings_revenue
|
||||
- credit_card_revenue
|
||||
- email_revenue
|
||||
- pre_reported
|
||||
- promotional
|
||||
- lead_testing_adjustment
|
||||
- other
|
||||
- unknown
|
||||
@ -0,0 +1,54 @@
|
||||
type: object
|
||||
title: billingCycle
|
||||
required:
|
||||
- id
|
||||
- accountId
|
||||
- ledgerItemType
|
||||
- effectiveAt
|
||||
- termUnit
|
||||
- netD
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
title: Id
|
||||
type: integer
|
||||
format: int64
|
||||
accountId:
|
||||
title: Account Id
|
||||
type: integer
|
||||
format: int64
|
||||
ledgerItemType:
|
||||
title: Ledger Item Type
|
||||
$ref: ./ledgerItemType.yml
|
||||
effectiveAt:
|
||||
title: Effective At
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
title: End Date
|
||||
type: string
|
||||
format: date
|
||||
termUnit:
|
||||
title: Term Unit
|
||||
$ref: ./termUnit.yml
|
||||
netD:
|
||||
title: NetD
|
||||
type: number
|
||||
format: double
|
||||
createdAt:
|
||||
title: Created At
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
title: Created By
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
title: Deleted At
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
title: Deleted By
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,31 @@
|
||||
type: object
|
||||
title: billingCycleCreateData
|
||||
required:
|
||||
- accountId
|
||||
- ledgerItemType
|
||||
- effectiveAt
|
||||
- termUnit
|
||||
- netD
|
||||
properties:
|
||||
accountId:
|
||||
title: Account Id
|
||||
type: integer
|
||||
format: int64
|
||||
ledgerItemType:
|
||||
title: Ledger Item Type
|
||||
$ref: ./ledgerItemType.yml
|
||||
effectiveAt:
|
||||
title: Effective At
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
title: End Date
|
||||
type: string
|
||||
format: date
|
||||
termUnit:
|
||||
title: Term Unit
|
||||
$ref: ./termUnit.yml
|
||||
netD:
|
||||
title: NetD
|
||||
type: number
|
||||
format: double
|
||||
@ -0,0 +1,9 @@
|
||||
type: object
|
||||
title: billingCycleUpdateData
|
||||
required:
|
||||
- endDate
|
||||
properties:
|
||||
endDate:
|
||||
title: End Date
|
||||
type: string
|
||||
format: date
|
||||
@ -0,0 +1,75 @@
|
||||
type: object
|
||||
title: ledgerItem
|
||||
required:
|
||||
- id
|
||||
- accountId
|
||||
- amount
|
||||
- startDate
|
||||
- endDate
|
||||
- dueDate
|
||||
- ledgerItemType
|
||||
- billingCycleId
|
||||
- details
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
title: Id
|
||||
type: integer
|
||||
format: int64
|
||||
accountId:
|
||||
title: Account Id
|
||||
type: integer
|
||||
format: int64
|
||||
amount:
|
||||
title: Amount
|
||||
type: number
|
||||
format: double
|
||||
memo:
|
||||
title: Memo
|
||||
type: string
|
||||
startDate:
|
||||
title: Start Date
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
title: End Date
|
||||
type: string
|
||||
format: date
|
||||
dueDate:
|
||||
title: Due Date
|
||||
type: string
|
||||
format: string
|
||||
ledgerItemType:
|
||||
title: Ledger Item Type
|
||||
$ref: ./ledgerItemType.yml
|
||||
reason:
|
||||
$ref: ./ledgerItemReason.yml
|
||||
previousLedgerItemId:
|
||||
title: Previous Ledger Item Id
|
||||
type: integer
|
||||
format: int64
|
||||
billingCycleId:
|
||||
title: Billing Cycle Id
|
||||
type: integer
|
||||
format: int64
|
||||
details:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./ledgerItemDetail.yml
|
||||
createdAt:
|
||||
title: Created At
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
title: Created By
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
title: Deleted At
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
title: Deleted By
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,37 @@
|
||||
type: object
|
||||
title: ledgerItemAdjustment
|
||||
required:
|
||||
- id
|
||||
- accountAdjustmentId
|
||||
- ledgerItemId
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
title: Id
|
||||
type: integer
|
||||
format: int64
|
||||
accountAdjustmentId:
|
||||
title: Account Adjustment Id
|
||||
type: integer
|
||||
format: int64
|
||||
ledgerItemId:
|
||||
title: Ledger Item Id
|
||||
type: integer
|
||||
format: int64
|
||||
createdAt:
|
||||
title: Created At
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
title: Created By
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
title: Deleted At
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
title: Deleted By
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,14 @@
|
||||
type: object
|
||||
title: ledgerItemCreateData
|
||||
required:
|
||||
- billingCycleId
|
||||
- targetDate
|
||||
properties:
|
||||
billingCycleId:
|
||||
title: Billing Cycle Id
|
||||
type: integer
|
||||
format: int64
|
||||
targetDate:
|
||||
title: Target Date
|
||||
type: string
|
||||
format: date
|
||||
@ -0,0 +1,39 @@
|
||||
type: object
|
||||
title: ledgerItemCsvData
|
||||
required:
|
||||
- ledgerItemId
|
||||
- month
|
||||
- partner
|
||||
- accountRevenue
|
||||
- billDate
|
||||
- dueDate
|
||||
- lineDescription
|
||||
properties:
|
||||
ledgerItemId:
|
||||
title: Ledger Item Id
|
||||
type: integer
|
||||
format: int64
|
||||
month:
|
||||
title: Month
|
||||
$ref: ../../core/schemas/month.yml
|
||||
partner:
|
||||
title: Partner
|
||||
type: string
|
||||
partnerName:
|
||||
title: Partner Name
|
||||
type: string
|
||||
accountRevenue:
|
||||
title: Account Revenue
|
||||
type: number
|
||||
format: double
|
||||
billDate:
|
||||
title: Bill Date
|
||||
type: string
|
||||
format: date
|
||||
dueDate:
|
||||
title: Due Date
|
||||
type: string
|
||||
format: date
|
||||
lineDescription:
|
||||
title: Line Description
|
||||
type: string
|
||||
@ -0,0 +1,45 @@
|
||||
type: object
|
||||
title: ledgerItemDetail
|
||||
required:
|
||||
- id
|
||||
- ledgerItemId
|
||||
- subAccountId
|
||||
- amount
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
title: Id
|
||||
type: integer
|
||||
format: int64
|
||||
ledgerItemId:
|
||||
title: Ledger Item Id
|
||||
type: integer
|
||||
format: int64
|
||||
subAccountId:
|
||||
title: Sub Account Id
|
||||
type: integer
|
||||
format: int64
|
||||
amount:
|
||||
title: Amount
|
||||
type: number
|
||||
format: double
|
||||
contractType:
|
||||
title: Contract Type
|
||||
type: string
|
||||
createdAt:
|
||||
title: Created At
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
title: Created By
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
title: Deleted At
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
title: Deleted By
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,5 @@
|
||||
type: string
|
||||
enum:
|
||||
- standard
|
||||
- settlement
|
||||
- oneOff
|
||||
@ -0,0 +1,39 @@
|
||||
type: object
|
||||
title: ledgerItemReconciliation
|
||||
required:
|
||||
- id
|
||||
- ledgerItemId
|
||||
- reconciliationType
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
title: Id
|
||||
type: integer
|
||||
format: int64
|
||||
ledgerItemId:
|
||||
title: Ledger Item Id
|
||||
type: integer
|
||||
format: int64
|
||||
reconciliationType:
|
||||
title: Reconciliation Type
|
||||
$ref: ./reconciliationType.yml
|
||||
memo:
|
||||
title: Memo
|
||||
type: string
|
||||
createdAt:
|
||||
title: Created At
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
title: Created By
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
title: Deleted At
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
title: Deleted By
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,19 @@
|
||||
type: object
|
||||
title: ledgerItemReconciliationCreateData
|
||||
required:
|
||||
- ledgerItemIds
|
||||
- reconciliationType
|
||||
- memo
|
||||
properties:
|
||||
ledgerItemIds:
|
||||
title: Ledger Item Ids
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
reconciliationType:
|
||||
title: Reconciliation Type
|
||||
$ref: ./reconciliationType.yml
|
||||
memo:
|
||||
title: Memo
|
||||
type: string
|
||||
@ -0,0 +1,8 @@
|
||||
type: object
|
||||
title: ledgerItemRecreateData
|
||||
required:
|
||||
- copyAdjustments
|
||||
properties:
|
||||
copyAdjustments:
|
||||
title: Copy Adjustments
|
||||
type: boolean
|
||||
@ -0,0 +1,27 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- ledgerItemIds
|
||||
- newLedgerItemIds
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
ledgerItemIds:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
newLedgerItemIds:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,12 @@
|
||||
type: object
|
||||
required:
|
||||
- ledgerItemIds
|
||||
- copyAdjustments
|
||||
properties:
|
||||
ledgerItemIds:
|
||||
type: array
|
||||
items:
|
||||
type: integer
|
||||
format: int64
|
||||
copyAdjustments:
|
||||
type: boolean
|
||||
@ -0,0 +1,6 @@
|
||||
title: Ledger Item Type
|
||||
type: string
|
||||
enum:
|
||||
- payable
|
||||
- receivable
|
||||
- unknown
|
||||
@ -0,0 +1,61 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- accountId
|
||||
- accountName
|
||||
- startDate
|
||||
- endDate
|
||||
- reason
|
||||
- calculatedPayout
|
||||
- adjustment
|
||||
- totalPayout
|
||||
- dueDate
|
||||
- reconciliationType
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
accountId:
|
||||
type: integer
|
||||
format: int64
|
||||
accountName:
|
||||
type: string
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
reason:
|
||||
$ref: ./ledgerItemReason.yml
|
||||
calculatedPayout:
|
||||
type: number
|
||||
format: float
|
||||
adjustment:
|
||||
type: number
|
||||
format: float
|
||||
totalPayout:
|
||||
type: number
|
||||
format: float
|
||||
dueDate:
|
||||
type: string
|
||||
format: date
|
||||
reconciliationType:
|
||||
$ref: ./reconciliationType.yml
|
||||
reconciliationTypeUpdateAt:
|
||||
type: string
|
||||
format: date-time
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,55 @@
|
||||
type: object
|
||||
required:
|
||||
- id
|
||||
- accountId
|
||||
- accountName
|
||||
- startDate
|
||||
- endDate
|
||||
- calculatedPayout
|
||||
- adjustment
|
||||
- totalPayout
|
||||
- dueDate
|
||||
- reconciliationType
|
||||
- createdAt
|
||||
- createdBy
|
||||
properties:
|
||||
id:
|
||||
type: integer
|
||||
format: int64
|
||||
accountId:
|
||||
type: integer
|
||||
format: int64
|
||||
accountName:
|
||||
type: string
|
||||
startDate:
|
||||
type: string
|
||||
format: date
|
||||
endDate:
|
||||
type: string
|
||||
format: date
|
||||
calculatedPayout:
|
||||
type: number
|
||||
format: float
|
||||
adjustment:
|
||||
type: number
|
||||
format: float
|
||||
totalPayout:
|
||||
type: number
|
||||
format: float
|
||||
dueDate:
|
||||
type: string
|
||||
format: date
|
||||
reconciliationType:
|
||||
$ref: ./reconciliationType.yml
|
||||
createdAt:
|
||||
type: string
|
||||
format: date-time
|
||||
createdBy:
|
||||
type: string
|
||||
format: uuid
|
||||
deletedAt:
|
||||
type: string
|
||||
format: date-time
|
||||
deletedBy:
|
||||
type: string
|
||||
format: uuid
|
||||
@ -0,0 +1,8 @@
|
||||
title: Reconciliation Type
|
||||
type: string
|
||||
enum:
|
||||
- paid
|
||||
- ignored
|
||||
- unpaid
|
||||
- overdue
|
||||
- unknown
|
||||
@ -0,0 +1,7 @@
|
||||
title: Term Unit
|
||||
type: string
|
||||
enum:
|
||||
- week
|
||||
- bi_monthly
|
||||
- month
|
||||
- unkown
|
||||
1280
Tests/Fixtures/acme/birch-catalog/ledger/spec.yml
Normal file
1280
Tests/Fixtures/acme/birch-catalog/ledger/spec.yml
Normal file
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user