{"files":{"SKILL.md":"---\nname: account-management-overview\ndescription: \"Account Management Overview API skill. Use when working with Account Management Overview for resources. Covers 25 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# Account Management Overview\nAPI version: 1.0\n\n## Auth\nBearer bearer\n\n## Base URL\nhttps://api.frontegg.com/tenants\n\n## Setup\n1. Set Authorization header with Bearer token\n2. GET /resources/tenants/v2 -- get accounts (tenants)\n3. POST /resources/tenants/v1 -- create first tenant\n\n## Endpoints\n25 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Resources\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /resources/tenants/v1/{tenantId} | Get account (tenant) by ID |\n| PUT | /resources/tenants/v1/{tenantId} | Update account (tenant) |\n| DELETE | /resources/tenants/v1/{tenantId} | Delete account (tenant) |\n| POST | /resources/tenants/v1 | Create an account (tenant) |\n| DELETE | /resources/tenants/v1 | Delete current account (tenant) |\n| POST | /resources/tenants/v1/{tenantId}/metadata | Add account (tenant) metadata |\n| DELETE | /resources/tenants/v1/{tenantId}/metadata/{key} | Delete account (tenant) metadata |\n| GET | /resources/tenants/v2 | Get accounts (tenants) |\n| GET | /resources/tenants/v2/alias/{alias} | Get account (tenant) by alias |\n| GET | /resources/tenants/v2/{tenantId} | Get an account (tenant) |\n| PUT | /resources/tenants/v2/{tenantId} | Update an account (tenant) |\n| POST | /resources/sub-tenants/v1 | Create sub-account |\n| PUT | /resources/sub-tenants/v1/{tenantId}/management | Update sub-account (tenant) management |\n| PUT | /resources/sub-tenants/v1/{tenantId}/hierarchy-settings | Update sub-account hierarchy settings |\n| DELETE | /resources/sub-tenants/v1/{tenantId} | Delete a sub-account by ID |\n| GET | /resources/account-settings/v1 | Get account settings |\n| PUT | /resources/account-settings/v1 | Update account settings |\n| GET | /resources/account-settings/v1/public | Get public settings |\n| POST | /resources/migrations/v1/tenants | Migrate accounts (tenants) |\n| GET | /resources/migrations/v1/tenants/status/{migrationId} | Accounts (tenants) migration status |\n| GET | /resources/hierarchy/v1 | Get sub-accounts (tenants) |\n| POST | /resources/hierarchy/v1 | Create sub-account (tenant) |\n| DELETE | /resources/hierarchy/v1 | Delete sub-account (tenant) |\n| GET | /resources/hierarchy/v1/parents | Get parent accounts (tenants) |\n| GET | /resources/hierarchy/v1/tree | Get sub-accounts (tenanants) hierarchy tree |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"Get tenant details?\" -> GET /resources/tenants/v1/{tenantId}\n- \"Update a tenant?\" -> PUT /resources/tenants/v1/{tenantId}\n- \"Delete a tenant?\" -> DELETE /resources/tenants/v1/{tenantId}\n- \"Create a tenant?\" -> POST /resources/tenants/v1\n- \"Create a metadata?\" -> POST /resources/tenants/v1/{tenantId}/metadata\n- \"Delete a metadata?\" -> DELETE /resources/tenants/v1/{tenantId}/metadata/{key}\n- \"List all tenants?\" -> GET /resources/tenants/v2\n- \"Get alia details?\" -> GET /resources/tenants/v2/alias/{alias}\n- \"Create a sub-tenant?\" -> POST /resources/sub-tenants/v1\n- \"Delete a sub-tenant?\" -> DELETE /resources/sub-tenants/v1/{tenantId}\n- \"List all account-settings?\" -> GET /resources/account-settings/v1\n- \"List all public?\" -> GET /resources/account-settings/v1/public\n- \"Get status details?\" -> GET /resources/migrations/v1/tenants/status/{migrationId}\n- \"List all hierarchy?\" -> GET /resources/hierarchy/v1\n- \"Create a hierarchy?\" -> POST /resources/hierarchy/v1\n- \"List all parents?\" -> GET /resources/hierarchy/v1/parents\n- \"List all tree?\" -> GET /resources/hierarchy/v1/tree\n- \"How to authenticate?\" -> See Auth section above\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Account Management Overview\n@base https://api.frontegg.com/tenants\n@auth Bearer bearer\n@endpoints 25\n@hint download_for_search\n@toc resources(25)\n\n@endpoint GET /resources/tenants/v1/{tenantId}\n@desc Get account (tenant) by ID\n@required {tenantId: str # The account (tenant) ID to get.}\n@errors {400: When the account (tenant) ID does not pass the validation.}\n\n@endpoint PUT /resources/tenants/v1/{tenantId}\n@desc Update account (tenant)\n@required {tenantId: str}\n@errors {400: When body doesn't contain any property to change., 404: When given account (tenant) doesn't exist.}\n\n@endpoint DELETE /resources/tenants/v1/{tenantId}\n@desc Delete account (tenant)\n@required {tenantId: str}\n@errors {404: When the given account (tenant) doesn't exist.}\n\n@endpoint POST /resources/tenants/v1\n@desc Create an account (tenant)\n@optional {tenantId: str # Send your own unique tenantId or Frontegg will auto-generate a UUID, name: str, status: str # This field can be used for custom logic, it is not enforced in Frontegg flows, website: str, applicationUrl: str, logo: str # Base64-encoded image to use as logo., logoUrl: str, address: str, timezone: str, currency: str, creatorName: str, creatorEmail: str, isReseller: bool, parentTenantId: str}\n@errors {400: When the account (tenant) ID does not pass the validation.}\n\n@endpoint DELETE /resources/tenants/v1\n@desc Delete current account (tenant)\n@returns(200) When current account (tenant) has been removed.\n\n@endpoint POST /resources/tenants/v1/{tenantId}/metadata\n@desc Add account (tenant) metadata\n@required {tenantId: str, metadata: any}\n@errors {400: When the given metadata is neither a JSON, nor JSON-string., 404: When the given account (tenant) doesn't exist.}\n\n@endpoint DELETE /resources/tenants/v1/{tenantId}/metadata/{key}\n@desc Delete account (tenant) metadata\n@required {tenantId: str, key: str}\n@errors {404: When the provided account (tenant) doesn't exist.}\n\n@endpoint GET /resources/tenants/v2\n@desc Get accounts (tenants)\n@optional {_limit: num # The default limit is 50 accounts (tenants) per request, the maximum is 200, _offset: num, _filter: str # This param allows filtering the request using an account's name or tenantId, _sortBy: str # This param allows sorting the results via createdAt, name, tenantId, _order: str # This param can be used together with sortBy and define the order as ACS or DESC, _tenantIds: [str] # This param allows passing specific tenantIds and getting only these accounts (tenants) data}\n@returns(200)\n\n@endpoint GET /resources/tenants/v2/alias/{alias}\n@desc Get account (tenant) by alias\n@required {alias: str}\n@returns(200)\n\n@endpoint GET /resources/tenants/v2/{tenantId}\n@desc Get an account (tenant)\n@required {tenantId: str}\n@returns(200)\n\n@endpoint PUT /resources/tenants/v2/{tenantId}\n@desc Update an account (tenant)\n@required {tenantId: str}\n@returns(200)\n\n@endpoint POST /resources/sub-tenants/v1\n@desc Create sub-account\n@required {tenantId: str, name: str, parentTenantId: str}\n@optional {status: str # This field can be used for custom logic, it is not enforced in Frontegg flows, logo: str # Base64-encoded image to use as logo., logoUrl: str, creatorName: str, creatorEmail: str, isReseller: bool}\n@errors {400: When account (tenant) ID does not pass validation.}\n\n@endpoint PUT /resources/sub-tenants/v1/{tenantId}/management\n@desc Update sub-account (tenant) management\n@required {tenantId: str}\n@returns(200)\n\n@endpoint PUT /resources/sub-tenants/v1/{tenantId}/hierarchy-settings\n@desc Update sub-account hierarchy settings\n@required {tenantId: str}\n@returns(200)\n\n@endpoint DELETE /resources/sub-tenants/v1/{tenantId}\n@desc Delete a sub-account by ID\n@required {tenantId: str}\n@errors {404: When the given account (tenant) doesn't exist.}\n\n@endpoint GET /resources/account-settings/v1\n@desc Get account settings\n@required {frontegg-tenant-id: str # The account (tenant) ID identifier}\n@returns(200) Settings retrieved successfully\n@errors {404: When an account (tenant) with given ID does not exist.}\n\n@endpoint PUT /resources/account-settings/v1\n@desc Update account settings\n@required {frontegg-tenant-id: str # The account (tenant) ID identifier}\n@returns(200) Settings updated successfully\n@errors {400:When: a) given parameters do not pass validation b) empty object is passed in request content, 404: When an account (tenant) with given ID does not exist.}\n\n@endpoint GET /resources/account-settings/v1/public\n@desc Get public settings\n@required {frontegg-tenant-id: str # The account (tenant) ID identifier}\n@returns(200) Public settings retrieved successfully\n@errors {404: When an account (tenant) with given ID does not exist.}\n\n@endpoint POST /resources/migrations/v1/tenants\n@desc Migrate accounts (tenants)\n@required {tenants: [str]}\n@returns(202)\n\n@endpoint GET /resources/migrations/v1/tenants/status/{migrationId}\n@desc Accounts (tenants) migration status\n@required {migrationId: str}\n@returns(200)\n\n@endpoint GET /resources/hierarchy/v1\n@desc Get sub-accounts (tenants)\n@required {frontegg-tenant-id: str # The account (tenant) ID identifier}\n@returns(200)\n\n@endpoint POST /resources/hierarchy/v1\n@desc Create sub-account (tenant)\n@optional {parentTenantId: str, childTenantId: str}\n@errors {400:When: a) given parameters do not pass validationb) or parent and child account (tenant) are equal:c) or child account (tenant) is already a sub-account in other organization's hierarchy}\n\n@endpoint DELETE /resources/hierarchy/v1\n@desc Delete sub-account (tenant)\n@errors {400: When provided parameters do not pass validation., 404: When given accounts (tenants) are not in parent-child relation.}\n\n@endpoint GET /resources/hierarchy/v1/parents\n@desc Get parent accounts (tenants)\n@required {frontegg-tenant-id: str # The account (tenant) ID identifier}\n@returns(200)\n\n@endpoint GET /resources/hierarchy/v1/tree\n@desc Get sub-accounts (tenanants) hierarchy tree\n@required {frontegg-tenant-id: str # The account (tenant) ID identifier}\n@errors {400: When circular dependency is detected in the hierarchy}\n\n@end\n"}}