@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api API V1
@base https://api.getchange.io
@version v1
@auth Bearer basic
@endpoints 8
@toc api(8)

@endpoint POST /api/v1/donations/create
@required {amount: str, nonprofit_id: str, funding_source: str(merchant/customer)}
@optional {zip_code: str}
@returns(200)
@errors {400}

@endpoint GET /api/v1/donations/show
@required {id: str}
@returns(200)

@endpoint GET /api/v1/donations/index
@optional {page: num}
@returns(200)

@endpoint GET /api/v1/donations/carbon_calculate
@required {weight_lb: num}
@optional {origin_address: num, destination_address: num, distance_mi: num, transportation_method: str(air/truck/rail/sea)}
@returns(200)

@endpoint GET /api/v1/donations/crypto_calculate
@required {currency: str(eth/btc)}
@optional {count: num}
@returns(200)

@endpoint GET /api/v1/donations/carbon_stats
@optional {id: num}
@returns(200)

@endpoint GET /api/v1/nonprofits/show
@required {id: str}
@returns(200)

@endpoint GET /api/v1/nonprofits/list
@optional {name: str, page: num}
@returns(200)

@end
