Zum Inhalt

API Endpoints (English)

Hinweis

Die API-Dokumentation ist derzeit nur in englischer Sprache verfügbar.

Hinweise zu Authentifizierung, Filtern, Suche, Sortierung und Pagination finden Sie in der Integrationsübersicht.

The Noyes API 3e11ee9a7

Public OpenAPI documentation for NoyesStorage integrations. Customer integrations authenticate with API keys issued in the NoyesStorage App. Send the issued key in the Authorization header as a bearer token.


Authentication


GET /api/v2/auth/api_keys

List API keys

Description

Returns paginated API-key records for administration, including the key values shown to authorized administrators.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
expires_at__gte query string No Filter by expires at greater than or equal to this value.
expires_at__lte query string No Filter by expires at less than or equal to this value.
id__eq query string No Filter by exact id.
id__ilike query string No Filter by partial, case-insensitive match on id.
last_used__gte query string No Filter by last used greater than or equal to this value.
last_used__lte query string No Filter by last used less than or equal to this value.
name__eq query string No Filter by exact name.
name__ilike query string No Filter by partial, case-insensitive match on name.
page query integer 1 No Result page to return. Pagination starts at page=1.
role__eq query string No Filter by exact role.
role__in query array No Filter by one or more values.
search query string No Search expression using supported field:value terms for this endpoint. Matching is partial and case-insensitive. Combine terms with uppercase AND/OR and one level of parentheses. Use *:value to search all supported fields. Supported fields: id, name, role.
size query integer 50 No Maximum number of items to return on one page.
sort_by query string No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.

Responses

{
    "items": [
        {
            "api_key": "string",
            "expires_at": "2022-04-13T15:42:05.901Z",
            "expires_at_utc": "2022-04-13T15:42:05.901Z",
            "id": 0,
            "last_used": "2022-04-13T15:42:05.901Z",
            "last_used_utc": "2022-04-13T15:42:05.901Z",
            "name": "string",
            "role": "Super Admin"
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/ApiKeyInfo"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[ApiKeyInfo]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

DELETE /api/v2/auth/api_keys/{api_key_id}

Delete an API key

Description

Deletes the selected API key. Integrations using that key can no longer authenticate after deletion.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
api_key_id path integer No API key id.

Responses

{
    "deleted_key": "string",
    "deleted_key_id": 0,
    "deleted_key_name": "string",
    "message": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "deleted_key": {
            "title": "Deleted Key",
            "type": "string"
        },
        "deleted_key_id": {
            "title": "Deleted Key Id",
            "type": "integer"
        },
        "deleted_key_name": {
            "title": "Deleted Key Name",
            "type": "string"
        },
        "message": {
            "title": "Message",
            "type": "string"
        }
    },
    "required": [
        "message",
        "deleted_key",
        "deleted_key_id",
        "deleted_key_name"
    ],
    "title": "ApiKeyDeleteResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/auth/authenticate

Validate an authenticated request

Description

Checks the current request for Traefik ForwardAuth and returns whether it may continue to the protected service.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

{
    "settings": {},
    "user": {
        "email": "derp@meme.org",
        "id": 0,
        "role": "string",
        "username": "string"
    }
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "settings": {
            "title": "Settings",
            "type": "object"
        },
        "user": {
            "$ref": "#/components/schemas/AuthenticatedSubject"
        }
    },
    "required": [
        "user",
        "settings"
    ],
    "title": "AuthenticateResponse",
    "type": "object"
}

POST /api/v2/auth/create_account

Create a user account

Description

Creates a new NoyesStorage App user account with the requested login details and role.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "email": "derp@meme.org",
    "locale": null,
    "role": null,
    "username": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Mixin that automatically normalizes email fields.",
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "locale": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/LocaleEnum"
                }
            ],
            "default": "en"
        },
        "role": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/RoleEnum"
                }
            ],
            "default": "User"
        },
        "username": {
            "title": "Username",
            "type": "string"
        }
    },
    "required": [
        "username",
        "email"
    ],
    "title": "SignupRequest",
    "type": "object"
}

Responses

{
    "email": "derp@meme.org",
    "id": 0,
    "username": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "id": {
            "title": "Id",
            "type": "integer"
        },
        "username": {
            "title": "Username",
            "type": "string"
        }
    },
    "required": [
        "id",
        "username",
        "email"
    ],
    "title": "SignUpResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/auth/forgot_password

Request a password reset code

Description

Creates a one-time password reset code for the supplied user so the password can be reset.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "email": "derp@meme.org",
    "locale": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Mixin that automatically normalizes email fields.",
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "locale": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/LocaleEnum"
                }
            ],
            "default": "en"
        }
    },
    "required": [
        "email"
    ],
    "title": "ForgotPasswordRequest",
    "type": "object"
}

Responses

Schema of the response body

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/auth/generate_api_key

Generate an API key

Description

Creates a new API key for system integrations. Store the returned key securely; clients use it for authenticated API calls.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "name": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "name": {
            "title": "Name",
            "type": "string"
        }
    },
    "required": [
        "name"
    ],
    "title": "ApiKeyCreateInput",
    "type": "object"
}

Responses

{
    "api_key": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "api_key": {
            "title": "Api Key",
            "type": "string"
        }
    },
    "required": [
        "api_key"
    ],
    "title": "ApiKeyCreateResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/auth/login

Log in a user

Description

Authenticates a user and returns tokens for subsequent authenticated requests.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "email": "derp@meme.org",
    "locale": null,
    "password": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Mixin that automatically normalizes email fields.",
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "locale": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/LocaleEnum"
                }
            ],
            "default": "en"
        },
        "password": {
            "title": "Password",
            "type": "string"
        }
    },
    "required": [
        "email",
        "password"
    ],
    "title": "LoginRequest",
    "type": "object"
}

Responses

{
    "access_token": "string",
    "refresh_token": "string",
    "token_type": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "access_token": {
            "title": "Access Token",
            "type": "string"
        },
        "refresh_token": {
            "title": "Refresh Token",
            "type": "string"
        },
        "token_type": {
            "title": "Token Type",
            "type": "string"
        }
    },
    "required": [
        "access_token",
        "token_type",
        "refresh_token"
    ],
    "title": "LoginResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/auth/password_policy

Get the password policy

Description

Returns the active password rules so clients can validate new passwords before submission.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

{
    "min_length": 0,
    "require_digit": true,
    "require_lowercase": true,
    "require_special": true,
    "require_uppercase": true,
    "special_characters": "string",
    "special_characters_pattern": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "min_length": {
            "title": "Min Length",
            "type": "integer"
        },
        "require_digit": {
            "title": "Require Digit",
            "type": "boolean"
        },
        "require_lowercase": {
            "title": "Require Lowercase",
            "type": "boolean"
        },
        "require_special": {
            "title": "Require Special",
            "type": "boolean"
        },
        "require_uppercase": {
            "title": "Require Uppercase",
            "type": "boolean"
        },
        "special_characters": {
            "title": "Special Characters",
            "type": "string"
        },
        "special_characters_pattern": {
            "title": "Special Characters Pattern",
            "type": "string"
        }
    },
    "required": [
        "min_length",
        "require_digit",
        "require_special",
        "require_lowercase",
        "require_uppercase",
        "special_characters",
        "special_characters_pattern"
    ],
    "title": "PasswordPolicyResponse",
    "type": "object"
}

POST /api/v2/auth/refresh_token

Refresh an access token

Description

Returns a new access token when the supplied refresh token is still valid.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "refresh_token": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "refresh_token": {
            "title": "Refresh Token",
            "type": "string"
        }
    },
    "required": [
        "refresh_token"
    ],
    "title": "RefreshTokenRequest",
    "type": "object"
}

Responses

{
    "access_token": "string",
    "refresh_token": "string",
    "token_type": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "access_token": {
            "title": "Access Token",
            "type": "string"
        },
        "refresh_token": {
            "title": "Refresh Token",
            "type": "string"
        },
        "token_type": {
            "title": "Token Type",
            "type": "string"
        }
    },
    "required": [
        "access_token",
        "refresh_token",
        "token_type"
    ],
    "title": "TokenResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/auth/reset_password

Reset a password

Description

Applies a new password using a valid password reset code.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "email": "derp@meme.org",
    "locale": "string",
    "new_password": "string",
    "old_password": "string",
    "otp": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Mixin that automatically normalizes email fields.",
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "locale": {
            "default": "en",
            "title": "Locale",
            "type": "string"
        },
        "new_password": {
            "title": "New Password",
            "type": "string"
        },
        "old_password": {
            "title": "Old Password",
            "type": "string"
        },
        "otp": {
            "title": "Otp",
            "type": "string"
        }
    },
    "required": [
        "email",
        "new_password"
    ],
    "title": "ResetPasswordRequest",
    "type": "object"
}

