complete api structure.