sk_api_schema 0.3.4 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,29 +1,34 @@
1
1
  { "type":"object",
2
2
  "title": "email_template",
3
3
  "description":"An email_template in SK",
4
- "properties": {
5
- "id": {
6
- "description": "uuid of the email template",
4
+ "properties":{
5
+ "id":{
6
+ "description":"Unique identifier - UUID",
7
7
  "identity":true,
8
8
  "readonly":true,
9
- "type":"string"
9
+ "type":"string",
10
+ "maxLength": 22,
11
+ "minLength":22
10
12
  },
11
- "name": {
13
+ "name":{
12
14
  "description": "A meaningful name.",
13
15
  "required":true,
14
- "type":"string"
16
+ "type":"string",
17
+ "maxLength": 50
15
18
  },
16
- "subject": {
19
+ "subject":{
17
20
  "description": "Subject containing placeholders, replaced when the template is used.",
18
21
  "required":true,
19
- "type":"string"
20
- },
21
- "body": {
22
+ "type":"string",
23
+ "maxLength": 255
24
+ },
25
+ "body":{
22
26
  "description": "Body with placeholders, replaced when the template is used.",
23
27
  "required":true,
24
- "type":"string"
28
+ "type":"string",
29
+ "format":"text"
25
30
  },
26
- "kind": {
31
+ "kind":{
27
32
  "description": "Kind of object receiving the email.",
28
33
  "required":true,
29
34
  "enum": ["invoice", "estimate", "credit_note", "payment_reminder", "order", "client"],
@@ -34,13 +39,13 @@
34
39
  "type":"string",
35
40
  "maxLength": 10
36
41
  },
37
- "created_at": {
42
+ "created_at":{
38
43
  "description": "Date the object was created in SK. Never changes afterwards",
39
44
  "format":"date-time",
40
45
  "readonly":true,
41
46
  "type":"string"
42
47
  },
43
- "updated_at": {
48
+ "updated_at":{
44
49
  "description": "Date the object was edited in SK.",
45
50
  "format":"date-time",
46
51
  "readonly":true,
@@ -48,7 +53,9 @@
48
53
  },
49
54
  "team_id":{
50
55
  "description": "A team uuid. If set only the team and its parent teams can see the record.",
51
- "type":"string"
56
+ "type":"string",
57
+ "maxLength": 22,
58
+ "minLength":22
52
59
  }
53
60
  },
54
61
  "links":[
@@ -3,14 +3,17 @@
3
3
  "description": "An estimate",
4
4
  "properties":{
5
5
  "id":{
6
- "description": "UUID assigned by SK",
6
+ "description":"Unique identifier - UUID",
7
7
  "identity":true,
8
8
  "readonly":true,
9
- "type":"string"
9
+ "type":"string",
10
+ "maxLength": 22,
11
+ "minLength":22
10
12
  },
11
13
  "number":{
12
14
  "description": "Unique number assigned by SK estimate number schema. Auto-assigned when estimate is opened. Required unless doc status is draft.",
13
- "type":"string"
15
+ "type":"string",
16
+ "maxLength": 50
14
17
  },
15
18
  "address_field":{
16
19
  "description": "Receiver address, normally shown in envelope window. Defaults to client address_field if empty and client_id present.",
@@ -38,22 +41,26 @@
38
41
  },
39
42
  "external_ref":{
40
43
  "description": "Some external reference, whatever this may be.",
41
- "type":"string"
44
+ "type":"string",
45
+ "maxLength": 255
42
46
  },
43
47
  "title":{
44
- "description": "The headline of a document. Use SK placeholders to prevent exessive typing e.g. 'Your estimate [number]'",
45
- "type":"string"
48
+ "description": "The headline of a document. Use SK placeholders to prevent excessive typing e.g. 'Your estimate [number]'",
49
+ "type":"string",
50
+ "maxLength": 255
46
51
  },
47
52
  "notes_before":{
48
- "description": "Notes shown before the line items. Normaly contains salutation and other introductional information. SK placeholders can be used.",
49
- "type":"string"
53
+ "description": "Notes shown before the line items. Normally contains salutation and other introductional information. SK placeholders can be used.",
54
+ "type":"string",
55
+ "format":"text"
50
56
  },
51
57
  "notes_after":{
52
58
  "description": "Notes shown after the line items. Can contain information about payments, bank account or a thank-you message. SK placeholders can be used.",
53
- "type":"string"
59
+ "type":"string",
60
+ "format":"text"
54
61
  },
55
- "tag_list": {
56
- "description": "Space separated list of tags.",
62
+ "tag_list":{
63
+ "description": "Space separated list of tags. Are split and saved as Tag objects on create, update.",
57
64
  "type":"string"
58
65
  },
59
66
  "language":{
@@ -75,11 +82,15 @@
75
82
  },
76
83
  "client_id":{
77
84
  "description": "The clients uuid. If a new client is assigned its language, address field are used if those fields are not set.",
78
- "type":"string"
85
+ "type":"string",
86
+ "maxLength": 22,
87
+ "minLength":22
79
88
  },
80
89
  "team_id":{
81
90
  "description": "A team uuid. If set only the team and its parent teams can see the record.",
82
- "type":"string"
91
+ "type":"string",
92
+ "maxLength": 22,
93
+ "minLength":22
83
94
  },
84
95
  "line_items":{
85
96
  "description": "Line items for the document",
@@ -142,7 +153,7 @@
142
153
  },
143
154
  "filter[q]":{
144
155
  "title" : "Search",
145
- "description": "Search in title, number, addressfield",
156
+ "description": "Search in title, number, address field",
146
157
  "type":"string"
147
158
  },
148
159
  "filter[number]":{
@@ -1,23 +1,27 @@
1
1
  { "type":"object",
2
2
  "title": "export",
3
3
  "description":"An export in SK",
4
- "properties": {
5
- "id": {
6
- "description": "uuid of the export",
4
+ "properties":{
5
+ "id":{
6
+ "description":"Unique identifier - UUID",
7
7
  "identity":true,
8
8
  "readonly":true,
9
- "type":"string"
9
+ "type":"string",
10
+ "maxLength": 22,
11
+ "minLength":22
10
12
  },
11
- "collection_type": {
13
+ "collection_type":{
12
14
  "description": "The type of data to export. Lower-case singular name of the export data's class(invoice,client ..), see available classes in json schema. Does not need to be set for text-exports as its set from the export tempaltes type.",
13
- "type":"string"
15
+ "type":"string",
16
+ "maxLength": 20
14
17
  },
15
- "collection_ids": {
18
+ "collection_ids":{
16
19
  "description": "Comma separated uuid's of the export objects. The backend uses a mysql text-column limited to ~64kb. 100 uuids are ~2.5kb",
17
20
  "required":true,
18
- "type":"string"
21
+ "type":"string",
22
+ "format":"text"
19
23
  },
20
- "kind": {
24
+ "kind":{
21
25
  "description": "The export type. text: uses an export template defined by a template_id. archived_pdf: zip with archived PDF(documents only). allinone_pdf: All archived PDF(Documents) in one big PDF. attachments: All attachments of the given objects as zip. dtaus: German bank format, relies on valid bank information in your company and for each client of the exported documents. dtaus_lk Lastschrift. dtaus_gk: Gutschrift.",
22
26
  "required":true,
23
27
  "enum": ["text", "archived_pdf", "attachments", "dtaus_lk", "dtaus_gk", "allinone_pdf"],
@@ -25,22 +29,27 @@
25
29
  },
26
30
  "template_id":{
27
31
  "description": "A export template uuid. Required for text exports. collection_type can be empty as is forced to the templates type",
28
- "type":"string"
32
+ "type":"string",
33
+ "maxLength": 22,
34
+ "minLength":22
29
35
  },
30
36
  "team_id":{
31
37
  "description": "A team uuid. If set only the team and its parent teams can see the record.",
32
- "type":"string"
38
+ "type":"string",
39
+ "maxLength": 22,
40
+ "minLength":22
33
41
  },
34
- "status": {
42
+ "status":{
35
43
  "description": "The export status",
36
44
  "readonly":true,
37
45
  "enum": ["pending", "in_progress", "failed", "success"],
38
46
  "type":"string"
39
47
  },
40
- "log": {
48
+ "log":{
41
49
  "description": "Errors and warnings, can contain html markup f.ex. links to clients with invalid back accounts when doing dtaus export",
42
50
  "readonly":true,
43
- "type":"string"
51
+ "type":"string",
52
+ "format": "text"
44
53
  },
45
54
  "attachments":{
46
55
  "description": "The exported data as attachment.",
@@ -48,25 +57,25 @@
48
57
  "type":"array",
49
58
  "properties":{"$ref":"./attachment.json#properties"}
50
59
  },
51
- "started_at": {
60
+ "started_at":{
52
61
  "description": "Date the was started",
53
62
  "format":"date-time",
54
63
  "readonly":true,
55
64
  "type":"string"
56
65
  },
57
- "finished_at": {
66
+ "finished_at":{
58
67
  "description": "Date the was finished",
59
68
  "format":"date-time",
60
69
  "readonly":true,
61
70
  "type":"string"
62
71
  },
63
- "created_at": {
72
+ "created_at":{
64
73
  "description": "Date the object was created in SK. Never changes afterwards",
65
74
  "format":"date-time",
66
75
  "readonly":true,
67
76
  "type":"string"
68
77
  },
69
- "updated_at": {
78
+ "updated_at":{
70
79
  "description": "Date the object was edited in SK.",
71
80
  "format":"date-time",
72
81
  "readonly":true,
@@ -1,40 +1,45 @@
1
1
  { "type":"object",
2
2
  "title": "export_template",
3
3
  "description":"An export_template in SK",
4
- "properties": {
5
- "id": {
6
- "description": "uuid of the export_template",
4
+ "properties":{
5
+ "id":{
6
+ "description":"Unique identifier - UUID",
7
7
  "identity":true,
8
8
  "readonly":true,
9
- "type":"string"
9
+ "type":"string",
10
+ "maxLength": 22,
11
+ "minLength":22
10
12
  },
11
- "name": {
13
+ "name":{
12
14
  "description": "A meaningful name.",
13
15
  "required":true,
14
- "type":"string"
16
+ "type":"string",
17
+ "maxLength": 50
15
18
  },
16
- "text": {
19
+ "text":{
17
20
  "description": "Text with placeholders, replaced when the template is used.",
18
21
  "required":true,
19
- "type":"string"
20
- },
21
- "kind": {
22
+ "type":"string",
23
+ "format":"text"
24
+ },
25
+ "kind":{
22
26
  "description": "Kind of exported data.",
23
27
  "required":true,
24
28
  "enum": ["invoice", "estimate", "credit_note", "payment_reminder", "order", "client", "payment", "comment", "email", "history", "product","recurring"],
25
29
  "type":"string"
26
30
  },
27
- "filename": {
31
+ "filename":{
28
32
  "description": "Name of the created export file. Date placeholders can be used: %y-%m-%d_%H-%M_clients.csv",
29
- "type":"string"
33
+ "type":"string",
34
+ "maxLength": 255
30
35
  },
31
- "created_at": {
36
+ "created_at":{
32
37
  "description": "Date the object was created in SK. Never changes afterwards",
33
38
  "format":"date-time",
34
39
  "readonly":true,
35
40
  "type":"string"
36
41
  },
37
- "updated_at": {
42
+ "updated_at":{
38
43
  "description": "Date the object was edited in SK.",
39
44
  "format":"date-time",
40
45
  "readonly":true,
@@ -42,7 +47,9 @@
42
47
  },
43
48
  "team_id":{
44
49
  "description": "A team uuid. If set only the team and its parent teams can see the record.",
45
- "type":"string"
50
+ "type":"string",
51
+ "maxLength": 22,
52
+ "minLength":22
46
53
  }
47
54
  },
48
55
  "links":[
@@ -3,14 +3,17 @@
3
3
  "description": "An invoice",
4
4
  "properties":{
5
5
  "id":{
6
- "description": "UUID assigned by SK",
6
+ "description":"Unique identifier - UUID",
7
7
  "identity":true,
8
8
  "readonly":true,
9
- "type":"string"
9
+ "type":"string",
10
+ "maxLength": 22,
11
+ "minLength": 22
10
12
  },
11
13
  "number":{
12
14
  "description": "Unique number assigned by SK invoice number schema. Auto-assigned when invoice is opened. Required unless doc status is draft.",
13
- "type":"string"
15
+ "type":"string",
16
+ "maxLength": 50
14
17
  },
15
18
  "address_field":{
16
19
  "description": "Receiver address, normally shown in envelope window. Defaults to client address_field if empty and client_id given.",
@@ -38,27 +41,31 @@
38
41
  },
39
42
  "external_ref":{
40
43
  "description": "Some external reference, whatever this may be.",
41
- "type":"string"
44
+ "type":"string",
45
+ "maxLength": 255
42
46
  },
43
47
  "payment_method":{
44
- "description": "How the document is beeing payed. Used in new payments.",
48
+ "description": "How the document is being payed. Used in new payments.",
45
49
  "enum":["cash","bank_transfer","credit_card","paypal","direct_debit","cheque", "moneybookers", "premium_sms"],
46
50
  "type":"string"
47
51
  },
48
52
  "title":{
49
- "description": "The headline of a document. Use SK placeholders to prevent exessive typing e.g. 'Your invoice [number]'",
50
- "type":"string"
53
+ "description": "The headline of a document. Use SK placeholders to prevent excessive typing e.g. 'Your invoice [number]'",
54
+ "type":"string",
55
+ "maxLength": 255
51
56
  },
52
57
  "notes_before":{
53
- "description": "Notes shown before the line items. Normaly contains salutation and other introductional information. SK placeholders can be used.",
54
- "type":"string"
58
+ "description": "Notes shown before the line items. Normally contains salutation and other introductional information. SK placeholders can be used.",
59
+ "type":"string",
60
+ "format":"text"
55
61
  },
56
62
  "notes_after":{
57
63
  "description": "Notes shown after the line items. Can contain information about payments, bank account or a thank-you message. SK placeholders can be used.",
58
- "type":"string"
64
+ "type":"string",
65
+ "format":"text"
59
66
  },
60
- "tag_list": {
61
- "description": "Space separated list of tags.",
67
+ "tag_list":{
68
+ "description": "Space separated list of tags. Are split and saved as Tag objects on create, update.",
62
69
  "type":"string"
63
70
  },
64
71
  "language":{
@@ -80,11 +87,15 @@
80
87
  },
81
88
  "client_id":{
82
89
  "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.",
83
- "type":"string"
90
+ "type":"string",
91
+ "maxLength": 22,
92
+ "minLength": 22
84
93
  },
85
94
  "team_id":{
86
95
  "description": "A team uuid. If set only the team and its parent teams can see the record.",
87
- "type":"string"
96
+ "type":"string",
97
+ "maxLength": 22,
98
+ "minLength": 22
88
99
  },
89
100
  "line_items":{
90
101
  "description": "Line items for the document",
@@ -157,7 +168,7 @@
157
168
  },
158
169
  "filter[q]":{
159
170
  "title" : "Search",
160
- "description": "Search in title, number, addressfield",
171
+ "description": "Search in title, number, address field",
161
172
  "type":"string"
162
173
  },
163
174
  "filter[number]":{
@@ -243,6 +254,9 @@
243
254
  { "rel": "attachments",
244
255
  "href": "invoices/{id}/attachments"
245
256
  },
257
+ { "rel": "payments",
258
+ "href": "invoices/{id}/payments"
259
+ },
246
260
  { "rel": "payment_reminders",
247
261
  "href": "invoices/{id}/payment_reminders"
248
262
  },
@@ -3,20 +3,24 @@
3
3
  "description": "A language in SK can be assigned to documents, contacts and templates. When creating new documents, emails or PDF the language is used to select a specific template or language agnostic defaults. A language has many translations.",
4
4
  "properties":{
5
5
  "id":{
6
- "description": "uuid of the language.",
6
+ "description":"Unique identifier - UUID",
7
7
  "identity":true,
8
8
  "readonly":true,
9
- "type":"string"
9
+ "type":"string",
10
+ "maxLength": 22,
11
+ "minLength":22
10
12
  },
11
13
  "code":{
12
14
  "description": "Language short-code",
13
- "type":"string"
15
+ "type":"string",
16
+ "maxLength": 10
14
17
  },
15
18
  "name":{
16
19
  "description": "The name of the language, shown in the interface",
17
20
  "type":"string",
18
- "required":true
19
- },
21
+ "required":true,
22
+ "maxLength": 30
23
+ },
20
24
  "created_at":{
21
25
  "description": "Date the object was created in SK. Never changes afterwards",
22
26
  "format":"date-time",
@@ -46,7 +50,7 @@
46
50
  "title" : "Per page",
47
51
  "description": "Results per page. Default is 10, max is 100",
48
52
  "type":"number"
49
- },
53
+ },
50
54
  "sort_by":{
51
55
  "title" : "Sort by",
52
56
  "description": "Sort the results by the given field => code",