{ "opencollection": "1.0.0", "info": { "name": "ComboCurve REST v1 custom-columns v1 forecast-configurations API", "version": "v1" }, "request": { "auth": { "type": "apikey", "key": "x-api-key", "value": "{{x-api-key}}", "placement": "header" } }, "items": [ { "info": { "name": "v1 forecast-configurations", "type": "folder" }, "items": [ { "info": { "name": "get-forecast-configurations", "type": "http" }, "http": { "method": "GET", "url": "https://api.combocurve.com/v1/forecast-configurations", "params": [ { "name": "skip", "value": "", "type": "query", "description": "number of items to skip" }, { "name": "take", "value": "", "type": "query", "description": "max records to return" }, { "name": "cursor", "value": "", "type": "query", "description": "used in pagination to get the next page" }, { "name": "forecastType", "value": "", "type": "query", "description": "Filter by forecast type: probabilistic | deterministic." }, { "name": "name", "value": "", "type": "query", "description": "Filter by exact name." }, { "name": "createdAt", "value": "", "type": "query", "description": "Filter by createdAt timestamp." }, { "name": "updatedAt", "value": "", "type": "query", "description": "Filter by updatedAt timestamp." } ] }, "docs": "Returns the list of forecast configurations visible to the API user. Reads are tenant-wide regardless of the configuration's `project` field." }, { "info": { "name": "post-forecast-configurations", "type": "http" }, "http": { "method": "POST", "url": "https://api.combocurve.com/v1/forecast-configurations", "body": { "type": "json", "data": "{}" } }, "docs": "Create one or more forecast configurations. The body may be a single object or an array; single-object bodies are coerced to a one-item array and the response is always 207 Multi-Status. `forecastType` is required and immutable. For `deterministic` configurations `project` is required; for `probabilistic` configurations `project` is prohibited (probabilistic configurations are user-scoped). `isAdmin` and `userDefault` in the request body are rejected." }, { "info": { "name": "put-forecast-configurations", "type": "http" }, "http": { "method": "PUT", "url": "https://api.combocurve.com/v1/forecast-configurations", "body": { "type": "json", "data": "{}" } }, "docs": "Bulk upsert by natural key. The natural key is `(name, project)` for deterministic configurations and `(name, createdBy)` for probabilistic configurations. When a matching configuration owned by the API user exists it is replaced; otherwise a new configuration is created. Any `id` supplied in the body is ignored (read-only). Configurations matched by natural key but owned by a different user produce a `403` per-record multi-status entry." }, { "info": { "name": "patch-forecast-configurations", "type": "http" }, "http": { "method": "PATCH", "url": "https://api.combocurve.com/v1/forecast-configurations", "body": { "type": "json", "data": "{}" } }, "docs": "Bulk partial update by natural key. The natural key is the same as for PUT: `(name, project)` for deterministic configurations and `(name, createdBy)` for probabilistic configurations. Records whose natural key does not match an existing configuration produce a `404` per-record multi-status entry (PATCH never inserts). `forecastType` is required for routing; it cannot be changed." }, { "info": { "name": "delete-forecast-configurations", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.combocurve.com/v1/forecast-configurations", "params": [ { "name": "id", "value": "", "type": "query", "description": "One or more forecast configuration ids to delete." } ] }, "docs": "Bulk delete by id. Pass one or more forecast configuration ids as repeated `id` query parameters. Configurations owned by other users return a `403` per-record multi-status entry; ids that do not exist return `404`." }, { "info": { "name": "head-forecast-configurations", "type": "http" }, "http": { "method": "HEAD", "url": "https://api.combocurve.com/v1/forecast-configurations", "params": [ { "name": "skip", "value": "", "type": "query", "description": "number of items to skip" }, { "name": "take", "value": "", "type": "query", "description": "max records to return" }, { "name": "forecastType", "value": "", "type": "query", "description": "Filter by forecast type: probabilistic | deterministic." }, { "name": "name", "value": "", "type": "query", "description": "Filter by exact name." }, { "name": "createdAt", "value": "", "type": "query", "description": "Filter by createdAt timestamp." }, { "name": "updatedAt", "value": "", "type": "query", "description": "Filter by updatedAt timestamp." } ] }, "docs": "Returns metadata about the existing forecast configuration documents (count and pagination links) without a body. Supports the same filters as GET." }, { "info": { "name": "get-forecast-configuration-by-id", "type": "http" }, "http": { "method": "GET", "url": "https://api.combocurve.com/v1/forecast-configurations/:id", "params": [ { "name": "id", "value": "", "type": "path" } ] }, "docs": "Returns a single forecast configuration by id." }, { "info": { "name": "delete-forecast-configuration-by-id", "type": "http" }, "http": { "method": "DELETE", "url": "https://api.combocurve.com/v1/forecast-configurations/:id", "params": [ { "name": "id", "value": "", "type": "path" } ] }, "docs": "Delete a single forecast configuration by id. Only configurations owned by the API user may be deleted." } ] } ], "bundled": true }