Features | Pricing | Documentation | Contact | Blog

API Gateway Destinations

Service Name: API Gateway
ARN Format: arn:aws:execute-api:{region}:{account}:{api-id}/{stage}/POST/{resource-path}
Style: Request/Response
Actions (required Permissions): execute-api:Invoke
Payload Format: JSON object with array of request packet objects

API Gateway destinations enable Proxylity UDP Gateway to call HTTP/HTTPS endpoints, bridging UDP protocols to REST APIs and web services. This integration unlocks "inside-out" connectivity, allowing UDP traffic to trigger external services outside AWS—from IoT platforms like Adafruit IO to potential integrations with cloud functions, automation platforms, custom webhooks, and enterprise systems.

For comprehensive integration patterns, use cases, and examples, see Integrating Outside AWS.

HTTP API vs REST API

AWS API Gateway offers two API types with different transformation capabilities:

Most external integrations use REST API for schema transformation—see the integration guide for VTL examples and detailed comparisons.

Things to know about API Gateway destinations

IAM Security

API Gateway destinations use IAM authentication for fine-grained access control. IAM policies can restrict Proxylity's access to specific API Gateway endpoints, stages, and methods—providing audit trails through CloudTrail.

Example resource-level IAM policy:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "execute-api:Invoke",
      "Resource": "arn:aws:execute-api:us-east-1:123456789012:abc123xyz/prod/POST/webhook"
    }
  ]
}

For detailed security patterns and least-privilege examples, see the IAM security section of the integration guide.

Common Integration Scenarios

API Gateway destinations enable diverse integration patterns:

See Integrating Outside AWS for detailed use cases, implementation patterns, and real-world examples.

Debugging

Use composite destinations to add CloudWatch Logs alongside your API Gateway destination, capturing original UDP payloads for debugging:

Destinations:
  - Name: external-api
    DestinationArn: "arn:aws:execute-api:us-east-1:123456789012:xyz/prod/POST/webhook"
    Role:
      RoleArn: !GetAtt ApiGatewayRole.Arn
  - Name: debug-logging
    DestinationArn: "arn:aws:logs:us-east-1:123456789012:log-group:/proxylity/udp-payloads"
    Role:
      RoleArn: !GetAtt LoggingRole.Arn

Enable API Gateway execution logs in CloudWatch to see VTL transformations and backend responses. For comprehensive debugging strategies, see the debugging section of the integration guide.

A complete working example integrating UDP with Adafruit IO is available in the udp-to-http folder of our examples repository.