Solved by following this guide: https://learn.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-develop-custom-api
Step 3 did the trick, creating a page with a part:
page 50100 "API Car Brand"
{
PageType = API;
APIVersion = 'v1.0';
APIPublisher = 'bctech';
APIGroup = 'demo';
EntityCaption = 'Car Brand';
EntitySetCaption = 'Car Brands';
EntityName = 'carBrand';
EntitySetName = 'carBrands';
ODataKeyFields = SystemId;
SourceTable = "Car Brand";
Extensible = false;
DelayedInsert = true;
layout
{
area(content)
{
repeater(Group)
{
field(id; Rec.SystemId)
{
Caption = 'Id';
Editable = false;
}
field(name; Rec.Name)
{
Caption = 'Name';
}
field(description; Rec.Description)
{
Caption = 'Description';
}
field(country; Rec.Country)
{
Caption = 'Country';
}
}
part(carModels; "API Car Model")
{
Caption = 'Car Models';
EntityName = 'carModel';
EntitySetName = 'carModels';
SubPageLink = "Brand Id" = Field(SystemId);
}
}
}
}
And it's part:
page 50101 "API Car Model"
{
PageType = API;
APIVersion = 'v1.0';
APIPublisher = 'bctech';
APIGroup = 'demo';
EntityCaption = 'Car Model';
EntitySetCaption = 'Car Models';
EntityName = 'carModel';
EntitySetName = 'carModels';
ODataKeyFields = SystemId;
SourceTable = "Car Model";
Extensible = false;
DelayedInsert = true;
layout
{
area(content)
{
repeater(Group)
{
field(id; Rec.SystemId)
{
Caption = 'Id';
Editable = false;
}
field(name; Rec.Name)
{
Caption = 'Name';
}
field(description; Rec.Description)
{
Caption = 'Description';
}
field(brandId; Rec."Brand Id")
{
Caption = 'Brand Id';
}
field(power; Rec.Power)
{
Caption = 'Power';
}
field(fuelType; Rec."Fuel Type")
{
Caption = 'Fuel Type';
}
}
}
}
}
Then go to Postman or your tool of preference and test this:
POST https://api.businesscentral.dynamics.com/v2.0/<environmentName>/api/bctech/demo/v1.0/companies(<company id>))/carBrands
{
"name": "CARBRAND2",
"description": "Car Brand 2",
"country": "Germany",
"carModels": [{
"name": "MODELA",
"description": "Model A",
"power": 0,
"fuelType": "Electric"
},
{
"name": "MODELB",
"description": "Model B",
"power": 0,
"fuelType": "Electric"
}]
}