mirror of
https://github.com/invoiceninja/invoiceninja.git
synced 2025-07-09 03:14:30 -04:00
recurring invoices openapi
This commit is contained in:
parent
308e938ce0
commit
5d5e72eaed
@ -14,6 +14,9 @@ tags:
|
|||||||
- name: invoices
|
- name: invoices
|
||||||
description: |
|
description: |
|
||||||
Endpoint definitions for interacting with invoices.
|
Endpoint definitions for interacting with invoices.
|
||||||
|
- name: recurring_invoices
|
||||||
|
description: |
|
||||||
|
Endpoint definitions for interacting with recurring_invoices.
|
||||||
externalDocs:
|
externalDocs:
|
||||||
description: "https://invoiceninja.github.io"
|
description: "https://invoiceninja.github.io"
|
||||||
url: "https://invoiceninja.github.io"
|
url: "https://invoiceninja.github.io"
|
||||||
|
466
openapi/paths/recurring_invoices.yaml
Normal file
466
openapi/paths/recurring_invoices.yaml
Normal file
@ -0,0 +1,466 @@
|
|||||||
|
/api/v1/recurring_invoices:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "List Recurring Invoices"
|
||||||
|
description: |
|
||||||
|
Lists invoices with the option to chain multiple query parameters allowing fine grained filtering of the list.
|
||||||
|
|
||||||
|
operationId: getRecurringInvoices
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- $ref: "#/components/parameters/client_id"
|
||||||
|
- $ref: "#/components/parameters/created_at"
|
||||||
|
- $ref: "#/components/parameters/updated_at"
|
||||||
|
- $ref: "#/components/parameters/is_deleted"
|
||||||
|
- $ref: "#/components/parameters/filter_deleted_clients"
|
||||||
|
- $ref: "#/components/parameters/vendor_id"
|
||||||
|
- name: filter
|
||||||
|
in: query
|
||||||
|
description: |
|
||||||
|
Searches across a range of columns including:
|
||||||
|
- custom_value1
|
||||||
|
- custom_value2
|
||||||
|
- custom_value3
|
||||||
|
- custom_value4
|
||||||
|
required: false
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
example: ?filter=bob
|
||||||
|
- name: client_status
|
||||||
|
in: query
|
||||||
|
description: |
|
||||||
|
A comma separated list of invoice status strings. Valid options include:
|
||||||
|
- all
|
||||||
|
- active
|
||||||
|
- paused
|
||||||
|
- completed
|
||||||
|
required: false
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
example: ?client_status=active,paused
|
||||||
|
- name: sort
|
||||||
|
in: query
|
||||||
|
description: Returns the list sorted by column in ascending or descending order.
|
||||||
|
required: false
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
example: id|desc number|desc balance|asc
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "A list of recurring_invoices"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Adds a RecurringInvoice"
|
||||||
|
description: "Adds an RecurringInvoice to the system"
|
||||||
|
operationId: storeRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the saved RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
/api/v1/recurring_invoices/create:
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Gets a new blank RecurringInvoice object"
|
||||||
|
description: "Returns a blank object with default values"
|
||||||
|
operationId: getRecurringInvoicesCreate
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "A blank RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
"/api/v1/recurring_invoices/{id}":
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Shows an RecurringInvoice"
|
||||||
|
description: "Displays an RecurringInvoice by id"
|
||||||
|
operationId: showRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
description: "The RecurringInvoice Hashed ID"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
put:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Updates an RecurringInvoice"
|
||||||
|
description: "Handles the updating of an RecurringInvoice by id"
|
||||||
|
operationId: updateRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
description: "The RecurringInvoice Hashed ID"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
delete:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Deletes a RecurringInvoice"
|
||||||
|
description: "Handles the deletion of an RecurringInvoice by id"
|
||||||
|
operationId: deleteRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
description: "The RecurringInvoice Hashed ID"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns a HTTP status"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
"/api/v1/recurring_invoices/{id}/edit":
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Shows an RecurringInvoice for editting"
|
||||||
|
description: "Displays an RecurringInvoice by id"
|
||||||
|
operationId: editRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
description: "The RecurringInvoice Hashed ID"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
"/api/v1/recurring_invoice/{invitation_key}/download":
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Download a specific invoice by invitation key"
|
||||||
|
description: "Downloads a specific invoice"
|
||||||
|
operationId: downloadRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: invitation_key
|
||||||
|
in: path
|
||||||
|
description: "The Recurring Invoice Invitation Key"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the recurring invoice pdf"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
/api/v1/recurring_invoices/bulk:
|
||||||
|
post:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Performs bulk actions on an array of recurring_invoices"
|
||||||
|
description: ""
|
||||||
|
operationId: bulkRecurringInvoices
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/index"
|
||||||
|
requestBody:
|
||||||
|
description: "Hashed IDs"
|
||||||
|
required: true
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
type: array
|
||||||
|
items:
|
||||||
|
description: "Array of hashed IDs to be bulk 'actioned"
|
||||||
|
type: integer
|
||||||
|
example: "[0,1,2,3]"
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "The RecurringInvoice response"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
"/api/v1/recurring_invoices/{id}/{action}":
|
||||||
|
get:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Performs a custom action on an RecurringInvoice"
|
||||||
|
description: "Performs a custom action on an RecurringInvoice.\n\n The current range of actions are as follows\n - clone_to_RecurringInvoice\n - clone_to_quote\n - history\n - delivery_note\n - mark_paid\n - download\n - archive\n - delete\n - email"
|
||||||
|
operationId: actionRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
description: "The RecurringInvoice Hashed ID"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
- name: action
|
||||||
|
in: path
|
||||||
|
description: "The action string to be performed"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: clone_to_quote
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
||||||
|
"/api/v1/recurring_invoices/{id}/upload":
|
||||||
|
put:
|
||||||
|
tags:
|
||||||
|
- recurring_invoices
|
||||||
|
summary: "Uploads a document to a recurring_invoice"
|
||||||
|
description: "Handles the uploading of a document to a recurring_invoice"
|
||||||
|
operationId: uploadRecurringInvoice
|
||||||
|
parameters:
|
||||||
|
- $ref: "#/components/parameters/X-API-TOKEN"
|
||||||
|
- $ref: "#/components/parameters/X-Requested-With"
|
||||||
|
- $ref: "#/components/parameters/include"
|
||||||
|
- name: id
|
||||||
|
in: path
|
||||||
|
description: "The RecurringInvoice Hashed ID"
|
||||||
|
required: true
|
||||||
|
schema:
|
||||||
|
type: string
|
||||||
|
format: string
|
||||||
|
example: D2J234DFA
|
||||||
|
responses:
|
||||||
|
200:
|
||||||
|
description: "Returns the RecurringInvoice object"
|
||||||
|
headers:
|
||||||
|
X-MINIMUM-CLIENT-VERSION:
|
||||||
|
$ref: "#/components/headers/X-MINIMUM-CLIENT-VERSION"
|
||||||
|
X-RateLimit-Remaining:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Remaining"
|
||||||
|
X-RateLimit-Limit:
|
||||||
|
$ref: "#/components/headers/X-RateLimit-Limit"
|
||||||
|
content:
|
||||||
|
application/json:
|
||||||
|
schema:
|
||||||
|
$ref: "#/components/schemas/RecurringInvoice"
|
||||||
|
401:
|
||||||
|
$ref: "#/components/responses/401"
|
||||||
|
403:
|
||||||
|
$ref: "#/components/responses/403"
|
||||||
|
422:
|
||||||
|
$ref: "#/components/responses/422"
|
||||||
|
default:
|
||||||
|
$ref: "#/components/responses/default"
|
Loading…
x
Reference in New Issue
Block a user