@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Handwrytten API
@base https://api.handwrytten.com/v1
@version 1.0.0
@endpoints 30
@hint download_for_search
@toc auth(5), profile(6), fonts(2), cards(5), giftCards(2), templateCategories(2), templates(6), countries(1), orders(1)

@group auth
@endpoint POST /auth/register
@required {body: map}
@returns(200)
@errors {405}

@endpoint POST /auth/authorization
@required {body: map}
@returns(200)
@errors {400}

@endpoint POST /auth/resetPasswordRequest
@required {body: map}
@returns(200)
@errors {405}

@endpoint POST /auth/changePassword
@required {body: map}
@returns(200)
@errors {405}

@endpoint POST /auth/logout
@required {body: map}
@returns(200)
@errors {405}

@endgroup

@group profile
@endpoint POST /profile/address
@optional {body: map}
@returns(200)

@endpoint POST /profile/updateAddress
@required {body: map}
@returns(200)

@endpoint POST /profile/recipientsList
@required {body: map}
@returns(200)

@endpoint POST /profile/profileAddRecipient
@optional {body: map}
@returns(200)

@endpoint POST /profile/updateRecipient
@required {body: map}
@returns(200)

@endpoint POST /profile/deleteRecipient
@required {body: map}
@returns(200)

@endgroup

@group fonts
@endpoint GET /fonts/list
@returns(200)

@endgroup

@group cards
@endpoint POST /cards/uploadCustomLogo
@required {file: any, type: any, uid: any}
@returns(200)

@endgroup

@group fonts
@endpoint GET /fonts/listForCustomizer
@returns(200)

@endgroup

@group cards
@endpoint POST /cards/createCustomCard
@required {body: map}
@returns(200)

@endpoint GET /cards/list
@returns(200)
@errors {400}

@endpoint POST /cards/list
@optional {body: map}
@returns(200)
@errors {400}

@endpoint POST /cards/view
@optional {body: map}
@returns(200)

@endgroup

@group giftCards
@endpoint POST /giftCards/view
@returns(200)

@endpoint GET /giftCards/view
@returns(200)

@endgroup

@group templateCategories
@endpoint GET /templateCategories/list
@returns(200)

@endpoint POST /templateCategories/list
@optional {body: map}
@returns(200)

@endgroup

@group templates
@endpoint GET /templates/list
@returns(200)

@endpoint POST /templates/list
@optional {body: map}
@returns(200)

@endpoint POST /templates/view
@required {body: map}
@returns(200)

@endpoint POST /templates/create
@required {body: map}
@returns(200)

@endpoint POST /templates/update
@required {body: map}
@returns(200)

@endpoint POST /templates/delete
@required {body: map}
@returns(200)

@endgroup

@group countries
@endpoint GET /countries/list
@returns(200)

@endgroup

@group orders
@endpoint POST /orders/singleStepOrder
@required {body: map}
@returns(200)

@endgroup

@end
