{"note":"OpenAPI conversion -- returning structured metadata","name":"amazonaws-com-groundstation","description":"AWS Ground Station","version":"2019-05-23","base_url":"","endpoints":33,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api AWS Ground Station\n@version 2019-05-23\n@auth AWS SigV4\n@endpoints 33\n@hint download_for_search\n@toc contact(3), config(5), dataflowEndpointGroup(4), ephemeris(4), missionprofile(5), agent(3), minute-usage(1), satellite(2), contacts(1), ephemerides(1), groundstation(1), tags(3)\n\n@group contact\n@endpoint DELETE /contact/{contactId}\n@desc Cancels a contact with a specified contact ID.\n@required {contactId: str}\n@returns(200) {contactId: str?}\n\n@endgroup\n\n@group config\n@endpoint POST /config\n@desc Creates a Config with the specified configData parameters. Only one type of configData can be specified.\n@required {configData: ConfigTypeData, name: str}\n@optional {tags: map<str,str>}\n@returns(200) {configArn: str?, configId: str?, configType: str?}\n\n@endgroup\n\n@group dataflowEndpointGroup\n@endpoint POST /dataflowEndpointGroup\n@desc Creates a DataflowEndpoint group containing the specified list of DataflowEndpoint objects. The name field in each endpoint is used in your mission profile DataflowEndpointConfig to specify which endpoints to use during a contact. When a contact uses multiple DataflowEndpointConfig objects, each Config must match a DataflowEndpoint in the same group.\n@required {endpointDetails: [EndpointDetails]}\n@optional {contactPostPassDurationSeconds: int, contactPrePassDurationSeconds: int, tags: map<str,str>}\n@returns(200) {dataflowEndpointGroupId: str?}\n\n@endgroup\n\n@group ephemeris\n@endpoint POST /ephemeris\n@desc Creates an Ephemeris with the specified EphemerisData.\n@required {name: str, satelliteId: str}\n@optional {enabled: bool, ephemeris: EphemerisData, expirationTime: str(timestamp), kmsKeyArn: str, priority: int, tags: map<str,str>}\n@returns(200) {ephemerisId: str?}\n\n@endgroup\n\n@group missionprofile\n@endpoint POST /missionprofile\n@desc Creates a mission profile.  dataflowEdges is a list of lists of strings. Each lower level list of strings has two elements: a from ARN and a to ARN.\n@required {dataflowEdges: [[str]], minimumViableContactDurationSeconds: int, name: str, trackingConfigArn: str}\n@optional {contactPostPassDurationSeconds: int, contactPrePassDurationSeconds: int, streamsKmsKey: KmsKey, streamsKmsRole: str, tags: map<str,str>}\n@returns(200) {missionProfileId: str?}\n\n@endgroup\n\n@group config\n@endpoint DELETE /config/{configType}/{configId}\n@desc Deletes a Config.\n@required {configId: str, configType: str}\n@returns(200) {configArn: str?, configId: str?, configType: str?}\n\n@endgroup\n\n@group dataflowEndpointGroup\n@endpoint DELETE /dataflowEndpointGroup/{dataflowEndpointGroupId}\n@desc Deletes a dataflow endpoint group.\n@required {dataflowEndpointGroupId: str}\n@returns(200) {dataflowEndpointGroupId: str?}\n\n@endgroup\n\n@group ephemeris\n@endpoint DELETE /ephemeris/{ephemerisId}\n@desc Deletes an ephemeris\n@required {ephemerisId: str}\n@returns(200) {ephemerisId: str?}\n\n@endgroup\n\n@group missionprofile\n@endpoint DELETE /missionprofile/{missionProfileId}\n@desc Deletes a mission profile.\n@required {missionProfileId: str}\n@returns(200) {missionProfileId: str?}\n\n@endgroup\n\n@group contact\n@endpoint GET /contact/{contactId}\n@desc Describes an existing contact.\n@required {contactId: str}\n@returns(200) {contactId: str?, contactStatus: str?, dataflowList: [DataflowDetail]?, endTime: str(timestamp)?, errorMessage: str?, groundStation: str?, maximumElevation: Elevation?{unit: str, value: num(f64)}, missionProfileArn: str?, postPassEndTime: str(timestamp)?, prePassStartTime: str(timestamp)?, region: str?, satelliteArn: str?, startTime: str(timestamp)?, tags: map<str,str>?, visibilityEndTime: str(timestamp)?, visibilityStartTime: str(timestamp)?}\n\n@endgroup\n\n@group ephemeris\n@endpoint GET /ephemeris/{ephemerisId}\n@desc Describes an existing ephemeris.\n@required {ephemerisId: str}\n@returns(200) {creationTime: str(timestamp)?, enabled: bool?, ephemerisId: str?, invalidReason: str?, name: str?, priority: int?, satelliteId: str?, status: str?, suppliedData: EphemerisTypeDescription?{oem: EphemerisDescription?{ephemerisData: str?, sourceS3Object: S3Object?{bucket: str?, key: str?, version: str?}}, tle: EphemerisDescription?{ephemerisData: str?, sourceS3Object: S3Object?{bucket: str?, key: str?, version: str?}}}, tags: map<str,str>?}\n\n@endgroup\n\n@group agent\n@endpoint GET /agent/{agentId}/configuration\n@desc For use by AWS Ground Station Agent and shouldn't be called directly.  Gets the latest configuration information for a registered agent.\n@required {agentId: str}\n@returns(200) {agentId: str?, taskingDocument: str?}\n\n@endgroup\n\n@group config\n@endpoint GET /config/{configType}/{configId}\n@desc Returns Config information. Only one Config response can be returned.\n@required {configId: str, configType: str}\n@returns(200) {configArn: str, configData: ConfigTypeData{antennaDownlinkConfig: AntennaDownlinkConfig?{spectrumConfig: SpectrumConfig{bandwidth: FrequencyBandwidth, centerFrequency: Frequency, polarization: str?}}, antennaDownlinkDemodDecodeConfig: AntennaDownlinkDemodDecodeConfig?{decodeConfig: DecodeConfig{unvalidatedJSON: str}, demodulationConfig: DemodulationConfig{unvalidatedJSON: str}, spectrumConfig: SpectrumConfig{bandwidth: FrequencyBandwidth, centerFrequency: Frequency, polarization: str?}}, antennaUplinkConfig: AntennaUplinkConfig?{spectrumConfig: UplinkSpectrumConfig{centerFrequency: Frequency, polarization: str?}, targetEirp: Eirp{units: str, value: num(f64)}, transmitDisabled: bool?}, dataflowEndpointConfig: DataflowEndpointConfig?{dataflowEndpointName: str, dataflowEndpointRegion: str?}, s3RecordingConfig: S3RecordingConfig?{bucketArn: str, prefix: str?, roleArn: str}, trackingConfig: TrackingConfig?{autotrack: str}, uplinkEchoConfig: UplinkEchoConfig?{antennaUplinkConfigArn: str, enabled: bool}}, configId: str, configType: str?, name: str, tags: map<str,str>?}\n\n@endgroup\n\n@group dataflowEndpointGroup\n@endpoint GET /dataflowEndpointGroup/{dataflowEndpointGroupId}\n@desc Returns the dataflow endpoint group.\n@required {dataflowEndpointGroupId: str}\n@returns(200) {contactPostPassDurationSeconds: int?, contactPrePassDurationSeconds: int?, dataflowEndpointGroupArn: str?, dataflowEndpointGroupId: str?, endpointsDetails: [EndpointDetails]?, tags: map<str,str>?}\n\n@endgroup\n\n@group minute-usage\n@endpoint POST /minute-usage\n@desc Returns the number of reserved minutes used by account.\n@required {month: int, year: int}\n@returns(200) {estimatedMinutesRemaining: int?, isReservedMinutesCustomer: bool?, totalReservedMinuteAllocation: int?, totalScheduledMinutes: int?, upcomingMinutesScheduled: int?}\n\n@endgroup\n\n@group missionprofile\n@endpoint GET /missionprofile/{missionProfileId}\n@desc Returns a mission profile.\n@required {missionProfileId: str}\n@returns(200) {contactPostPassDurationSeconds: int?, contactPrePassDurationSeconds: int?, dataflowEdges: [[str]]?, minimumViableContactDurationSeconds: int?, missionProfileArn: str?, missionProfileId: str?, name: str?, region: str?, streamsKmsKey: KmsKey?{kmsAliasArn: str?, kmsAliasName: str?, kmsKeyArn: str?}, streamsKmsRole: str?, tags: map<str,str>?, trackingConfigArn: str?}\n\n@endgroup\n\n@group satellite\n@endpoint GET /satellite/{satelliteId}\n@desc Returns a satellite.\n@required {satelliteId: str}\n@returns(200) {currentEphemeris: EphemerisMetaData?{ephemerisId: str?, epoch: str(timestamp)?, name: str?, source: str}, groundStations: [str]?, noradSatelliteID: int?, satelliteArn: str?, satelliteId: str?}\n\n@endgroup\n\n@group config\n@endpoint GET /config\n@desc Returns a list of Config objects.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {configList: [ConfigListItem]?, nextToken: str?}\n\n@endgroup\n\n@group contacts\n@endpoint POST /contacts\n@desc Returns a list of contacts. If statusList contains AVAILABLE, the request must include groundStation, missionprofileArn, and satelliteArn.\n@required {endTime: str(timestamp), startTime: str(timestamp), statusList: [str]}\n@optional {groundStation: str, maxResults: int, missionProfileArn: str, nextToken: str, satelliteArn: str}\n@returns(200) {contactList: [ContactData]?, nextToken: str?}\n\n@endgroup\n\n@group dataflowEndpointGroup\n@endpoint GET /dataflowEndpointGroup\n@desc Returns a list of DataflowEndpoint groups.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {dataflowEndpointGroupList: [DataflowEndpointListItem]?, nextToken: str?}\n\n@endgroup\n\n@group ephemerides\n@endpoint POST /ephemerides\n@desc List existing ephemerides.\n@required {endTime: str(timestamp), satelliteId: str, startTime: str(timestamp)}\n@optional {maxResults: int, nextToken: str, statusList: [str]}\n@returns(200) {ephemerides: [EphemerisItem]?, nextToken: str?}\n\n@endgroup\n\n@group groundstation\n@endpoint GET /groundstation\n@desc Returns a list of ground stations.\n@optional {maxResults: int, nextToken: str, satelliteId: str}\n@returns(200) {groundStationList: [GroundStationData]?, nextToken: str?}\n\n@endgroup\n\n@group missionprofile\n@endpoint GET /missionprofile\n@desc Returns a list of mission profiles.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {missionProfileList: [MissionProfileListItem]?, nextToken: str?}\n\n@endgroup\n\n@group satellite\n@endpoint GET /satellite\n@desc Returns a list of satellites.\n@optional {maxResults: int, nextToken: str}\n@returns(200) {nextToken: str?, satellites: [SatelliteListItem]?}\n\n@endgroup\n\n@group tags\n@endpoint GET /tags/{resourceArn}\n@desc Returns a list of tags for a specified resource.\n@required {resourceArn: str}\n@returns(200) {tags: map<str,str>?}\n\n@endgroup\n\n@group agent\n@endpoint POST /agent\n@desc For use by AWS Ground Station Agent and shouldn't be called directly.   Registers a new agent with AWS Ground Station.\n@required {agentDetails: AgentDetails, discoveryData: DiscoveryData}\n@returns(200) {agentId: str?}\n\n@endgroup\n\n@group contact\n@endpoint POST /contact\n@desc Reserves a contact using specified parameters.\n@required {endTime: str(timestamp), groundStation: str, missionProfileArn: str, satelliteArn: str, startTime: str(timestamp)}\n@optional {tags: map<str,str>}\n@returns(200) {contactId: str?}\n\n@endgroup\n\n@group tags\n@endpoint POST /tags/{resourceArn}\n@desc Assigns a tag to a resource.\n@required {resourceArn: str, tags: map<str,str>}\n\n@endpoint DELETE /tags/{resourceArn}\n@desc Deassigns a resource tag.\n@required {resourceArn: str, tagKeys: [str]}\n\n@endgroup\n\n@group agent\n@endpoint PUT /agent/{agentId}\n@desc For use by AWS Ground Station Agent and shouldn't be called directly.  Update the status of the agent.\n@required {agentId: str, aggregateStatus: AggregateStatus, componentStatuses: [ComponentStatusData], taskId: str}\n@returns(200) {agentId: str}\n\n@endgroup\n\n@group config\n@endpoint PUT /config/{configType}/{configId}\n@desc Updates the Config used when scheduling contacts. Updating a Config will not update the execution parameters for existing future contacts scheduled with this Config.\n@required {configId: str, configType: str, configData: ConfigTypeData, name: str}\n@returns(200) {configArn: str?, configId: str?, configType: str?}\n\n@endgroup\n\n@group ephemeris\n@endpoint PUT /ephemeris/{ephemerisId}\n@desc Updates an existing ephemeris\n@required {ephemerisId: str, enabled: bool}\n@optional {name: str, priority: int}\n@returns(200) {ephemerisId: str?}\n\n@endgroup\n\n@group missionprofile\n@endpoint PUT /missionprofile/{missionProfileId}\n@desc Updates a mission profile. Updating a mission profile will not update the execution parameters for existing future contacts.\n@required {missionProfileId: str}\n@optional {contactPostPassDurationSeconds: int, contactPrePassDurationSeconds: int, dataflowEdges: [[str]], minimumViableContactDurationSeconds: int, name: str, streamsKmsKey: KmsKey, streamsKmsRole: str, trackingConfigArn: str}\n@returns(200) {missionProfileId: str?}\n\n@endgroup\n\n@end\n"}