Responses

Schema of the response body

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

PATCH /api/v2/auth/update_user

Update a user

Description

Updates the username, role, or both for an existing NoyesStorage App user.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "email": "derp@meme.org",
    "role": "Super Admin",
    "user_id": 0,
    "username": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Mixin that automatically normalizes email fields.",
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "role": {
            "$ref": "#/components/schemas/RoleEnum"
        },
        "user_id": {
            "title": "User Id",
            "type": "integer"
        },
        "username": {
            "title": "Username",
            "type": "string"
        }
    },
    "title": "UserUpdateRequest",
    "type": "object"
}

Responses

{
    "email": "derp@meme.org",
    "id": 0,
    "role": "Super Admin",
    "username": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "email": {
            "format": "email",
            "title": "Email",
            "type": "string"
        },
        "id": {
            "title": "Id",
            "type": "integer"
        },
        "role": {
            "$ref": "#/components/schemas/RoleEnum"
        },
        "username": {
            "title": "Username",
            "type": "string"
        }
    },
    "required": [
        "id",
        "username",
        "email",
        "role"
    ],
    "title": "UserUpdateResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/auth/users

List users

Description

Returns paginated user accounts with optional search, sorting, and filters for administration.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
email__eq query string No Filter by exact email.
email__ilike query string No Filter by partial, case-insensitive match on email.
id__eq query string No Filter by exact id.
id__ilike query string No Filter by partial, case-insensitive match on id.
otp_expires_at__gte query string No Filter by otp expires at greater than or equal to this value.
otp_expires_at__lte query string No Filter by otp expires at less than or equal to this value.
page query integer 1 No Result page to return. Pagination starts at page=1.
password_expires_at__gte query string No Filter by password expires at greater than or equal to this value.
password_expires_at__lte query string No Filter by password expires at less than or equal to this value.
role__eq query string No Filter by exact role.
role__in query array No Filter by one or more values.
search query string No Search expression using supported field:value terms for this endpoint. Matching is partial and case-insensitive. Combine terms with uppercase AND/OR and one level of parentheses. Use *:value to search all supported fields. Supported fields: id, username, email, role.
size query integer 50 No Maximum number of items to return on one page.
sort_by query string No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.
username__eq query string No Filter by exact username.
username__ilike query string No Filter by partial, case-insensitive match on username.

Responses

{
    "items": [
        {
            "email": "derp@meme.org",
            "id": 0,
            "otp": "string",
            "otp_expires_at": "2022-04-13T15:42:05.901Z",
            "otp_expires_at_utc": "2022-04-13T15:42:05.901Z",
            "password_expires_at": "2022-04-13T15:42:05.901Z",
            "password_expires_at_utc": "2022-04-13T15:42:05.901Z",
            "role": "Super Admin",
            "username": "string"
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/UserSchema"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[UserSchema]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

System


GET /api/v2/balconies

List balconies

Description

Returns the available picking-station balconies configured for the storage system.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

[
    {
        "id": 0
    }
]
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "items": {
        "$ref": "#/components/schemas/BalconyResponse"
    },
    "title": "Response Get Balconies Api V2 Balconies Get",
    "type": "array"
}

GET /api/v2/levels

List levels

Description

Returns the storage levels configured in the database.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

[
    {
        "height": 0,
        "id": 0
    }
]
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "items": {
        "$ref": "#/components/schemas/LevelResponse"
    },
    "title": "Response  Get Levels From Db Api V2 Levels Get",
    "type": "array"
}

GET /api/v2/report

Generate a support report

Description

Creates a diagnostic support report archive on the system and returns its location.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

{
    "report": "string",
    "report_path": "string",
    "status": "string",
    "tar_filename": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Response model for report generation endpoint",
    "properties": {
        "report": {
            "default": "generated",
            "description": "Deprecated: Use status instead",
            "title": "Report",
            "type": "string"
        },
        "report_path": {
            "description": "Path where the report is saved",
            "title": "Report Path",
            "type": "string"
        },
        "status": {
            "description": "Status of report generation",
            "title": "Status",
            "type": "string"
        },
        "tar_filename": {
            "description": "Name of the generated tar file",
            "title": "Tar Filename",
            "type": "string"
        }
    },
    "required": [
        "status",
        "tar_filename",
        "report_path"
    ],
    "title": "ReportResponse",
    "type": "object"
}

POST /api/v2/restart_brain

Restart the brain service

Description

Restarts the orchestration brain service. Active system state can be interrupted while the service restarts.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
timeout query 60 No Maximum time in seconds to wait for the operation.

Responses

{
    "brain_status": "string",
    "details": "string",
    "status": "string",
    "testing_script": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Standard response model for maintenance operations like starting/stopping brain or tests",
    "properties": {
        "brain_status": {
            "description": "Deprecated: Use status instead",
            "title": "Brain Status",
            "type": "string"
        },
        "details": {
            "title": "Details",
            "type": "string"
        },
        "status": {
            "title": "Status",
            "type": "string"
        },
        "testing_script": {
            "description": "Deprecated: Use status instead",
            "title": "Testing Script",
            "type": "string"
        }
    },
    "required": [
        "status",
        "details"
    ],
    "title": "StorageResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/storage_status

Get storage status

Description

Returns the current high-level storage status, such as RUNNING, PAUSED, STARTING_UP, MAINTENANCE, ERROR, OFF, or SHUTTING_DOWN.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

{
    "storage_status": "RUNNING"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "storage_status": {
            "$ref": "#/components/schemas/StorageStatus"
        }
    },
    "required": [
        "storage_status"
    ],
    "title": "StorageStatusResponse",
    "type": "object"
}

POST /api/v2/system/charge_all_bots

Charge all bots

Description

Creates charging work for all selected NoyesBots, typically before shutdown or maintenance.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "force": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "force": {
            "default": true,
            "description": "Force charge all bots.",
            "title": "Force",
            "type": "boolean"
        }
    },
    "title": "ChargeAllBotsRequest",
    "type": "object"
}

Responses

Schema of the response body

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

Bot


DELETE /api/v2/bot

Remove bots from the database

Description

Deletes selected NoyesBot records directly from the database. This is a maintenance action outside the normal offboarding flow and can require manual intervention by someone physically on site.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
bot_idxs query array No ⚠⚠⚠ DO NOT USE ⚠⚠⚠ Removes bots from database by passing a list of bot IDs; * for all bots

Responses

{
    "message": "string",
    "success": true
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Response model for bot removal operations.",
    "properties": {
        "message": {
            "title": "Message",
            "type": "string"
        },
        "success": {
            "title": "Success",
            "type": "boolean"
        }
    },
    "required": [
        "success",
        "message"
    ],
    "title": "BotRemoveResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/bots

List bots

Description

Returns the NoyesBots known to the system, optionally filtered by bot id, level, or charging state.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

[
    {
        "battery_level": 0,
        "id": 0,
        "is_charging": true,
        "level_id": 0,
        "lifted_carrier": 0
    }
]
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "items": {
        "$ref": "#/components/schemas/BotResponse"
    },
    "title": "Response Get Bots Api V2 Bots Get",
    "type": "array"
}

Inventory


POST /api/v2/box/swap-region

Swap region section codes

Description

Atomically applies a set of section-code updates for a region swap so box placement metadata stays consistent.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "updates": [
        {
            "box_id": 0,
            "section_code": null
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "updates": {
            "items": {
                "$ref": "#/components/schemas/BoxSectionCodeUpdate"
            },
            "title": "Updates",
            "type": "array"
        }
    },
    "required": [
        "updates"
    ],
    "title": "BoxRegionSwapRequest",
    "type": "object"
}

Responses

{
    "boxes": [
        {
            "id": 0,
            "section_code": 0,
            "section_code_32": 0
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "boxes": {
            "items": {
                "$ref": "#/components/schemas/BoxResponse"
            },
            "title": "Boxes",
            "type": "array"
        }
    },
    "required": [
        "boxes"
    ],
    "title": "BoxRegionSwapResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/box/swap/{source_box_id}/{target_box_id}

Swap two box section codes

Description

Atomically swaps section-code placement metadata between two existing boxes.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
source_box_id path integer No Source box id.
target_box_id path integer No Target box id.

Responses

{
    "source_box": {
        "id": 0,
        "section_code": 0,
        "section_code_32": 0
    },
    "target_box": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "source_box": {
            "$ref": "#/components/schemas/BoxResponse"
        },
        "target_box": {
            "$ref": "#/components/schemas/BoxResponse"
        }
    },
    "required": [
        "source_box",
        "target_box"
    ],
    "title": "BoxSwapResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

DELETE /api/v2/box/{box_id}

Delete a box

Description

Deletes an empty box from its carrier and removes its box metadata from the inventory model.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
box_id path integer No Box id.

Responses

{
    "id": 0,
    "section_code": 0,
    "section_code_32": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "title": "Id",
            "type": "integer"
        },
        "section_code": {
            "description": "Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.",
            "title": "Section Code",
            "type": "integer"
        },
        "section_code_32": {
            "description": "Canonical 32-bit section code stored as integer with binary digits. This field is the source of truth for overlap/placement logic.",
            "title": "Section Code 32",
            "type": "integer"
        }
    },
    "required": [
        "section_code",
        "id"
    ],
    "title": "BoxResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

PATCH /api/v2/box/{box_id}

Update a box

Description

Updates editable metadata for an existing box, such as section-code placement.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
box_id path string No Box id.

Request body

{
    "section_code": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "section_code": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "integer"
                }
            ],
            "description": "Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.",
            "title": "Section Code"
        }
    },
    "title": "BoxPatch",
    "type": "object"
}

