@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api Treaties API
@version v1
@endpoints 6
@toc api(6)

@endpoint GET /api/BusinessItem/{id}
@required {id: str}
@returns(200) {value: map{id: str?, treatyId: str?, stepName: str?, steps: [str]?, itemDate: str(date-time), houses: [map]?, link: str?, sequence: int(int32), treatyUri: str(uri)?, businessItemUri: str(uri)?, houseUri: str(uri)?, houseName: str?, procedureStepUri: str(uri)?, houseId: str?, procedureStepId: str?, workpackageProcedureUri: str(uri)?}, links: [map]?}
@errors {400, 404}

@endpoint GET /api/GovernmentOrganisation
@returns(200) {items: [map]?, totalResults: int(int32), itemsPerPage: int(int32), links: [map]?}

@endpoint GET /api/SeriesMembership
@returns(200) {items: [map]?, totalResults: int(int32), itemsPerPage: int(int32), links: [map]?}

@endpoint GET /api/Treaty
@optional {SearchText: str, GovernmentOrganisationId: int(int32), Series: str, ParliamentaryProcess: str, DebateScheduled: bool, MotionsTabledAboutATreaty: bool, CommitteeRaisedConcerns: bool, House: str, Skip: int(int32), Take: int(int32)}
@returns(200) {items: [map]?, totalResults: int(int32), itemsPerPage: int(int32), links: [map]?}
@errors {400}

@endpoint GET /api/Treaty/{id}
@required {id: str}
@returns(200) {value: map{id: str?, name: str?, uri: str(uri)?, commandPaperPrefix: str?, commandPaperNumber: int(int32)?, commonsLayingDate: str(date-time)?, lordsLayingDate: str(date-time)?, webLink: str(uri)?, treatySeriesMembership: map{seriesMembershipType: str, uri: str(uri)?, citation: str?}, leadDepartment: map{id: int(int32), name: str?}, layingBodyDepartment: map{id: int(int32), name: str?}, parliamentaryConclusion: str, debateScheduled: str?, broughtToAttentionDate: str(date-time)?, signedDate: str(date-time)?, laidDate: str(date-time)?, pertinentDate: str(date-time)?, workpackageId: str?}, links: [map]?}
@errors {400, 404}

@endpoint GET /api/Treaty/{id}/BusinessItems
@required {id: str}
@returns(200) {items: [map]?, totalResults: int(int32), itemsPerPage: int(int32), links: [map]?}
@errors {400, 404}

@end
