Create a team

Required scope: teams:write
Organization authorization: supported

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
int64 | null

Id of the user that owns the team.

string | null

Email of the user that owns the team, useful when the userId is not known.

int64 | null
> 0

Id of the operator this team should be assigned to
Note: if not provided the team will be assigned to the default operator for the given consumer, if the default operator cannot be assigned the request will be rejected.

string
required
length ≥ 1

Name of the team.

string
required

Contact email of the team. Named "email" in the GET APIs.

string | null

Finance contact email of the team.

string | null

Recipient for important payment notices (late payment, freeze warning, frozen). When not set, these go to financeEmail.

string | null

Legal contact email of the team.

string
enum
required

type of the team.

Allowed:
address
object
required

Address of the team. Only countryId is mandatory. Address1, city, and zipCode must be provided together or all left null.

string | null

The company name for the team.

string | null

The vat number for the team.

string | null

The company registration number for the team.

string | null
deprecated

External Id of this entity, managed by you.
Deprecated: use customFields.externalId instead — both read and write the same value.

partnerCustomPayload
object | null
deprecated

Custom JSON payload for this entity, managed by you.
Note: the expected shape is a flat JSON object with named keys. The payload is limited to 1000 characters.
Deprecated: use customFields instead; this payload is not migrated automatically.

customFields
object | null

Custom fields to set on this entity: a flat map of string keys (1-64 characters, no : or ,, not starting with monta) to string values (up to 256 characters), at most 20 pairs per entity. Fields are scoped to your operator. externalId is the same value as the deprecated partnerExternalId.

string | null
enum

The payment method for the team.
Note: if not provided the team will be created with the default payment method source.

Allowed:
int64 | null

The theme id to assign to the team.
Note: When theme is provided, it must belong to the same operator as the team

onboardingSteps
array of objects | null

The onboarding steps enabled for the team, as {step, config?, displayMode?} entries. Present in the list means enabled; the list is the full enabled set.

onboardingSteps
int64 | null
> 0

Onboarding profile to apply, from GET /onboarding-profiles. Copies the profile's steps onto the team and locks them to the profile. Cannot be combined with onboardingSteps.

onboardingWelcomeText
object | null

The app-onboarding welcome-screen text override. Omit to use Monta's default copy.

string | null

Category identifier of the team, one of: housing-association, cpo, parking, hotel, fleet, company, priced-by-site-owner.
Note: if not provided Monta assigns a default based on the team type.

boolean | null

Whether team members can register their own charge keys.
Note: defaults to false when omitted. Self-registration is also enabled when the team's operator team settings template enables it.

string | null

Custom code users enter in the app to join the team, 4-50 characters. Monta generates one when omitted.
Note: stored slugified (lowercased, spaces and symbols become dashes, e.g. MVV Energie 042 → mvv-energie-042); the response returns the stored value. Join codes are unique across all teams on Monta, so a code that is already taken (after slugifying) is rejected with 422.

Responses

422

Validation failed, e.g. joinCode is already taken

Language
Credentials
Bearer
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json