Responses

{
    "id": 0,
    "section_code": 0,
    "section_code_32": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "title": "Id",
            "type": "integer"
        },
        "section_code": {
            "description": "Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.",
            "title": "Section Code",
            "type": "integer"
        },
        "section_code_32": {
            "description": "Canonical 32-bit section code stored as integer with binary digits. This field is the source of truth for overlap/placement logic.",
            "title": "Section Code 32",
            "type": "integer"
        }
    },
    "required": [
        "section_code",
        "id"
    ],
    "title": "BoxResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/box/{carrier_id}

Create a box on a carrier

Description

Creates a new box on the selected carrier with the supplied section-code placement metadata.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
carrier_id path string No Carrier id.

Request body

{
    "section_code": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "section_code": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "integer"
                }
            ],
            "description": "Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.",
            "title": "Section Code"
        }
    },
    "title": "BoxCreate",
    "type": "object"
}

Responses

{
    "id": 0,
    "section_code": 0,
    "section_code_32": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "id": {
            "title": "Id",
            "type": "integer"
        },
        "section_code": {
            "description": "Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.",
            "title": "Section Code",
            "type": "integer"
        },
        "section_code_32": {
            "description": "Canonical 32-bit section code stored as integer with binary digits. This field is the source of truth for overlap/placement logic.",
            "title": "Section Code 32",
            "type": "integer"
        }
    },
    "required": [
        "section_code",
        "id"
    ],
    "title": "BoxResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/inventory_view

List inventory

Description

Returns the inventory view, including carriers, boxes, load information, and empty storage spaces with optional filters, search, sorting, and pagination.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
box_height_string_max__eq query string No Filter by exact box height string max.
box_height_string_max__ilike query string No Filter by partial, case-insensitive match on box height string max.
box_id__eq query string No Filter by exact box id. Use 'none' for empty spaces.
box_id__ilike query string No Filter by partial, case-insensitive match on box id.
box_size_string__eq query string No Filter by exact box size string.
box_size_string__ilike query string No Filter by partial, case-insensitive match on box size string.
box_size_string__in query array No Filter by one or more values.
carrier_id__eq query string No Filter by exact carrier id.
carrier_id__ilike query string No Filter by partial, case-insensitive match on carrier id.
content_codes__ilike query string No Filter by partial, case-insensitive match on content codes.
depth__eq query integer No Filter by exact depth.
depth__gte query integer No Filter by depth greater than or equal to this value.
depth__ilike query string No Filter by partial, case-insensitive match on depth.
depth__in query array No Filter by one or more values.
depth__lte query integer No Filter by depth less than or equal to this value.
eta_int__ilike query string No Filter by partial, case-insensitive match on eta int.
item_count__eq query string No Filter by exact item count.
item_count__ilike query string No Filter by partial, case-insensitive match on item count.
item_count_max__eq query string No Filter by exact item count max.
item_count_max__ilike query string No Filter by partial, case-insensitive match on item count max.
level_id__in query array No Filter by one or more values.
measurement_unit__in query array No Filter by one or more values.
page query integer 1 No Result page to return. Pagination starts at page=1.
position_x__eq query integer No Filter by exact position x.
position_x__ilike query string No Filter by partial, case-insensitive match on position x.
position_y__eq query integer No Filter by exact position y.
position_y__ilike query string No Filter by partial, case-insensitive match on position y.
search query string No Search expression using supported field:value terms for this endpoint. Matching is partial and case-insensitive. Combine terms with uppercase AND/OR and one level of parentheses. Use *:value to search all supported fields. Supported fields: carrier_id, box_size_string, box_height_string_max, section_code, section_code_32, sku_id, sku_name.
section_code_32__eq query string No Filter by exact section code 32.
section_code__eq query string No Filter by exact section code.
size query integer 50 No Maximum number of items to return on one page.
sku_id__eq query string No Filter by exact SKU id. Use 'none' for boxes without SKU load.
sku_id__ilike query string No Filter by partial, case-insensitive match on sku id.
sku_name__ilike query string No Filter by partial, case-insensitive match on sku name.
sort_by query string No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.
system_quantity__eq query string No Filter by exact system quantity.
system_quantity__ilike query string No Filter by partial, case-insensitive match on system quantity.
updated_at__gte query string No Filter by updated at greater than or equal to this value.
updated_at__lte query string No Filter by updated at less than or equal to this value.

Responses

