@lap v0.3
# Machine-readable API spec. Each @endpoint block is one API call.
@api AWS X-Ray
@version 2016-04-12
@auth AWS SigV4
@endpoints 30
@hint download_for_search
@toc Traces(1), CreateGroup(1), CreateSamplingRule(1), DeleteGroup(1), DeleteResourcePolicy(1), DeleteSamplingRule(1), EncryptionConfig(1), GetGroup(1), Groups(1), Insight(1), InsightEvents(1), InsightImpactGraph(1), InsightSummaries(1), GetSamplingRules(1), SamplingStatisticSummaries(1), SamplingTargets(1), ServiceGraph(1), TimeSeriesServiceStatistics(1), TraceGraph(1), TraceSummaries(1), ListResourcePolicies(1), ListTagsForResource(1), PutEncryptionConfig(1), PutResourcePolicy(1), TelemetryRecords(1), TraceSegments(1), TagResource(1), UntagResource(1), UpdateGroup(1), UpdateSamplingRule(1)

@group Traces
@endpoint POST /Traces
@required {TraceIds: [str]}
@optional {NextToken: str}
@returns(200) {Traces: [Trace]?, UnprocessedTraceIds: [str]?, NextToken: str?}

@endgroup

@group CreateGroup
@endpoint POST /CreateGroup
@required {GroupName: str}
@optional {FilterExpression: str, InsightsConfiguration: InsightsConfiguration, Tags: [Tag]}
@returns(200) {Group: Group?{GroupName: str?, GroupARN: str?, FilterExpression: str?, InsightsConfiguration: InsightsConfiguration?{InsightsEnabled: bool?, NotificationsEnabled: bool?}}}

@endgroup

@group CreateSamplingRule
@endpoint POST /CreateSamplingRule
@required {SamplingRule: SamplingRule}
@optional {Tags: [Tag]}
@returns(200) {SamplingRuleRecord: SamplingRuleRecord?{SamplingRule: SamplingRule?{RuleName: str?, RuleARN: str?, ResourceARN: str, Priority: int, FixedRate: num(f64), ReservoirSize: int, ServiceName: str, ServiceType: str, Host: str, HTTPMethod: str, URLPath: str, Version: int, Attributes: map<str,str>?}, CreatedAt: str(timestamp)?, ModifiedAt: str(timestamp)?}}

@endgroup

@group DeleteGroup
@endpoint POST /DeleteGroup
@optional {GroupName: str, GroupARN: str}

@endgroup

@group DeleteResourcePolicy
@endpoint POST /DeleteResourcePolicy
@required {PolicyName: str}
@optional {PolicyRevisionId: str}

@endgroup

@group DeleteSamplingRule
@endpoint POST /DeleteSamplingRule
@optional {RuleName: str, RuleARN: str}
@returns(200) {SamplingRuleRecord: SamplingRuleRecord?{SamplingRule: SamplingRule?{RuleName: str?, RuleARN: str?, ResourceARN: str, Priority: int, FixedRate: num(f64), ReservoirSize: int, ServiceName: str, ServiceType: str, Host: str, HTTPMethod: str, URLPath: str, Version: int, Attributes: map<str,str>?}, CreatedAt: str(timestamp)?, ModifiedAt: str(timestamp)?}}

@endgroup

@group EncryptionConfig
@endpoint POST /EncryptionConfig
@returns(200) {EncryptionConfig: EncryptionConfig?{KeyId: str?, Status: str?, Type: str?}}

@endgroup

@group GetGroup
@endpoint POST /GetGroup
@optional {GroupName: str, GroupARN: str}
@returns(200) {Group: Group?{GroupName: str?, GroupARN: str?, FilterExpression: str?, InsightsConfiguration: InsightsConfiguration?{InsightsEnabled: bool?, NotificationsEnabled: bool?}}}

@endgroup

@group Groups
@endpoint POST /Groups
@optional {NextToken: str}
@returns(200) {Groups: [GroupSummary]?, NextToken: str?}

@endgroup

@group Insight
@endpoint POST /Insight
@required {InsightId: str}
@returns(200) {Insight: Insight?{InsightId: str?, GroupARN: str?, GroupName: str?, RootCauseServiceId: ServiceId?{Name: str?, Names: [str]?, AccountId: str?, Type: str?}, Categories: [str]?, State: str?, StartTime: str(timestamp)?, EndTime: str(timestamp)?, Summary: str?, ClientRequestImpactStatistics: RequestImpactStatistics?{FaultCount: int(i64)?, OkCount: int(i64)?, TotalCount: int(i64)?}, RootCauseServiceRequestImpactStatistics: RequestImpactStatistics?{FaultCount: int(i64)?, OkCount: int(i64)?, TotalCount: int(i64)?}, TopAnomalousServices: [AnomalousService]?}}

@endgroup

@group InsightEvents
@endpoint POST /InsightEvents
@required {InsightId: str}
@optional {MaxResults: int, NextToken: str}
@returns(200) {InsightEvents: [InsightEvent]?, NextToken: str?}

@endgroup

@group InsightImpactGraph
@endpoint POST /InsightImpactGraph
@required {InsightId: str, StartTime: str(timestamp), EndTime: str(timestamp)}
@optional {NextToken: str}
@returns(200) {InsightId: str?, StartTime: str(timestamp)?, EndTime: str(timestamp)?, ServiceGraphStartTime: str(timestamp)?, ServiceGraphEndTime: str(timestamp)?, Services: [InsightImpactGraphService]?, NextToken: str?}

@endgroup

