1
0
mirror of https://github.com/invoiceninja/invoiceninja.git synced 2024-11-10 05:02:36 +01:00
invoiceninja/swagger.json
2019-09-11 08:22:41 +10:00

6543 lines
197 KiB
JSON

{
"openapi" : "3.0.0",
"servers" : [ {
"description" : "SwaggerHub API Auto Mocking",
"url" : "https://virtserver.swaggerhub.com/InvoiceNinja/invoices/1.0.0"
}, {
"description" : "Invoice Ninja",
"url" : "https://admin.invoiceninja.com/api/v1"
} ],
"info" : {
"description" : "Invoice Ninja. Open Source Invoicing lives here.",
"version" : "1.0.11",
"title" : "Invoice Ninja",
"contact" : {
"email" : "contact@invoiceninja.com",
"url" : "https://www.invoiceninja.com/contact/"
},
"license" : {
"name" : "Attribution Assurance License",
"url" : "https://opensource.org/licenses/AAL"
},
"termsOfService" : "https://www.invoiceninja.com/terms/"
},
"tags" : [ {
"name" : "signup",
"description" : "Create new accounts / companies"
}, {
"name" : "authentication",
"description" : "Authentication"
}, {
"name" : "invoices",
"description" : "Invoice REST endpoints"
}, {
"name" : "recurring_invoices",
"description" : "Recurring invoices REST endpoints"
}, {
"name" : "quotes",
"description" : "Quote REST endpoints"
}, {
"name" : "recurring_quotes",
"description" : "Recurring quotes REST endpoints"
}, {
"name" : "clients",
"description" : "Client REST endpoints"
} ],
"externalDocs" : {
"description" : "http://docs.invoiceninja.com",
"url" : "http://docs.invoiceninja.com"
},
"paths" : {
"/signup" : {
"post" : {
"tags" : [ "signup" ],
"summary" : "Creates a new account and company",
"description" : "Creates a new account and company",
"operationId" : "createCompany",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
} ],
"requestBody" : {
"description" : "User details to add to the new company",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Signup"
}
}
}
},
"responses" : {
"200" : {
"description" : "The company user response",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/NewSignup"
}
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/login" : {
"post" : {
"tags" : [ "authentication" ],
"summary" : "Authenticates a user",
"description" : "Authenticates a user",
"operationId" : "login",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "User credentials",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Login"
}
}
}
},
"responses" : {
"200" : {
"description" : "The Company User response",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/NewSignup"
}
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_invoices" : {
"get" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Gets a list of recurring_invoices",
"operationId" : "searchRecurringInvoices",
"description" : "Lists Recurring Invoices, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the recurring_invoices, these are handled by the RecurringInvoiceFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"description" : "search results matching criteria",
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Adds a recurring invoice",
"operationId" : "addRecurringInvoice",
"description" : "Adds an invoice to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add Invoice",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
},
"responses" : {
"200" : {
"description" : "Recurring invoice Created",
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_invoices/create" : {
"get" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Gets a new blank recurring invoice object",
"operationId" : "createInvoice",
"description" : "Returns a blank Recurring Invoice object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"description" : "Blank invoice object",
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_invoices/{id}/edit" : {
"get" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Gets a recurring invoice",
"operationId" : "getRecurringInvoice",
"description" : "Gets an invoice from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Recurring Invoice hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
} ],
"responses" : {
"200" : {
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"description" : "RecurringInvoice Returned",
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_invoices/{id}/{action}" : {
"get" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Performs a custom action on an Recurringinvoice",
"operationId" : "actionRecurringInvoice",
"description" : "Performs a custom action on an invoice.\n\nThe current range of actions are as follows\n>- clone_to_invoice\n>- clone_to_quote\n>- history\n>- delivery_note\n>- mark_paid\n>- download\n>- archive\n>- delete\n>- email\n",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "RecurringInvoice hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"name" : "action",
"in" : "path",
"description" : "The action string to be performed",
"example" : "clone_to_quote",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "RecurringInvoice Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_invoices/{id}" : {
"put" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Updates a Recurring invoice",
"operationId" : "updateRecurringInvoice",
"description" : "Updates a Recurring invoice in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Recurring Invoice hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update Invoice",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
},
"responses" : {
"200" : {
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"description" : "RecurringInvoice Updated",
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Deletes a Recurring invoice",
"operationId" : "deleteRecurringInvoice",
"description" : "Deletes a Recurring invoice in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "RecurringInvoice hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Recurring Invoice Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_invoices/bulk" : {
"post" : {
"tags" : [ "recurring_invoices" ],
"summary" : "Performs bulk actions on an array of recurring_invoices",
"operationId" : "bulkActionRecurringInvoices",
"description" : "Performs bulk actions on an array of recurring_invoices",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned recurring_invoices",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringInvoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/payments" : {
"get" : {
"tags" : [ "payments" ],
"summary" : "Gets a list of payments",
"operationId" : "searchPayments",
"description" : "Lists payments, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the payments, these are handled by the PaymentFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "payments" ],
"summary" : "Adds a payment",
"operationId" : "addpayment",
"description" : "Adds an payment to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add payment",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
},
"responses" : {
"200" : {
"description" : "payment Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/payments/create" : {
"get" : {
"tags" : [ "payments" ],
"summary" : "Gets a new blank payment object",
"operationId" : "createpayment",
"description" : "Returns a blank payment object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank payment object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/payments/{id}/edit" : {
"get" : {
"tags" : [ "payments" ],
"summary" : "Gets a payment",
"operationId" : "getpayment",
"description" : "Gets an payment from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "payment hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "payment Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/payments/{id}" : {
"put" : {
"tags" : [ "payments" ],
"summary" : "Updates a payment",
"operationId" : "updatepayment",
"description" : "Updates a payment in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "payment hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update payment",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
},
"responses" : {
"200" : {
"description" : "payment Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "payments" ],
"summary" : "Deletes a payment",
"operationId" : "deletepayment",
"description" : "Deletes a payment in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "payment hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "payment Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/payments/bulk" : {
"post" : {
"tags" : [ "payments" ],
"summary" : "Performs bulk actions on an array of payments",
"operationId" : "bulkActionpayments",
"description" : "Performs bulk actions on an array of payments",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned payments",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Payment"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/users" : {
"get" : {
"tags" : [ "users" ],
"summary" : "Gets a list of users",
"operationId" : "searchusers",
"description" : "Lists users, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the users, these are handled by the userFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/User"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "users" ],
"summary" : "Adds a user",
"operationId" : "adduser",
"description" : "Adds an user to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add user",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/User"
}
}
}
},
"responses" : {
"200" : {
"description" : "user Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/User"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/users/create" : {
"get" : {
"tags" : [ "users" ],
"summary" : "Gets a new blank user object",
"operationId" : "createuser",
"description" : "Returns a blank user object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank user object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/User"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/users/{id}/edit" : {
"get" : {
"tags" : [ "users" ],
"summary" : "Gets a user",
"operationId" : "getuser",
"description" : "Gets an user from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "user hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "user Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/User"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/users/{id}" : {
"put" : {
"tags" : [ "users" ],
"summary" : "Updates a user",
"operationId" : "updateuser",
"description" : "Updates a user in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "user hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update user",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/User"
}
}
}
},
"responses" : {
"200" : {
"description" : "User Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/User"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "users" ],
"summary" : "Deletes a user",
"operationId" : "deleteuser",
"description" : "Deletes a user in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "user hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "user Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/users/bulk" : {
"post" : {
"tags" : [ "users" ],
"summary" : "Performs bulk actions on an array of users",
"operationId" : "bulkActionusers",
"description" : "Performs bulk actions on an array of users",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned users",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/User"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/products" : {
"get" : {
"tags" : [ "products" ],
"summary" : "Gets a list of products",
"operationId" : "searchProducts",
"description" : "Lists products, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the products, these are handled by the ProductFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Product"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "products" ],
"summary" : "Adds a product",
"operationId" : "addProduct",
"description" : "Adds an product to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add product",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Product"
}
}
}
},
"responses" : {
"200" : {
"description" : "product Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Product"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/products/create" : {
"get" : {
"tags" : [ "products" ],
"summary" : "Gets a new blank product object",
"operationId" : "createproduct",
"description" : "Returns a blank product object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank product object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Product"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/products/{id}/edit" : {
"get" : {
"tags" : [ "products" ],
"summary" : "Gets a product",
"operationId" : "getProduct",
"description" : "Gets an product from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "product hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Product Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Product"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/products/{id}" : {
"put" : {
"tags" : [ "products" ],
"summary" : "Updates a product",
"operationId" : "updateProduct",
"description" : "Updates a product in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "product hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update product",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Product"
}
}
}
},
"responses" : {
"200" : {
"description" : "Product Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Product"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "products" ],
"summary" : "Deletes a product",
"operationId" : "deleteProduct",
"description" : "Deletes a product in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Product hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "product Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/products/bulk" : {
"post" : {
"tags" : [ "products" ],
"summary" : "Performs bulk actions on an array of products",
"operationId" : "bulkActionProducts",
"description" : "Performs bulk actions on an array of products",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned products",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Product"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_quotes" : {
"get" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Gets a list of recurring_quotes",
"operationId" : "searchRecurringQuotes",
"description" : "Lists Recurring quotes, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the recurring_quotes, these are handled by the RecurringQuoteFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Adds a recurring quote",
"operationId" : "addRecurringQuote",
"description" : "Adds an quote to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add quote",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
},
"responses" : {
"200" : {
"description" : "Recurring quote Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_quotes/create" : {
"get" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Gets a new blank recurring quote object",
"operationId" : "createquote",
"description" : "Returns a blank Recurring quote object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank quote object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_quotes/{id}/edit" : {
"get" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Gets a recurring quote",
"operationId" : "getRecurringQuote",
"description" : "Gets an quote from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Recurring quote hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "RecurringQuote Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_quotes/{id}/{action}" : {
"get" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Performs a custom action on an RecurringQuote",
"operationId" : "actionRecurringQuote",
"description" : "Performs a custom action on an quote.\n\nThe current range of actions are as follows\n>- clone_to_quote\n>- clone_to_quote\n>- history\n>- delivery_note\n>- mark_paid\n>- download\n>- archive\n>- delete\n>- email\n",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "RecurringQuote hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"name" : "action",
"in" : "path",
"description" : "The action string to be performed",
"example" : "clone_to_quote",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "RecurringQuote Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_quotes/{id}" : {
"put" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Updates a Recurring Quote",
"operationId" : "updateRecurringQuote",
"description" : "Updates a Recurring quote in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Recurring quote hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update quote",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
},
"responses" : {
"200" : {
"description" : "RecurringQuote Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Deletes a Recurring quote",
"operationId" : "deleteRecurringQuote",
"description" : "Deletes a Recurring quote in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "RecurringQuote hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Recurring quote Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/recurring_quotes/bulk" : {
"post" : {
"tags" : [ "recurring_quotes" ],
"summary" : "Performs bulk actions on an array of recurring_quotes",
"operationId" : "bulkActionRecurringquotes",
"description" : "Performs bulk actions on an array of recurring_quotes",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned recurring_quotes",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/RecurringQuote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/invoices" : {
"get" : {
"tags" : [ "invoices" ],
"summary" : "Gets a list of invoices",
"operationId" : "searchInvoices",
"description" : "Lists invoices, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of th einvoices, these are handled by the InvoiceFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "invoices" ],
"summary" : "Adds a invoice",
"operationId" : "addInvoice",
"description" : "Adds an invoice to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add Invoice",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
},
"responses" : {
"200" : {
"description" : "Invoice Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/invoices/create" : {
"get" : {
"tags" : [ "invoices" ],
"summary" : "Gets a new blank invoice object",
"operationId" : "createRecurringInvoice",
"description" : "Returns a blank Invoice object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank invoice object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/invoices/{id}/edit" : {
"get" : {
"tags" : [ "invoices" ],
"summary" : "Gets a invoice",
"operationId" : "getInvoice",
"description" : "Gets an invoice from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Invoice hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Invoice Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/invoices/{id}/{action}" : {
"get" : {
"tags" : [ "invoices" ],
"summary" : "Performs a custom action on an invoice",
"operationId" : "actionInvoice",
"description" : "Performs a custom action on an invoice.\n\nThe current range of actions are as follows\n>- clone_to_invoice\n>- clone_to_quote\n>- history\n>- delivery_note\n>- mark_paid\n>- download\n>- archive\n>- delete\n>- email\n",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Invoice hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"name" : "action",
"in" : "path",
"description" : "The action string to be performed",
"example" : "clone_to_quote",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Invoice Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/invoices/{id}" : {
"put" : {
"tags" : [ "invoices" ],
"summary" : "Updates a invoice",
"operationId" : "updateInvoice",
"description" : "Updates an invoice in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Invoice hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update Invoice",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
},
"responses" : {
"200" : {
"description" : "Invoice Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "invoices" ],
"summary" : "Deletes a invoice",
"operationId" : "deleteInvoice",
"description" : "Deletes an invoice in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Invoice hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Invoice Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/invoices/bulk" : {
"post" : {
"tags" : [ "invoices" ],
"summary" : "Performs bulk actions on an array of invoices",
"operationId" : "bulkActionInvoices",
"description" : "Performs bulk actions on an array of invoices",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned Invoices",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Invoice"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/quotes" : {
"get" : {
"tags" : [ "quotes" ],
"summary" : "Gets a list of quotes",
"operationId" : "searchquotes",
"description" : "Lists quotes, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the quotes, these are handled by the QuoteFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "quotes" ],
"summary" : "Adds a Quote",
"operationId" : "addQuote",
"description" : "Adds an Quote to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add Quote",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
},
"responses" : {
"200" : {
"description" : "Quote Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/quotes/create" : {
"get" : {
"tags" : [ "quotes" ],
"summary" : "Gets a new blank Quote object",
"operationId" : "createQuote",
"description" : "Returns a blank Quote object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank Quote object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/quotes/{id}/edit" : {
"get" : {
"tags" : [ "quotes" ],
"summary" : "Gets a Quote",
"operationId" : "getQuote",
"description" : "Gets an Quote from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Quote hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Quote Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/quotes/{id}/{action}" : {
"get" : {
"tags" : [ "quotes" ],
"summary" : "Performs a custom action on an Quote",
"operationId" : "actionQuote",
"description" : "Performs a custom action on an Quote.\n\nThe current range of actions are as follows\n>- download\n>- archive\n>- delete\n>- email\n",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Quote hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"name" : "action",
"in" : "path",
"description" : "The action string to be performed",
"example" : "clone_to_new",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Quote Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/quotes/{id}" : {
"put" : {
"tags" : [ "quotes" ],
"summary" : "Updates a Quote",
"operationId" : "updateQuote",
"description" : "Updates an Quote in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Quote hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update Quote",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
},
"responses" : {
"200" : {
"description" : "Quote Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "quotes" ],
"summary" : "Deletes a Quote",
"operationId" : "deleteQuote",
"description" : "Deletes an Quote in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Quote hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Quote Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/quotes/bulk" : {
"post" : {
"tags" : [ "quotes" ],
"summary" : "Performs bulk actions on an array of quotes",
"operationId" : "bulkActionquotes",
"description" : "Performs bulk actions on an array of quotes",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned quotes",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Quote"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/clients" : {
"get" : {
"tags" : [ "clients" ],
"summary" : "Gets a list of clients",
"operationId" : "searchClients",
"description" : "Lists clients, search and filters allow fine grained lists to be generated.\n\nQuery parameters can be added to performed more fine grained filtering of the clients, these are handled by the ClientFilters class which defines the methods available \n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "search results matching criteria",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"400" : {
"description" : "bad input parameter"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"post" : {
"tags" : [ "clients" ],
"summary" : "Adds a Client",
"operationId" : "addClient",
"description" : "Adds an Client to the system",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Add Client",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Client"
}
}
}
},
"responses" : {
"200" : {
"description" : "Client Created",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/clients/create" : {
"get" : {
"tags" : [ "clients" ],
"summary" : "Gets a new blank Client object",
"operationId" : "createClient",
"description" : "Returns a blank Client object\n",
"parameters" : [ {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Blank Client object",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/clients/{id}/edit" : {
"get" : {
"tags" : [ "clients" ],
"summary" : "Gets a Client",
"operationId" : "getClient",
"description" : "Gets an Client from the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Client hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Client Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/clients/{id}/{action}" : {
"get" : {
"tags" : [ "clients" ],
"summary" : "Performs a custom action on an Client",
"operationId" : "actionClient",
"description" : "Performs a custom action on an Client.\n\nThe current range of actions are as follows\n>- download\n>- archive\n>- delete\n>- email\n",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Client hashed id",
"example" : "D2J234DFA",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"name" : "action",
"in" : "path",
"description" : "The action string to be performed",
"example" : "clone_to_new",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Client Returned",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/clients/{id}" : {
"put" : {
"tags" : [ "clients" ],
"summary" : "Updates a Client",
"operationId" : "updateClient",
"description" : "Updates an Client in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Client hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Update Client",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Client"
}
}
}
},
"responses" : {
"200" : {
"description" : "Client Updated",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
},
"delete" : {
"tags" : [ "clients" ],
"summary" : "Deletes a Client",
"operationId" : "deleteClient",
"description" : "Deletes an Client in the system",
"parameters" : [ {
"name" : "id",
"in" : "path",
"description" : "Client hashed id",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"responses" : {
"200" : {
"description" : "Client Deleted",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
}
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
},
"/clients/bulk" : {
"post" : {
"tags" : [ "clients" ],
"summary" : "Performs bulk actions on an array of clients",
"operationId" : "bulkActionclients",
"description" : "Performs bulk actions on an array of clients",
"parameters" : [ {
"name" : "action",
"in" : "query",
"description" : "The action to be performed",
"required" : true,
"schema" : {
"type" : "string",
"format" : "string"
}
}, {
"$ref" : "#/components/parameters/x_api_secret"
}, {
"$ref" : "#/components/parameters/x_requested_with"
}, {
"$ref" : "#/components/parameters/x_api_token"
}, {
"$ref" : "#/components/parameters/include"
}, {
"$ref" : "#/components/parameters/index"
} ],
"requestBody" : {
"description" : "Array of hashed IDs to be bulk 'actioned'",
"required" : true,
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/BulkAction"
}
}
}
},
"responses" : {
"200" : {
"description" : "Bulk Actioned clients",
"headers" : {
"X-API-VERSION" : {
"schema" : {
"type" : "number"
},
"description" : "The API version."
},
"X-RateLimit-Remaining" : {
"schema" : {
"type" : "integer"
},
"description" : "The number of requests left for the time window."
},
"X-RateLimit-Limit" : {
"schema" : {
"type" : "integer"
},
"description" : "The total number of requests in a given time window."
}
},
"content" : {
"application/json" : {
"schema" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/Client"
}
}
}
}
},
"400" : {
"description" : "invalid input, object invalid"
},
"422" : {
"description" : "Validation error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/ValidationError"
}
}
}
},
"default" : {
"description" : "Unexpected error",
"content" : {
"application/json" : {
"schema" : {
"$ref" : "#/components/schemas/Error"
}
}
}
}
}
}
}
},
"components" : {
"schemas" : {
"NewSignup" : {
"type" : "object",
"required" : [ "id", "company_users", "company", "user", "token" ],
"properties" : {
"id" : {
"type" : "string",
"example" : "WJxbojagwO",
"description" : "The account level id"
},
"company_users" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/CompanyUser"
}
}
}
},
"BulkAction" : {
"type" : "array",
"items" : {
"type" : "integer",
"example" : [ 0, 1, 2, 3 ]
}
},
"Company" : {
"type" : "object",
"required" : [ "id", "name", "logo", "company_key", "address1", "address2", "city", "state", "postal_code", "work_phone", "work_email", "country_id", "vat_number", "id_number", "size_id", "industry_id", "settings", "updated_at", "deleted_at" ],
"properties" : {
"id" : {
"type" : "string",
"example" : "WJxbojagwO",
"description" : "The company hashed id"
},
"name" : {
"type" : "string",
"example" : "The local shop",
"description" : "The company name"
},
"company_key" : {
"type" : "string",
"description" : "Auto generated unique company hash"
},
"address1" : {
"type" : "string",
"example" : "Suite 857/234"
},
"address2" : {
"type" : "string",
"example" : "1 Pillsy Way"
},
"city" : {
"type" : "string",
"example" : "Las Vegas"
},
"state" : {
"type" : "string",
"example" : "Nevada"
},
"postal_code" : {
"type" : "string",
"example" : "90210"
},
"work_phone" : {
"type" : "string",
"example" : "555-2232"
},
"work_email" : {
"type" : "string",
"example" : "user@example.org"
},
"country_id" : {
"type" : "integer",
"example" : 1
},
"vat_number" : {
"type" : "string",
"example" : "243HAHS",
"description" : "The Company Tax Reference ID VAT/ABN/ACN etc"
},
"id_number" : {
"type" : "string",
"example" : "ZYR-123",
"description" : "A customizable company reference field"
},
"size_id" : {
"type" : "integer",
"description" : "References the size of the company - settings"
},
"industry_id" : {
"type" : "integer",
"description" : "References the industry id of the company"
},
"settings" : {
"$ref" : "#/components/schemas/CompanySettings"
}
}
},
"CompanySettings" : {
"type" : "object",
"properties" : {
"timezone_id" : {
"type" : "integer"
},
"date_format_id" : {
"type" : "string",
"example" : "M j, Y"
},
"datetime_format_id" : {
"type" : "string",
"example" : "F j, Y g:i a"
},
"military_time" : {
"type" : "boolean",
"description" : "Toggles 24 hour time"
},
"start_of_week" : {
"type" : "integer",
"description" : "References the start day of the week",
"example" : 1
},
"financial_year_start" : {
"type" : "string",
"example" : "2000-01-01",
"description" : "The start date of the financial year for the company"
},
"language_id" : {
"type" : "integer",
"example" : 1
},
"currency_id" : {
"type" : "integer",
"example" : 1
},
"precision" : {
"type" : "integer",
"example" : 2,
"description" : "References the default currency precision"
},
"show_currency_symbol" : {
"type" : "boolean"
},
"show_currency_code" : {
"type" : "boolean"
},
"payment_terms" : {
"type" : "integer",
"example" : 7,
"description" : "The company level default payments terms"
},
"custom_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom label for a custom value - 1"
},
"custom_value1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom label - 1"
},
"custom_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom label for a custom value - 2"
},
"custom_value2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom label - 2"
},
"custom_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom label for a custom value - 3"
},
"custom_value3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom label - 3"
},
"custom_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom label for a custom value - 4"
},
"custom_value4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom label - 4"
},
"custom_client_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client label - 1"
},
"custom_client_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client label - 2"
},
"custom_client_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client label - 3"
},
"custom_client_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client label - 4"
},
"custom_client_contact_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client contact label - 1"
},
"custom_client_contact_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client contact label - 2"
},
"custom_client_contact_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client contact label - 3"
},
"custom_client_contact_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom client contact label - 4"
},
"custom_invoice_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom invoice label - 1"
},
"custom_invoice_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom invoice label - 2"
},
"custom_invoice_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom invoice label - 3"
},
"custom_invoice_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom invoice label - 4"
},
"custom_product_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom product label - 1"
},
"custom_product_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom product label - 2"
},
"custom_product_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom product label - 3"
},
"custom_product_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom product label - 4"
},
"custom_task_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom task label - 1"
},
"custom_task_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom task label - 2"
},
"custom_task_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom task label - 3"
},
"custom_task_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom task label - 4"
},
"custom_expense_label1" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom expense label - 1"
},
"custom_expense_label2" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom expense label - 2"
},
"custom_expense_label3" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom expense label - 3"
},
"custom_expense_label4" : {
"type" : "string",
"nullable" : true,
"example" : "A custom value for a custom expense label - 4"
},
"custom_taxes1" : {
"type" : "boolean",
"description" : "Determines whether custom fields are also taxed"
},
"custom_taxes2" : {
"type" : "boolean",
"description" : "Determines whether custom fields are also taxed"
},
"default_task_rate" : {
"type" : "number",
"example" : 10.0,
"format" : "double",
"description" : "The company level default task rate"
},
"send_reminders" : {
"type" : "boolean",
"description" : "Flag for sending reminders"
},
"show_tasks_in_portal" : {
"type" : "boolean",
"description" : "Flag for showing tasks in the client portal"
},
"custom_message_dashboard" : {
"type" : "string",
"nullable" : true,
"example" : "Please pay invoices immediately",
"description" : "Pins a permanent message to the dashboard"
},
"custom_message_unpaid_invoice" : {
"type" : "string",
"nullable" : true,
"example" : "Please pay invoice immediately",
"description" : "Pins a permanent message to a unpaid invoice"
},
"custom_message_paid_invoice" : {
"type" : "string",
"nullable" : true,
"example" : "Thanks for paying this invoice!",
"description" : "Pins a permanent message to a paid invoice"
},
"custom_message_unapproved_quote" : {
"type" : "string",
"nullable" : true,
"example" : "Please approve quote",
"description" : "Pins a permanent message to a quote"
},
"lock_sent_invoices" : {
"type" : "boolean",
"description" : "Prevents an invoice from modification after it has been sent / marked sent"
},
"auto_archive_invoice" : {
"type" : "boolean",
"description" : "Flag for automatically archiving an invoice on successful payment"
},
"inclusive_taxes" : {
"type" : "boolean",
"description" : "Flag for the use of inclusive taxes, TRUE = inclusive, FALSE = exclusive"
},
"translations" : {
"type" : "object",
"description" : "Allows a user to override the default translation to use their own specific translations",
"properties" : {
"key" : {
"type" : "string",
"example" : "invoice",
"description" : "The key"
},
"value" : {
"type" : "string",
"example" : "Facturer",
"description" : "The custom translated value"
}
}
},
"invoice_number_prefix" : {
"type" : "string",
"example" : "R",
"description" : "This string is prepended to the invoice number"
},
"invoice_number_pattern" : {
"type" : "string",
"nullable" : true,
"example" : "{$year}-{$counter}",
"description" : "Allows customisation of the invoice number pattern"
},
"invoice_number_counter" : {
"type" : "integer",
"example" : 200,
"description" : "The next invoice number counter."
},
"quote_number_prefix" : {
"type" : "string",
"example" : "Q",
"description" : "This string is prepended to the quote number"
},
"quote_number_pattern" : {
"type" : "string",
"nullable" : true,
"example" : "{$year}-{$counter}",
"description" : "Allows customisation of the quote number pattern"
},
"quote_number_counter" : {
"type" : "integer",
"example" : 200,
"description" : "The next quote number counter."
},
"client_number_prefix" : {
"type" : "string",
"example" : "C",
"description" : "This string is prepended to the client number"
},
"client_number_pattern" : {
"type" : "string",
"nullable" : true,
"example" : "{$year}-{$counter}",
"description" : "Allows customisation of the client number pattern"
},
"client_number_counter" : {
"type" : "integer",
"example" : 200,
"description" : "The next client number counter."
},
"credit_number_prefix" : {
"type" : "string",
"example" : "CREDIT-",
"description" : "This string is prepended to the credit number"
},
"credit_number_pattern" : {
"type" : "string",
"nullable" : true,
"example" : "{$year}-{$counter}",
"description" : "Allows customisation of the credit number pattern"
},
"credit_number_counter" : {
"type" : "integer",
"example" : 200,
"description" : "The next credit number counter."
},
"shared_invoice_quote_counter" : {
"type" : "boolean",
"description" : "Flags whether to share the counter for invoices and quotes"
},
"recurring_invoice_number_prefix" : {
"type" : "string",
"example" : "R",
"description" : "This string is prepended to the recurring invoice number"
},
"reset_counter_frequency_id" : {
"type" : "integer",
"example" : 1,
"description" : "CONSTANT which is used to apply the frequency which the counters are reset"
},
"reset_counter_date" : {
"type" : "string",
"nullable" : true,
"example" : "2019-01-01",
"description" : "The explicit date which is used to reset counters"
},
"counter_padding" : {
"type" : "integer",
"example" : 0,
"description" : "Pads the counter with leading zeros"
},
"default_gateway" : {
"type" : "integer",
"example" : 1,
"description" : "The company level payment gateway to be used"
},
"entity" : {
"type" : "string",
"example" : "App\\\\Models\\\\Company",
"description" : "The entity which these settings apply - allows generic handling"
}
}
},
"CompanyUser" : {
"type" : "object",
"required" : [ "permissions", "settings", "is_owner", "is_locked", "updated_at", "deleted_at", "company", "user", "token" ],
"properties" : {
"permissions" : {
"type" : "array",
"items" : {
"type" : "string"
}
},
"settings" : {
"type" : "object",
"properties" : {
"per_page" : {
"type" : "integer",
"example" : 25,
"description" : "Used for the default number of items to be displayed in list views"
}
}
},
"is_owner" : {
"type" : "boolean",
"example" : true,
"description" : "Determines whether the user owns this company"
},
"is_locked" : {
"type" : "boolean",
"description" : "Determines whether the users access to this company has been locked"
},
"updated_at" : {
"type" : "string",
"format" : "string",
"example" : "07-28-2013 11:26:14.000000",
"description" : "The last time the record was modified"
},
"deleted_at" : {
"type" : "string",
"format" : "string",
"example" : "07-28-2013 11:26:14.000000",
"description" : "When the record was soft deleted"
},
"company" : {
"$ref" : "#/components/schemas/Company"
}
}
},
"CompanyGatewaySetting" : {
"type" : "object",
"required" : [ "company_id" ],
"properties" : {
"id" : {
"type" : "string",
"format" : "string"
},
"company_id" : {
"type" : "number",
"format" : "integer"
},
"company_gateway_id" : {
"type" : "number",
"format" : "integer"
},
"gateway_type_id" : {
"type" : "number",
"format" : "integer"
},
"user_id" : {
"type" : "number",
"format" : "integer"
},
"min_limit" : {
"type" : "number",
"format" : "double"
},
"max_limit" : {
"type" : "number",
"format" : "double"
},
"fee_amount" : {
"type" : "number",
"format" : "double"
},
"fee_percent" : {
"type" : "number",
"format" : "double"
},
"fee_tax_name1" : {
"type" : "string",
"format" : "string"
},
"fee_tax_name2" : {
"type" : "string",
"format" : "string"
},
"fee_tax_rate1" : {
"type" : "number",
"format" : "double"
},
"fee_tax_rate2" : {
"type" : "number",
"format" : "double"
},
"fee_cap" : {
"type" : "number",
"format" : "double"
},
"adjust_fee_percent" : {
"type" : "boolean",
"format" : "boolean"
}
}
},
"ClientGatewayToken" : {
"type" : "object",
"required" : [ "company_id" ],
"properties" : {
"id" : {
"type" : "string",
"format" : "string"
},
"company_id" : {
"type" : "number",
"format" : "integer"
},
"client_id" : {
"type" : "number",
"format" : "integer"
},
"token" : {
"type" : "string",
"format" : "string",
"example" : "adfsadhajksflasdhflasd"
},
"company_gateway_id" : {
"type" : "number",
"format" : "integer"
},
"is_default" : {
"type" : "boolean",
"format" : "boolean"
}
}
},
"Client" : {
"type" : "object",
"required" : [ "name" ],
"properties" : {
"contacts" : {
"type" : "array",
"items" : {
"$ref" : "#/components/schemas/ClientContact"
}
},
"id" : {
"type" : "string",
"format" : "string",
"example" : "DJF2HS"
},
"user_id" : {
"type" : "number",
"format" : "integer",
"example" : 1
},
"company_id" : {
"type" : "number",
"format" : "integer",
"example" : 1
},
"name" : {
"type" : "string",
"format" : "string",
"example" : "Joe's donut shop"
},
"website" : {
"type" : "string",
"format" : "string",
"example" : "wwww.joe.com"
},
"private_notes" : {
"type" : "string",
"format" : "string",
"example" : "The client is in arrears significantly. Stop supply"
},
"client_hash" : {
"type" : "string",
"format" : "string",
"example" : "FKJDSF3FDLKJFSDFDSFHLKJHDFDF343432432j"
},
"balance" : {
"type" : "number",
"format" : "double",
"example" : 1003.0
},
"paid_to_date" : {
"type" : "number",
"format" : "double",
"example" : 34343.0
},
"last_login" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"industry_id" : {
"format" : "integer",
"type" : "integer",
"example" : 1
},
"size_id" : {
"format" : "integer",
"type" : "integer",
"example" : 1
},
"currency_id" : {
"type" : "integer",
"format" : "integer",
"example" : 1
},
"address1" : {
"type" : "string",
"format" : "string",
"example" : "Suite 324"
},
"address2" : {
"type" : "string",
"format" : "string",
"example" : "1 Wallaby Way"
},
"city" : {
"type" : "string",
"format" : "string",
"example" : "Sydney"
},
"state" : {
"type" : "string",
"format" : "string",
"example" : "New South Wales"
},
"postal_code" : {
"type" : "string",
"format" : "string",
"example" : 2000
},
"country_id" : {
"type" : "integer",
"format" : "integer",
"example" : 3
},
"custom_value1" : {
"type" : "string",
"format" : "string",
"example" : "A custom value - 1"
},
"custom_value2" : {
"type" : "string",
"format" : "string",
"example" : "A custom value - 2"
},
"custom_value3" : {
"type" : "string",
"format" : "string",
"example" : "A custom value - 3"
},
"custom_value4" : {
"type" : "string",
"format" : "string",
"example" : "A custom value - 4"
},
"shipping_address1" : {
"type" : "string",
"format" : "string",
"example" : "Suite 324"
},
"shipping_address2" : {
"type" : "string",
"format" : "string",
"example" : "1 Wallaby Way"
},
"shipping_city" : {
"type" : "string",
"format" : "string",
"example" : "Sydney"
},
"shipping_state" : {
"type" : "string",
"format" : "string",
"example" : "New South Wales"
},
"shipping_postal_code" : {
"type" : "string",
"format" : "string",
"example" : 2000
},
"shipping_country_id" : {
"type" : "integer",
"format" : "integer",
"example" : 3
},
"settings" : {
"type" : "object"
},
"is_deleted" : {
"type" : "boolean",
"format" : "boolean",
"example" : true
},
"payment_terms" : {
"type" : "integer",
"format" : "integer",
"example" : 1
},
"vat_number" : {
"type" : "string",
"format" : "string",
"example" : "ABN-38377283"
},
"id_number" : {
"type" : "string",
"format" : "string",
"example" : "CLIENT-343434"
},
"created_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"updated_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
}
}
},
"ClientContact" : {
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz"
},
"company_id" : {
"type" : "integer",
"format" : "integer"
},
"user_id" : {
"type" : "integer",
"format" : "integer"
},
"client_id" : {
"type" : "integer",
"format" : "integer"
},
"first_name" : {
"type" : "string",
"format" : "string"
},
"last_name" : {
"type" : "string",
"format" : "string"
},
"phone" : {
"type" : "string",
"format" : "string"
},
"custom_value1" : {
"type" : "string",
"format" : "string"
},
"custom_value2" : {
"type" : "string",
"format" : "string"
},
"custom_value3" : {
"type" : "string",
"format" : "string"
},
"custom_value4" : {
"type" : "string",
"format" : "string"
},
"email" : {
"type" : "string",
"format" : "string"
},
"email_verified_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"confirmation-code" : {
"type" : "string",
"format" : "string"
},
"is_primary" : {
"type" : "boolean",
"format" : "boolean"
},
"confirmed" : {
"type" : "boolean",
"format" : "boolean"
},
"last_login" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"failed_logins" : {
"type" : "boolean",
"format" : "boolean"
},
"accepted_terms_version" : {
"type" : "string",
"format" : "string"
},
"password" : {
"type" : "string",
"readOnly" : true
},
"token" : {
"type" : "string",
"format" : "string"
},
"is_locked" : {
"type" : "boolean",
"format" : "boolean"
},
"created_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"updated_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"deleted_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
}
}
},
"CompanyGateway" : {
"type" : "object",
"required" : [ "gateway_id", "config" ],
"properties" : {
"id" : {
"type" : "string",
"example" : "FD343kdshd",
"description" : "The account gateway hashed ID"
},
"company_id" : {
"type" : "number",
"format" : "integer"
},
"user_id" : {
"type" : "number",
"format" : "integer"
},
"gateway_id" : {
"type" : "number",
"format" : "integer"
},
"show_address" : {
"type" : "boolean"
},
"show_shipping_address" : {
"type" : "boolean"
},
"require_cvv" : {
"type" : "boolean"
},
"accepted_credit_cards" : {
"type" : "number",
"format" : "integer",
"description" : "Bitmask of the account gateway creditcards array"
},
"update_details" : {
"type" : "boolean",
"description" : "Updates the client with the user and/or gateway input"
},
"config" : {
"type" : "string",
"description" : "Encrypted gateway variables"
},
"priority_id" : {
"type" : "number",
"format" : "integer",
"description" : "Allows prioritization of gateways"
}
}
},
"Error" : {
"type" : "object",
"required" : [ "message", "code" ],
"properties" : {
"message" : {
"type" : "string",
"format" : "string",
"example" : "Unexpected error"
},
"code" : {
"type" : "integer",
"format" : "int32",
"example" : 500
}
}
},
"GroupSetting" : {
"type" : "object",
"properties" : {
"id" : {
"type" : "string",
"format" : "string"
},
"company_id" : {
"type" : "number",
"format" : "integer"
},
"user_id" : {
"type" : "number",
"format" : "integer"
},
"name" : {
"type" : "string",
"format" : "string"
},
"settings" : {
"type" : "string",
"format" : "string"
},
"is_default" : {
"type" : "boolean"
}
}
},
"Invoice" : {
"type" : "object",
"required" : [ "client_id" ],
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz"
},
"user_id" : {
"type" : "number",
"format" : "integer",
"example" : 1
},
"company_id" : {
"type" : "number",
"format" : "integer",
"example" : 1
},
"line_items" : {
"type" : "object"
},
"settings" : {
"type" : "object"
},
"backup" : {
"type" : "object"
},
"amount" : {
"type" : "number",
"format" : "float",
"example" : 10.0
},
"balance" : {
"type" : "number",
"format" : "float",
"example" : 25.5
},
"client_id" : {
"type" : "number",
"format" : "integer",
"example" : 1
},
"status_id" : {
"type" : "number",
"format" : "integer",
"example" : 5
},
"invoice_number" : {
"type" : "string",
"format" : "string",
"example" : "INV-101034"
},
"discount" : {
"type" : "number",
"format" : "float",
"example" : 10.0
},
"is_amount_discount" : {
"type" : "boolean",
"format" : "boolean",
"example" : true
},
"po_number" : {
"type" : "string",
"format" : "string",
"example" : "PO-342231"
},
"invoice_date" : {
"format" : "date",
"example" : "1994-07-30"
},
"due_date" : {
"format" : "date",
"example" : "1997-07-30"
},
"terms" : {
"format" : "string",
"example" : "This invoice is payable in 5 days. Strictly cash only."
},
"public_notes" : {
"format" : "string",
"example" : "These are notes that the client can also see on their invoice"
},
"private_notes" : {
"format" : "string",
"example" : "These are notes that are NOT visible to the client"
},
"footer" : {
"format" : "string",
"example" : "The footer text which is place at the bottom of the invoice"
},
"partial" : {
"type" : "number",
"format" : "float",
"example" : 10.0
},
"partial_due_date" : {
"format" : "date",
"example" : "2000-01-31"
},
"last_viewed" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"custom_value1" : {
"format" : "string",
"example" : "A custom alpha numeric value - 1"
},
"custom_value2" : {
"format" : "string",
"example" : "A custom alpha numeric value - 2"
},
"custom_value3" : {
"format" : "string",
"example" : "A custom alpha numeric value - 3"
},
"custom_value4" : {
"format" : "string",
"example" : "A custom alpha numeric value - 4"
},
"is_deleted" : {
"type" : "boolean",
"format" : "boolean",
"example" : false
},
"invoice_type_id" : {
"type" : "integer",
"format" : "integer",
"example" : 10
},
"tax_name1" : {
"type" : "string",
"format" : "string",
"example" : "GST"
},
"tax_rate1" : {
"type" : "number",
"format" : "float",
"example" : 10.0
},
"tax_name2" : {
"type" : "string",
"format" : "string",
"example" : "VAT"
},
"tax_rate2" : {
"type" : "number",
"format" : "float",
"example" : 17.5
},
"updated_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
},
"archived_at" : {
"format" : "date-time",
"example" : "2016-08-29T09:12:33.001Z"
}
}
},
"InvoiceItem" : {
"type" : "object",
"properties" : {
"quantity" : {
"type" : "number",
"format" : "double",
"example" : 1
},
"cost" : {
"type" : "number",
"format" : "double",
"example" : 10.0
},
"product_key" : {
"type" : "string",
"format" : "string",
"example" : "SKU_123"
},
"notes" : {
"type" : "string",
"format" : "string",
"example" : "A Doll house"
},
"discount" : {
"type" : "number",
"format" : "double",
"example" : 10.0
},
"is_amount_discount" : {
"type" : "boolean",
"format" : "boolean",
"example" : true
},
"tax_name1" : {
"type" : "string",
"format" : "string",
"example" : "GST"
},
"tax_rate1" : {
"type" : "number",
"format" : "double",
"example" : 10.0
},
"tax_name2" : {
"type" : "string",
"format" : "string",
"example" : "GST"
},
"tax_rate2" : {
"type" : "number",
"format" : "double",
"example" : 10.0
},
"priority_id" : {
"type" : "number",
"format" : "integer",
"example" : 1
},
"line_total" : {
"type" : "number",
"format" : "double",
"example" : 10.0
},
"date" : {
"type" : "string",
"format" : "string",
"example" : "MM/DD/YYYY"
},
"custom_value1" : {
"type" : "string",
"format" : "string",
"example" : "alpha-num"
},
"custom_value2" : {
"type" : "string",
"format" : "string",
"example" : "alpha-num"
},
"custom_value3" : {
"type" : "string",
"format" : "string",
"example" : "alpha-num"
},
"custom_value4" : {
"type" : "string",
"format" : "string",
"example" : "alpha-num"
}
}
},
"Login" : {
"type" : "object",
"required" : [ "email", "password" ],
"properties" : {
"email" : {
"type" : "string",
"example" : "user@example.org",
"description" : "The user email address"
},
"password" : {
"type" : "string",
"example" : "123456",
"description" : "The user password must meet minimum criteria ~ >6 characters"
}
}
},
"Payment" : {
"type" : "object",
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Djdf8dsjD"
}
}
},
"Product" : {
"type" : "object",
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz"
}
}
},
"Quote" : {
"type" : "object",
"required" : [ "client_id" ],
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz"
}
}
},
"RecurringQuote" : {
"type" : "object",
"required" : [ "client_id" ],
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz`"
}
}
},
"RecurringInvoice" : {
"type" : "object",
"required" : [ "client_id" ],
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz"
}
}
},
"Signup" : {
"type" : "object",
"required" : [ "email", "password", "first_name", "last_name", "terms_of_service", "privacy_policy" ],
"properties" : {
"email" : {
"type" : "string",
"format" : "string",
"example" : "user@example.org"
},
"password" : {
"type" : "string",
"writeOnly" : true,
"example" : 123456
},
"first_name" : {
"type" : "string",
"format" : "string",
"example" : "Joe"
},
"last_name" : {
"type" : "string",
"format" : "string",
"example" : "Doe"
},
"terms_of_service" : {
"type" : "boolean"
},
"privacy_policy" : {
"type" : "boolean"
}
}
},
"User" : {
"type" : "object",
"properties" : {
"id" : {
"type" : "string",
"format" : "string",
"example" : "Opnel5aKBz"
}
}
},
"ValidationError" : {
"type" : "object",
"required" : [ "message", "errors" ],
"properties" : {
"message" : {
"type" : "string",
"example" : "The given data was invalid."
},
"errors" : {
"type" : "object",
"properties" : {
"value" : {
"type" : "array",
"items" : {
"type" : "string"
}
}
}
}
}
}
},
"parameters" : {
"include" : {
"name" : "include",
"in" : "query",
"description" : "Includes child relationships in the response, format is comma separated",
"schema" : {
"type" : "string",
"example" : "clients,invoices"
}
},
"index" : {
"name" : "index",
"in" : "query",
"description" : "replaces the default response index from data to a user specific string",
"schema" : {
"type" : "string",
"example" : "user"
}
},
"x_requested_with" : {
"name" : "X-Requested-With",
"in" : "header",
"description" : "Used to send the XMLHttpRequest header",
"required" : true,
"schema" : {
"type" : "string",
"readOnly" : true,
"example" : "XMLHttpRequest"
}
},
"x_api_secret" : {
"name" : "X-API-SECRET",
"in" : "header",
"description" : "The API secret as defined by the .env variable API_SECRET",
"required" : true,
"schema" : {
"type" : "string",
"example" : "password"
}
},
"x_api_token" : {
"name" : "X-API-TOKEN",
"in" : "header",
"example" : "HcRvs0oCvYbY5g3RzgBZrSBOChCiq8u4AL0ieuFN5gn4wUV14t0clVhfPc5OX99q",
"description" : "The API token to be used for authentication",
"required" : true,
"schema" : {
"type" : "string",
"example" : "HcRvs0oCvYbY5g3RzgBZrSBOChCiq8u4AL0ieuFN5gn4wUV14t0clVhfPc5OX99q"
}
}
}
}
}