{
    "items": [
        {
            "box_height_string_max": 0,
            "box_id": 0,
            "box_size": 0,
            "box_size_string": "string",
            "carrier_id": "string",
            "content_codes": "string",
            "depth": 0,
            "eta": 10.12,
            "eta_int": 0,
            "id": "string",
            "item_count": 0,
            "item_count_max": 0,
            "level_id": 0,
            "measurement_unit": "string",
            "on_empty_sku_action": "string",
            "position_x": 0,
            "position_y": 0,
            "section_code": "string",
            "section_code_32": 0,
            "sku_id": "string",
            "sku_name": "string",
            "system_quantity": 0,
            "updated_at": "2022-04-13T15:42:05.901Z",
            "updated_at_utc": "2022-04-13T15:42:05.901Z"
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/InventoryViewResponse"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[InventoryViewResponse]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

DELETE /api/v2/load/{box_id}

Delete load from a box

Description

Removes load information from the selected box and updates inventory quantities accordingly.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
box_id path integer No Box id.

Responses

{
    "item_count": 0,
    "item_count_max": 0,
    "name": "string",
    "sku_id": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "item_count": {
            "title": "Item Count",
            "type": "integer"
        },
        "item_count_max": {
            "title": "Item Count Max",
            "type": "integer"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "sku_id": {
            "title": "Sku Id",
            "type": "string"
        }
    },
    "required": [
        "sku_id",
        "item_count",
        "item_count_max"
    ],
    "title": "LoadResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

PATCH /api/v2/load/{box_id}

Update load in a box

Description

Updates the SKU and quantity stored in the selected box.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
box_id path integer No Box id.

Request body

{
    "item_count": 0,
    "item_count_max": 0,
    "sku_id": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "item_count": {
            "title": "Item Count",
            "type": "integer"
        },
        "item_count_max": {
            "title": "Item Count Max",
            "type": "integer"
        },
        "sku_id": {
            "title": "Sku Id",
            "type": "string"
        }
    },
    "title": "LoadPatch",
    "type": "object"
}

Responses

{
    "item_count": 0,
    "item_count_max": 0,
    "name": "string",
    "sku_id": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "item_count": {
            "title": "Item Count",
            "type": "integer"
        },
        "item_count_max": {
            "title": "Item Count Max",
            "type": "integer"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "sku_id": {
            "title": "Sku Id",
            "type": "string"
        }
    },
    "required": [
        "sku_id",
        "item_count",
        "item_count_max"
    ],
    "title": "LoadResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/load/{box_id}

Create load in a box

Description

Adds SKU load information to the selected box and updates inventory quantities accordingly.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
box_id path integer No Box id.

Request body

{
    "item_count": 0,
    "item_count_max": 0,
    "sku_id": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "item_count": {
            "title": "Item Count",
            "type": "integer"
        },
        "item_count_max": {
            "title": "Item Count Max",
            "type": "integer"
        },
        "sku_id": {
            "title": "Sku Id",
            "type": "string"
        }
    },
    "required": [
        "sku_id",
        "item_count",
        "item_count_max"
    ],
    "title": "LoadCreate",
    "type": "object"
}

Responses

{
    "item_count": 0,
    "item_count_max": 0,
    "name": "string",
    "sku_id": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "item_count": {
            "title": "Item Count",
            "type": "integer"
        },
        "item_count_max": {
            "title": "Item Count Max",
            "type": "integer"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "sku_id": {
            "title": "Sku Id",
            "type": "string"
        }
    },
    "required": [
        "sku_id",
        "item_count",
        "item_count_max"
    ],
    "title": "LoadResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

Events


GET /api/v2/events

List events

Description

Returns paginated system events with optional filters, search, and sorting for diagnostics and integration monitoring.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
bot_id__eq query string No Filter by exact bot id.
component__eq query string No Filter by exact component.
component__ilike query string No Filter by partial, case-insensitive match on component.
component__in query array No Filter by one or more values.
created_at__gte query string No Filter by created at greater than or equal to this value.
created_at__lte query string No Filter by created at less than or equal to this value.
hex_value__eq query string No Filter by exact hex value.
hex_value__ilike query string No Filter by partial, case-insensitive match on hex value.
level_id__eq query No Filter by exact level id.
page query integer 1 No Result page to return. Pagination starts at page=1.
request_id__eq query string No Filter by exact request id.
request_id__ilike query string No Filter by partial, case-insensitive match on request id.
search query string No Search expression using supported field:value terms for this endpoint. Matching is partial and case-insensitive. Combine terms with uppercase AND/OR and one level of parentheses. Use *:value to search all supported fields. Supported fields: description, component.
severity__eq query integer No Filter by exact severity.
severity__gte query integer No Filter by severity greater than or equal to this value.
severity__in query array No Filter by one or more values.
severity__lte query integer No Filter by severity less than or equal to this value.
size query integer 50 No Maximum number of items to return on one page.
sort_by query string No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.

Responses

{
    "items": [
        {
            "bot_id": "string",
            "component": "string",
            "created_at": "2022-04-13T15:42:05.901Z",
            "created_at_utc": "2022-04-13T15:42:05.901Z",
            "description": "string",
            "hex_value": "string",
            "level_id": 0,
            "request_id": "string",
            "severity": 0
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/EventsResponse"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[EventsResponse]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

Health


GET /api/v2/health

Check API health

Description

Returns OK when the API service is running and able to answer requests.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

Schema of the response body

Requests And Jobs


GET /api/v2/jobs

List jobs

Description

Returns paginated jobs created from requests, with optional filters and sorting for operational tracking.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
balcony_id__eq query integer No Filter by exact balcony id.
created_at__gte query string No Filter by created at greater than or equal to this value.
created_at__lte query string No Filter by created at less than or equal to this value.
id__eq query No Filter by exact id.
level_id__eq query integer No Filter by exact level id.
page query integer 1 No Result page to return. Pagination starts at page=1.
request_id__eq query No Filter by exact request id.
request_id__in query array No Filter by one or more values.
size query integer 50 No Maximum number of items to return on one page.
sort_by query string -created_at No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.
status__eq query string No Filter by exact status.
status__in query array No Filter by one or more values.
type__eq query string No Filter by exact type.
type__in query array No Filter by one or more values.
updated_at__gte query string No Filter by updated at greater than or equal to this value.
updated_at__lte query string No Filter by updated at less than or equal to this value.

Responses

{
    "items": [
        {
            "balcony_id": 0,
            "bot_id": 0,
            "box_id": 0,
            "carrier_id": "string",
            "created_at": "2022-04-13T15:42:05.901Z",
            "created_at_utc": "2022-04-13T15:42:05.901Z",
            "id": "string",
            "level_id": 0,
            "measurement_unit": "string",
            "on_empty_sku_action": "string",
            "quantity": 0,
            "request_id": "string",
            "sku_id": "string",
            "sku_name": "string",
            "status": "ACCEPTED",
            "type": "BUFFERING",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "updated_at_utc": "2022-04-13T15:42:05.901Z"
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/JobResponse"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[JobResponse]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/requests

List requests

Description

Returns paginated requests with optional filters and sorting for tracking storage work.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
counter__eq query integer No Filter by exact counter.
created_at__gte query string No Filter by created at greater than or equal to this value.
created_at__lte query string No Filter by created at less than or equal to this value.
id__eq query No Filter by exact id.
id__in query array No Filter by one or more values.
page query integer 1 No Result page to return. Pagination starts at page=1.
placing_pos__eq query integer No Filter by exact placing pos.
priority__eq query integer No Filter by exact priority.
size query integer 50 No Maximum number of items to return on one page.
sort_by query string -created_at No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.
status__eq query string No Filter by exact status.
status__in query array No Filter by one or more values.
type__eq query string No Filter by exact type.
type__in query array No Filter by one or more values.
updated_at__gte query string No Filter by updated at greater than or equal to this value.
updated_at__lte query string No Filter by updated at less than or equal to this value.

Responses

{
    "items": [
        {
            "bot_id": 0,
            "counter": 0,
            "created_at": "2022-04-13T15:42:05.901Z",
            "created_at_utc": "2022-04-13T15:42:05.901Z",
            "entities": [
                {
                    "cancelled_quantity": 0,
                    "completed_quantity": 0,
                    "entity_type": "Sku",
                    "id": "string",
                    "job_type": "string",
                    "succeeded_quantity": 0,
                    "total_quantity": 0
                }
            ],
            "id": "string",
            "level_id": 0,
            "placing_pos": 0,
            "priority": 0,
            "status": "CREATED",
            "type": "FULFILLMENT",
            "updated_at": "2022-04-13T15:42:05.901Z",
            "updated_at_utc": "2022-04-13T15:42:05.901Z",
            "warnings": [
                {}
            ]
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/RequestResponseComposite"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[RequestResponseComposite]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/requests

Create a request

Description

Creates storage work such as fulfillment, replenishment, fetch, maintenance, onboarding, offboarding, pause, resume, charging, or uncharging requests.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

Schema of the request body
{
    "anyOf": [
        {
            "$ref": "#/components/schemas/FetchRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/FulfillmentRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/ReplenishmentRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/OnboardingRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/OffboardingRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/RFIDWriteRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/PauseRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/ResumeRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/ChargingRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/UnchargingRequestCreateInput"
        },
        {
            "$ref": "#/components/schemas/CarrierOnboardingRequestCreateInput"
        }
    ],
    "title": "Request Data"
}

Responses

{
    "bot_id": 0,
    "counter": 0,
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "entities": [
        {
            "cancelled_quantity": 0,
            "completed_quantity": 0,
            "entity_type": "Sku",
            "id": "string",
            "job_type": "string",
            "succeeded_quantity": 0,
            "total_quantity": 0
        }
    ],
    "id": "string",
    "level_id": 0,
    "placing_pos": 0,
    "priority": 0,
    "status": "CREATED",
    "type": "FULFILLMENT",
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z",
    "warnings": [
        {}
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Base for API responses with Berlin-local naive datetimes and explicit UTC *_utc fields.\n\nJSON encoding: naive fields use Berlin local wall time; aware fields use UTC (ISO 8601, +00:00).",
    "properties": {
        "bot_id": {
            "title": "Bot Id",
            "type": "integer"
        },
        "counter": {
            "title": "Counter",
            "type": "integer"
        },
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "entities": {
            "items": {
                "$ref": "#/components/schemas/EntityResponse"
            },
            "title": "Entities",
            "type": "array"
        },
        "id": {
            "title": "Id",
            "type": "string"
        },
        "level_id": {
            "title": "Level Id",
            "type": "integer"
        },
        "placing_pos": {
            "title": "Placing Pos",
            "type": "integer"
        },
        "priority": {
            "title": "Priority",
            "type": "integer"
        },
        "status": {
            "$ref": "#/components/schemas/RequestStatus"
        },
        "type": {
            "$ref": "#/components/schemas/RequestType"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        },
        "warnings": {
            "items": {
                "type": "object"
            },
            "title": "Warnings",
            "type": "array"
        }
    },
    "required": [
        "id",
        "type",
        "status",
        "priority",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc"
    ],
    "title": "RequestResponseComposite",
    "type": "object"
}
{
    "detail": "Request abc123 was aborted due to validation errors: SKU001: 0x5082 - Not enough quantity; CARRIER002: 0x5083 - Carrier does not exist",
    "entity_feedback": [
        {
            "entity_id": "SKU001",
            "entity_type": "Sku",
            "error_code": "0x5082",
            "human_string": "Not enough quantity"
        },
        {
            "entity_id": "CARRIER002",
            "entity_type": "Carrier",
            "error_code": "0x5083",
            "human_string": "Carrier does not exist"
        }
    ],
    "request_id": "abc123"
}
Schema of the response body

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/trigger/{job_id}

Trigger a job

Description

Sends a trigger for the selected job so the waiting job can continue execution.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
job_id path string No Which job to trigger

Request body

{
    "TriggerStatus": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Schema for job trigger requests",
    "properties": {
        "TriggerStatus": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/TriggerStatus"
                }
            ],
            "default": "SUCCEEDED_TRIGGER"
        }
    },
    "title": "TriggerRequest",
    "type": "object"
}

Responses

Schema of the response body
{
    "description": "Schema for job trigger responses",
    "properties": {},
    "title": "TriggerResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

Settings


GET /api/v2/settings

List settings

Description

Returns all system settings visible to the requesting user. Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

{
    "items": [
        {
            "default_value_json": null,
            "enum_values": [
                "string"
            ],
            "key": "string",
            "required_role": [
                "string"
            ],
            "restart_required": true,
            "scope": "string",
            "user_idx": 0,
            "value_json": null,
            "value_type": "string"
        }
    ],
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Schema for list of settings response.",
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/SettingListItemResponse"
            },
            "title": "Items",
            "type": "array"
        },
        "total": {
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total"
    ],
    "title": "SettingsListResponse",
    "type": "object"
}

POST /api/v2/settings

Create or update a setting

Description

Creates a system setting, or updates the existing setting when the key already exists. Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "default_value_json": null,
    "key": "string",
    "required_role": [
        "string"
    ],
    "restart_required": true,
    "value_json": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Schema for creating a new setting.",
    "properties": {
        "default_value_json": {
            "title": "Default Value Json"
        },
        "key": {
            "title": "Key",
            "type": "string"
        },
        "required_role": {
            "items": {
                "type": "string"
            },
            "title": "Required Role",
            "type": "array"
        },
        "restart_required": {
            "default": false,
            "title": "Restart Required",
            "type": "boolean"
        },
        "value_json": {
            "title": "Value Json"
        }
    },
    "required": [
        "key"
    ],
    "title": "SettingCreate",
    "type": "object"
}

Responses

{
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "default_value_json": null,
    "id": "11382ea9-3dde-4223-8838-8e23f0f6afe4",
    "key": "string",
    "required_role": [
        "string"
    ],
    "restart_required": true,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z",
    "user_idx": 0,
    "value_json": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Schema for setting response.",
    "properties": {
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "default_value_json": {
            "title": "Default Value Json"
        },
        "id": {
            "format": "uuid",
            "title": "Id",
            "type": "string"
        },
        "key": {
            "title": "Key",
            "type": "string"
        },
        "required_role": {
            "items": {
                "type": "string"
            },
            "title": "Required Role",
            "type": "array"
        },
        "restart_required": {
            "default": false,
            "title": "Restart Required",
            "type": "boolean"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        },
        "user_idx": {
            "title": "User Idx",
            "type": "integer"
        },
        "value_json": {
            "title": "Value Json"
        }
    },
    "required": [
        "key",
        "id",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc"
    ],
    "title": "SettingResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/settings/system

Get system settings

Description

Returns resolved system settings for app-facing keys.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Responses

{
    "settings": {}
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Resolved settings map for app-facing keys.",
    "properties": {
        "settings": {
            "title": "Settings",
            "type": "object"
        }
    },
    "required": [
        "settings"
    ],
    "title": "ResolvedSettingsResponse",
    "type": "object"
}

PATCH /api/v2/settings/system

Patch system settings

Description

Applies update/reset operations to app-facing system settings.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "resets": [
        "string"
    ],
    "updates": {}
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Batch update/reset payload for scoped settings.",
    "properties": {
        "resets": {
            "items": {
                "type": "string"
            },
            "title": "Resets",
            "type": "array"
        },
        "updates": {
            "title": "Updates",
            "type": "object"
        }
    },
    "title": "SettingsPatchRequest",
    "type": "object"
}

Responses

{
    "settings": {}
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Resolved settings map for app-facing keys.",
    "properties": {
        "settings": {
            "title": "Settings",
            "type": "object"
        }
    },
    "required": [
        "settings"
    ],
    "title": "ResolvedSettingsResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/settings/users/{user_idx}

Get user settings

Description

Returns resolved user-scoped settings for a user.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
user_idx path integer No

Responses

{
    "settings": {}
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Resolved settings map for app-facing keys.",
    "properties": {
        "settings": {
            "title": "Settings",
            "type": "object"
        }
    },
    "required": [
        "settings"
    ],
    "title": "ResolvedSettingsResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

PATCH /api/v2/settings/users/{user_idx}

Patch user settings

Description

Applies update/reset operations to user-scoped settings.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
user_idx path integer No

Request body

{
    "resets": [
        "string"
    ],
    "updates": {}
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Batch update/reset payload for scoped settings.",
    "properties": {
        "resets": {
            "items": {
                "type": "string"
            },
            "title": "Resets",
            "type": "array"
        },
        "updates": {
            "title": "Updates",
            "type": "object"
        }
    },
    "title": "SettingsPatchRequest",
    "type": "object"
}

Responses

{
    "settings": {}
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Resolved settings map for app-facing keys.",
    "properties": {
        "settings": {
            "title": "Settings",
            "type": "object"
        }
    },
    "required": [
        "settings"
    ],
    "title": "ResolvedSettingsResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

DELETE /api/v2/settings/{key}

Reset a setting

Description

Deletes the stored value for a system setting so the system falls back to its default behavior.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
key path string No Setting key.

Responses

Schema of the response body

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/settings/{key}

Get a setting

Description

Returns the current value and metadata for one system setting. Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
key path string No Setting key.

Responses

{
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "default_value_json": null,
    "id": "ac6d34e9-d17c-4432-9328-4b73345021fd",
    "key": "string",
    "required_role": [
        "string"
    ],
    "restart_required": true,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z",
    "user_idx": 0,
    "value_json": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Schema for setting response.",
    "properties": {
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "default_value_json": {
            "title": "Default Value Json"
        },
        "id": {
            "format": "uuid",
            "title": "Id",
            "type": "string"
        },
        "key": {
            "title": "Key",
            "type": "string"
        },
        "required_role": {
            "items": {
                "type": "string"
            },
            "title": "Required Role",
            "type": "array"
        },
        "restart_required": {
            "default": false,
            "title": "Restart Required",
            "type": "boolean"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        },
        "user_idx": {
            "title": "User Idx",
            "type": "integer"
        },
        "value_json": {
            "title": "Value Json"
        }
    },
    "required": [
        "key",
        "id",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc"
    ],
    "title": "SettingResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

PATCH /api/v2/settings/{key}

Update a setting

Description

Updates the value of one system setting. The new value can change system behavior immediately. Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
key path string No Setting key.

Request body

{
    "value_json": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "description": "Schema for updating a setting value.",
    "properties": {
        "value_json": {
            "title": "Value Json"
        }
    },
    "title": "SettingUpdate",
    "type": "object"
}

Responses

{
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "default_value_json": null,
    "id": "6eae4dd8-7e07-49e9-98c5-cbb0934de518",
    "key": "string",
    "required_role": [
        "string"
    ],
    "restart_required": true,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z",
    "user_idx": 0,
    "value_json": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Schema for setting response.",
    "properties": {
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "default_value_json": {
            "title": "Default Value Json"
        },
        "id": {
            "format": "uuid",
            "title": "Id",
            "type": "string"
        },
        "key": {
            "title": "Key",
            "type": "string"
        },
        "required_role": {
            "items": {
                "type": "string"
            },
            "title": "Required Role",
            "type": "array"
        },
        "restart_required": {
            "default": false,
            "title": "Restart Required",
            "type": "boolean"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        },
        "user_idx": {
            "title": "User Idx",
            "type": "integer"
        },
        "value_json": {
            "title": "Value Json"
        }
    },
    "required": [
        "key",
        "id",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc"
    ],
    "title": "SettingResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

SKU


POST /api/v2/sku

Create an SKU

Description

Creates SKU master data used for inventory, fulfillment, and replenishment.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "id": "string",
    "measurement_unit": null,
    "name": "string",
    "on_empty_sku_action": null
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "id": {
            "title": "Id",
            "type": "string"
        },
        "measurement_unit": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/MeasurementUnit"
                }
            ],
            "default": "PIECE"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "on_empty_sku_action": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/OnEmptySKUAction"
                }
            ],
            "default": "UNASSIGN"
        }
    },
    "required": [
        "id"
    ],
    "title": "Sku",
    "type": "object"
}

Responses

{
    "carrier_utilization": 10.12,
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "deleted_at": "2022-04-13T15:42:05.901Z",
    "deleted_at_utc": "2022-04-13T15:42:05.901Z",
    "fulfillable": 0,
    "id": "string",
    "image_url": "string",
    "load_count": 0,
    "max_quantity": 0,
    "measurement_unit": null,
    "name": "string",
    "on_empty_sku_action": null,
    "replenishable": 0,
    "total_negative_inventory_bookings": 0,
    "total_positive_inventory_bookings": 0,
    "total_quantity": 0,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Base for API responses with Berlin-local naive datetimes and explicit UTC *_utc fields.\n\nJSON encoding: naive fields use Berlin local wall time; aware fields use UTC (ISO 8601, +00:00).",
    "properties": {
        "carrier_utilization": {
            "title": "Carrier Utilization",
            "type": "number"
        },
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "deleted_at": {
            "format": "date-time",
            "title": "Deleted At",
            "type": "string"
        },
        "deleted_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Deleted At Utc",
            "type": "string"
        },
        "fulfillable": {
            "title": "Fulfillable",
            "type": "integer"
        },
        "id": {
            "title": "Id",
            "type": "string"
        },
        "image_url": {
            "title": "Image Url",
            "type": "string"
        },
        "load_count": {
            "title": "Load Count",
            "type": "integer"
        },
        "max_quantity": {
            "title": "Max Quantity",
            "type": "integer"
        },
        "measurement_unit": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/MeasurementUnit"
                }
            ],
            "default": "PIECE"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "on_empty_sku_action": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/OnEmptySKUAction"
                }
            ],
            "default": "UNASSIGN"
        },
        "replenishable": {
            "title": "Replenishable",
            "type": "integer"
        },
        "total_negative_inventory_bookings": {
            "title": "Total Negative Inventory Bookings",
            "type": "integer"
        },
        "total_positive_inventory_bookings": {
            "title": "Total Positive Inventory Bookings",
            "type": "integer"
        },
        "total_quantity": {
            "title": "Total Quantity",
            "type": "integer"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        }
    },
    "required": [
        "id",
        "total_quantity",
        "max_quantity",
        "total_positive_inventory_bookings",
        "total_negative_inventory_bookings",
        "fulfillable",
        "replenishable",
        "load_count",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc",
        "carrier_utilization"
    ],
    "title": "SkuResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

POST /api/v2/sku/image

Upload an SKU image

Description

Uploads an image for an SKU to the local file server and records it for use by storage workflows and the UI.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
overwrite_existing_image query boolean False No If true, replaces an existing image if one exists.

Request body

{
    "picture": "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ=",
    "sku_id": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "picture": {
            "format": "binary",
            "title": "Picture",
            "type": "string"
        },
        "sku_id": {
            "description": "The Sku ID of the SKU e.g. 'H000123'",
            "title": "Sku ID",
            "type": "string"
        }
    },
    "required": [
        "sku_id",
        "picture"
    ],
    "title": "Body_upload_image_api_v2_sku_image_post",
    "type": "object"
}

Responses

{
    "carrier_utilization": 10.12,
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "deleted_at": "2022-04-13T15:42:05.901Z",
    "deleted_at_utc": "2022-04-13T15:42:05.901Z",
    "fulfillable": 0,
    "id": "string",
    "image_url": "string",
    "load_count": 0,
    "max_quantity": 0,
    "measurement_unit": null,
    "name": "string",
    "on_empty_sku_action": null,
    "replenishable": 0,
    "total_negative_inventory_bookings": 0,
    "total_positive_inventory_bookings": 0,
    "total_quantity": 0,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Base for API responses with Berlin-local naive datetimes and explicit UTC *_utc fields.\n\nJSON encoding: naive fields use Berlin local wall time; aware fields use UTC (ISO 8601, +00:00).",
    "properties": {
        "carrier_utilization": {
            "title": "Carrier Utilization",
            "type": "number"
        },
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "deleted_at": {
            "format": "date-time",
            "title": "Deleted At",
            "type": "string"
        },
        "deleted_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Deleted At Utc",
            "type": "string"
        },
        "fulfillable": {
            "title": "Fulfillable",
            "type": "integer"
        },
        "id": {
            "title": "Id",
            "type": "string"
        },
        "image_url": {
            "title": "Image Url",
            "type": "string"
        },
        "load_count": {
            "title": "Load Count",
            "type": "integer"
        },
        "max_quantity": {
            "title": "Max Quantity",
            "type": "integer"
        },
        "measurement_unit": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/MeasurementUnit"
                }
            ],
            "default": "PIECE"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "on_empty_sku_action": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/OnEmptySKUAction"
                }
            ],
            "default": "UNASSIGN"
        },
        "replenishable": {
            "title": "Replenishable",
            "type": "integer"
        },
        "total_negative_inventory_bookings": {
            "title": "Total Negative Inventory Bookings",
            "type": "integer"
        },
        "total_positive_inventory_bookings": {
            "title": "Total Positive Inventory Bookings",
            "type": "integer"
        },
        "total_quantity": {
            "title": "Total Quantity",
            "type": "integer"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        }
    },
    "required": [
        "id",
        "total_quantity",
        "max_quantity",
        "total_positive_inventory_bookings",
        "total_negative_inventory_bookings",
        "fulfillable",
        "replenishable",
        "load_count",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc",
        "carrier_utilization"
    ],
    "title": "SkuResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

