Skip to content
This repository has been archived by the owner on Sep 16, 2024. It is now read-only.

Commit

Permalink
feat: accounting category- Xero, QuickBooks (#592)
Browse files Browse the repository at this point in the history
* xero quickbooks init

* removed the local key revert

* Update index.ts

* endpoint for quickbooks, quickbooks done

* corrected the naming

* added get many endpoint

* get many for qbo, accounts vendor proxy for xero

* added the expense for xero, field.ts, pre and post process

* correction in preprocess and all endpoints,added scopes

* added jwt-decode dependency for decoding jwt token for xero

* corrected the param in xero auth

* delete enpoint for all objects for qbo and xero

* Update disunify.ts for xero

* differentiation url for qbo, there is no such for xero

* Update preprocess.ts

* Update transformSchemaMapping.ts

* Update unify.ts

* images
  • Loading branch information
manish-singh-bisht authored Aug 2, 2024
1 parent b262693 commit fa468c8
Show file tree
Hide file tree
Showing 42 changed files with 4,046 additions and 13 deletions.
117 changes: 117 additions & 0 deletions fern/definition/accounting/account.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
imports:
errors: ../common/errors.yml
types: ../common/types.yml
unified: ../common/unified.yml
associations: ../common/associations.yml

types:
GetAccountResponse:
properties:
status: types.ResponseStatus
result: unknown
GetAccountsResponse:
properties:
status: types.ResponseStatus
next: optional<string>
previous: optional<string>
results: unknown
CreateOrUpdateAccountRequest: unknown
CreateOrUpdateAccountResponse:
properties:
status: types.ResponseStatus
message: string
result: unknown
DeleteAccountResponse:
properties:
status: types.ResponseStatus
message: string

service:
base-path: /accounting/accounts
auth: false
headers:
x-revert-api-token:
type: string
docs: Your official API key for accessing revert apis.
x-revert-t-id:
type: string
docs: The unique customer id used when the customer linked their account.
x-api-version:
type: optional<string>
docs: Optional Revert API version you're using. If missing we default to the latest version of the API.
audiences:
- external
endpoints:
getAccount:
docs: Get details of an account
method: GET
path: /{id}
path-parameters:
id: string
request:
name: GetAccountRequest
query-parameters:
fields: optional<string>
response: GetAccountResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
getAccounts:
docs: Get all the accounts
method: GET
path: ''
request:
name: GetAccountsRequest
query-parameters:
fields: optional<string>
pageSize: optional<string>
cursor: optional<string>
response: GetAccountsResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
createAccount:
docs: Post Account
method: POST
path: ''
request:
name: CreateAccountRequest
body: CreateOrUpdateAccountRequest
query-parameters:
fields: optional<string>
response: CreateOrUpdateAccountResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
updateAccount:
docs: Update Account
method: PATCH
path: /{id}
path-parameters:
id: string
request:
name: UpdateAccountRequest
body: CreateOrUpdateAccountRequest
query-parameters:
fields: optional<string>
response: CreateOrUpdateAccountResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
deleteAccount:
docs: Delete account
method: DELETE
path: /{id}
path-parameters:
id: string
request:
name: DeleteAccountRequest
response: DeleteAccountResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
115 changes: 115 additions & 0 deletions fern/definition/accounting/expense.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
imports:
errors: ../common/errors.yml
types: ../common/types.yml
unified: ../common/unified.yml
associations: ../common/associations.yml

types:
GetExpenseResponse:
properties:
status: types.ResponseStatus
result: unknown
GetExpensesResponse:
properties:
status: types.ResponseStatus
next: optional<string>
previous: optional<string>
results: unknown
CreateOrUpdateExpenseRequest: unknown
CreateOrUpdateExpenseResponse:
properties:
status: types.ResponseStatus
message: string
result: unknown
DeleteExpenseResponse:
properties:
status: types.ResponseStatus
message: string

service:
base-path: /accounting/expenses
auth: false
headers:
x-revert-api-token:
type: string
docs: Your official API key for accessing revert apis.
x-revert-t-id:
type: string
docs: The unique customer id used when the customer linked their account.
x-api-version:
type: optional<string>
docs: Optional Revert API version you're using. If missing we default to the latest version of the API.
audiences:
- external
endpoints:
getExpense:
docs: Get details of an Expense
method: GET
path: /{id}
path-parameters:
id: string
request:
name: GetExpenseRequest
query-parameters:
fields: optional<string>
response: GetExpenseResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
getExpenses:
docs: Get all the expenses
method: GET
path: ''
request:
name: GetExpensesRequest
query-parameters:
fields: optional<string>
pageSize: optional<string>
cursor: optional<string>
response: GetExpensesResponse
createExpense:
docs: Post Expense
method: POST
path: ''
request:
name: CreateExpenseRequest
body: CreateOrUpdateExpenseRequest
query-parameters:
fields: optional<string>
response: CreateOrUpdateExpenseResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
updateExpense:
docs: Update Expense
method: PATCH
path: /{id}
path-parameters:
id: string
request:
name: UpdateExpenseRequest
body: CreateOrUpdateExpenseRequest
query-parameters:
fields: optional<string>
response: CreateOrUpdateExpenseResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
deleteExpense:
docs: Delete Expense
method: DELETE
path: /{id}
path-parameters:
id: string
request:
name: DeleteExpenseRequest
query-parameters:
fields: optional<string>
response: DeleteExpenseResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
43 changes: 43 additions & 0 deletions fern/definition/accounting/proxy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
imports:
errors: ../common/errors.yml
types: ../common/types.yml

types:
ProxyResponse:
properties:
result: unknown
PostProxyRequestBody:
properties:
path: string
body: optional<unknown>
method: string
queryParams: optional<unknown>

service:
base-path: /accounting/proxy
auth: false
headers:
x-revert-api-token:
type: string
docs: Your official API key for accessing revert apis.
x-revert-t-id:
type: string
docs: The unique customer id used when the customer linked their account.
x-api-version:
type: optional<string>
docs: Optional Revert API version you're using. If missing we default to the latest version of the API.
audiences:
- external
endpoints:
tunnel:
docs: Call the native Accounting app's api for a specific connection
method: POST
path: ''
request:
name: PostProxyRequest
body: PostProxyRequestBody
response: ProxyResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
113 changes: 113 additions & 0 deletions fern/definition/accounting/vendor.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
imports:
errors: ../common/errors.yml
types: ../common/types.yml
unified: ../common/unified.yml
associations: ../common/associations.yml

types:
GetVendorResponse:
properties:
status: types.ResponseStatus
result: unknown
GetVendorsResponse:
properties:
status: types.ResponseStatus
next: optional<string>
previous: optional<string>
results: unknown
CreateOrUpdateVendorRequest: unknown
CreateOrUpdateVendorResponse:
properties:
status: types.ResponseStatus
message: string
result: unknown
DeleteVendorResponse:
properties:
status: types.ResponseStatus
message: string

service:
base-path: /accounting/vendors
auth: false
headers:
x-revert-api-token:
type: string
docs: Your official API key for accessing revert apis.
x-revert-t-id:
type: string
docs: The unique customer id used when the customer linked their account.
x-api-version:
type: optional<string>
docs: Optional Revert API version you're using. If missing we default to the latest version of the API.
audiences:
- external
endpoints:
getVendor:
docs: Get details of a Vendor
method: GET
path: /{id}
path-parameters:
id: string
request:
name: GetVendorRequest
query-parameters:
fields: optional<string>
response: GetVendorResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
getVendors:
docs: Get all the Vendors
method: GET
path: ''
request:
name: GetVendorsRequest
query-parameters:
fields: optional<string>
pageSize: optional<string>
cursor: optional<string>
response: GetVendorsResponse
createVendor:
docs: Post Vendor
method: POST
path: ''
request:
name: CreateVendorRequest
body: CreateOrUpdateVendorRequest
query-parameters:
fields: optional<string>
response: CreateOrUpdateVendorResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
updateVendor:
docs: Update Vendor
method: PATCH
path: /{id}
path-parameters:
id: string
request:
name: UpdateVendorRequest
body: CreateOrUpdateVendorRequest
query-parameters:
fields: optional<string>
response: CreateOrUpdateVendorResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
deleteVendor:
docs: Delete Vendor
method: DELETE
path: /{id}
path-parameters:
id: string
request:
name: DeleteVendorRequest
response: DeleteVendorResponse
errors:
- errors.UnAuthorizedError
- errors.InternalServerError
- errors.NotFoundError
Loading

0 comments on commit fa468c8

Please sign in to comment.