The Weel Open API is a single RESTful interface that programmatically reads and writes a business's spend data in Weel — budgets, budget members, budget owners, budget top-ups, users, roles, transactions, statements, invites, categories, tax rates, accounting codes, and custom fields — to automate expense workflows and build custom integrations. OpenAPI 3.1.0, 30 documented operations across 15 resource tags, authenticated with a bearer API key. API access is available on the Enterprise plan.
Weel Open API is published by Weel on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Spend Management, Expense Management, Budgets, Transactions, and Card Issuing. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an API reference, authentication docs, and a getting-started guide.
This API exposes
51 operations
across 30 paths,
organized into 15 resource areas,
and defines 63 schemas.
It is described by OpenAPI 3.1.0, at version v1.
Requests are made against a single base URL, https://public.letsweel.com.
51 operations30 paths63 schemas10 DELETE24 GET6 PATCH11 POST
Metadata
The identity and technical contract details declared by the specification.
Weel Open API declares
1 security scheme
for authenticating requests.
It accepts HTTP bearer tokens (BearerAuth).
By default, every request must be authenticated.
Paths & Operations 51
Across 30 paths, the API surfaces 51 operations — 10 DELETE, 24 GET, 6 PATCH, 11 POST. They span 15 resource areas, including Transactions, Statements, Users, Roles, Invites, Budgets, Budget Topups, Budget Members, and 7 more. Each is listed below with its method, path, parameters, and response codes.
Transactions 2
This group of endpoints allows you to retrieve and manage transaction data, including listing transactions with various filters and fetching individual transaction details.
This group of endpoints allows you to retrieve the roles available within a business and the permissions assigned to each role.
GET
/v1/businesses/{client_id}/roles
List roles
listRoles3 params→ 200401403
Invites 3
This group of endpoints allows you to create, list, and cancel pending user invitations. An invite exists until the recipient accepts it, at which point they appear as a user in t…
GET
/v1/businesses/{client_id}/invites
List invites
listInvites3 params→ 200401403
POST
/v1/businesses/{client_id}/invites
Create invite
createInvite1 parambody→ 201400401403
DELETE
/v1/businesses/{client_id}/invites/{invite_id}
Cancel invite
cancelInvite2 params→ 204400401403404
Budgets 5
This group of endpoints allows you to retrieve and manage budget data, including listing budgets and fetching individual budget details. Budgets are organised in a hierarchy where…
GET
/v1/businesses/{client_id}/budgets
List budgets
listBudgets6 params→ 200401403
POST
/v1/businesses/{client_id}/budgets
Create a budget
createBudget1 parambody→ 201400401403429
GET
/v1/businesses/{client_id}/budgets/{budget_id}
Get budget
getBudget2 params→ 200401403404
PATCH
/v1/businesses/{client_id}/budgets/{budget_id}
Update a budget
updateBudget2 paramsbody→ 200400401403404
DELETE
/v1/businesses/{client_id}/budgets/{budget_id}
Delete a budget
deleteBudget2 params→ 204400401403404
Budget Topups 4
This group of endpoints allows you to retrieve and create budget topups. Topups are used to increase or decrease the available amount of a budget or budget member. Topups will be…
This group of endpoints allows you to retrieve and manage budget member data, including listing budget members and fetching individual budget member details.
This group of endpoints allows you to retrieve and manage budget owners. A budget owner is a user (or pending invite) who can approve spend, top up, and otherwise manage the budge…
This group of endpoints allows you to create and manage custom fields (dimensions/cost centres) for your business. Custom fields can be of type LIST (with predefined options) or F…
This group of endpoints allows you to manage the list options for a LIST type custom field. Options created via the Public API can be disabled or deleted.
This group of endpoints allows you to manage GL codes (accounting codes) for your business. GL codes are used to classify expenses for bookkeeping export. Businesses with a connec…
This group of endpoints allow you to manage expense categories for your business. Categories classify transactions. System-defined categories (custom: false) can only have their e…
This group of endpoints allows you to retrieve the tax rates configured for your business. Tax rates are read-only via the Public API. For businesses with a connected accounting i…
The contract defines 63 schemas that model the data the API accepts and returns. The most detailed are Transaction (19 properties), Budget (17 properties), User (16 properties), BudgetCreateRequest (10 properties). Each schema is shown below with its type and property counts.
StatementListResponse
object
9 properties
DailyBalance
object
6 properties
TransactionListResponse
object
4 properties
Transaction
object
19 properties
TransactionBudget
object
3 properties
LineItem
object
7 properties
TaxRate
objectnull
A tax rate applied to a line item. May be null when itemised tax rates are enabled for the business but a rate could not be resolved.
7 properties
CustomFieldValue
object
2 properties
InviteListResponse
object
4 properties
PaymentType
string
Invite
object
8 properties
InviteCreateRequest
object
3 properties3 required
UserListResponse
object
4 properties
RoleListResponse
object
4 properties
Role
object
4 properties4 required
Permission
object
2 properties2 required
User
object
16 properties
UserUpdate
object
Fields that may be updated on an active employee. All optional.
7 properties
SubUser
objectnull
4 properties
UserBudget
object
3 properties
UserBudgetMember
object
8 properties
UserBudgetMemberListResponse
object
4 properties
Budget
object
17 properties17 required
BudgetListResponse
object
4 properties
BudgetResetPeriod
string
The reset cadence for the budget. JULYFINANCIALYEAR resets on 1 July; APRILFINANCIALYEAR resets on 1 April.
BudgetUserRef
object
Reference to an existing Weel user by id.
1 property1 required
BudgetInviteRef
object
Reference to an outstanding invite by id.
1 property1 required
BudgetMemberInput
object
A member to attach to the budget. Provide exactly one of user or invite. resetamount is required when hasmemberlimits is true and must be omitted otherwise; th…
3 properties
BudgetOwnerInput
object
An owner (budget approver) to attach to the budget. Provide exactly one of user or invite.
2 properties
BudgetCustomFieldInput
object
A custom field to attach to the budget. allowoptions restricts the visible list items for LIST-type custom fields. Pass [] to detach all options; omit the key…
2 properties1 required
BudgetCreateRequest
object
10 properties7 required
BudgetUpdateRequest
object
Partial update of a budget's configuration. To change members or owners, use their respective endpoints — [budget members](tag/Budget-Members) and [budget owne…
8 properties
BudgetMember
object
9 properties
BudgetMemberListResponse
object
4 properties
CreateBudgetMemberRequest
object
Provide exactly one of user or invite. resetamount is required when the budget has hasmemberlimits=true and must be omitted otherwise.
3 properties
UpdateBudgetMemberRequest
object
Updates the member's resetamount. Only valid when the budget has hasmemberlimits=true.
1 property1 required
BudgetOwner
object
6 properties
BudgetOwnerListResponse
object
4 properties
CreateBudgetOwnerRequest
object
Provide exactly one of user or invite. If the invite has already been accepted by the time the request is processed, the response will contain user rather than…
2 properties
BudgetTopup
object
9 properties
BudgetTopupListResponse
object
4 properties
BudgetTopupCreate
object
3 properties2 required
LineItemCategory
object
3 properties
Balance
object
2 properties2 required
CustomField
object
8 properties
CustomFieldListResponse
object
4 properties
CreateCustomFieldRequest
object
3 properties2 required
UpdateCustomFieldRequest
object
4 properties
CustomFieldOption
object
5 properties
CustomFieldOptionListResponse
object
4 properties
CreateCustomFieldOptionRequest
object
1 property1 required
UpdateCustomFieldOptionRequest
object
2 properties
CustomFieldBudget
object
2 properties
CustomFieldBudgetListResponse
object
4 properties
CreateCustomFieldBudgetRequest
object
1 property1 required
AccountingCode
object
5 properties
AccountingCodeListResponse
object
4 properties
CreateAccountingCodeRequest
object
2 properties2 required
Category
object
7 properties
CategoryListResponse
object
4 properties
TaxRateListResponse
object
4 properties
CreateCategoryRequest
object
2 properties1 required
UpdateCategoryRequest
object
3 properties
Specification
The full machine-readable OpenAPI contract behind this narrative.