DELETE /api/v2/sku/{id}

Delete an SKU

Description

Deletes SKU master data by id. Existing inventory or active work can prevent deletion.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
id path string No Resource id.

Responses

{
    "carrier_utilization": 10.12,
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "deleted_at": "2022-04-13T15:42:05.901Z",
    "deleted_at_utc": "2022-04-13T15:42:05.901Z",
    "fulfillable": 0,
    "id": "string",
    "image_url": "string",
    "load_count": 0,
    "max_quantity": 0,
    "measurement_unit": null,
    "name": "string",
    "on_empty_sku_action": null,
    "replenishable": 0,
    "total_negative_inventory_bookings": 0,
    "total_positive_inventory_bookings": 0,
    "total_quantity": 0,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Base for API responses with Berlin-local naive datetimes and explicit UTC *_utc fields.\n\nJSON encoding: naive fields use Berlin local wall time; aware fields use UTC (ISO 8601, +00:00).",
    "properties": {
        "carrier_utilization": {
            "title": "Carrier Utilization",
            "type": "number"
        },
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "deleted_at": {
            "format": "date-time",
            "title": "Deleted At",
            "type": "string"
        },
        "deleted_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Deleted At Utc",
            "type": "string"
        },
        "fulfillable": {
            "title": "Fulfillable",
            "type": "integer"
        },
        "id": {
            "title": "Id",
            "type": "string"
        },
        "image_url": {
            "title": "Image Url",
            "type": "string"
        },
        "load_count": {
            "title": "Load Count",
            "type": "integer"
        },
        "max_quantity": {
            "title": "Max Quantity",
            "type": "integer"
        },
        "measurement_unit": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/MeasurementUnit"
                }
            ],
            "default": "PIECE"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "on_empty_sku_action": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/OnEmptySKUAction"
                }
            ],
            "default": "UNASSIGN"
        },
        "replenishable": {
            "title": "Replenishable",
            "type": "integer"
        },
        "total_negative_inventory_bookings": {
            "title": "Total Negative Inventory Bookings",
            "type": "integer"
        },
        "total_positive_inventory_bookings": {
            "title": "Total Positive Inventory Bookings",
            "type": "integer"
        },
        "total_quantity": {
            "title": "Total Quantity",
            "type": "integer"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        }
    },
    "required": [
        "id",
        "total_quantity",
        "max_quantity",
        "total_positive_inventory_bookings",
        "total_negative_inventory_bookings",
        "fulfillable",
        "replenishable",
        "load_count",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc",
        "carrier_utilization"
    ],
    "title": "SkuResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

