{ "type":"object", "title": "recurring", "description": "An recurring is used as an template for new invoices.", "properties":{ "id":{ "description":"Unique identifier - UUID", "identity":true, "readonly":true, "type":"string", "maxLength": 22, "minLength":22 }, "number":{ "description": "Unique name to identify the document. Unlike all other document this one has no number schema and not auto assign", "type":"string", "required":true, "maxLength": 50 }, "address_field":{ "description": "Receiver address, normally shown in envelope window. Defaults to client address_field if empty and client_id given.", "type":"string" }, "date":{ "description": "First date the recurring is issued. Not allowed to be in the past.", "format":"date", "type":"string", "required":true }, "due_days":{ "description": "Used to calculate the due date of the recurring. Useless if date and due date are present.", "type":"integer" }, "final_date":{ "description": "The last date the recurring is executed.", "format":"date", "type":"string", "required":true }, "frequency":{ "description": "Recurring frequency", "enum":["yearly", "monthly", "weekly", "quarterly", "biweekly", "sixmonthly"], "type":"string", "required":true }, "payment_method":{ "description": "How the document is being payed. Used in new payments.", "enum":["cash","bank_transfer","credit_card","paypal","direct_debit","cheque", "moneybookers", "premium_sms"], "type":"string" }, "external_ref":{ "description": "Some external reference, whatever this may be.", "type":"string", "maxLength": 255 }, "title":{ "description": "The headline of a document. Use SK placeholders to prevent excessive typing e.g. 'Your recurring [number]'", "type":"string", "maxLength": 255 }, "notes_before":{ "description": "Notes shown before the line items. Normally contains salutation and other introductional information. SK placeholders can be used.", "type":"string", "format":"text" }, "notes_after":{ "description": "Notes shown after the line items. Can contain information about payments, bank account or a thank-you message. SK placeholders can be used.", "type":"string", "format":"text" }, "tag_list":{ "description": "Space separated list of tags. Are split and saved as Tag objects on create, update.", "type":"string" }, "language":{ "description": "Should be a valid language short-code: de-DE, fr, en-GB; like defined in your account language menu. When the document is emailed or printed, a localized version of a multi-language template(email, pdf) will be used if available. Defaults to the clients language, if empty and a client is assigned.", "type":"string", "maxLength": 10 }, "client":{ "description": "The client for the document. New documents cannot create a client, use client_id field to set it.", "readonly":true, "type":"object", "properties":{"$ref":"./client.json#properties"} }, "client_id":{ "description": "The clients uuid. If a new client is assigned its language, address field, due days and cash discount are used if those fields are not set.", "type":"string", "maxLength": 22, "minLength":22 }, "team_id":{ "description": "A team uuid. If set only the team and its parent teams can see the record.", "type":"string", "maxLength": 22, "minLength":22 }, "line_items":{ "description": "Line items for the document", "type":"array", "properties":{"$ref":"./line_item.json#properties"} }, "created_at":{ "description": "Date the object was created in SK. Never changes afterwards.", "format":"date-time", "readonly":true, "type":"string" }, "updated_at":{ "description": "Date the object was edited in SK.", "format":"date-time", "readonly":true, "type":"string" }, "lock_version":{ "description": "Auto-incremented to prevent concurrent updates. First save wins and increments version. ", "type":"integer" }, "gross_total":{ "description": "Gross total of all line items, 2 decimals places", "readonly":true, "type":"number" }, "tax_total":{ "description": "Tax total, 2 decimals places", "readonly":true, "type":"number" }, "net_total":{ "description": "Net total, 2 decimals places", "readonly":true, "type":"number" }, "net_total_base":{ "description": "Net total, 6 decimal places incl. discount", "readonly":true, "type":"number" } }, "links":[ { "rel": "self", "href": "recurrings/{id}" }, { "rel": "instances", "href": "recurrings", "properties" : { "page":{ "title" : "Page", "description": "In paginated results set the page to look for", "type":"number" }, "per_page":{ "title" : "Per page", "description": "Results per page. Default is 10, max is 100", "type":"number" }, "filter[q]":{ "title" : "Search", "description": "Search in title, number, address field", "type":"string" }, "filter[tags]":{ "title" : "Tags", "description": "Filter by a space delimited list of tags", "type":"string" }, "filter[from]":{ "title" : "From date", "description": "Objects with a date after the date", "format" : "date", "type" : "string" }, "filter[to]":{ "title" : "To date", "description": "Objects with date before the date", "format" : "date", "type" : "string" }, "filter[created_at_from]":{ "title" : "From date", "description": "Objects with a creation date after the date, including given datetime. ISO 8601 format YYY-MM-DDThh:mm:ss+z", "format" : "date-time", "type" : "string" }, "filter[created_at_to]":{ "title" : "To date", "description": "Objects with a creation date before the date, including given datetime. ISO 8601 format YYY-MM-DDThh:mm:ss+z", "format" : "date-time", "type" : "string" }, "filter[languages]":{ "title" : "Languages", "description": "A list of language codes, comma separated", "type" : "string" }, "filter[client_ids]":{ "title" : "Clients", "description": "A single or a list of client uuids, comma separated", "type" : "string" }, "filter[ids]":{ "title" : "Documents", "description": "A single or a list of document uuids, comma separated", "type" : "string" }, "filter[creator_ids]":{ "title" : "Creator", "description": "Objects created by the given users uuids, comma separated", "type" : "string" }, "sort_by":{ "title" : "Sort by", "description": "Sort the results by the given field => number", "enum":["title", "number", "created_at", "updated_at", "client_id", "price_total"], "type": "string" }, "sort":{ "title" : "Sort", "enum":["ASC","DESC"], "description": "Sort the results in ASC or DESC" } } }, { "rel": "destroy", "href": "recurrings/{id}", "method": "DELETE" }, { "rel": "update", "href": "recurrings/{id}", "method": "PUT" }, { "rel": "create", "href": "recurrings", "method": "POST", "properties" : { "source" : { "title" : "Source document id", "description": "Copies the source document(excl. number,date) and returns a new draft document.", "type" : "string" } } }, { "rel": "attachments", "href": "recurrings/{id}/attachments" }, { "rel": "comments", "href": "recurrings/{id}/comments" } ] }