lib/swagger/render-taxnexus.yaml

371 lines
8.9 KiB
YAML

swagger: "2.0"
info:
version: 1.3.0
title: render
description: Print Rendering Microservice
termsOfService: http://taxnexus.net/terms/
contact:
email: "noc@taxnexus.net"
license:
name: "Proprietary - Copyright (c) 2018-2021 by Taxnexus, Inc."
x-apisguru-categories:
- "compliance"
- "cannabis"
- "tax"
x-origin:
- format: "swagger"
url: "https://docs.taxnexus.net/taxnexus-swagger.json"
version: "2.0"
x-providerName: "taxnexus.net"
securityDefinitions:
ApiKeyAuth:
type: "apiKey"
in: "header"
name: "X-API-Key"
schemes:
- "http"
basePath: "/v1"
host: "render.fabric.tnxs.net:8080"
consumes:
- "application/json"
produces:
- "application/json"
parameters:
X-API-Key:
name: X-API-Key
in: "header"
required: true
type: string
accountIdQuery:
description:
Taxnexus Id of the Account to be used a record retrieval
in: query
name: accountId
required: false
type: string
accountIdQueryRequired:
description:
Taxnexus Id of the Account to be used a record retrieval
in: query
name: accountId
required: true
type: string
countyIdRequiredQuery:
description: The County ID
in: query
name: countyId
required: true
type: string
yearQuery:
description: The year of the report
in: query
name: year
required: false
type: number
format: int64
quarterQuery:
description: The Quarter Number (1,2,3,4) of the report
in: query
name: quarter
required: false
type: number
format: int64
monthQuery:
description: The Month Number (1,2, ..., 12) of the report
in: query
name: month
required: false
type: number
format: int64
dateToQuery:
description: The Ending Date for an object retrieval
in: query
name: dateTo
required: false
type: string
invoiceIdQueryRequired:
description: Taxnexus Id of the Invoice to be retrieved
in: query
name: invoiceId
required: true
type: string
ingestIdQueryRequired:
description: Taxnexus Id of the Invoice to be retrieved
in: query
name: ingestId
required: true
type: string
responses:
AccessForbidden:
description: "Access forbidden, account lacks access"
headers:
Access-Control-Allow-Origin:
type: string
schema:
$ref: "#/definitions/Error"
Conflict:
description: Conflict
headers:
Access-Control-Allow-Origin:
type: string
schema:
$ref: "#/definitions/Error"
DocumentResponse:
headers:
Access-Control-Allow-Origin:
type: string
description: Rendered documents response
schema:
$ref: "#/definitions/DocumentResponse"
InvalidDataError:
headers:
Access-Control-Allow-Origin:
type: string
description: Invalid data was sent
schema:
$ref: "#/definitions/InvalidError"
NotFound:
headers:
Access-Control-Allow-Origin:
type: string
description: Resource was not found
schema:
$ref: "#/definitions/Error"
ServerError:
headers:
Access-Control-Allow-Origin:
type: string
description: Server Internal Error
schema:
$ref: "#/definitions/Error"
Unauthorized:
headers:
Access-Control-Allow-Origin:
type: string
description: "Access unauthorized, invalid API-KEY was used"
schema:
$ref: "#/definitions/Error"
UnprocessableEntity:
headers:
Access-Control-Allow-Origin:
type: string
description: "Unprocessable Entity, likely a bad parameter"
schema:
$ref: "#/definitions/Error"
CORSResponse:
description: CORS OPTIONS response
headers:
Access-Control-Allow-Origin:
type: string
Access-Control-Allow-Headers:
type: string
Access-Control-Allow-Methods:
type: string
Access-Control-Expose-Headers:
type: string
Access-Control-Max-Age:
type: string
Access-Control-Allow-Credentials:
type: string
Cache-Control:
type: string
paths:
/accounts/iq:
get:
description: Generate Taxnexus IQ PDF from an Account ID
operationId: getRenderAccountIQ
parameters:
- $ref: "#/parameters/accountIdQueryRequired"
responses:
"200":
$ref: "#/responses/DocumentResponse"
"401":
$ref: "#/responses/Unauthorized"
"403":
$ref: "#/responses/AccessForbidden"
"404":
$ref: "#/responses/NotFound"
"422":
$ref: "#/responses/UnprocessableEntity"
"500":
$ref: "#/responses/ServerError"
security:
- ApiKeyAuth: []
summary: Generate PDF from an Account ID
tags:
- Account
options:
description: CORS support
operationId: accountIQOptions
responses:
"200":
$ref: "#/responses/CORSResponse"
tags:
- cors
/accounts/profitloss:
get:
description: Generate Profit and Loss PDF from an Account ID
operationId: getRenderAccountPandL
parameters:
- $ref: "#/parameters/accountIdQueryRequired"
responses:
"200":
$ref: "#/responses/DocumentResponse"
"401":
$ref: "#/responses/Unauthorized"
"403":
$ref: "#/responses/AccessForbidden"
"404":
$ref: "#/responses/NotFound"
"422":
$ref: "#/responses/UnprocessableEntity"
"500":
$ref: "#/responses/ServerError"
security:
- ApiKeyAuth: []
summary: Generate PDF from an Account ID
tags:
- Account
options:
description: CORS support
operationId: accountPandLOptions
responses:
"200":
$ref: "#/responses/CORSResponse"
tags:
- cors
/accounts/tax:
get:
description: Return a summary tax report for an Account
operationId: getRenderTaxes
parameters:
- $ref: "#/parameters/accountIdQueryRequired"
- $ref: "#/parameters/yearQuery"
- $ref: "#/parameters/quarterQuery"
- $ref: "#/parameters/monthQuery"
responses:
"200":
$ref: "#/responses/DocumentResponse"
"401":
$ref: "#/responses/Unauthorized"
"403":
$ref: "#/responses/AccessForbidden"
"404":
$ref: "#/responses/NotFound"
"422":
$ref: "#/responses/UnprocessableEntity"
"500":
$ref: "#/responses/ServerError"
security:
- ApiKeyAuth: []
summary: Return Tax Return PDF
tags:
- Tax
options:
description: CORS support
operationId: taxOptions
responses:
"200":
$ref: "#/responses/CORSResponse"
tags:
- cors
definitions:
Document:
properties:
Filename:
type: string
ID:
type: string
ParentID:
type: string
SagaType:
type: string
Title:
type: string
URI:
type: string
type: object
DocumentResponse:
description: An array of reendered documents
properties:
Data:
items:
$ref: "#/definitions/Document"
type: array
Meta:
$ref: "#/definitions/ResponseMeta"
type: object
Error:
properties:
Code:
format: int64
type: integer
Fields:
type: string
Message:
type: string
type: object
InvalidError:
allOf:
- $ref: "#/definitions/Error"
- properties:
details:
items:
type: string
type: array
type: object
Pagination:
properties:
Limit:
format: int64
type: integer
POffset:
format: int64
type: integer
PageSize:
format: int64
type: integer
SetSize:
format: int64
type: integer
type: object
ResponseMeta:
properties:
Contact:
description: Microservice Contact Info
type: string
Copyright:
description: Copyright Info
type: string
License:
description: License Information and Restrictions
type: string
OperationID:
description: Operation ID
type: string
Pagination:
$ref: "#/definitions/Pagination"
RequestIP:
description: Request IP Address
type: string
RequestType:
description: Request Type
type: string
RequestURL:
description: Request URL
type: string
ServerInfo:
description: Data Server Info
type: string
ServerResponseTime:
description: Data Server Response Time (ms)
type: string
ServerTimestamp:
description: Backend Server Timestamp
type: string
TaxnexusAccount:
description:
Taxnexus Account Number used for recording transactions
type: string
type: object