PATCH /api/v2/sku/{id}

Update an SKU

Description

Updates SKU master data such as name, unit, or handling behavior.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
id path string No Resource id.

Request body

{
    "measurement_unit": "PIECE",
    "name": "string",
    "on_empty_sku_action": "DO_NOTHING"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "measurement_unit": {
            "$ref": "#/components/schemas/MeasurementUnit"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "on_empty_sku_action": {
            "$ref": "#/components/schemas/OnEmptySKUAction"
        }
    },
    "title": "SkuPatch",
    "type": "object"
}

Responses

{
    "carrier_utilization": 10.12,
    "created_at": "2022-04-13T15:42:05.901Z",
    "created_at_utc": "2022-04-13T15:42:05.901Z",
    "deleted_at": "2022-04-13T15:42:05.901Z",
    "deleted_at_utc": "2022-04-13T15:42:05.901Z",
    "fulfillable": 0,
    "id": "string",
    "image_url": "string",
    "load_count": 0,
    "max_quantity": 0,
    "measurement_unit": null,
    "name": "string",
    "on_empty_sku_action": null,
    "replenishable": 0,
    "total_negative_inventory_bookings": 0,
    "total_positive_inventory_bookings": 0,
    "total_quantity": 0,
    "updated_at": "2022-04-13T15:42:05.901Z",
    "updated_at_utc": "2022-04-13T15:42:05.901Z"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Base for API responses with Berlin-local naive datetimes and explicit UTC *_utc fields.\n\nJSON encoding: naive fields use Berlin local wall time; aware fields use UTC (ISO 8601, +00:00).",
    "properties": {
        "carrier_utilization": {
            "title": "Carrier Utilization",
            "type": "number"
        },
        "created_at": {
            "format": "date-time",
            "title": "Created At",
            "type": "string"
        },
        "created_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Created At Utc",
            "type": "string"
        },
        "deleted_at": {
            "format": "date-time",
            "title": "Deleted At",
            "type": "string"
        },
        "deleted_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Deleted At Utc",
            "type": "string"
        },
        "fulfillable": {
            "title": "Fulfillable",
            "type": "integer"
        },
        "id": {
            "title": "Id",
            "type": "string"
        },
        "image_url": {
            "title": "Image Url",
            "type": "string"
        },
        "load_count": {
            "title": "Load Count",
            "type": "integer"
        },
        "max_quantity": {
            "title": "Max Quantity",
            "type": "integer"
        },
        "measurement_unit": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/MeasurementUnit"
                }
            ],
            "default": "PIECE"
        },
        "name": {
            "title": "Name",
            "type": "string"
        },
        "on_empty_sku_action": {
            "allOf": [
                {
                    "$ref": "#/components/schemas/OnEmptySKUAction"
                }
            ],
            "default": "UNASSIGN"
        },
        "replenishable": {
            "title": "Replenishable",
            "type": "integer"
        },
        "total_negative_inventory_bookings": {
            "title": "Total Negative Inventory Bookings",
            "type": "integer"
        },
        "total_positive_inventory_bookings": {
            "title": "Total Positive Inventory Bookings",
            "type": "integer"
        },
        "total_quantity": {
            "title": "Total Quantity",
            "type": "integer"
        },
        "updated_at": {
            "format": "date-time",
            "title": "Updated At",
            "type": "string"
        },
        "updated_at_utc": {
            "description": "Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.",
            "format": "date-time",
            "title": "Updated At Utc",
            "type": "string"
        }
    },
    "required": [
        "id",
        "total_quantity",
        "max_quantity",
        "total_positive_inventory_bookings",
        "total_negative_inventory_bookings",
        "fulfillable",
        "replenishable",
        "load_count",
        "created_at",
        "created_at_utc",
        "updated_at",
        "updated_at_utc",
        "carrier_utilization"
    ],
    "title": "SkuResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