@group InsightSummaries
@endpoint POST /InsightSummaries
@required {StartTime: str(timestamp), EndTime: str(timestamp)}
@optional {States: [str], GroupARN: str, GroupName: str, MaxResults: int, NextToken: str}
@returns(200) {InsightSummaries: [InsightSummary]?, NextToken: str?}

@endgroup

@group GetSamplingRules
@endpoint POST /GetSamplingRules
@optional {NextToken: str}
@returns(200) {SamplingRuleRecords: [SamplingRuleRecord]?, NextToken: str?}

@endgroup

@group SamplingStatisticSummaries
@endpoint POST /SamplingStatisticSummaries
@optional {NextToken: str}
@returns(200) {SamplingStatisticSummaries: [SamplingStatisticSummary]?, NextToken: str?}

@endgroup

@group SamplingTargets
@endpoint POST /SamplingTargets
@required {SamplingStatisticsDocuments: [SamplingStatisticsDocument]}
@returns(200) {SamplingTargetDocuments: [SamplingTargetDocument]?, LastRuleModification: str(timestamp)?, UnprocessedStatistics: [UnprocessedStatistics]?}

@endgroup

@group ServiceGraph
@endpoint POST /ServiceGraph
@required {StartTime: str(timestamp), EndTime: str(timestamp)}
@optional {GroupName: str, GroupARN: str, NextToken: str}
@returns(200) {StartTime: str(timestamp)?, EndTime: str(timestamp)?, Services: [Service]?, ContainsOldGroupVersions: bool?, NextToken: str?}

@endgroup

@group TimeSeriesServiceStatistics
@endpoint POST /TimeSeriesServiceStatistics
@required {StartTime: str(timestamp), EndTime: str(timestamp)}
@optional {GroupName: str, GroupARN: str, EntitySelectorExpression: str, Period: int, ForecastStatistics: bool, NextToken: str}
@returns(200) {TimeSeriesServiceStatistics: [TimeSeriesServiceStatistics]?, ContainsOldGroupVersions: bool?, NextToken: str?}

@endgroup

@group TraceGraph
@endpoint POST /TraceGraph
@required {TraceIds: [str]}
@optional {NextToken: str}
@returns(200) {Services: [Service]?, NextToken: str?}

@endgroup

@group TraceSummaries
@endpoint POST /TraceSummaries
@required {StartTime: str(timestamp), EndTime: str(timestamp)}
@optional {TimeRangeType: str, Sampling: bool, SamplingStrategy: SamplingStrategy, FilterExpression: str, NextToken: str}
@returns(200) {TraceSummaries: [TraceSummary]?, ApproximateTime: str(timestamp)?, TracesProcessedCount: int(i64)?, NextToken: str?}

@endgroup

@group ListResourcePolicies
@endpoint POST /ListResourcePolicies
@optional {NextToken: str}
@returns(200) {ResourcePolicies: [ResourcePolicy]?, NextToken: str?}

@endgroup

@group ListTagsForResource
@endpoint POST /ListTagsForResource
@required {ResourceARN: str}
@optional {NextToken: str}
@returns(200) {Tags: [Tag]?, NextToken: str?}

@endgroup

@group PutEncryptionConfig
@endpoint POST /PutEncryptionConfig
@required {Type: str}
@optional {KeyId: str}
@returns(200) {EncryptionConfig: EncryptionConfig?{KeyId: str?, Status: str?, Type: str?}}

@endgroup

@group PutResourcePolicy
@endpoint POST /PutResourcePolicy
@required {PolicyName: str, PolicyDocument: str}
@optional {PolicyRevisionId: str, BypassPolicyLockoutCheck: bool}
@returns(200) {ResourcePolicy: ResourcePolicy?{PolicyName: str?, PolicyDocument: str?, PolicyRevisionId: str?, LastUpdatedTime: str(timestamp)?}}

@endgroup

@group TelemetryRecords
@endpoint POST /TelemetryRecords
@required {TelemetryRecords: [TelemetryRecord]}
@optional {EC2InstanceId: str, Hostname: str, ResourceARN: str}

@endgroup

@group TraceSegments
@endpoint POST /TraceSegments
@required {TraceSegmentDocuments: [str]}
@returns(200) {UnprocessedTraceSegments: [UnprocessedTraceSegment]?}

@endgroup

@group TagResource
@endpoint POST /TagResource
@required {ResourceARN: str, Tags: [Tag]}

@endgroup

@group UntagResource
@endpoint POST /UntagResource
@required {ResourceARN: str, TagKeys: [str]}

@endgroup

@group UpdateGroup
@endpoint POST /UpdateGroup
@optional {GroupName: str, GroupARN: str, FilterExpression: str, InsightsConfiguration: InsightsConfiguration}
@returns(200) {Group: Group?{GroupName: str?, GroupARN: str?, FilterExpression: str?, InsightsConfiguration: InsightsConfiguration?{InsightsEnabled: bool?, NotificationsEnabled: bool?}}}

@endgroup

@group UpdateSamplingRule
@endpoint POST /UpdateSamplingRule
@required {SamplingRuleUpdate: SamplingRuleUpdate}
@returns(200) {SamplingRuleRecord: SamplingRuleRecord?{SamplingRule: SamplingRule?{RuleName: str?, RuleARN: str?, ResourceARN: str, Priority: int, FixedRate: num(f64), ReservoirSize: int, ServiceName: str, ServiceType: str, Host: str, HTTPMethod: str, URLPath: str, Version: int, Attributes: map<str,str>?}, CreatedAt: str(timestamp)?, ModifiedAt: str(timestamp)?}}

@endgroup

@end
