Cognis
Commerce Products

Put Sourcing Links

PUT
/org/{orgId}/ecom/products/{productId}/sourcing-links

Public API endpoint: ecomProduct.putSourcingLinks

Required scopes: org:ecom:collections:write

Authorization

bearerAuth
AuthorizationBearer <token>

API key (prefix: cogn_) from Account → Developer

In: header

Path Parameters

orgId*string

Organization ID (prefix: org_)

productId*string

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X PUT "http://localhost:3013/api/v1/org/string/ecom/products/string/sourcing-links" \  -H "Content-Type: application/json" \  -d '{    "links": [      {        "url": "http://example.com"      }    ]  }'
{
  "success": true,
  "data": [
    {
      "id": "psl_example123",
      "type": "url",
      "url": "https://www.aliexpress.com/item/1005008806380297.html",
      "marketplace": "aliexpress",
      "costAmount": 12.5,
      "costCurrency": "usd",
      "createdAt": "2026-01-01T00:00:00.000Z"
    }
  ],
  "message": "Success",
  "traceId": "req_abc123"
}
{
  "success": false,
  "message": "Invalid data",
  "errors": [
    {
      "code": 400,
      "message": "Invalid data"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Unauthorized",
  "errors": [
    {
      "code": 401,
      "message": "Unauthorized"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Forbidden",
  "errors": [
    {
      "code": 403,
      "message": "Forbidden"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Not found",
  "errors": [
    {
      "code": 404,
      "message": "Not found"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Conflict",
  "errors": [
    {
      "code": 409,
      "message": "Conflict"
    }
  ],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "string",
  "errors": [
    {
      "code": 0,
      "message": "string",
      "details": {}
    }
  ],
  "traceId": "string",
  "params": {},
  "readableMessage": "string"
}
{
  "success": false,
  "message": "Rate limit exceeded",
  "errors": [],
  "traceId": "req_xxx"
}
{
  "success": false,
  "message": "Unexpected error",
  "errors": [
    {
      "code": 500,
      "message": "Unexpected error"
    }
  ],
  "traceId": "req_xxx"
}