GET /api/v2/skus

List SKUs

Description

Returns paginated SKU master data with optional filters, search, sorting, and inventory-derived quantities.

Timestamp responses include both legacy timestamp fields and matching fields with the _utc suffix. New integrations should use the _utc fields because they are ISO 8601 timestamps with an explicit UTC offset. Fields without the _utc suffix are kept for backward compatibility and will be deprecated in a future release.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.
carrier_utilization__ilike query number No Filter by partial, case-insensitive match on carrier utilization.
created_at__gte query string No Filter by created at greater than or equal to this value.
created_at__lte query string No Filter by created at less than or equal to this value.
deleted_at__gte query string No Filter by deleted at greater than or equal to this value.
deleted_at__lte query string No Filter by deleted at less than or equal to this value.
fulfillable__ilike query integer No Filter by partial, case-insensitive match on fulfillable.
id__eq query string No Filter by exact id.
id__ilike query string No Filter by partial, case-insensitive match on id.
load_count__eq query integer No Filter by exact load count.
load_count__ilike query integer No Filter by partial, case-insensitive match on load count.
max_quantity__eq query integer No Filter by exact max quantity.
max_quantity__gte query integer No Filter by max quantity greater than or equal to this value.
max_quantity__ilike query integer No Filter by partial, case-insensitive match on max quantity.
max_quantity__lte query integer No Filter by max quantity less than or equal to this value.
measurement_unit__in query array No Filter by one or more values.
name__ilike query string No Filter by partial, case-insensitive match on name.
on_empty_sku_action__in query array No Filter by one or more values.
page query integer 1 No Result page to return. Pagination starts at page=1.
replenishable__ilike query integer No Filter by partial, case-insensitive match on replenishable.
search query string No Search expression using supported field:value terms for this endpoint. Matching is partial and case-insensitive. Combine terms with uppercase AND/OR and one level of parentheses. Use *:value to search all supported fields. Supported fields: id, name, carrier_utilization.
size query integer 50 No Maximum number of items to return on one page.
sort_by query string No Comma-separated sort fields. Use plain field or +field for ascending and -field for descending, for example created_at,-updated_at.
total_quantity__eq query integer No Filter by exact total quantity.
total_quantity__gte query integer No Filter by total quantity greater than or equal to this value.
total_quantity__ilike query integer No Filter by partial, case-insensitive match on total quantity.
total_quantity__lte query integer No Filter by total quantity less than or equal to this value.
updated_at__gte query string No Filter by updated at greater than or equal to this value.
updated_at__lte query string No Filter by updated at less than or equal to this value.

Responses

{
    "items": [
        {
            "carrier_utilization": 10.12,
            "created_at": "2022-04-13T15:42:05.901Z",
            "created_at_utc": "2022-04-13T15:42:05.901Z",
            "deleted_at": "2022-04-13T15:42:05.901Z",
            "deleted_at_utc": "2022-04-13T15:42:05.901Z",
            "fulfillable": 0,
            "id": "string",
            "image_url": "string",
            "load_count": 0,
            "max_quantity": 0,
            "measurement_unit": null,
            "name": "string",
            "on_empty_sku_action": null,
            "replenishable": 0,
            "total_negative_inventory_bookings": 0,
            "total_positive_inventory_bookings": 0,
            "total_quantity": 0,
            "updated_at": "2022-04-13T15:42:05.901Z",
            "updated_at_utc": "2022-04-13T15:42:05.901Z"
        }
    ],
    "page": 0,
    "pages": 0,
    "size": 0,
    "total": 0
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "items": {
            "items": {
                "$ref": "#/components/schemas/SkuResponse"
            },
            "title": "Items",
            "type": "array"
        },
        "page": {
            "minimum": 1.0,
            "title": "Page",
            "type": "integer"
        },
        "pages": {
            "minimum": 0.0,
            "title": "Pages",
            "type": "integer"
        },
        "size": {
            "minimum": 1.0,
            "title": "Size",
            "type": "integer"
        },
        "total": {
            "minimum": 0.0,
            "title": "Total",
            "type": "integer"
        }
    },
    "required": [
        "items",
        "total",
        "page",
        "size"
    ],
    "title": "Page[SkuResponse]",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

Support


POST /api/v2/support/create_issue

Create a support issue

Description

Creates a support issue from multipart form data, with a JSON payload and optional file attachments.

Input parameters

Parameter In Type Default Nullable Description
BearerAuth header string N/A No Bearer token authentication. Use the API key or token issued for your integration.

Request body

