@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api License Manager API
@base https://apiexamples.vtexcommercestable.com.br
@version 1.0
@auth ApiKey X-VTEX-API-AppKey in header | ApiKey X-VTEX-API-AppToken in header | ApiKey VtexIdclientAutCookie in header
@endpoints 13
@toc api(13)

@endpoint GET /api/license-manager/users/{userId}
@required {Content-Type: str=application/json, Accept: str=application/json, userId: str}
@returns(200) {id: str, name: str, email: str}
@errors {400, 405}

@endpoint DELETE /api/license-manager/users/{userId}
@required {Content-Type: str=application/json, Accept: str=application/json, userId: str}
@returns(200)
@errors {400}

@endpoint POST /api/license-manager/users
@required {email: str}
@optional {name: str}
@returns(200) {id: str, email: str, name: str}
@errors {400}

@endpoint GET /api/license-manager/site/pvt/logins/list/paged
@required {Content-Type: str=application/json, Accept: str=application/json}
@optional {numItems: int, pageNumber: int, sort: str, sortType: str}
@returns(200) {items: [map], paging: map{page: int, perPage: int, total: int, pages: int}}

@endpoint PUT /api/license-manager/users/{userId}/roles
@required {userId: str}
@returns(204)
@errors {400, 500}

@endpoint GET /api/license-manager/users/{userId}/roles
@required {Content-Type: str=application/json, Accept: str=application/json, userId: str}
@returns(200)

@endpoint DELETE /api/license-manager/users/{userId}/roles/{roleId}
@required {Content-Type: str=application/json, Accept: str=application/json, userId: str, roleId: str}
@returns(204)
@errors {400, 405}

@endpoint GET /api/license-manager/site/pvt/roles/list/paged
@required {Content-Type: str=application/json, Accept: str=application/json}
@optional {numItems: int, pageNumber: int, sort: str, sortType: str}
@returns(200) {items: [map], paging: map{page: int, perPage: int, total: int, pages: int}}

@endpoint POST /api/vlm/appkeys
@required {label: str}
@returns(200) {id: str, appKey: str, appToken: str?, label: str, createdIn: str(date-time), isActive: bool}

@endpoint GET /api/vlm/appkeys
@required {Content-Type: str=application/json}
@returns(200)

@endpoint PUT /api/vlm/appkeys/{id}
@required {id: str, isActive: bool}
@returns(200)
@errors {400}

@endpoint GET /api/vlm/account/stores
@returns(200)

@endpoint GET /api/vlm/account
@returns(200) {isActive: bool, id: str, name: str, accountName: str, lv: str?, isOperating: bool, defaultUrl: str?, district: str?, country: str?, complement: str?, companyName: str, cnpj: str?, haveParentAccount: bool, parentAccountId: str?, parentAccountName: str?, city: str?, address: str?, logo: str?, hasLogo: bool, number: str?, postalCode: str?, state: str?, telephone: str, tradingName: str, licenses: [map], sponsor: map{name: str, email: str, phone: str}, contact: map{name: str, email: str, phone: str}, operationDate: str(date-time)?, inactivationDate: str(date-time)?, creationDate: str(date-time), hosts: [str], sites: [map], appKey: map{token: str?, name: str?}, appKeys: [map]}

@end
