Create Distribution Edge
POST/api/manufacturing/mrp/distribution-network
Create a distribution edge. Self-edges and cycles are rejected with 422 {message}. Auth: requires Bearer token. FormRequest: UpsertDistributionNetworkRequest. Fields: source_warehouse_id (required, exists:warehouses), destination_warehouse_id (required, exists:warehouses, different:source), transfer_lead_time_days (nullable, integer, min:0), priority (nullable, integer). A null transfer_lead_time_days or priority is coerced to 0 before validation, so a blank field behaves as the UI's own hint promises ("Leave blank for 0"). Both columns are NOT NULL DEFAULT 0, and a column default does not apply to an explicitly-supplied null — without the coercion a null was rejected by the database rather than defaulted. Only a key that is actually sent is coerced: omit the key on an update and the stored value is left alone, so a partial update cannot silently reset a route's priority.
mrp:run|manufacturing:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Request
Responses
- 201
- 401
- 403
- 422
- 429
Created
Response Headers
Unauthenticated — the bearer token is missing, revoked, expired, or malformed. Never retry automatically; fix the credential. See the Errors guide.
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Unprocessable Entity
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.