{
    "files": [
        "TG9yZW0gaXBzdW0gZG9sb3Igc2l0IGFtZXQ="
    ],
    "payload": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the request body
{
    "properties": {
        "files": {
            "items": {
                "format": "binary",
                "type": "string"
            },
            "title": "Files",
            "type": "array"
        },
        "payload": {
            "description": "JSON stringified CreateIssuePayload",
            "title": "Payload",
            "type": "string"
        }
    },
    "required": [
        "payload"
    ],
    "title": "Body_create_issue_api_v2_support_create_issue_post",
    "type": "object"
}

Responses

{
    "key": "string",
    "url": "string"
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "description": "Response model for issue creation endpoint",
    "properties": {
        "key": {
            "title": "Key",
            "type": "string"
        },
        "url": {
            "title": "Url",
            "type": "string"
        }
    },
    "required": [
        "key",
        "url"
    ],
    "title": "CreateIssueResponse",
    "type": "object"
}

{
    "detail": [
        {
            "loc": [
                null
            ],
            "msg": "string",
            "type": "string"
        }
    ]
}
⚠️ This example has been generated automatically from the schema and it is not accurate. Refer to the schema for more information.

Schema of the response body
{
    "properties": {
        "detail": {
            "items": {
                "$ref": "#/components/schemas/ValidationError"
            },
            "title": "Detail",
            "type": "array"
        }
    },
    "title": "HTTPValidationError",
    "type": "object"
}

Schemas

ApiKeyCreateInput

Name Type Description
name string

ApiKeyCreateResponse

Name Type Description
api_key string

ApiKeyDeleteResponse

Name Type Description
deleted_key string
deleted_key_id integer
deleted_key_name string
message string

ApiKeyInfo

Name Type Description
api_key string
expires_at string(date-time)
expires_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
id integer
last_used string(date-time)
last_used_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
name string
role RoleEnum

AuthenticatedSubject

Name Type Description
email string()
id integer
role string
username string

AuthenticateResponse

Name Type Description
settings
user AuthenticatedSubject

BalconyResponse

Name Type Description
id integer

Body_create_issue_api_v2_support_create_issue_post

Name Type Description
files Array<string(binary)>
payload string JSON stringified CreateIssuePayload

Body_upload_image_api_v2_sku_image_post

Name Type Description
picture string(binary)
sku_id string The Sku ID of the SKU e.g. 'H000123'

BotRemoveResponse

Name Type Description
message string
success boolean

BotResponse

Name Type Description
battery_level integer
id integer
is_charging boolean
level_id integer
lifted_carrier integer

BoxCreate

Name Type Description
section_code Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.

BoxPatch

Name Type Description
section_code Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.

BoxRegionSwapRequest

Name Type Description
updates Array<BoxSectionCodeUpdate>

BoxRegionSwapResponse

Name Type Description
boxes Array<BoxResponse>

BoxResponse

Name Type Description
id integer
section_code integer Legacy section code stored as integer with binary digits (8-bit semantics). String inputs are accepted for compatibility: <=8 chars (legacy), exactly 16 chars, or exactly 32 chars.
section_code_32 integer Canonical 32-bit section code stored as integer with binary digits. This field is the source of truth for overlap/placement logic.

BoxSectionCodeUpdate

Name Type Description
box_id integer
section_code

BoxSwapResponse

Name Type Description
source_box BoxResponse
target_box BoxResponse

CarrierEntityInput

Name Type Description
carrier_id string

CarrierOnboardingRequestCreateInput

Name Type Description
balcony_id integer
id string
type string

ChargeAllBotsRequest

Name Type Description
force boolean Force charge all bots.

ChargingRequestCreateInput

Name Type Description
bot_id integer
force boolean
id string
level_id integer
type string

CreateIssueResponse

Name Type Description
key string
url string

EntityResponse

Name Type Description
cancelled_quantity integer
completed_quantity integer
entity_type EntityType
id string
job_type string
succeeded_quantity integer
total_quantity integer

EntityType

Type: string

EventsResponse

Name Type Description
bot_id string
component string
created_at string(date-time)
created_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
description string
hex_value string
level_id integer
request_id string
severity integer

FetchRequestCreateInput

Name Type Description
entities Array<CarrierEntityInput>
id string
priority integer
type string

ForgotPasswordRequest

Name Type Description
email string()
locale

FulfillmentRequestCreateInput

Name Type Description
entities Array<SkuEntityInput>
id string
priority integer
type string

HTTPValidationError

Name Type Description
detail Array<ValidationError>

InventoryViewResponse

Name Type Description
box_height_string_max integer
box_id integer
box_size integer
box_size_string string Size label for this row (for empty-space rows this is derived from free-bit thresholds).
carrier_id string
content_codes string
depth integer
eta number
eta_int integer
id string
item_count integer
item_count_max integer
level_id integer
measurement_unit string
on_empty_sku_action string
position_x integer
position_y integer
section_code string Legacy 8-bit projection derived from canonical 32-bit, returned as string for backward compatibility.
section_code_32 integer Canonical 32-bit section code stored as integer with binary digits.
sku_id string
sku_name string
system_quantity integer
updated_at string(date-time)
updated_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.

JobResponse

Name Type Description
balcony_id integer
bot_id integer
box_id integer
carrier_id string
created_at string(date-time)
created_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
id string
level_id integer
measurement_unit string
on_empty_sku_action string
quantity integer
request_id string
sku_id string
sku_name string
status JobStatus
type JobType
updated_at string(date-time)
updated_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.

JobStatus

Type: string

JobType

Type: string

LevelResponse

Name Type Description
height integer
id integer

LoadCreate

Name Type Description
item_count integer
item_count_max integer
sku_id string

LoadPatch

Name Type Description
item_count integer
item_count_max integer
sku_id string

LoadResponse

Name Type Description
item_count integer
item_count_max integer
name string
sku_id string

LocaleEnum

Type: string

LoginRequest

Name Type Description
email string()
locale
password string

LoginResponse

Name Type Description
access_token string
refresh_token string
token_type string

MeasurementUnit

Type: string

OffboardingRequestCreateInput

Name Type Description
bot_id integer
id string
type string

OnboardingRequestCreateInput

Name Type Description
id string
type string

OnEmptySKUAction

Type: string

Page_ApiKeyInfo_

Name Type Description
items Array<ApiKeyInfo>
page integer
pages integer
size integer
total integer

Page_EventsResponse_

Name Type Description
items Array<EventsResponse>
page integer
pages integer
size integer
total integer

Page_InventoryViewResponse_

Name Type Description
items Array<InventoryViewResponse>
page integer
pages integer
size integer
total integer

Page_JobResponse_

Name Type Description
items Array<JobResponse>
page integer
pages integer
size integer
total integer

Page_RequestResponseComposite_

Name Type Description
items Array<RequestResponseComposite>
page integer
pages integer
size integer
total integer

Page_SkuResponse_

Name Type Description
items Array<SkuResponse>
page integer
pages integer
size integer
total integer

Page_UserSchema_

Name Type Description
items Array<UserSchema>
page integer
pages integer
size integer
total integer

PasswordPolicyResponse

Name Type Description
min_length integer
require_digit boolean
require_lowercase boolean
require_special boolean
require_uppercase boolean
special_characters string
special_characters_pattern string

PauseRequestCreateInput

Name Type Description
id string
type string

RefreshTokenRequest

Name Type Description
refresh_token string

ReplenishmentRequestCreateInput

Name Type Description
entities Array<SkuEntityInput>
id string
priority integer
type string

ReportResponse

Name Type Description
report string Deprecated: Use status instead
report_path string Path where the report is saved
status string Status of report generation
tar_filename string Name of the generated tar file

RequestResponseComposite

Name Type Description
bot_id integer
counter integer
created_at string(date-time)
created_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
entities Array<EntityResponse>
id string
level_id integer
placing_pos integer
priority integer
status RequestStatus
type RequestType
updated_at string(date-time)
updated_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
warnings Array<>

RequestStatus

Type: string

RequestType

Type: string

ResetPasswordRequest

Name Type Description
email string()
locale string
new_password string
old_password string
otp string

ResolvedSettingsResponse

Name Type Description
settings

ResumeRequestCreateInput

Name Type Description
id string
type string

RFIDWriteRequestCreateInput

Name Type Description
action_type string
bot_id integer
id string
level_id integer
start_from_scratch boolean
type string

RoleEnum

Type: string

SettingCreate

Name Type Description
default_value_json
key string
required_role Array<string>
restart_required boolean
value_json

SettingListItemResponse

Name Type Description
default_value_json
enum_values Array<string>
key string
required_role Array<string>
restart_required boolean
scope string
user_idx integer
value_json
value_type string

SettingResponse

Name Type Description
created_at string(date-time)
created_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
default_value_json
id string(uuid)
key string
required_role Array<string>
restart_required boolean
updated_at string(date-time)
updated_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
user_idx integer
value_json

SettingsListResponse

Name Type Description
items Array<SettingListItemResponse>
total integer

SettingsPatchRequest

Name Type Description
resets Array<string>
updates

SettingUpdate

Name Type Description
value_json

SignupRequest

Name Type Description
email string()
locale
role
username string

SignUpResponse

Name Type Description
email string()
id integer
username string

Sku

Name Type Description
id string
measurement_unit
name string
on_empty_sku_action

SkuEntityInput

Name Type Description
quantity integer
sku_id string

SkuPatch

Name Type Description
measurement_unit MeasurementUnit
name string
on_empty_sku_action OnEmptySKUAction

SkuResponse

Name Type Description
carrier_utilization number
created_at string(date-time)
created_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
deleted_at string(date-time)
deleted_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
fulfillable integer
id string
image_url string
load_count integer
max_quantity integer
measurement_unit
name string
on_empty_sku_action
replenishable integer
total_negative_inventory_bookings integer
total_positive_inventory_bookings integer
total_quantity integer
updated_at string(date-time)
updated_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.

StorageResponse

Name Type Description
brain_status string Deprecated: Use status instead
details string
status string
testing_script string Deprecated: Use status instead

StorageStatus

Type: string

StorageStatusResponse

Name Type Description
storage_status StorageStatus

TokenResponse

Name Type Description
access_token string
refresh_token string
token_type string

TriggerRequest

Name Type Description
TriggerStatus

TriggerResponse

TriggerStatus

Type: string

UnchargingRequestCreateInput

Name Type Description
bot_id integer
force boolean
id string
level_id integer
type string

UserSchema

Name Type Description
email string()
id integer
otp string
otp_expires_at string(date-time)
otp_expires_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
password_expires_at string(date-time)
password_expires_at_utc string(date-time) Recommended timestamp field for new integrations. Uses ISO 8601 with an explicit UTC offset. The matching field without the `_utc` suffix is kept for backward compatibility and will be deprecated in a future release.
role RoleEnum
username string

UserUpdateRequest

Name Type Description
email string()
role RoleEnum
user_id integer
username string

UserUpdateResponse

Name Type Description
email string()
id integer
role RoleEnum
username string

ValidationError

Name Type Description
loc Array<>
msg string
type string

Security schemes

Name Type Scheme Description
BearerAuth http bearer Bearer token authentication. Use the API key or token issued for your integration.