flex_commerce_api 0.6.57
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.env.example +6 -0
- data/.gitignore +14 -0
- data/.rspec +4 -0
- data/.rubocop.yml +1065 -0
- data/.ruby-gemset +1 -0
- data/.ruby-version +1 -0
- data/.travis.yml +3 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +56 -0
- data/Rakefile +1 -0
- data/app/models/address.rb +41 -0
- data/app/models/asset_file.rb +26 -0
- data/app/models/asset_folder.rb +14 -0
- data/app/models/bundle.rb +20 -0
- data/app/models/bundle_group.rb +15 -0
- data/app/models/cart.rb +136 -0
- data/app/models/category.rb +70 -0
- data/app/models/category_tree.rb +11 -0
- data/app/models/component.rb +8 -0
- data/app/models/container_coupon.rb +12 -0
- data/app/models/country.rb +11 -0
- data/app/models/coupon.rb +18 -0
- data/app/models/customer_account.rb +96 -0
- data/app/models/customer_account_authentication.rb +5 -0
- data/app/models/customer_segment.rb +6 -0
- data/app/models/customer_segment_member.rb +6 -0
- data/app/models/data_attribute.rb +6 -0
- data/app/models/data_store_record.rb +9 -0
- data/app/models/data_store_type.rb +9 -0
- data/app/models/discount_summary.rb +12 -0
- data/app/models/email.rb +5 -0
- data/app/models/ewis_opt_in.rb +8 -0
- data/app/models/external_url.rb +6 -0
- data/app/models/free_shipping_promotion.rb +12 -0
- data/app/models/import.rb +6 -0
- data/app/models/import_entry.rb +6 -0
- data/app/models/line_item.rb +34 -0
- data/app/models/line_item_discount.rb +7 -0
- data/app/models/markdown_price.rb +11 -0
- data/app/models/menu.rb +36 -0
- data/app/models/menu_item.rb +7 -0
- data/app/models/menu_item_item.rb +5 -0
- data/app/models/note.rb +18 -0
- data/app/models/order.rb +38 -0
- data/app/models/password_recovery.rb +20 -0
- data/app/models/payment_address_verification.rb +13 -0
- data/app/models/payment_process.rb +13 -0
- data/app/models/payment_provider.rb +15 -0
- data/app/models/payment_transaction.rb +13 -0
- data/app/models/product.rb +99 -0
- data/app/models/product_asset_file.rb +12 -0
- data/app/models/promotion.rb +19 -0
- data/app/models/promotion_qualifying_product_exclusion.rb +8 -0
- data/app/models/redirect.rb +14 -0
- data/app/models/refund.rb +14 -0
- data/app/models/remote_address.rb +22 -0
- data/app/models/remote_line_item.rb +11 -0
- data/app/models/remote_order.rb +15 -0
- data/app/models/remote_shipping_method.rb +12 -0
- data/app/models/report.rb +18 -0
- data/app/models/report_invocation.rb +18 -0
- data/app/models/retail_store.rb +18 -0
- data/app/models/role.rb +6 -0
- data/app/models/search_suggestion.rb +17 -0
- data/app/models/section.rb +9 -0
- data/app/models/session.rb +8 -0
- data/app/models/shipping_method.rb +26 -0
- data/app/models/slug.rb +19 -0
- data/app/models/static_page.rb +60 -0
- data/app/models/static_page_folder.rb +8 -0
- data/app/models/stock_level.rb +21 -0
- data/app/models/tax_code.rb +6 -0
- data/app/models/taxonomy.rb +5 -0
- data/app/models/template.rb +9 -0
- data/app/models/template_component.rb +11 -0
- data/app/models/template_definition.rb +12 -0
- data/app/models/template_section.rb +12 -0
- data/app/models/user.rb +8 -0
- data/app/models/user_profile.rb +6 -0
- data/app/models/v2/create_order.rb +10 -0
- data/app/models/v2/deallocate_order.rb +10 -0
- data/app/models/v2/line_item.rb +9 -0
- data/app/models/v2/order.rb +9 -0
- data/app/models/v2/unallocate_order.rb +10 -0
- data/app/models/variant.rb +18 -0
- data/app/models/webhook.rb +17 -0
- data/app/services/param_to_shql.rb +72 -0
- data/app/services/surrogate_keys.rb +44 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/config/locales/payments.en.yml +3 -0
- data/flex-commerce-api.gemspec +41 -0
- data/lib/flex_commerce.rb +95 -0
- data/lib/flex_commerce_api.rb +21 -0
- data/lib/flex_commerce_api/api_base.rb +11 -0
- data/lib/flex_commerce_api/base_resource.rb +250 -0
- data/lib/flex_commerce_api/config.rb +55 -0
- data/lib/flex_commerce_api/error/access_denied.rb +6 -0
- data/lib/flex_commerce_api/error/bad_request.rb +10 -0
- data/lib/flex_commerce_api/error/base.rb +12 -0
- data/lib/flex_commerce_api/error/client_error.rb +7 -0
- data/lib/flex_commerce_api/error/connection_error.rb +6 -0
- data/lib/flex_commerce_api/error/internal_server.rb +37 -0
- data/lib/flex_commerce_api/error/not_found.rb +13 -0
- data/lib/flex_commerce_api/error/record_invalid.rb +16 -0
- data/lib/flex_commerce_api/error/unexpected_status.rb +7 -0
- data/lib/flex_commerce_api/errors.rb +13 -0
- data/lib/flex_commerce_api/json_api_client_extension/builder.rb +28 -0
- data/lib/flex_commerce_api/json_api_client_extension/capture_surrogate_keys_middleware.rb +16 -0
- data/lib/flex_commerce_api/json_api_client_extension/flexible_connection.rb +59 -0
- data/lib/flex_commerce_api/json_api_client_extension/has_many_association_proxy.rb +60 -0
- data/lib/flex_commerce_api/json_api_client_extension/included_data.rb +27 -0
- data/lib/flex_commerce_api/json_api_client_extension/json_format_middleware.rb +20 -0
- data/lib/flex_commerce_api/json_api_client_extension/logging_middleware.rb +24 -0
- data/lib/flex_commerce_api/json_api_client_extension/paginator.rb +26 -0
- data/lib/flex_commerce_api/json_api_client_extension/parse_json.rb +23 -0
- data/lib/flex_commerce_api/json_api_client_extension/parsers/parser.rb +16 -0
- data/lib/flex_commerce_api/json_api_client_extension/previewed_request_middleware.rb +17 -0
- data/lib/flex_commerce_api/json_api_client_extension/remote_builder.rb +29 -0
- data/lib/flex_commerce_api/json_api_client_extension/requestor.rb +42 -0
- data/lib/flex_commerce_api/json_api_client_extension/save_request_body_middleware.rb +20 -0
- data/lib/flex_commerce_api/json_api_client_extension/status_middleware.rb +40 -0
- data/lib/flex_commerce_api/v2/api_base.rb +13 -0
- data/lib/flex_commerce_api/version.rb +3 -0
- data/lib/json_erb.rb +9 -0
- data/lib/json_struct.rb +73 -0
- data/lib/patches.rb +4 -0
- data/lib/patches/json_api_client/resource.rb +50 -0
- data/lib/paypal_express.rb +3 -0
- data/lib/paypal_express/additional_info.rb +45 -0
- data/lib/paypal_express/api.rb +86 -0
- data/lib/paypal_express/auth.rb +83 -0
- data/lib/paypal_express/cart_shipping_method.rb +38 -0
- data/lib/paypal_express/exception/access_denied.rb +10 -0
- data/lib/paypal_express/exception/connection_error.rb +10 -0
- data/lib/paypal_express/exception/not_authorized.rb +10 -0
- data/lib/paypal_express/exception/transaction.rb +15 -0
- data/lib/paypal_express/generate_summary.rb +118 -0
- data/lib/paypal_express/process/paypal_params.rb +123 -0
- data/lib/paypal_express/process/response_parser.rb +146 -0
- data/lib/paypal_express/setup.rb +94 -0
- data/lib/paypal_express/shipping_methods_for_cart.rb +46 -0
- data/lib/retry.rb +20 -0
- data/schemas/jsonapi/schema.json +370 -0
- data/schemas/shift/v1/documents/collection/address.json +45 -0
- data/schemas/shift/v1/documents/collection/asset_file.json +43 -0
- data/schemas/shift/v1/documents/collection/asset_folder.json +43 -0
- data/schemas/shift/v1/documents/collection/customer_account.json +50 -0
- data/schemas/shift/v1/documents/collection/markdown_price.json +43 -0
- data/schemas/shift/v1/documents/collection/product.json +43 -0
- data/schemas/shift/v1/documents/collection/variant.json +43 -0
- data/schemas/shift/v1/documents/member/address.json +39 -0
- data/schemas/shift/v1/documents/member/asset_file.json +37 -0
- data/schemas/shift/v1/documents/member/asset_folder.json +39 -0
- data/schemas/shift/v1/documents/member/customer_account.json +44 -0
- data/schemas/shift/v1/documents/member/markdown_price.json +37 -0
- data/schemas/shift/v1/documents/member/product.json +39 -0
- data/schemas/shift/v1/documents/member/variant.json +46 -0
- data/schemas/shift/v1/resources/address.json +130 -0
- data/schemas/shift/v1/resources/asset_file.json +146 -0
- data/schemas/shift/v1/resources/asset_folder.json +188 -0
- data/schemas/shift/v1/resources/customer_account.json +339 -0
- data/schemas/shift/v1/resources/markdown_price.json +52 -0
- data/schemas/shift/v1/resources/product.json +230 -0
- data/schemas/shift/v1/resources/variant.json +298 -0
- data/tasks/json_schema.thor +275 -0
- data/todo.md +8 -0
- metadata +470 -0
@@ -0,0 +1,45 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/address.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
{
|
40
|
+
"$ref": "../../resources/customer_account.json"
|
41
|
+
}
|
42
|
+
]
|
43
|
+
}
|
44
|
+
}
|
45
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/asset_file.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
|
40
|
+
]
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/asset_folder.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
|
40
|
+
]
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,50 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/customer_account.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
{
|
40
|
+
"$ref": "#/definitions/externalResources/carts"
|
41
|
+
}
|
42
|
+
]
|
43
|
+
},
|
44
|
+
"externalResources": {
|
45
|
+
"carts": {
|
46
|
+
"$ref": "../../resources/cart"
|
47
|
+
}
|
48
|
+
}
|
49
|
+
}
|
50
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/markdown_price.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
|
40
|
+
]
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/product.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
|
40
|
+
]
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,43 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "array",
|
7
|
+
"items": {
|
8
|
+
"$ref": "#/definitions/resource"
|
9
|
+
}
|
10
|
+
},
|
11
|
+
"meta": {
|
12
|
+
"type": "object",
|
13
|
+
"additionalProperties": true
|
14
|
+
},
|
15
|
+
"jsonapi": {
|
16
|
+
"type": "object"
|
17
|
+
},
|
18
|
+
"links": {
|
19
|
+
"type": "object"
|
20
|
+
},
|
21
|
+
"included": {
|
22
|
+
"type": "array",
|
23
|
+
"items": {
|
24
|
+
"$ref": "#/definitions/includedItems"
|
25
|
+
}
|
26
|
+
}
|
27
|
+
},
|
28
|
+
"required": [
|
29
|
+
"data",
|
30
|
+
"meta"
|
31
|
+
],
|
32
|
+
"additionalProperties": false,
|
33
|
+
"definitions": {
|
34
|
+
"resource": {
|
35
|
+
"$ref": "../../resources/variant.json"
|
36
|
+
},
|
37
|
+
"includedItems": {
|
38
|
+
"oneOf": [
|
39
|
+
|
40
|
+
]
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "object",
|
7
|
+
"$ref": "#/definitions/resource"
|
8
|
+
},
|
9
|
+
"meta": {
|
10
|
+
"type": "object",
|
11
|
+
"additionalProperties": true
|
12
|
+
},
|
13
|
+
"jsonapi": {
|
14
|
+
"type": "object"
|
15
|
+
},
|
16
|
+
"links": {
|
17
|
+
"type": "object"
|
18
|
+
},
|
19
|
+
"included": {
|
20
|
+
"type": "array",
|
21
|
+
"items": {
|
22
|
+
"$ref": "#/definitions/includedItems"
|
23
|
+
}
|
24
|
+
}
|
25
|
+
},
|
26
|
+
"additionalProperties": false,
|
27
|
+
"definitions": {
|
28
|
+
"resource": {
|
29
|
+
"$ref": "../../resources/address.json"
|
30
|
+
},
|
31
|
+
"includedItems": {
|
32
|
+
"oneOf": [
|
33
|
+
{
|
34
|
+
"$ref": "../../resources/customer_account.json"
|
35
|
+
}
|
36
|
+
]
|
37
|
+
}
|
38
|
+
}
|
39
|
+
}
|
@@ -0,0 +1,37 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "object",
|
7
|
+
"$ref": "#/definitions/resource"
|
8
|
+
},
|
9
|
+
"meta": {
|
10
|
+
"type": "object",
|
11
|
+
"additionalProperties": true
|
12
|
+
},
|
13
|
+
"jsonapi": {
|
14
|
+
"type": "object"
|
15
|
+
},
|
16
|
+
"links": {
|
17
|
+
"type": "object"
|
18
|
+
},
|
19
|
+
"included": {
|
20
|
+
"type": "array",
|
21
|
+
"items": {
|
22
|
+
"$ref": "#/definitions/includedItems"
|
23
|
+
}
|
24
|
+
}
|
25
|
+
},
|
26
|
+
"additionalProperties": false,
|
27
|
+
"definitions": {
|
28
|
+
"resource": {
|
29
|
+
"$ref": "../../resources/asset_file.json"
|
30
|
+
},
|
31
|
+
"includedItems": {
|
32
|
+
"oneOf": [
|
33
|
+
{ "$ref": "../../resources/asset_folder.json" }
|
34
|
+
]
|
35
|
+
}
|
36
|
+
}
|
37
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "object",
|
7
|
+
"$ref": "#/definitions/resource"
|
8
|
+
},
|
9
|
+
"meta": {
|
10
|
+
"type": "object",
|
11
|
+
"additionalProperties": true
|
12
|
+
},
|
13
|
+
"jsonapi": {
|
14
|
+
"type": "object"
|
15
|
+
},
|
16
|
+
"links": {
|
17
|
+
"type": "object"
|
18
|
+
},
|
19
|
+
"included": {
|
20
|
+
"type": "array",
|
21
|
+
"items": {
|
22
|
+
"$ref": "#/definitions/includedItems"
|
23
|
+
}
|
24
|
+
}
|
25
|
+
},
|
26
|
+
"additionalProperties": false,
|
27
|
+
"definitions": {
|
28
|
+
"resource": {
|
29
|
+
"$ref": "../../resources/asset_folder.json"
|
30
|
+
},
|
31
|
+
"includedItems": {
|
32
|
+
"oneOf": [
|
33
|
+
{"$ref": "../../resources/asset_folder.json"},
|
34
|
+
{"$ref": "../../resources/asset_file.json"}
|
35
|
+
|
36
|
+
]
|
37
|
+
}
|
38
|
+
}
|
39
|
+
}
|
@@ -0,0 +1,44 @@
|
|
1
|
+
{
|
2
|
+
"$schema": "http://json-schema.org/draft-04/schema#",
|
3
|
+
"type": "object",
|
4
|
+
"properties": {
|
5
|
+
"data": {
|
6
|
+
"type": "object",
|
7
|
+
"$ref": "#/definitions/resource"
|
8
|
+
},
|
9
|
+
"meta": {
|
10
|
+
"type": "object",
|
11
|
+
"additionalProperties": true
|
12
|
+
},
|
13
|
+
"jsonapi": {
|
14
|
+
"type": "object"
|
15
|
+
},
|
16
|
+
"links": {
|
17
|
+
"type": "object"
|
18
|
+
},
|
19
|
+
"included": {
|
20
|
+
"type": "array",
|
21
|
+
"items": {
|
22
|
+
"$ref": "#/definitions/includedItems"
|
23
|
+
}
|
24
|
+
}
|
25
|
+
},
|
26
|
+
"additionalProperties": false,
|
27
|
+
"definitions": {
|
28
|
+
"resource": {
|
29
|
+
"$ref": "../../resources/customer_account.json"
|
30
|
+
},
|
31
|
+
"includedItems": {
|
32
|
+
"oneOf": [
|
33
|
+
{
|
34
|
+
"$ref": "#/definitions/externalResources/carts"
|
35
|
+
}
|
36
|
+
]
|
37
|
+
},
|
38
|
+
"externalResources": {
|
39
|
+
"carts": {
|
40
|
+
"$ref": "../../resources/cart"
|
41
|
+
}
|
42
|
+
}
|
43
|
+
}
|
44
|
+
}
|