curl --request PUT \
--url https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons \
--header 'Content-Type: application/json' \
--data '
[
{
"id": 123,
"name": "<string>",
"project": "<string>",
"customId": "<string>"
}
]
'import requests
url = "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons"
payload = [
{
"id": 123,
"name": "<string>",
"project": "<string>",
"customId": "<string>"
}
]
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify([{id: 123, name: '<string>', project: '<string>', customId: '<string>'}])
};
fetch('https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
[
'id' => 123,
'name' => '<string>',
'project' => '<string>',
'customId' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons"
payload := strings.NewReader("[\n {\n \"id\": 123,\n \"name\": \"<string>\",\n \"project\": \"<string>\",\n \"customId\": \"<string>\"\n }\n]")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons")
.header("Content-Type", "application/json")
.body("[\n {\n \"id\": 123,\n \"name\": \"<string>\",\n \"project\": \"<string>\",\n \"customId\": \"<string>\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"id\": 123,\n \"name\": \"<string>\",\n \"project\": \"<string>\",\n \"customId\": \"<string>\"\n }\n]"
response = http.request(request)
puts response.read_body{
"status": "success",
"code": "<string>",
"data": [
{
"id": 123,
"name": "<string>",
"project": "<string>",
"customId": "<string>",
"state": "active",
"properties": [
"<string>"
]
}
]
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}Bulk update seasons (full replace)
Updates one or more seasons. PUT is a full replace: name, project, customId and state are written verbatim on each item (name and state required; state=deleted rejected). Fields not on the public contract (priceConfirmationDeadline, milestones, position, access) are preserved per item. Use PATCH for partial updates. All seasons are updated within a single transaction — all succeed or all fail.
curl --request PUT \
--url https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons \
--header 'Content-Type: application/json' \
--data '
[
{
"id": 123,
"name": "<string>",
"project": "<string>",
"customId": "<string>"
}
]
'import requests
url = "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons"
payload = [
{
"id": 123,
"name": "<string>",
"project": "<string>",
"customId": "<string>"
}
]
headers = {"Content-Type": "application/json"}
response = requests.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify([{id: 123, name: '<string>', project: '<string>', customId: '<string>'}])
};
fetch('https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
[
'id' => 123,
'name' => '<string>',
'project' => '<string>',
'customId' => '<string>'
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons"
payload := strings.NewReader("[\n {\n \"id\": 123,\n \"name\": \"<string>\",\n \"project\": \"<string>\",\n \"customId\": \"<string>\"\n }\n]")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons")
.header("Content-Type", "application/json")
.body("[\n {\n \"id\": 123,\n \"name\": \"<string>\",\n \"project\": \"<string>\",\n \"customId\": \"<string>\"\n }\n]")
.asString();require 'uri'
require 'net/http'
url = URI("https://ca-delogue-service-prod.bravepebble-62e34dbe.westeurope.azurecontainerapps.io/api/seasons")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Content-Type"] = 'application/json'
request.body = "[\n {\n \"id\": 123,\n \"name\": \"<string>\",\n \"project\": \"<string>\",\n \"customId\": \"<string>\"\n }\n]"
response = http.request(request)
puts response.read_body{
"status": "success",
"code": "<string>",
"data": [
{
"id": 123,
"name": "<string>",
"project": "<string>",
"customId": "<string>",
"state": "active",
"properties": [
"<string>"
]
}
]
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"operation": "<string>",
"total_items": 123,
"failed_items": 123,
"summary": "<string>",
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}{
"status": "success",
"code": "<string>",
"error": {
"details": [
{
"type": "<string>",
"field": "<string>",
"value": "<string>"
}
]
}
}Headers
Body
The unique identifier of the season to update. Required on each item in the batch.
The display name of the season, such as SS29. Required, up to 200 characters.
The project within the season, a sub-grouping used for seasonal drops or collaboration collections. Optional, up to 100 characters.
A customer-defined identifier for the season, useful for aligning with an external ERP system. Optional, up to 100 characters.
The lifecycle state to set on the season. Required on a full-replace update and cannot be set to deleted; use DELETE to remove a season instead.
active, inactive, deleted Response
OK
The coarse outcome of the request, indicating whether it succeeded or failed.
success, error The specific machine-readable outcome code, such as ok on success or the most specific error code on failure. Always lowercase on the wire.
The response payload, either a single object for a by-id read or an array for a bulk operation. Omitted from the body when there is no value.
Show child attributes
Show child attributes