4WS Suite
Home
API Reference
  • Data mangement API
  • Documents API
Home
API Reference
  • Data mangement API
  • Documents API
Fourwayshop
  1. Season
  • Login
    • login
      POST
  • Product
    • Brand
      • Get All Brands
      • Get A Brand
      • Insert brand
      • Update brand
    • Season
      • Get All Seasons
        GET
      • Get A Season
        GET
      • Insert season
        POST
      • Update season
        PATCH
    • Attribute
      • Get All Attribute Types
      • Get Attribute Type
      • Get Attribute
      • Insert attribute
      • Update attribute
    • Hierarchy
      • Insert hierarchy
      • Update hierarchy
    • Dimension groups
      • Insert dimension group
      • Update dimension group
    • Dimension
      • Insert dimension
      • Update dimension
      • Delete dimension
    • Product
      • Get products
      • Get product
      • Get product grouping
      • Get SKU's barcodes
      • Get product stock
      • Insert product
      • Update product
    • Activate dimensions on products
      • Insert active dimensions
      • Delete active dimensions
    • Barcode
      • Get SKU from barcode
      • Generate missing barcodes
      • Generate missing barcode for SKU
      • Insert barcode
      • Delete barcode
    • Prices
      • Get product prices
    • Price dimension groupings
      • Get Dimension Price Grouping
      • Get All Dimension Price Grouping
      • Insert dimension grouping
      • Update dimension grouping
      • Delete dimension grouping
    • Assortment
      • insert product assortment
      • delete product assortment
    • Image
      • Get images
      • Add image
      • Replace image
      • Delete image
    • Supplier
      • Get Item suppliers
      • Insert item supplier
      • Delete item supplier
      • Update item supplier
    • Custom category
      • Get Custom code
      • Insert Custom code
      • Update Custom code
    • Vat
      • Vat types
        • Get VAT type
        • Get VAT types
      • VATs
        • Get VATs
        • Get VATs by type
        • Get VAT
      • Vat rates
        • Get VAT rates
        • Get single VAT rates
    • Stock
      • Insert stock
      • Get stock
  • Price lists
    • Get price lists
      GET
    • Get price lists by type
      GET
    • Get price list
      GET
    • Get prices from price list
      GET
    • Get entities from price lists
      GET
    • Insert Price List
      POST
    • Insert Product Price
      POST
    • Insert Entity On Price Lists
      POST
    • Update price list
      PATCH
    • Delete all product prices
      DELETE
    • Delete single product price
      DELETE
    • Delete entity from a price lists
      DELETE
  • Supplier
    • Supplier contacts
    • Supplier addresses
    • Get Suppliers
    • Get A Specific Supplier
    • Insert supplier
    • Update supplier
  • Entities
    • Get entities
    • Get entity
    • Insert entity
    • Update entity
  • Miscellaneous
    • Get requests rate limits
  • Catalog
    • Get Catalogs details
    • Get Catalog details by Code
    • Get products by Catalog Code
  • Export
    • Get bulk CSV Export
  1. Season

Insert season

POST
/api/v1/seasons
Last modified:2025-02-07 14:37:57

Creating a New Product Season#

This API allows an external system to create a new season, associating it with products for sale. Seasons are identified by a code and are classified into specific categories (e.g., Spring/Summer, Autumn/Winter).
This document outlines the API that an external system can use to register a new season for product sales.
A season is characterized by a season and a year.
For example, the season "Knitwear SS 2024" identifies the season for knitwear products for Spring/Summer 2024, while "AI 2025" identifies the season for Autumn/Winter 2025.
season_code: A unique identifier for the season.
description_it: The description of the season in Italian.
year: The year for which the season applies.
season: The season type, where the values correspond to:
CodeSeason Name
1Spring/Summer
2Autumn/Winter
3Continuous
4No Season
NOTE
Once a new collection is registered, it can be used in the new product creation functionality from the suite or through the product insertion service insert product.

Actors#

API Client: The system or user initiating the request.
4ws.trade: The backend system that processes the request.

Languages#

To understand how languages are managed, please refer to our Managing Languages Documentation.

Preconditions#

The season code must be unique.
The season value must correspond to one of the predefined categories.
The external system must have the necessary permissions and access to the document creation service, please refer to Authentication.

Languages#

To understand how languages are managed, please refer to our Managing Languages Documentation.

Main Success Scenario#

If the season creation is successful, the system will return an HTTP 200 response with the internal program ID (prog_id) and the season_code.
Example Success Response:
{
  "season": {
    "prog_id": 994,
    "season_code": "EXAMPLE_SEASON"
  }
}

Alternate Flows#

1.
Season Code Already Exists:
If the season code is not unique and already exists in the system, the following error will be returned:
{
  "message": "season_code with {season_code} already exists"
}
HTTP Status: 422 Unprocessable Entity
2.
Invalid Season Type:
If the provided season value does not match one of the predefined categories (1, 2, 3, 4), the following error will be returned:
{
  "message": "season with {season} not found"
}
HTTP Status: 422 Unprocessable Entity
Best Practices
Please refer to Best Practices for Error Handling in External System for best practices on implementation.

Sequence Diagram#

Below is a sequence diagram representing the process of creating a new season.

Code Example in Node.js#

This Node.js example demonstrates how to create a new season using the provided API.

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/json

Example
{
   "season_code":"EXAMPLE_SEASON",
   "description_it":"Stagione di esempio",
   "year":2024,
   "season":4
}

Request Code Samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST '/api/v1/seasons' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data-raw '{
   "season_code":"EXAMPLE_SEASON",
   "description_it":"Stagione di esempio",
   "year":2024,
   "season":4
}'

Responses

🟢200Success
application/json
Body

Example
{
    "season": {
        "prog_id": 994,
        "season_code": "EXAMPLE_SEASON"
    }
}
🟠401Authentication failed
🟠403Operation not allowed
🟠422Unique constraint error
Modified at 2025-02-07 14:37:57
Previous
Get A Season
Next
Update season
Built with