@ngrok/ngrok-api 0.9.0 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintignore +2 -0
- package/.eslintrc.js +2 -0
- package/.prettierrc.js +2 -0
- package/CHANGELOG.md +12 -3
- package/CODE_OF_CONDUCT.md +45 -0
- package/README.md +9 -3
- package/docs/assets/js/search.js +1 -1
- package/docs/classes/client.Ngrok.html +54 -26
- package/docs/classes/services.APIKeys.html +20 -11
- package/docs/classes/services.AbuseReports.html +5 -5
- package/docs/classes/services.AgentIngresses.html +20 -11
- package/docs/classes/services.ApplicationSessions.html +288 -0
- package/docs/classes/services.ApplicationUsers.html +288 -0
- package/docs/classes/services.CertificateAuthorities.html +20 -11
- package/docs/classes/services.Credentials.html +21 -12
- package/docs/classes/services.EdgeRouteBackendModule.html +4 -4
- package/docs/classes/services.EdgeRouteCircuitBreakerModule.html +4 -4
- package/docs/classes/services.EdgeRouteCompressionModule.html +4 -4
- package/docs/classes/services.EdgeRouteIPRestrictionModule.html +4 -4
- package/docs/classes/services.EdgeRouteOAuthModule.html +4 -4
- package/docs/classes/services.EdgeRouteOIDCModule.html +4 -4
- package/docs/classes/services.EdgeRouteRequestHeadersModule.html +4 -4
- package/docs/classes/services.EdgeRouteResponseHeadersModule.html +4 -4
- package/docs/classes/services.EdgeRouteSAMLModule.html +4 -4
- package/docs/classes/services.EdgeRouteWebhookVerificationModule.html +4 -4
- package/docs/classes/services.EdgeRouteWebsocketTCPConverterModule.html +4 -4
- package/docs/classes/services.EdgesHTTPS.html +20 -11
- package/docs/classes/services.EdgesHTTPSRoutes.html +5 -5
- package/docs/classes/services.EdgesTCP.html +20 -11
- package/docs/classes/services.EdgesTLS.html +20 -11
- package/docs/classes/services.Endpoints.html +15 -6
- package/docs/classes/services.EventDestinations.html +21 -12
- package/docs/classes/services.EventSources.html +6 -6
- package/docs/classes/services.EventSubscriptions.html +20 -11
- package/docs/classes/services.FailoverBackends.html +20 -11
- package/docs/classes/services.HTTPResponseBackends.html +20 -11
- package/docs/classes/services.HTTPSEdgeMutualTLSModule.html +8 -8
- package/docs/classes/services.HTTPSEdgeTLSTerminationModule.html +8 -8
- package/docs/classes/services.IPPolicies.html +20 -11
- package/docs/classes/services.IPPolicyRules.html +20 -11
- package/docs/classes/services.IPRestrictions.html +20 -11
- package/docs/classes/services.ReservedAddrs.html +20 -11
- package/docs/classes/services.ReservedDomains.html +26 -17
- package/docs/classes/services.SSHCertificateAuthorities.html +20 -11
- package/docs/classes/services.SSHCredentials.html +20 -11
- package/docs/classes/services.SSHHostCertificates.html +20 -11
- package/docs/classes/services.SSHUserCertificates.html +20 -11
- package/docs/classes/services.TCPEdgeBackendModule.html +8 -8
- package/docs/classes/services.TCPEdgeIPRestrictionModule.html +8 -8
- package/docs/classes/services.TLSCertificates.html +20 -11
- package/docs/classes/services.TLSEdgeBackendModule.html +8 -8
- package/docs/classes/services.TLSEdgeIPRestrictionModule.html +8 -8
- package/docs/classes/services.TLSEdgeMutualTLSModule.html +8 -8
- package/docs/classes/services.TLSEdgeTLSTerminationModule.html +8 -8
- package/docs/classes/services.TunnelGroupBackends.html +20 -11
- package/docs/classes/services.TunnelSessions.html +22 -13
- package/docs/classes/services.Tunnels.html +15 -6
- package/docs/classes/services.WeightedBackends.html +20 -11
- package/docs/index.html +8 -3
- package/docs/interfaces/client.NgrokConfig.html +2 -2
- package/docs/interfaces/datatypes.APIKey.html +28 -9
- package/docs/interfaces/datatypes.APIKeyCreate.html +23 -4
- package/docs/interfaces/datatypes.APIKeyList.html +3 -3
- package/docs/interfaces/datatypes.APIKeyUpdate.html +3 -3
- package/docs/interfaces/datatypes.AWSAuth.html +2 -2
- package/docs/interfaces/datatypes.AWSCredentials.html +2 -2
- package/docs/interfaces/datatypes.AWSRole.html +1 -1
- package/docs/interfaces/datatypes.AbuseReport.html +9 -9
- package/docs/interfaces/datatypes.AbuseReportCreate.html +3 -3
- package/docs/interfaces/datatypes.AbuseReportHostname.html +2 -2
- package/docs/interfaces/datatypes.AgentIngress.html +49 -11
- package/docs/interfaces/datatypes.AgentIngressCertJob.html +224 -0
- package/docs/interfaces/datatypes.AgentIngressCertPolicy.html +186 -0
- package/docs/interfaces/datatypes.AgentIngressCertStatus.html +186 -0
- package/docs/interfaces/datatypes.AgentIngressCreate.html +24 -5
- package/docs/interfaces/datatypes.AgentIngressList.html +3 -3
- package/docs/interfaces/datatypes.AgentIngressUpdate.html +22 -3
- package/docs/interfaces/datatypes.ApplicationSession.html +357 -0
- package/docs/interfaces/datatypes.ApplicationSessionList.html +205 -0
- package/docs/interfaces/datatypes.ApplicationUser.html +338 -0
- package/docs/interfaces/datatypes.ApplicationUserList.html +205 -0
- package/docs/interfaces/datatypes.BrowserSession.html +205 -0
- package/docs/interfaces/datatypes.CertificateAuthority.html +16 -16
- package/docs/interfaces/datatypes.CertificateAuthorityCreate.html +5 -5
- package/docs/interfaces/datatypes.CertificateAuthorityList.html +3 -3
- package/docs/interfaces/datatypes.CertificateAuthorityUpdate.html +3 -3
- package/docs/interfaces/datatypes.Credential.html +30 -11
- package/docs/interfaces/datatypes.CredentialCreate.html +25 -6
- package/docs/interfaces/datatypes.CredentialList.html +3 -3
- package/docs/interfaces/datatypes.CredentialUpdate.html +5 -5
- package/docs/interfaces/datatypes.EdgeBackendReplace.html +2 -2
- package/docs/interfaces/datatypes.EdgeIPRestrictionReplace.html +2 -2
- package/docs/interfaces/datatypes.EdgeMutualTLSReplace.html +2 -2
- package/docs/interfaces/datatypes.EdgeRouteBackendReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteCircuitBreakerReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteCompressionReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteIPRestrictionReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteItem.html +2 -2
- package/docs/interfaces/datatypes.EdgeRouteOAuthReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteOIDCReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteRequestHeadersReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteResponseHeadersReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteSAMLReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteWebhookVerificationReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeRouteWebsocketTCPConverterReplace.html +3 -3
- package/docs/interfaces/datatypes.EdgeTLSTerminationAtEdgeReplace.html +2 -2
- package/docs/interfaces/datatypes.EdgeTLSTerminationReplace.html +2 -2
- package/docs/interfaces/datatypes.Endpoint.html +19 -19
- package/docs/interfaces/datatypes.EndpointBackend.html +2 -2
- package/docs/interfaces/datatypes.EndpointBackendMutate.html +2 -2
- package/docs/interfaces/datatypes.EndpointCircuitBreaker.html +6 -6
- package/docs/interfaces/datatypes.EndpointCompression.html +1 -1
- package/docs/interfaces/datatypes.EndpointIPPolicy.html +7 -2
- package/docs/interfaces/datatypes.EndpointIPPolicyMutate.html +2 -2
- package/docs/interfaces/datatypes.EndpointList.html +3 -3
- package/docs/interfaces/datatypes.EndpointMutualTLS.html +2 -2
- package/docs/interfaces/datatypes.EndpointMutualTLSMutate.html +2 -2
- package/docs/interfaces/datatypes.EndpointOAuth.html +7 -7
- package/docs/interfaces/datatypes.EndpointOAuthAmazon.html +218 -0
- package/docs/interfaces/datatypes.EndpointOAuthFacebook.html +5 -5
- package/docs/interfaces/datatypes.EndpointOAuthGitHub.html +12 -12
- package/docs/interfaces/datatypes.EndpointOAuthGitLab.html +218 -0
- package/docs/interfaces/datatypes.EndpointOAuthGoogle.html +5 -5
- package/docs/interfaces/datatypes.EndpointOAuthLinkedIn.html +218 -0
- package/docs/interfaces/datatypes.EndpointOAuthMicrosoft.html +5 -5
- package/docs/interfaces/datatypes.EndpointOAuthProvider.html +80 -4
- package/docs/interfaces/datatypes.EndpointOAuthTwitch.html +218 -0
- package/docs/interfaces/datatypes.EndpointOIDC.html +9 -9
- package/docs/interfaces/datatypes.EndpointRequestHeaders.html +3 -3
- package/docs/interfaces/datatypes.EndpointResponseHeaders.html +3 -3
- package/docs/interfaces/datatypes.EndpointSAML.html +15 -15
- package/docs/interfaces/datatypes.EndpointSAMLMutate.html +10 -10
- package/docs/interfaces/datatypes.EndpointTLSTermination.html +3 -3
- package/docs/interfaces/datatypes.EndpointTLSTerminationAtEdge.html +2 -2
- package/docs/interfaces/datatypes.EndpointWebhookValidation.html +4 -4
- package/docs/interfaces/datatypes.EndpointWebsocketTCPConverter.html +1 -1
- package/docs/interfaces/datatypes.Error.html +4 -4
- package/docs/interfaces/datatypes.EventDestination.html +10 -10
- package/docs/interfaces/datatypes.EventDestinationCreate.html +6 -6
- package/docs/interfaces/datatypes.EventDestinationList.html +3 -3
- package/docs/interfaces/datatypes.EventDestinationUpdate.html +5 -5
- package/docs/interfaces/datatypes.EventSource.html +2 -2
- package/docs/interfaces/datatypes.EventSourceCreate.html +2 -2
- package/docs/interfaces/datatypes.EventSourceItem.html +2 -2
- package/docs/interfaces/datatypes.EventSourceList.html +2 -2
- package/docs/interfaces/datatypes.EventSourcePaging.html +1 -1
- package/docs/interfaces/datatypes.EventSourceReplace.html +1 -1
- package/docs/interfaces/datatypes.EventSourceUpdate.html +2 -2
- package/docs/interfaces/datatypes.EventSubscription.html +10 -10
- package/docs/interfaces/datatypes.EventSubscriptionCreate.html +6 -6
- package/docs/interfaces/datatypes.EventSubscriptionList.html +3 -3
- package/docs/interfaces/datatypes.EventSubscriptionUpdate.html +5 -5
- package/docs/interfaces/datatypes.EventTarget.html +22 -3
- package/docs/interfaces/datatypes.EventTargetCloudwatchLogs.html +2 -2
- package/docs/interfaces/datatypes.EventTargetDatadog.html +224 -0
- package/docs/interfaces/datatypes.EventTargetFirehose.html +2 -2
- package/docs/interfaces/datatypes.EventTargetKinesis.html +2 -2
- package/docs/interfaces/datatypes.FailoverBackend.html +9 -9
- package/docs/interfaces/datatypes.FailoverBackendCreate.html +5 -5
- package/docs/interfaces/datatypes.FailoverBackendList.html +3 -3
- package/docs/interfaces/datatypes.FailoverBackendUpdate.html +4 -4
- package/docs/interfaces/datatypes.HTTPResponseBackend.html +11 -11
- package/docs/interfaces/datatypes.HTTPResponseBackendCreate.html +7 -7
- package/docs/interfaces/datatypes.HTTPResponseBackendList.html +3 -3
- package/docs/interfaces/datatypes.HTTPResponseBackendUpdate.html +6 -6
- package/docs/interfaces/datatypes.HTTPSEdge.html +12 -12
- package/docs/interfaces/datatypes.HTTPSEdgeCreate.html +7 -7
- package/docs/interfaces/datatypes.HTTPSEdgeList.html +3 -3
- package/docs/interfaces/datatypes.HTTPSEdgeRoute.html +22 -22
- package/docs/interfaces/datatypes.HTTPSEdgeRouteCreate.html +18 -18
- package/docs/interfaces/datatypes.HTTPSEdgeRouteUpdate.html +19 -19
- package/docs/interfaces/datatypes.HTTPSEdgeUpdate.html +6 -6
- package/docs/interfaces/datatypes.IPPolicy.html +8 -8
- package/docs/interfaces/datatypes.IPPolicyCreate.html +4 -4
- package/docs/interfaces/datatypes.IPPolicyList.html +3 -3
- package/docs/interfaces/datatypes.IPPolicyRule.html +11 -11
- package/docs/interfaces/datatypes.IPPolicyRuleCreate.html +7 -7
- package/docs/interfaces/datatypes.IPPolicyRuleList.html +3 -3
- package/docs/interfaces/datatypes.IPPolicyRuleUpdate.html +4 -4
- package/docs/interfaces/datatypes.IPPolicyUpdate.html +3 -3
- package/docs/interfaces/datatypes.IPRestriction.html +11 -11
- package/docs/interfaces/datatypes.IPRestrictionCreate.html +7 -7
- package/docs/interfaces/datatypes.IPRestrictionList.html +3 -3
- package/docs/interfaces/datatypes.IPRestrictionUpdate.html +5 -5
- package/docs/interfaces/datatypes.IdentityProvider.html +186 -0
- package/docs/interfaces/datatypes.Item.html +1 -1
- package/docs/interfaces/datatypes.Location.html +224 -0
- package/docs/interfaces/datatypes.Paging.html +2 -2
- package/docs/interfaces/datatypes.Ref.html +2 -2
- package/docs/interfaces/datatypes.ReservedAddr.html +10 -10
- package/docs/interfaces/datatypes.ReservedAddrCreate.html +5 -5
- package/docs/interfaces/datatypes.ReservedAddrList.html +3 -3
- package/docs/interfaces/datatypes.ReservedAddrUpdate.html +3 -3
- package/docs/interfaces/datatypes.ReservedDomain.html +15 -15
- package/docs/interfaces/datatypes.ReservedDomainCertJob.html +6 -6
- package/docs/interfaces/datatypes.ReservedDomainCertPolicy.html +2 -2
- package/docs/interfaces/datatypes.ReservedDomainCertStatus.html +3 -3
- package/docs/interfaces/datatypes.ReservedDomainCreate.html +18 -18
- package/docs/interfaces/datatypes.ReservedDomainList.html +3 -3
- package/docs/interfaces/datatypes.ReservedDomainUpdate.html +5 -5
- package/docs/interfaces/datatypes.SSHCertificateAuthority.html +10 -10
- package/docs/interfaces/datatypes.SSHCertificateAuthorityCreate.html +7 -7
- package/docs/interfaces/datatypes.SSHCertificateAuthorityList.html +3 -3
- package/docs/interfaces/datatypes.SSHCertificateAuthorityUpdate.html +3 -3
- package/docs/interfaces/datatypes.SSHCredential.html +30 -11
- package/docs/interfaces/datatypes.SSHCredentialCreate.html +26 -7
- package/docs/interfaces/datatypes.SSHCredentialList.html +3 -3
- package/docs/interfaces/datatypes.SSHCredentialUpdate.html +5 -5
- package/docs/interfaces/datatypes.SSHHostCertificate.html +17 -17
- package/docs/interfaces/datatypes.SSHHostCertificateCreate.html +11 -11
- package/docs/interfaces/datatypes.SSHHostCertificateList.html +3 -3
- package/docs/interfaces/datatypes.SSHHostCertificateUpdate.html +3 -3
- package/docs/interfaces/datatypes.SSHUserCertificate.html +19 -19
- package/docs/interfaces/datatypes.SSHUserCertificateCreate.html +13 -13
- package/docs/interfaces/datatypes.SSHUserCertificateList.html +3 -3
- package/docs/interfaces/datatypes.SSHUserCertificateUpdate.html +3 -3
- package/docs/interfaces/datatypes.TCPEdge.html +11 -11
- package/docs/interfaces/datatypes.TCPEdgeCreate.html +7 -7
- package/docs/interfaces/datatypes.TCPEdgeList.html +3 -3
- package/docs/interfaces/datatypes.TCPEdgeUpdate.html +6 -6
- package/docs/interfaces/datatypes.TLSCertificate.html +28 -28
- package/docs/interfaces/datatypes.TLSCertificateCreate.html +8 -8
- package/docs/interfaces/datatypes.TLSCertificateList.html +3 -3
- package/docs/interfaces/datatypes.TLSCertificateSANs.html +2 -2
- package/docs/interfaces/datatypes.TLSCertificateUpdate.html +3 -3
- package/docs/interfaces/datatypes.TLSEdge.html +13 -13
- package/docs/interfaces/datatypes.TLSEdgeCreate.html +9 -9
- package/docs/interfaces/datatypes.TLSEdgeList.html +3 -3
- package/docs/interfaces/datatypes.TLSEdgeUpdate.html +8 -8
- package/docs/interfaces/datatypes.Tunnel.html +17 -17
- package/docs/interfaces/datatypes.TunnelGroupBackend.html +10 -10
- package/docs/interfaces/datatypes.TunnelGroupBackendCreate.html +5 -5
- package/docs/interfaces/datatypes.TunnelGroupBackendList.html +3 -3
- package/docs/interfaces/datatypes.TunnelGroupBackendUpdate.html +4 -4
- package/docs/interfaces/datatypes.TunnelList.html +3 -3
- package/docs/interfaces/datatypes.TunnelSession.html +12 -12
- package/docs/interfaces/datatypes.TunnelSessionList.html +3 -3
- package/docs/interfaces/datatypes.TunnelSessionsUpdate.html +1 -1
- package/docs/interfaces/datatypes.UserAgent.html +262 -0
- package/docs/interfaces/datatypes.WeightedBackend.html +9 -9
- package/docs/interfaces/datatypes.WeightedBackendCreate.html +5 -5
- package/docs/interfaces/datatypes.WeightedBackendList.html +3 -3
- package/docs/interfaces/datatypes.WeightedBackendUpdate.html +4 -4
- package/docs/modules/datatypes.html +64 -0
- package/docs/modules/services.html +8 -0
- package/jest.config.js +2 -0
- package/lib/client.d.ts +9 -7
- package/lib/client.d.ts.map +1 -1
- package/lib/client.js +89 -119
- package/lib/client.js.map +1 -1
- package/lib/datatypes.d.ts +392 -201
- package/lib/datatypes.d.ts.map +1 -1
- package/lib/datatypes.js +4 -3
- package/lib/datatypes.js.map +1 -1
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +16 -28
- package/lib/index.js.map +1 -1
- package/lib/services.d.ts +164 -126
- package/lib/services.d.ts.map +1 -1
- package/lib/services.js +3294 -3356
- package/lib/services.js.map +1 -1
- package/lib/util.d.ts.map +1 -1
- package/lib/util.js +35 -34
- package/lib/util.js.map +1 -1
- package/package.json +3 -3
- package/src/client.ts +16 -32
- package/src/datatypes.ts +413 -204
- package/src/index.ts +2 -0
- package/src/services.ts +768 -519
- package/src/util.ts +2 -0
- package/test/apikey.test.js +62 -63
package/src/datatypes.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
// Code generated for API Clients. DO NOT EDIT.
|
|
2
|
+
|
|
1
3
|
export interface Empty {}
|
|
2
4
|
|
|
3
5
|
export interface Item {
|
|
@@ -30,11 +32,11 @@ export interface AbuseReport {
|
|
|
30
32
|
/** URI of the abuse report API resource */
|
|
31
33
|
uri: string;
|
|
32
34
|
/** timestamp that the abuse report record was created in RFC 3339 format */
|
|
33
|
-
createdAt:
|
|
35
|
+
createdAt: Date;
|
|
34
36
|
/** a list of URLs containing suspected abusive content */
|
|
35
37
|
urls: Array<string>;
|
|
36
38
|
/** arbitrary user-defined data about this abuse report. Optional, max 4096 bytes. */
|
|
37
|
-
metadata
|
|
39
|
+
metadata?: string;
|
|
38
40
|
/** Indicates whether ngrok has processed the abuse report. one of `PENDING`, `PROCESSED`, or `PARTIALLY_PROCESSED` */
|
|
39
41
|
status: string;
|
|
40
42
|
/** an array of hostname statuses related to the report */
|
|
@@ -52,16 +54,18 @@ export interface AbuseReportCreate {
|
|
|
52
54
|
/** a list of URLs containing suspected abusive content */
|
|
53
55
|
urls: Array<string>;
|
|
54
56
|
/** arbitrary user-defined data about this abuse report. Optional, max 4096 bytes. */
|
|
55
|
-
metadata
|
|
57
|
+
metadata?: string;
|
|
56
58
|
}
|
|
57
59
|
|
|
58
60
|
export interface AgentIngressCreate {
|
|
59
61
|
/** human-readable description of the use of this Agent Ingress. optional, max 255 bytes. */
|
|
60
|
-
description
|
|
62
|
+
description?: string;
|
|
61
63
|
/** arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes */
|
|
62
|
-
metadata
|
|
64
|
+
metadata?: string;
|
|
63
65
|
/** the domain that you own to be used as the base domain name to generate regional agent ingress domains. */
|
|
64
66
|
domain: string;
|
|
67
|
+
/** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional. */
|
|
68
|
+
certificateManagementPolicy?: AgentIngressCertPolicy;
|
|
65
69
|
}
|
|
66
70
|
|
|
67
71
|
export interface AgentIngressUpdate {
|
|
@@ -70,6 +74,8 @@ export interface AgentIngressUpdate {
|
|
|
70
74
|
description?: string;
|
|
71
75
|
/** arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes */
|
|
72
76
|
metadata?: string;
|
|
77
|
+
/** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional. */
|
|
78
|
+
certificateManagementPolicy?: AgentIngressCertPolicy;
|
|
73
79
|
}
|
|
74
80
|
|
|
75
81
|
export interface AgentIngress {
|
|
@@ -78,9 +84,9 @@ export interface AgentIngress {
|
|
|
78
84
|
/** URI to the API resource of this Agent ingress */
|
|
79
85
|
uri: string;
|
|
80
86
|
/** human-readable description of the use of this Agent Ingress. optional, max 255 bytes. */
|
|
81
|
-
description
|
|
87
|
+
description?: string;
|
|
82
88
|
/** arbitrary user-defined machine-readable data of this Agent Ingress. optional, max 4096 bytes */
|
|
83
|
-
metadata
|
|
89
|
+
metadata?: string;
|
|
84
90
|
/** the domain that you own to be used as the base domain name to generate regional agent ingress domains. */
|
|
85
91
|
domain: string;
|
|
86
92
|
/** a list of target values to use as the values of NS records for the domain property these values will delegate control over the domain to ngrok */
|
|
@@ -88,7 +94,11 @@ export interface AgentIngress {
|
|
|
88
94
|
/** a list of regional agent ingress domains that are subdomains of the value of domain this value may increase over time as ngrok adds more regions */
|
|
89
95
|
regionDomains: Array<string>;
|
|
90
96
|
/** timestamp when the Agent Ingress was created, RFC 3339 format */
|
|
91
|
-
createdAt:
|
|
97
|
+
createdAt: Date;
|
|
98
|
+
/** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled */
|
|
99
|
+
certificateManagementPolicy?: AgentIngressCertPolicy;
|
|
100
|
+
/** status of the automatic certificate management for this domain, or null if automatic management is disabled */
|
|
101
|
+
certificateManagementStatus?: AgentIngressCertStatus;
|
|
92
102
|
}
|
|
93
103
|
|
|
94
104
|
export interface AgentIngressList {
|
|
@@ -100,11 +110,38 @@ export interface AgentIngressList {
|
|
|
100
110
|
nextPageUri?: string;
|
|
101
111
|
}
|
|
102
112
|
|
|
113
|
+
export interface AgentIngressCertPolicy {
|
|
114
|
+
/** certificate authority to request certificates from. The only supported value is letsencrypt. */
|
|
115
|
+
authority: string;
|
|
116
|
+
/** type of private key to use when requesting certificates. Defaults to rsa, can be either rsa or ecdsa. */
|
|
117
|
+
privateKeyType: string;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
export interface AgentIngressCertStatus {
|
|
121
|
+
/** timestamp when the next renewal will be requested, RFC 3339 format */
|
|
122
|
+
renewsAt?: Date;
|
|
123
|
+
/** status of the certificate provisioning job, or null if the certificiate isn't being provisioned or renewed */
|
|
124
|
+
provisioningJob?: AgentIngressCertJob;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export interface AgentIngressCertJob {
|
|
128
|
+
/** if present, an error code indicating why provisioning is failing. It may be either a temporary condition (INTERNAL_ERROR), or a permanent one the user must correct (DNS_ERROR). */
|
|
129
|
+
errorCode?: string;
|
|
130
|
+
/** a message describing the current status or error */
|
|
131
|
+
msg: string;
|
|
132
|
+
/** timestamp when the provisioning job started, RFC 3339 format */
|
|
133
|
+
startedAt: Date;
|
|
134
|
+
/** timestamp when the provisioning job will be retried */
|
|
135
|
+
retriesAt?: Date;
|
|
136
|
+
}
|
|
137
|
+
|
|
103
138
|
export interface APIKeyCreate {
|
|
104
139
|
/** human-readable description of what uses the API key to authenticate. optional, max 255 bytes. */
|
|
105
|
-
description
|
|
140
|
+
description?: string;
|
|
106
141
|
/** arbitrary user-defined data of this API key. optional, max 4096 bytes */
|
|
107
|
-
metadata
|
|
142
|
+
metadata?: string;
|
|
143
|
+
/** If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. */
|
|
144
|
+
ownerId?: string;
|
|
108
145
|
}
|
|
109
146
|
|
|
110
147
|
export interface APIKeyUpdate {
|
|
@@ -121,13 +158,15 @@ export interface APIKey {
|
|
|
121
158
|
/** URI to the API resource of this API key */
|
|
122
159
|
uri: string;
|
|
123
160
|
/** human-readable description of what uses the API key to authenticate. optional, max 255 bytes. */
|
|
124
|
-
description
|
|
161
|
+
description?: string;
|
|
125
162
|
/** arbitrary user-defined data of this API key. optional, max 4096 bytes */
|
|
126
|
-
metadata
|
|
163
|
+
metadata?: string;
|
|
127
164
|
/** timestamp when the api key was created, RFC 3339 format */
|
|
128
|
-
createdAt:
|
|
165
|
+
createdAt: Date;
|
|
129
166
|
/** the bearer token that can be placed into the Authorization header to authenticate request to the ngrok API. **This value is only available one time, on the API response from key creation. Otherwise it is null.** */
|
|
130
167
|
token?: string;
|
|
168
|
+
/** If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. */
|
|
169
|
+
ownerId?: string;
|
|
131
170
|
}
|
|
132
171
|
|
|
133
172
|
export interface APIKeyList {
|
|
@@ -139,26 +178,170 @@ export interface APIKeyList {
|
|
|
139
178
|
nextPageUri?: string;
|
|
140
179
|
}
|
|
141
180
|
|
|
181
|
+
export interface ApplicationSession {
|
|
182
|
+
/** unique application session resource identifier */
|
|
183
|
+
id: string;
|
|
184
|
+
/** URI of the application session API resource */
|
|
185
|
+
uri: string;
|
|
186
|
+
/** URL of the hostport served by this endpoint */
|
|
187
|
+
publicUrl: string;
|
|
188
|
+
/** browser session details of the application session */
|
|
189
|
+
browserSession: BrowserSession;
|
|
190
|
+
/** application user this session is associated with */
|
|
191
|
+
applicationUser?: Ref;
|
|
192
|
+
/** timestamp when the user was created in RFC 3339 format */
|
|
193
|
+
createdAt?: Date;
|
|
194
|
+
/** timestamp when the user was last active in RFC 3339 format */
|
|
195
|
+
lastActive?: Date;
|
|
196
|
+
/** timestamp when session expires in RFC 3339 format */
|
|
197
|
+
expiresAt?: Date;
|
|
198
|
+
/** ephemeral endpoint this session is associated with */
|
|
199
|
+
endpoint?: Ref;
|
|
200
|
+
/** edge this session is associated with, null if the endpoint is agent-initiated */
|
|
201
|
+
edge?: Ref;
|
|
202
|
+
/** route this session is associated with, null if the endpoint is agent-initiated */
|
|
203
|
+
route?: Ref;
|
|
204
|
+
}
|
|
205
|
+
|
|
206
|
+
export interface ApplicationSessionList {
|
|
207
|
+
/** list of all application sessions on this account */
|
|
208
|
+
applicationSessions: Array<ApplicationSession>;
|
|
209
|
+
/** URI of the application session list API resource */
|
|
210
|
+
uri: string;
|
|
211
|
+
/** URI of the next page, or null if there is no next page */
|
|
212
|
+
nextPageUri?: string;
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
export interface BrowserSession {
|
|
216
|
+
/** HTTP User-Agent data */
|
|
217
|
+
userAgent: UserAgent;
|
|
218
|
+
/** IP address */
|
|
219
|
+
ipAddress: string;
|
|
220
|
+
/** IP geolocation data */
|
|
221
|
+
location?: Location;
|
|
222
|
+
}
|
|
223
|
+
|
|
224
|
+
export interface UserAgent {
|
|
225
|
+
/** raw User-Agent request header */
|
|
226
|
+
raw: string;
|
|
227
|
+
/** browser name (e.g. Chrome) */
|
|
228
|
+
browserName?: string;
|
|
229
|
+
/** browser version (e.g. 102) */
|
|
230
|
+
browserVersion?: string;
|
|
231
|
+
/** type of device (e.g. Desktop) */
|
|
232
|
+
deviceType?: string;
|
|
233
|
+
/** operating system name (e.g. MacOS) */
|
|
234
|
+
osName?: string;
|
|
235
|
+
/** operating system version (e.g. 10.15.7) */
|
|
236
|
+
osVersion?: string;
|
|
237
|
+
}
|
|
238
|
+
|
|
239
|
+
export interface Location {
|
|
240
|
+
/** ISO country code */
|
|
241
|
+
countryCode?: string;
|
|
242
|
+
/** geographical latitude */
|
|
243
|
+
latitude?: number;
|
|
244
|
+
/** geographical longitude */
|
|
245
|
+
longitude?: number;
|
|
246
|
+
/** accuracy radius of the geographical coordinates */
|
|
247
|
+
latLongRadiusKm?: number;
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
export interface ApplicationUser {
|
|
251
|
+
/** unique application user resource identifier */
|
|
252
|
+
id: string;
|
|
253
|
+
/** URI of the application user API resource */
|
|
254
|
+
uri: string;
|
|
255
|
+
/** identity provider that the user authenticated with */
|
|
256
|
+
identityProvider: IdentityProvider;
|
|
257
|
+
/** unique user identifier */
|
|
258
|
+
providerUserId: string;
|
|
259
|
+
/** user username */
|
|
260
|
+
username?: string;
|
|
261
|
+
/** user email */
|
|
262
|
+
email?: string;
|
|
263
|
+
/** user common name */
|
|
264
|
+
name?: string;
|
|
265
|
+
/** timestamp when the user was created in RFC 3339 format */
|
|
266
|
+
createdAt?: Date;
|
|
267
|
+
/** timestamp when the user was last active in RFC 3339 format */
|
|
268
|
+
lastActive?: Date;
|
|
269
|
+
/** timestamp when the user last signed-in in RFC 3339 format */
|
|
270
|
+
lastLogin?: Date;
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
export interface ApplicationUserList {
|
|
274
|
+
/** list of all application users on this account */
|
|
275
|
+
applicationUsers: Array<ApplicationUser>;
|
|
276
|
+
/** URI of the application user list API resource */
|
|
277
|
+
uri: string;
|
|
278
|
+
/** URI of the next page, or null if there is no next page */
|
|
279
|
+
nextPageUri?: string;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
export interface IdentityProvider {
|
|
283
|
+
/** name of the identity provider (e.g. Google) */
|
|
284
|
+
name: string;
|
|
285
|
+
/** URL of the identity provider (e.g. https://accounts.google.com) */
|
|
286
|
+
url: string;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
export interface TunnelSession {
|
|
290
|
+
/** version of the ngrok agent that started this ngrok tunnel session */
|
|
291
|
+
agentVersion: string;
|
|
292
|
+
/** reference to the tunnel credential or ssh credential used by the ngrok agent to start this tunnel session */
|
|
293
|
+
credential: Ref;
|
|
294
|
+
/** unique tunnel session resource identifier */
|
|
295
|
+
id: string;
|
|
296
|
+
/** source ip address of the tunnel session */
|
|
297
|
+
ip: string;
|
|
298
|
+
/** arbitrary user-defined data specified in the metadata property in the ngrok configuration file. See the metadata configuration option */
|
|
299
|
+
metadata?: string;
|
|
300
|
+
/** operating system of the host the ngrok agent is running on */
|
|
301
|
+
os: string;
|
|
302
|
+
/** the ngrok region identifier in which this tunnel session was started */
|
|
303
|
+
region: string;
|
|
304
|
+
/** time when the tunnel session first connected to the ngrok servers */
|
|
305
|
+
startedAt: Date;
|
|
306
|
+
/** the transport protocol used to start the tunnel session. Either `ngrok/v2` or `ssh` */
|
|
307
|
+
transport: string;
|
|
308
|
+
/** URI to the API resource of the tunnel session */
|
|
309
|
+
uri: string;
|
|
310
|
+
}
|
|
311
|
+
|
|
312
|
+
export interface TunnelSessionList {
|
|
313
|
+
/** list of all tunnel sessions on this account */
|
|
314
|
+
tunnelSessions: Array<TunnelSession>;
|
|
315
|
+
/** URI to the API resource of the tunnel session list */
|
|
316
|
+
uri: string;
|
|
317
|
+
/** URI of the next page, or null if there is no next page */
|
|
318
|
+
nextPageUri?: string;
|
|
319
|
+
}
|
|
320
|
+
|
|
321
|
+
export interface TunnelSessionsUpdate {
|
|
322
|
+
id: string;
|
|
323
|
+
}
|
|
324
|
+
|
|
142
325
|
export interface FailoverBackend {
|
|
143
326
|
/** unique identifier for this Failover backend */
|
|
144
327
|
id: string;
|
|
145
328
|
/** URI of the FailoverBackend API resource */
|
|
146
329
|
uri: string;
|
|
147
330
|
/** timestamp when the backend was created, RFC 3339 format */
|
|
148
|
-
createdAt:
|
|
331
|
+
createdAt: Date;
|
|
149
332
|
/** human-readable description of this backend. Optional */
|
|
150
|
-
description
|
|
333
|
+
description?: string;
|
|
151
334
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
152
|
-
metadata
|
|
335
|
+
metadata?: string;
|
|
153
336
|
/** the ids of the child backends in order */
|
|
154
337
|
backends: Array<string>;
|
|
155
338
|
}
|
|
156
339
|
|
|
157
340
|
export interface FailoverBackendCreate {
|
|
158
341
|
/** human-readable description of this backend. Optional */
|
|
159
|
-
description
|
|
342
|
+
description?: string;
|
|
160
343
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
161
|
-
metadata
|
|
344
|
+
metadata?: string;
|
|
162
345
|
/** the ids of the child backends in order */
|
|
163
346
|
backends: Array<string>;
|
|
164
347
|
}
|
|
@@ -187,11 +370,11 @@ export interface HTTPResponseBackend {
|
|
|
187
370
|
/** URI of the HTTPResponseBackend API resource */
|
|
188
371
|
uri: string;
|
|
189
372
|
/** timestamp when the backend was created, RFC 3339 format */
|
|
190
|
-
createdAt:
|
|
373
|
+
createdAt: Date;
|
|
191
374
|
/** human-readable description of this backend. Optional */
|
|
192
|
-
description
|
|
375
|
+
description?: string;
|
|
193
376
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
194
|
-
metadata
|
|
377
|
+
metadata?: string;
|
|
195
378
|
/** body to return as fixed content */
|
|
196
379
|
body: string;
|
|
197
380
|
/** headers to return */
|
|
@@ -202,9 +385,9 @@ export interface HTTPResponseBackend {
|
|
|
202
385
|
|
|
203
386
|
export interface HTTPResponseBackendCreate {
|
|
204
387
|
/** human-readable description of this backend. Optional */
|
|
205
|
-
description
|
|
388
|
+
description?: string;
|
|
206
389
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
207
|
-
metadata
|
|
390
|
+
metadata?: string;
|
|
208
391
|
/** body to return as fixed content */
|
|
209
392
|
body: string;
|
|
210
393
|
/** headers to return */
|
|
@@ -239,11 +422,11 @@ export interface TunnelGroupBackend {
|
|
|
239
422
|
/** URI of the TunnelGroupBackend API resource */
|
|
240
423
|
uri: string;
|
|
241
424
|
/** timestamp when the backend was created, RFC 3339 format */
|
|
242
|
-
createdAt:
|
|
425
|
+
createdAt: Date;
|
|
243
426
|
/** human-readable description of this backend. Optional */
|
|
244
|
-
description
|
|
427
|
+
description?: string;
|
|
245
428
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
246
|
-
metadata
|
|
429
|
+
metadata?: string;
|
|
247
430
|
/** labels to watch for tunnels on, e.g. app->foo, dc->bar */
|
|
248
431
|
labels: Map<string, string>;
|
|
249
432
|
/** tunnels matching this backend */
|
|
@@ -252,9 +435,9 @@ export interface TunnelGroupBackend {
|
|
|
252
435
|
|
|
253
436
|
export interface TunnelGroupBackendCreate {
|
|
254
437
|
/** human-readable description of this backend. Optional */
|
|
255
|
-
description
|
|
438
|
+
description?: string;
|
|
256
439
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
257
|
-
metadata
|
|
440
|
+
metadata?: string;
|
|
258
441
|
/** labels to watch for tunnels on, e.g. app->foo, dc->bar */
|
|
259
442
|
labels: Map<string, string>;
|
|
260
443
|
}
|
|
@@ -284,20 +467,20 @@ export interface WeightedBackend {
|
|
|
284
467
|
/** URI of the WeightedBackend API resource */
|
|
285
468
|
uri: string;
|
|
286
469
|
/** timestamp when the backend was created, RFC 3339 format */
|
|
287
|
-
createdAt:
|
|
470
|
+
createdAt: Date;
|
|
288
471
|
/** human-readable description of this backend. Optional */
|
|
289
|
-
description
|
|
472
|
+
description?: string;
|
|
290
473
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
291
|
-
metadata
|
|
474
|
+
metadata?: string;
|
|
292
475
|
/** the ids of the child backends to their weights [0-10000] */
|
|
293
476
|
backends: Map<string, number>;
|
|
294
477
|
}
|
|
295
478
|
|
|
296
479
|
export interface WeightedBackendCreate {
|
|
297
480
|
/** human-readable description of this backend. Optional */
|
|
298
|
-
description
|
|
481
|
+
description?: string;
|
|
299
482
|
/** arbitrary user-defined machine-readable data of this backend. Optional */
|
|
300
|
-
metadata
|
|
483
|
+
metadata?: string;
|
|
301
484
|
/** the ids of the child backends to their weights [0-10000] */
|
|
302
485
|
backends: Map<string, number>;
|
|
303
486
|
}
|
|
@@ -323,9 +506,9 @@ export interface WeightedBackendList {
|
|
|
323
506
|
|
|
324
507
|
export interface CertificateAuthorityCreate {
|
|
325
508
|
/** human-readable description of this Certificate Authority. optional, max 255 bytes. */
|
|
326
|
-
description
|
|
509
|
+
description?: string;
|
|
327
510
|
/** arbitrary user-defined machine-readable data of this Certificate Authority. optional, max 4096 bytes. */
|
|
328
|
-
metadata
|
|
511
|
+
metadata?: string;
|
|
329
512
|
/** raw PEM of the Certificate Authority */
|
|
330
513
|
caPem: string;
|
|
331
514
|
}
|
|
@@ -344,19 +527,19 @@ export interface CertificateAuthority {
|
|
|
344
527
|
/** URI of the Certificate Authority API resource */
|
|
345
528
|
uri: string;
|
|
346
529
|
/** timestamp when the Certificate Authority was created, RFC 3339 format */
|
|
347
|
-
createdAt:
|
|
530
|
+
createdAt: Date;
|
|
348
531
|
/** human-readable description of this Certificate Authority. optional, max 255 bytes. */
|
|
349
|
-
description
|
|
532
|
+
description?: string;
|
|
350
533
|
/** arbitrary user-defined machine-readable data of this Certificate Authority. optional, max 4096 bytes. */
|
|
351
|
-
metadata
|
|
534
|
+
metadata?: string;
|
|
352
535
|
/** raw PEM of the Certificate Authority */
|
|
353
536
|
caPem: string;
|
|
354
537
|
/** subject common name of the Certificate Authority */
|
|
355
538
|
subjectCommonName: string;
|
|
356
539
|
/** timestamp when this Certificate Authority becomes valid, RFC 3339 format */
|
|
357
|
-
notBefore:
|
|
540
|
+
notBefore: Date;
|
|
358
541
|
/** timestamp when this Certificate Authority becomes invalid, RFC 3339 format */
|
|
359
|
-
notAfter:
|
|
542
|
+
notAfter: Date;
|
|
360
543
|
/** set of actions the private key of this Certificate Authority can be used for */
|
|
361
544
|
keyUsages: Array<string>;
|
|
362
545
|
/** extended set of actions the private key of this Certificate Authority can be used for */
|
|
@@ -374,11 +557,13 @@ export interface CertificateAuthorityList {
|
|
|
374
557
|
|
|
375
558
|
export interface CredentialCreate {
|
|
376
559
|
/** human-readable description of who or what will use the credential to authenticate. Optional, max 255 bytes. */
|
|
377
|
-
description
|
|
560
|
+
description?: string;
|
|
378
561
|
/** arbitrary user-defined machine-readable data of this credential. Optional, max 4096 bytes. */
|
|
379
|
-
metadata
|
|
380
|
-
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains and
|
|
562
|
+
metadata?: string;
|
|
563
|
+
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule `bind:example.ngrok.io`. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of `bind:*.example.com` which will allow `x.example.com`, `y.example.com`, `*.example.com`, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of `bind:*=example` which will allow `x=example`, `y=example`, etc. A rule of `'*'` is equivalent to no acl at all and will explicitly permit all actions. */
|
|
381
564
|
acl: Array<string>;
|
|
565
|
+
/** If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. */
|
|
566
|
+
ownerId?: string;
|
|
382
567
|
}
|
|
383
568
|
|
|
384
569
|
export interface CredentialUpdate {
|
|
@@ -387,7 +572,7 @@ export interface CredentialUpdate {
|
|
|
387
572
|
description?: string;
|
|
388
573
|
/** arbitrary user-defined machine-readable data of this credential. Optional, max 4096 bytes. */
|
|
389
574
|
metadata?: string;
|
|
390
|
-
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains and
|
|
575
|
+
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule `bind:example.ngrok.io`. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of `bind:*.example.com` which will allow `x.example.com`, `y.example.com`, `*.example.com`, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of `bind:*=example` which will allow `x=example`, `y=example`, etc. A rule of `'*'` is equivalent to no acl at all and will explicitly permit all actions. */
|
|
391
576
|
acl?: Array<string>;
|
|
392
577
|
}
|
|
393
578
|
|
|
@@ -397,15 +582,17 @@ export interface Credential {
|
|
|
397
582
|
/** URI of the tunnel credential API resource */
|
|
398
583
|
uri: string;
|
|
399
584
|
/** timestamp when the tunnel credential was created, RFC 3339 format */
|
|
400
|
-
createdAt:
|
|
585
|
+
createdAt: Date;
|
|
401
586
|
/** human-readable description of who or what will use the credential to authenticate. Optional, max 255 bytes. */
|
|
402
|
-
description
|
|
587
|
+
description?: string;
|
|
403
588
|
/** arbitrary user-defined machine-readable data of this credential. Optional, max 4096 bytes. */
|
|
404
|
-
metadata
|
|
589
|
+
metadata?: string;
|
|
405
590
|
/** the credential's authtoken that can be used to authenticate an ngrok agent. **This value is only available one time, on the API response from credential creation, otherwise it is null.** */
|
|
406
591
|
token?: string;
|
|
407
|
-
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains and
|
|
592
|
+
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule `bind:example.ngrok.io`. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of `bind:*.example.com` which will allow `x.example.com`, `y.example.com`, `*.example.com`, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of `bind:*=example` which will allow `x=example`, `y=example`, etc. A rule of `'*'` is equivalent to no acl at all and will explicitly permit all actions. */
|
|
408
593
|
acl: Array<string>;
|
|
594
|
+
/** If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. */
|
|
595
|
+
ownerId?: string;
|
|
409
596
|
}
|
|
410
597
|
|
|
411
598
|
export interface CredentialList {
|
|
@@ -420,7 +607,7 @@ export interface CredentialList {
|
|
|
420
607
|
export interface EndpointWebhookValidation {
|
|
421
608
|
/** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
|
|
422
609
|
enabled?: boolean;
|
|
423
|
-
/** a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers
|
|
610
|
+
/** a string indicating which webhook provider will be sending webhooks to this endpoint. Value must be one of the supported providers defined at https://ngrok.com/docs/cloud-edge/modules/webhook */
|
|
424
611
|
provider: string;
|
|
425
612
|
/** a string secret used to validate requests from the given provider. All providers except AWS SNS require a secret */
|
|
426
613
|
secret: string;
|
|
@@ -482,6 +669,7 @@ export interface EndpointResponseHeaders {
|
|
|
482
669
|
export interface EndpointIPPolicy {
|
|
483
670
|
/** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
|
|
484
671
|
enabled?: boolean;
|
|
672
|
+
/** list of all IP policies that will be used to check if a source IP is allowed access to the endpoint */
|
|
485
673
|
ipPolicies: Array<Ref>;
|
|
486
674
|
}
|
|
487
675
|
|
|
@@ -533,6 +721,14 @@ export interface EndpointOAuthProvider {
|
|
|
533
721
|
microsoft?: EndpointOAuthMicrosoft;
|
|
534
722
|
/** configuration for using google as the identity provider */
|
|
535
723
|
google?: EndpointOAuthGoogle;
|
|
724
|
+
/** configuration for using linkedin as the identity provider */
|
|
725
|
+
linkedin?: EndpointOAuthLinkedIn;
|
|
726
|
+
/** configuration for using gitlab as the identity provider */
|
|
727
|
+
gitlab?: EndpointOAuthGitLab;
|
|
728
|
+
/** configuration for using twitch as the identity provider */
|
|
729
|
+
twitch?: EndpointOAuthTwitch;
|
|
730
|
+
/** configuration for using amazon as the identity provider */
|
|
731
|
+
amazon?: EndpointOAuthAmazon;
|
|
536
732
|
}
|
|
537
733
|
|
|
538
734
|
export interface EndpointOAuthGitHub {
|
|
@@ -541,15 +737,15 @@ export interface EndpointOAuthGitHub {
|
|
|
541
737
|
/** the OAuth app client secret. retrieve if from the identity provider's dashboard where you created your own OAuth app. optional, see all of the caveats in the docs for `client_id`. */
|
|
542
738
|
clientSecret?: string;
|
|
543
739
|
/** a list of provider-specific OAuth scopes with the permissions your OAuth app would like to ask for. these may not be set if you are using the ngrok-managed oauth app (i.e. you must pass both `client_id` and `client_secret` to set scopes) */
|
|
544
|
-
scopes
|
|
740
|
+
scopes?: Array<string>;
|
|
545
741
|
/** a list of email addresses of users authenticated by identity provider who are allowed access to the endpoint */
|
|
546
|
-
emailAddresses
|
|
742
|
+
emailAddresses?: Array<string>;
|
|
547
743
|
/** a list of email domains of users authenticated by identity provider who are allowed access to the endpoint */
|
|
548
|
-
emailDomains
|
|
744
|
+
emailDomains?: Array<string>;
|
|
549
745
|
/** a list of github teams identifiers. users will be allowed access to the endpoint if they are a member of any of these teams. identifiers should be in the 'slug' format qualified with the org name, e.g. `org-name/team-name` */
|
|
550
|
-
teams
|
|
746
|
+
teams?: Array<string>;
|
|
551
747
|
/** a list of github org identifiers. users who are members of any of the listed organizations will be allowed access. identifiers should be the organization's 'slug' */
|
|
552
|
-
organizations
|
|
748
|
+
organizations?: Array<string>;
|
|
553
749
|
}
|
|
554
750
|
|
|
555
751
|
export interface EndpointOAuthFacebook {
|
|
@@ -591,6 +787,38 @@ export interface EndpointOAuthGoogle {
|
|
|
591
787
|
emailDomains: Array<string>;
|
|
592
788
|
}
|
|
593
789
|
|
|
790
|
+
export interface EndpointOAuthLinkedIn {
|
|
791
|
+
clientId?: string;
|
|
792
|
+
clientSecret?: string;
|
|
793
|
+
scopes: Array<string>;
|
|
794
|
+
emailAddresses: Array<string>;
|
|
795
|
+
emailDomains: Array<string>;
|
|
796
|
+
}
|
|
797
|
+
|
|
798
|
+
export interface EndpointOAuthGitLab {
|
|
799
|
+
clientId?: string;
|
|
800
|
+
clientSecret?: string;
|
|
801
|
+
scopes: Array<string>;
|
|
802
|
+
emailAddresses: Array<string>;
|
|
803
|
+
emailDomains: Array<string>;
|
|
804
|
+
}
|
|
805
|
+
|
|
806
|
+
export interface EndpointOAuthTwitch {
|
|
807
|
+
clientId?: string;
|
|
808
|
+
clientSecret?: string;
|
|
809
|
+
scopes: Array<string>;
|
|
810
|
+
emailAddresses: Array<string>;
|
|
811
|
+
emailDomains: Array<string>;
|
|
812
|
+
}
|
|
813
|
+
|
|
814
|
+
export interface EndpointOAuthAmazon {
|
|
815
|
+
clientId?: string;
|
|
816
|
+
clientSecret?: string;
|
|
817
|
+
scopes: Array<string>;
|
|
818
|
+
emailAddresses: Array<string>;
|
|
819
|
+
emailDomains: Array<string>;
|
|
820
|
+
}
|
|
821
|
+
|
|
594
822
|
export interface EndpointSAML {
|
|
595
823
|
/** `true` if the module will be applied to traffic, `false` to disable. default `true` if unspecified */
|
|
596
824
|
enabled?: boolean;
|
|
@@ -702,9 +930,9 @@ export interface HTTPSEdgeRouteCreate {
|
|
|
702
930
|
/** Route selector: "/blog" or "example.com" or "example.com/blog" */
|
|
703
931
|
match: string;
|
|
704
932
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
705
|
-
description
|
|
933
|
+
description?: string;
|
|
706
934
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
707
|
-
metadata
|
|
935
|
+
metadata?: string;
|
|
708
936
|
/** backend module configuration or `null` */
|
|
709
937
|
backend?: EndpointBackendMutate;
|
|
710
938
|
/** ip restriction module configuration or `null` */
|
|
@@ -739,9 +967,9 @@ export interface HTTPSEdgeRouteUpdate {
|
|
|
739
967
|
/** Route selector: "/blog" or "example.com" or "example.com/blog" */
|
|
740
968
|
match: string;
|
|
741
969
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
742
|
-
description
|
|
970
|
+
description?: string;
|
|
743
971
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
744
|
-
metadata
|
|
972
|
+
metadata?: string;
|
|
745
973
|
/** backend module configuration or `null` */
|
|
746
974
|
backend?: EndpointBackendMutate;
|
|
747
975
|
/** ip restriction module configuration or `null` */
|
|
@@ -772,7 +1000,7 @@ export interface HTTPSEdgeRoute {
|
|
|
772
1000
|
/** unique identifier of this edge route */
|
|
773
1001
|
id: string;
|
|
774
1002
|
/** timestamp when the edge configuration was created, RFC 3339 format */
|
|
775
|
-
createdAt:
|
|
1003
|
+
createdAt: Date;
|
|
776
1004
|
/** Type of match to use for this route. Valid values are "exact_path" and "path_prefix". */
|
|
777
1005
|
matchType: string;
|
|
778
1006
|
/** Route selector: "/blog" or "example.com" or "example.com/blog" */
|
|
@@ -780,9 +1008,9 @@ export interface HTTPSEdgeRoute {
|
|
|
780
1008
|
/** URI of the edge API resource */
|
|
781
1009
|
uri: string;
|
|
782
1010
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
783
|
-
description
|
|
1011
|
+
description?: string;
|
|
784
1012
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
785
|
-
metadata
|
|
1013
|
+
metadata?: string;
|
|
786
1014
|
/** backend module configuration or `null` */
|
|
787
1015
|
backend?: EndpointBackend;
|
|
788
1016
|
/** ip restriction module configuration or `null` */
|
|
@@ -818,9 +1046,9 @@ export interface HTTPSEdgeList {
|
|
|
818
1046
|
|
|
819
1047
|
export interface HTTPSEdgeCreate {
|
|
820
1048
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
821
|
-
description
|
|
1049
|
+
description?: string;
|
|
822
1050
|
/** arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. */
|
|
823
|
-
metadata
|
|
1051
|
+
metadata?: string;
|
|
824
1052
|
/** hostports served by this edge */
|
|
825
1053
|
hostports?: Array<string>;
|
|
826
1054
|
/** edge modules */
|
|
@@ -846,11 +1074,11 @@ export interface HTTPSEdge {
|
|
|
846
1074
|
/** unique identifier of this edge */
|
|
847
1075
|
id: string;
|
|
848
1076
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
849
|
-
description
|
|
1077
|
+
description?: string;
|
|
850
1078
|
/** arbitrary user-defined machine-readable data of this edge; optional, max 4096 bytes. */
|
|
851
|
-
metadata
|
|
1079
|
+
metadata?: string;
|
|
852
1080
|
/** timestamp when the edge configuration was created, RFC 3339 format */
|
|
853
|
-
createdAt:
|
|
1081
|
+
createdAt: Date;
|
|
854
1082
|
/** URI of the edge API resource */
|
|
855
1083
|
uri: string;
|
|
856
1084
|
/** hostports served by this edge */
|
|
@@ -964,9 +1192,9 @@ export interface TCPEdgeList {
|
|
|
964
1192
|
|
|
965
1193
|
export interface TCPEdgeCreate {
|
|
966
1194
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
967
|
-
description
|
|
1195
|
+
description?: string;
|
|
968
1196
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
969
|
-
metadata
|
|
1197
|
+
metadata?: string;
|
|
970
1198
|
/** hostports served by this edge */
|
|
971
1199
|
hostports?: Array<string>;
|
|
972
1200
|
/** edge modules */
|
|
@@ -992,11 +1220,11 @@ export interface TCPEdge {
|
|
|
992
1220
|
/** unique identifier of this edge */
|
|
993
1221
|
id: string;
|
|
994
1222
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
995
|
-
description
|
|
1223
|
+
description?: string;
|
|
996
1224
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
997
|
-
metadata
|
|
1225
|
+
metadata?: string;
|
|
998
1226
|
/** timestamp when the edge was created, RFC 3339 format */
|
|
999
|
-
createdAt:
|
|
1227
|
+
createdAt: Date;
|
|
1000
1228
|
/** URI of the edge API resource */
|
|
1001
1229
|
uri: string;
|
|
1002
1230
|
/** hostports served by this edge */
|
|
@@ -1017,9 +1245,9 @@ export interface TLSEdgeList {
|
|
|
1017
1245
|
|
|
1018
1246
|
export interface TLSEdgeCreate {
|
|
1019
1247
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
1020
|
-
description
|
|
1248
|
+
description?: string;
|
|
1021
1249
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
1022
|
-
metadata
|
|
1250
|
+
metadata?: string;
|
|
1023
1251
|
/** hostports served by this edge */
|
|
1024
1252
|
hostports?: Array<string>;
|
|
1025
1253
|
/** edge modules */
|
|
@@ -1049,11 +1277,11 @@ export interface TLSEdge {
|
|
|
1049
1277
|
/** unique identifier of this edge */
|
|
1050
1278
|
id: string;
|
|
1051
1279
|
/** human-readable description of what this edge will be used for; optional, max 255 bytes. */
|
|
1052
|
-
description
|
|
1280
|
+
description?: string;
|
|
1053
1281
|
/** arbitrary user-defined machine-readable data of this edge. Optional, max 4096 bytes. */
|
|
1054
|
-
metadata
|
|
1282
|
+
metadata?: string;
|
|
1055
1283
|
/** timestamp when the edge configuration was created, RFC 3339 format */
|
|
1056
|
-
createdAt:
|
|
1284
|
+
createdAt: Date;
|
|
1057
1285
|
/** URI of the edge API resource */
|
|
1058
1286
|
uri: string;
|
|
1059
1287
|
/** hostports served by this edge */
|
|
@@ -1069,11 +1297,11 @@ export interface Endpoint {
|
|
|
1069
1297
|
/** unique endpoint resource identifier */
|
|
1070
1298
|
id: string;
|
|
1071
1299
|
/** identifier of the region this endpoint belongs to */
|
|
1072
|
-
region
|
|
1300
|
+
region?: string;
|
|
1073
1301
|
/** timestamp when the endpoint was created in RFC 3339 format */
|
|
1074
|
-
createdAt
|
|
1302
|
+
createdAt?: Date;
|
|
1075
1303
|
/** timestamp when the endpoint was updated in RFC 3339 format */
|
|
1076
|
-
updatedAt
|
|
1304
|
+
updatedAt?: Date;
|
|
1077
1305
|
/** URL of the hostport served by this endpoint */
|
|
1078
1306
|
publicUrl: string;
|
|
1079
1307
|
/** protocol served by this endpoint. one of `http`, `https`, `tcp`, or `tls` */
|
|
@@ -1083,7 +1311,7 @@ export interface Endpoint {
|
|
|
1083
1311
|
/** whether the endpoint is `ephemeral` (served directly by an agent-initiated tunnel) or `edge` (served by an edge) */
|
|
1084
1312
|
type: string;
|
|
1085
1313
|
/** user-supplied metadata of the associated tunnel or edge object */
|
|
1086
|
-
metadata
|
|
1314
|
+
metadata?: string;
|
|
1087
1315
|
/** the domain reserved for this endpoint */
|
|
1088
1316
|
domain?: Ref;
|
|
1089
1317
|
/** the address reserved for this endpoint */
|
|
@@ -1105,9 +1333,9 @@ export interface EndpointList {
|
|
|
1105
1333
|
|
|
1106
1334
|
export interface EventDestinationCreate {
|
|
1107
1335
|
/** Arbitrary user-defined machine-readable data of this Event Destination. Optional, max 4096 bytes. */
|
|
1108
|
-
metadata
|
|
1336
|
+
metadata?: string;
|
|
1109
1337
|
/** Human-readable description of the Event Destination. Optional, max 255 bytes. */
|
|
1110
|
-
description
|
|
1338
|
+
description?: string;
|
|
1111
1339
|
/** The output format you would like to serialize events into when sending to their target. Currently the only accepted value is `JSON`. */
|
|
1112
1340
|
format: string;
|
|
1113
1341
|
/** An object that encapsulates where and how to send your events. An event destination must contain exactly one of the following objects, leaving the rest null: `kinesis`, `firehose`, `cloudwatch_logs`, or `s3`. */
|
|
@@ -1131,11 +1359,11 @@ export interface EventDestination {
|
|
|
1131
1359
|
/** Unique identifier for this Event Destination. */
|
|
1132
1360
|
id: string;
|
|
1133
1361
|
/** Arbitrary user-defined machine-readable data of this Event Destination. Optional, max 4096 bytes. */
|
|
1134
|
-
metadata
|
|
1362
|
+
metadata?: string;
|
|
1135
1363
|
/** Timestamp when the Event Destination was created, RFC 3339 format. */
|
|
1136
|
-
createdAt:
|
|
1364
|
+
createdAt: Date;
|
|
1137
1365
|
/** Human-readable description of the Event Destination. Optional, max 255 bytes. */
|
|
1138
|
-
description
|
|
1366
|
+
description?: string;
|
|
1139
1367
|
/** The output format you would like to serialize events into when sending to their target. Currently the only accepted value is `JSON`. */
|
|
1140
1368
|
format: string;
|
|
1141
1369
|
/** An object that encapsulates where and how to send your events. An event destination must contain exactly one of the following objects, leaving the rest null: `kinesis`, `firehose`, `cloudwatch_logs`, or `s3`. */
|
|
@@ -1160,6 +1388,8 @@ export interface EventTarget {
|
|
|
1160
1388
|
kinesis?: EventTargetKinesis;
|
|
1161
1389
|
/** Configuration used to send events to Amazon CloudWatch Logs. */
|
|
1162
1390
|
cloudwatchLogs?: EventTargetCloudwatchLogs;
|
|
1391
|
+
/** Configuration used to send events to Datadog. */
|
|
1392
|
+
datadog?: EventTargetDatadog;
|
|
1163
1393
|
}
|
|
1164
1394
|
|
|
1165
1395
|
export interface EventTargetFirehose {
|
|
@@ -1183,6 +1413,17 @@ export interface EventTargetCloudwatchLogs {
|
|
|
1183
1413
|
logGroupArn: string;
|
|
1184
1414
|
}
|
|
1185
1415
|
|
|
1416
|
+
export interface EventTargetDatadog {
|
|
1417
|
+
/** Datadog API key to use. */
|
|
1418
|
+
apiKey?: string;
|
|
1419
|
+
/** Tags to send with the event. */
|
|
1420
|
+
ddtags?: string;
|
|
1421
|
+
/** Service name to send with the event. */
|
|
1422
|
+
service?: string;
|
|
1423
|
+
/** Datadog site to send event to. */
|
|
1424
|
+
ddsite?: string;
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1186
1427
|
export interface AWSAuth {
|
|
1187
1428
|
/** A role for ngrok to assume on your behalf to deposit events into your AWS account. */
|
|
1188
1429
|
role?: AWSRole;
|
|
@@ -1204,9 +1445,9 @@ export interface AWSCredentials {
|
|
|
1204
1445
|
|
|
1205
1446
|
export interface EventSubscriptionCreate {
|
|
1206
1447
|
/** Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars. */
|
|
1207
|
-
metadata
|
|
1448
|
+
metadata?: string;
|
|
1208
1449
|
/** Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars. */
|
|
1209
|
-
description
|
|
1450
|
+
description?: string;
|
|
1210
1451
|
/** Sources containing the types for which this event subscription will trigger */
|
|
1211
1452
|
sources: Array<EventSourceReplace>;
|
|
1212
1453
|
/** A list of Event Destination IDs which should be used for this Event Subscription. */
|
|
@@ -1241,11 +1482,11 @@ export interface EventSubscription {
|
|
|
1241
1482
|
/** URI of the Event Subscription API resource. */
|
|
1242
1483
|
uri: string;
|
|
1243
1484
|
/** When the Event Subscription was created (RFC 3339 format). */
|
|
1244
|
-
createdAt:
|
|
1485
|
+
createdAt: Date;
|
|
1245
1486
|
/** Arbitrary customer supplied information intended to be machine readable. Optional, max 4096 chars. */
|
|
1246
|
-
metadata
|
|
1487
|
+
metadata?: string;
|
|
1247
1488
|
/** Arbitrary customer supplied information intended to be human readable. Optional, max 255 chars. */
|
|
1248
|
-
description
|
|
1489
|
+
description?: string;
|
|
1249
1490
|
/** Sources containing the types for which this event subscription will trigger */
|
|
1250
1491
|
sources: Array<EventSource>;
|
|
1251
1492
|
/** Destinations to which these events will be sent */
|
|
@@ -1301,9 +1542,9 @@ export interface EventSourcePaging {
|
|
|
1301
1542
|
|
|
1302
1543
|
export interface IPPolicyCreate {
|
|
1303
1544
|
/** human-readable description of the source IPs of this IP policy. optional, max 255 bytes. */
|
|
1304
|
-
description
|
|
1545
|
+
description?: string;
|
|
1305
1546
|
/** arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. */
|
|
1306
|
-
metadata
|
|
1547
|
+
metadata?: string;
|
|
1307
1548
|
}
|
|
1308
1549
|
|
|
1309
1550
|
export interface IPPolicyUpdate {
|
|
@@ -1320,11 +1561,11 @@ export interface IPPolicy {
|
|
|
1320
1561
|
/** URI of the IP Policy API resource */
|
|
1321
1562
|
uri: string;
|
|
1322
1563
|
/** timestamp when the IP policy was created, RFC 3339 format */
|
|
1323
|
-
createdAt:
|
|
1564
|
+
createdAt: Date;
|
|
1324
1565
|
/** human-readable description of the source IPs of this IP policy. optional, max 255 bytes. */
|
|
1325
|
-
description
|
|
1566
|
+
description?: string;
|
|
1326
1567
|
/** arbitrary user-defined machine-readable data of this IP policy. optional, max 4096 bytes. */
|
|
1327
|
-
metadata
|
|
1568
|
+
metadata?: string;
|
|
1328
1569
|
}
|
|
1329
1570
|
|
|
1330
1571
|
export interface IPPolicyList {
|
|
@@ -1338,9 +1579,9 @@ export interface IPPolicyList {
|
|
|
1338
1579
|
|
|
1339
1580
|
export interface IPPolicyRuleCreate {
|
|
1340
1581
|
/** human-readable description of the source IPs of this IP rule. optional, max 255 bytes. */
|
|
1341
|
-
description
|
|
1582
|
+
description?: string;
|
|
1342
1583
|
/** arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes. */
|
|
1343
|
-
metadata
|
|
1584
|
+
metadata?: string;
|
|
1344
1585
|
/** an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported. */
|
|
1345
1586
|
cidr: string;
|
|
1346
1587
|
/** ID of the IP policy this IP policy rule will be attached to */
|
|
@@ -1365,11 +1606,11 @@ export interface IPPolicyRule {
|
|
|
1365
1606
|
/** URI of the IP policy rule API resource */
|
|
1366
1607
|
uri: string;
|
|
1367
1608
|
/** timestamp when the IP policy rule was created, RFC 3339 format */
|
|
1368
|
-
createdAt:
|
|
1609
|
+
createdAt: Date;
|
|
1369
1610
|
/** human-readable description of the source IPs of this IP rule. optional, max 255 bytes. */
|
|
1370
|
-
description
|
|
1611
|
+
description?: string;
|
|
1371
1612
|
/** arbitrary user-defined machine-readable data of this IP policy rule. optional, max 4096 bytes. */
|
|
1372
|
-
metadata
|
|
1613
|
+
metadata?: string;
|
|
1373
1614
|
/** an IP or IP range specified in CIDR notation. IPv4 and IPv6 are both supported. */
|
|
1374
1615
|
cidr: string;
|
|
1375
1616
|
/** object describing the IP policy this IP Policy Rule belongs to */
|
|
@@ -1389,9 +1630,9 @@ export interface IPPolicyRuleList {
|
|
|
1389
1630
|
|
|
1390
1631
|
export interface IPRestrictionCreate {
|
|
1391
1632
|
/** human-readable description of this IP restriction. optional, max 255 bytes. */
|
|
1392
|
-
description
|
|
1633
|
+
description?: string;
|
|
1393
1634
|
/** arbitrary user-defined machine-readable data of this IP restriction. optional, max 4096 bytes. */
|
|
1394
|
-
metadata
|
|
1635
|
+
metadata?: string;
|
|
1395
1636
|
/** true if the IP restriction will be enforced. if false, only warnings will be issued */
|
|
1396
1637
|
enforced: boolean;
|
|
1397
1638
|
/** the type of IP restriction. this defines what traffic will be restricted with the attached policies. four values are currently supported: `dashboard`, `api`, `agent`, and `endpoints` */
|
|
@@ -1418,11 +1659,11 @@ export interface IPRestriction {
|
|
|
1418
1659
|
/** URI of the IP restriction API resource */
|
|
1419
1660
|
uri: string;
|
|
1420
1661
|
/** timestamp when the IP restriction was created, RFC 3339 format */
|
|
1421
|
-
createdAt:
|
|
1662
|
+
createdAt: Date;
|
|
1422
1663
|
/** human-readable description of this IP restriction. optional, max 255 bytes. */
|
|
1423
|
-
description
|
|
1664
|
+
description?: string;
|
|
1424
1665
|
/** arbitrary user-defined machine-readable data of this IP restriction. optional, max 4096 bytes. */
|
|
1425
|
-
metadata
|
|
1666
|
+
metadata?: string;
|
|
1426
1667
|
/** true if the IP restriction will be enforced. if false, only warnings will be issued */
|
|
1427
1668
|
enforced: boolean;
|
|
1428
1669
|
/** the type of IP restriction. this defines what traffic will be restricted with the attached policies. four values are currently supported: `dashboard`, `api`, `agent`, and `endpoints` */
|
|
@@ -1442,9 +1683,9 @@ export interface IPRestrictionList {
|
|
|
1442
1683
|
|
|
1443
1684
|
export interface ReservedAddrCreate {
|
|
1444
1685
|
/** human-readable description of what this reserved address will be used for */
|
|
1445
|
-
description
|
|
1686
|
+
description?: string;
|
|
1446
1687
|
/** arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes. */
|
|
1447
|
-
metadata
|
|
1688
|
+
metadata?: string;
|
|
1448
1689
|
/** reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
|
|
1449
1690
|
region: string;
|
|
1450
1691
|
}
|
|
@@ -1463,11 +1704,11 @@ export interface ReservedAddr {
|
|
|
1463
1704
|
/** URI of the reserved address API resource */
|
|
1464
1705
|
uri: string;
|
|
1465
1706
|
/** timestamp when the reserved address was created, RFC 3339 format */
|
|
1466
|
-
createdAt:
|
|
1707
|
+
createdAt: Date;
|
|
1467
1708
|
/** human-readable description of what this reserved address will be used for */
|
|
1468
|
-
description
|
|
1709
|
+
description?: string;
|
|
1469
1710
|
/** arbitrary user-defined machine-readable data of this reserved address. Optional, max 4096 bytes. */
|
|
1470
|
-
metadata
|
|
1711
|
+
metadata?: string;
|
|
1471
1712
|
/** hostname:port of the reserved address that was assigned at creation time */
|
|
1472
1713
|
addr: string;
|
|
1473
1714
|
/** reserve the address in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
|
|
@@ -1484,14 +1725,14 @@ export interface ReservedAddrList {
|
|
|
1484
1725
|
}
|
|
1485
1726
|
|
|
1486
1727
|
export interface ReservedDomainCreate {
|
|
1487
|
-
/**
|
|
1488
|
-
|
|
1728
|
+
/** hostname of the reserved domain */
|
|
1729
|
+
domain: string;
|
|
1489
1730
|
/** reserve the domain in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
|
|
1490
1731
|
region: string;
|
|
1491
1732
|
/** human-readable description of what this reserved domain will be used for */
|
|
1492
|
-
description
|
|
1733
|
+
description?: string;
|
|
1493
1734
|
/** arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. */
|
|
1494
|
-
metadata
|
|
1735
|
+
metadata?: string;
|
|
1495
1736
|
/** ID of a user-uploaded TLS certificate to use for connections to targeting this domain. Optional, mutually exclusive with `certificate_management_policy`. */
|
|
1496
1737
|
certificateId?: string;
|
|
1497
1738
|
/** configuration for automatic management of TLS certificates for this domain, or null if automatic management is disabled. Optional, mutually exclusive with `certificate_id`. */
|
|
@@ -1516,11 +1757,11 @@ export interface ReservedDomain {
|
|
|
1516
1757
|
/** URI of the reserved domain API resource */
|
|
1517
1758
|
uri: string;
|
|
1518
1759
|
/** timestamp when the reserved domain was created, RFC 3339 format */
|
|
1519
|
-
createdAt:
|
|
1760
|
+
createdAt: Date;
|
|
1520
1761
|
/** human-readable description of what this reserved domain will be used for */
|
|
1521
|
-
description
|
|
1762
|
+
description?: string;
|
|
1522
1763
|
/** arbitrary user-defined machine-readable data of this reserved domain. Optional, max 4096 bytes. */
|
|
1523
|
-
metadata
|
|
1764
|
+
metadata?: string;
|
|
1524
1765
|
/** hostname of the reserved domain */
|
|
1525
1766
|
domain: string;
|
|
1526
1767
|
/** reserve the domain in this geographic ngrok datacenter. Optional, default is us. (au, eu, ap, us, jp, in, sa) */
|
|
@@ -1555,7 +1796,7 @@ export interface ReservedDomainCertPolicy {
|
|
|
1555
1796
|
|
|
1556
1797
|
export interface ReservedDomainCertStatus {
|
|
1557
1798
|
/** timestamp when the next renewal will be requested, RFC 3339 format */
|
|
1558
|
-
renewsAt?:
|
|
1799
|
+
renewsAt?: Date;
|
|
1559
1800
|
/** status of the certificate provisioning job, or null if the certificiate isn't being provisioned or renewed */
|
|
1560
1801
|
provisioningJob?: ReservedDomainCertJob;
|
|
1561
1802
|
}
|
|
@@ -1566,16 +1807,16 @@ export interface ReservedDomainCertJob {
|
|
|
1566
1807
|
/** a message describing the current status or error */
|
|
1567
1808
|
msg: string;
|
|
1568
1809
|
/** timestamp when the provisioning job started, RFC 3339 format */
|
|
1569
|
-
startedAt:
|
|
1810
|
+
startedAt: Date;
|
|
1570
1811
|
/** timestamp when the provisioning job will be retried */
|
|
1571
|
-
retriesAt?:
|
|
1812
|
+
retriesAt?: Date;
|
|
1572
1813
|
}
|
|
1573
1814
|
|
|
1574
1815
|
export interface SSHCertificateAuthorityCreate {
|
|
1575
1816
|
/** human-readable description of this SSH Certificate Authority. optional, max 255 bytes. */
|
|
1576
|
-
description
|
|
1817
|
+
description?: string;
|
|
1577
1818
|
/** arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. */
|
|
1578
|
-
metadata
|
|
1819
|
+
metadata?: string;
|
|
1579
1820
|
/** the type of private key to generate. one of `rsa`, `ecdsa`, `ed25519` */
|
|
1580
1821
|
privateKeyType: string;
|
|
1581
1822
|
/** the type of elliptic curve to use when creating an ECDSA key */
|
|
@@ -1598,11 +1839,11 @@ export interface SSHCertificateAuthority {
|
|
|
1598
1839
|
/** URI of the SSH Certificate Authority API resource */
|
|
1599
1840
|
uri: string;
|
|
1600
1841
|
/** timestamp when the SSH Certificate Authority API resource was created, RFC 3339 format */
|
|
1601
|
-
createdAt:
|
|
1842
|
+
createdAt: Date;
|
|
1602
1843
|
/** human-readable description of this SSH Certificate Authority. optional, max 255 bytes. */
|
|
1603
|
-
description
|
|
1844
|
+
description?: string;
|
|
1604
1845
|
/** arbitrary user-defined machine-readable data of this SSH Certificate Authority. optional, max 4096 bytes. */
|
|
1605
|
-
metadata
|
|
1846
|
+
metadata?: string;
|
|
1606
1847
|
/** raw public key for this SSH Certificate Authority */
|
|
1607
1848
|
publicKey: string;
|
|
1608
1849
|
/** the type of private key for this SSH Certificate Authority */
|
|
@@ -1620,13 +1861,15 @@ export interface SSHCertificateAuthorityList {
|
|
|
1620
1861
|
|
|
1621
1862
|
export interface SSHCredentialCreate {
|
|
1622
1863
|
/** human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes. */
|
|
1623
|
-
description
|
|
1864
|
+
description?: string;
|
|
1624
1865
|
/** arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes. */
|
|
1625
|
-
metadata
|
|
1626
|
-
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains and
|
|
1866
|
+
metadata?: string;
|
|
1867
|
+
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule `bind:example.ngrok.io`. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of `bind:*.example.com` which will allow `x.example.com`, `y.example.com`, `*.example.com`, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of `bind:*=example` which will allow `x=example`, `y=example`, etc. A rule of `'*'` is equivalent to no acl at all and will explicitly permit all actions. */
|
|
1627
1868
|
acl: Array<string>;
|
|
1628
1869
|
/** the PEM-encoded public key of the SSH keypair that will be used to authenticate */
|
|
1629
1870
|
publicKey: string;
|
|
1871
|
+
/** If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. */
|
|
1872
|
+
ownerId?: string;
|
|
1630
1873
|
}
|
|
1631
1874
|
|
|
1632
1875
|
export interface SSHCredentialUpdate {
|
|
@@ -1635,7 +1878,7 @@ export interface SSHCredentialUpdate {
|
|
|
1635
1878
|
description?: string;
|
|
1636
1879
|
/** arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes. */
|
|
1637
1880
|
metadata?: string;
|
|
1638
|
-
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains and
|
|
1881
|
+
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule `bind:example.ngrok.io`. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of `bind:*.example.com` which will allow `x.example.com`, `y.example.com`, `*.example.com`, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of `bind:*=example` which will allow `x=example`, `y=example`, etc. A rule of `'*'` is equivalent to no acl at all and will explicitly permit all actions. */
|
|
1639
1882
|
acl?: Array<string>;
|
|
1640
1883
|
}
|
|
1641
1884
|
|
|
@@ -1645,15 +1888,17 @@ export interface SSHCredential {
|
|
|
1645
1888
|
/** URI of the ssh credential API resource */
|
|
1646
1889
|
uri: string;
|
|
1647
1890
|
/** timestamp when the ssh credential was created, RFC 3339 format */
|
|
1648
|
-
createdAt:
|
|
1891
|
+
createdAt: Date;
|
|
1649
1892
|
/** human-readable description of who or what will use the ssh credential to authenticate. Optional, max 255 bytes. */
|
|
1650
|
-
description
|
|
1893
|
+
description?: string;
|
|
1651
1894
|
/** arbitrary user-defined machine-readable data of this ssh credential. Optional, max 4096 bytes. */
|
|
1652
|
-
metadata
|
|
1895
|
+
metadata?: string;
|
|
1653
1896
|
/** the PEM-encoded public key of the SSH keypair that will be used to authenticate */
|
|
1654
1897
|
publicKey: string;
|
|
1655
|
-
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains and
|
|
1898
|
+
/** optional list of ACL rules. If unspecified, the credential will have no restrictions. The only allowed ACL rule at this time is the `bind` rule. The `bind` rule allows the caller to restrict what domains, addresses, and labels the token is allowed to bind. For example, to allow the token to open a tunnel on example.ngrok.io your ACL would include the rule `bind:example.ngrok.io`. Bind rules for domains may specify a leading wildcard to match multiple domains with a common suffix. For example, you may specify a rule of `bind:*.example.com` which will allow `x.example.com`, `y.example.com`, `*.example.com`, etc. Bind rules for labels may specify a wildcard key and/or value to match multiple labels. For example, you may specify a rule of `bind:*=example` which will allow `x=example`, `y=example`, etc. A rule of `'*'` is equivalent to no acl at all and will explicitly permit all actions. */
|
|
1656
1899
|
acl: Array<string>;
|
|
1900
|
+
/** If supplied at credential creation, ownership will be assigned to the specified User or Bot. Only admins may specify an owner other than themselves. Defaults to the authenticated User or Bot. */
|
|
1901
|
+
ownerId?: string;
|
|
1657
1902
|
}
|
|
1658
1903
|
|
|
1659
1904
|
export interface SSHCredentialList {
|
|
@@ -1673,13 +1918,13 @@ export interface SSHHostCertificateCreate {
|
|
|
1673
1918
|
/** the list of principals included in the ssh host certificate. This is the list of hostnames and/or IP addresses that are authorized to serve SSH traffic with this certificate. Dangerously, if no principals are specified, this certificate is considered valid for all hosts. */
|
|
1674
1919
|
principals: Array<string>;
|
|
1675
1920
|
/** The time when the host certificate becomes valid, in RFC 3339 format. Defaults to the current time if unspecified. */
|
|
1676
|
-
validAfter:
|
|
1921
|
+
validAfter: Date;
|
|
1677
1922
|
/** The time when this host certificate becomes invalid, in RFC 3339 format. If unspecified, a default value of one year in the future will be used. The OpenSSH certificates RFC calls this `valid_before`. */
|
|
1678
|
-
validUntil:
|
|
1923
|
+
validUntil: Date;
|
|
1679
1924
|
/** human-readable description of this SSH Host Certificate. optional, max 255 bytes. */
|
|
1680
|
-
description
|
|
1925
|
+
description?: string;
|
|
1681
1926
|
/** arbitrary user-defined machine-readable data of this SSH Host Certificate. optional, max 4096 bytes. */
|
|
1682
|
-
metadata
|
|
1927
|
+
metadata?: string;
|
|
1683
1928
|
}
|
|
1684
1929
|
|
|
1685
1930
|
export interface SSHHostCertificateUpdate {
|
|
@@ -1696,11 +1941,11 @@ export interface SSHHostCertificate {
|
|
|
1696
1941
|
/** URI of the SSH Host Certificate API resource */
|
|
1697
1942
|
uri: string;
|
|
1698
1943
|
/** timestamp when the SSH Host Certificate API resource was created, RFC 3339 format */
|
|
1699
|
-
createdAt:
|
|
1944
|
+
createdAt: Date;
|
|
1700
1945
|
/** human-readable description of this SSH Host Certificate. optional, max 255 bytes. */
|
|
1701
|
-
description
|
|
1946
|
+
description?: string;
|
|
1702
1947
|
/** arbitrary user-defined machine-readable data of this SSH Host Certificate. optional, max 4096 bytes. */
|
|
1703
|
-
metadata
|
|
1948
|
+
metadata?: string;
|
|
1704
1949
|
/** a public key in OpenSSH Authorized Keys format that this certificate signs */
|
|
1705
1950
|
publicKey: string;
|
|
1706
1951
|
/** the key type of the `public_key`, one of `rsa`, `ecdsa` or `ed25519` */
|
|
@@ -1710,9 +1955,9 @@ export interface SSHHostCertificate {
|
|
|
1710
1955
|
/** the list of principals included in the ssh host certificate. This is the list of hostnames and/or IP addresses that are authorized to serve SSH traffic with this certificate. Dangerously, if no principals are specified, this certificate is considered valid for all hosts. */
|
|
1711
1956
|
principals: Array<string>;
|
|
1712
1957
|
/** the time when the ssh host certificate becomes valid, in RFC 3339 format. */
|
|
1713
|
-
validAfter:
|
|
1958
|
+
validAfter: Date;
|
|
1714
1959
|
/** the time after which the ssh host certificate becomes invalid, in RFC 3339 format. the OpenSSH certificates RFC calls this `valid_before`. */
|
|
1715
|
-
validUntil:
|
|
1960
|
+
validUntil: Date;
|
|
1716
1961
|
/** the signed SSH certificate in OpenSSH Authorized Keys format. this value should be placed in a `-cert.pub` certificate file on disk that should be referenced in your `sshd_config` configuration file with a `HostCertificate` directive */
|
|
1717
1962
|
certificate: string;
|
|
1718
1963
|
}
|
|
@@ -1738,13 +1983,13 @@ export interface SSHUserCertificateCreate {
|
|
|
1738
1983
|
/** A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: `{"permit-pty": "", "permit-user-rc": ""}` OpenSSH understands a number of predefined extensions. See [the OpenSSH certificate protocol spec](https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys) for additional details. */
|
|
1739
1984
|
extensions: Map<string, string>;
|
|
1740
1985
|
/** The time when the user certificate becomes valid, in RFC 3339 format. Defaults to the current time if unspecified. */
|
|
1741
|
-
validAfter:
|
|
1986
|
+
validAfter: Date;
|
|
1742
1987
|
/** The time when this host certificate becomes invalid, in RFC 3339 format. If unspecified, a default value of 24 hours will be used. The OpenSSH certificates RFC calls this `valid_before`. */
|
|
1743
|
-
validUntil:
|
|
1988
|
+
validUntil: Date;
|
|
1744
1989
|
/** human-readable description of this SSH User Certificate. optional, max 255 bytes. */
|
|
1745
|
-
description
|
|
1990
|
+
description?: string;
|
|
1746
1991
|
/** arbitrary user-defined machine-readable data of this SSH User Certificate. optional, max 4096 bytes. */
|
|
1747
|
-
metadata
|
|
1992
|
+
metadata?: string;
|
|
1748
1993
|
}
|
|
1749
1994
|
|
|
1750
1995
|
export interface SSHUserCertificateUpdate {
|
|
@@ -1761,11 +2006,11 @@ export interface SSHUserCertificate {
|
|
|
1761
2006
|
/** URI of the SSH User Certificate API resource */
|
|
1762
2007
|
uri: string;
|
|
1763
2008
|
/** timestamp when the SSH User Certificate API resource was created, RFC 3339 format */
|
|
1764
|
-
createdAt:
|
|
2009
|
+
createdAt: Date;
|
|
1765
2010
|
/** human-readable description of this SSH User Certificate. optional, max 255 bytes. */
|
|
1766
|
-
description
|
|
2011
|
+
description?: string;
|
|
1767
2012
|
/** arbitrary user-defined machine-readable data of this SSH User Certificate. optional, max 4096 bytes. */
|
|
1768
|
-
metadata
|
|
2013
|
+
metadata?: string;
|
|
1769
2014
|
/** a public key in OpenSSH Authorized Keys format that this certificate signs */
|
|
1770
2015
|
publicKey: string;
|
|
1771
2016
|
/** the key type of the `public_key`, one of `rsa`, `ecdsa` or `ed25519` */
|
|
@@ -1779,9 +2024,9 @@ export interface SSHUserCertificate {
|
|
|
1779
2024
|
/** A map of extensions included in the certificate. Extensions are additional metadata that can be interpreted by the SSH server for any purpose. These can be used to permit or deny the ability to open a terminal, do port forwarding, x11 forwarding, and more. If unspecified, the certificate will include limited permissions with the following extension map: `{"permit-pty": "", "permit-user-rc": ""}` OpenSSH understands a number of predefined extensions. See [the OpenSSH certificate protocol spec](https://github.com/openssh/openssh-portable/blob/master/PROTOCOL.certkeys) for additional details. */
|
|
1780
2025
|
extensions: Map<string, string>;
|
|
1781
2026
|
/** the time when the ssh host certificate becomes valid, in RFC 3339 format. */
|
|
1782
|
-
validAfter:
|
|
2027
|
+
validAfter: Date;
|
|
1783
2028
|
/** the time after which the ssh host certificate becomes invalid, in RFC 3339 format. the OpenSSH certificates RFC calls this `valid_before`. */
|
|
1784
|
-
validUntil:
|
|
2029
|
+
validUntil: Date;
|
|
1785
2030
|
/** the signed SSH certificate in OpenSSH Authorized Keys Format. this value should be placed in a `-cert.pub` certificate file on disk that should be referenced in your `sshd_config` configuration file with a `HostCertificate` directive */
|
|
1786
2031
|
certificate: string;
|
|
1787
2032
|
}
|
|
@@ -1797,12 +2042,12 @@ export interface SSHUserCertificateList {
|
|
|
1797
2042
|
|
|
1798
2043
|
export interface TLSCertificateCreate {
|
|
1799
2044
|
/** human-readable description of this TLS certificate. optional, max 255 bytes. */
|
|
1800
|
-
description
|
|
2045
|
+
description?: string;
|
|
1801
2046
|
/** arbitrary user-defined machine-readable data of this TLS certificate. optional, max 4096 bytes. */
|
|
1802
|
-
metadata
|
|
1803
|
-
/** chain of PEM-encoded certificates, leaf first. See [Certificate Bundles](https://ngrok.com/docs/
|
|
2047
|
+
metadata?: string;
|
|
2048
|
+
/** chain of PEM-encoded certificates, leaf first. See [Certificate Bundles](https://ngrok.com/docs/cloud-edge/endpoints#certificate-chains). */
|
|
1804
2049
|
certificatePem: string;
|
|
1805
|
-
/** private key for the TLS certificate, PEM-encoded. See [Private Keys](https://ngrok.com/docs/
|
|
2050
|
+
/** private key for the TLS certificate, PEM-encoded. See [Private Keys](https://ngrok.com/docs/cloud-edge/endpoints#private-keys). */
|
|
1806
2051
|
privateKeyPem: string;
|
|
1807
2052
|
}
|
|
1808
2053
|
|
|
@@ -1820,23 +2065,23 @@ export interface TLSCertificate {
|
|
|
1820
2065
|
/** URI of the TLS certificate API resource */
|
|
1821
2066
|
uri: string;
|
|
1822
2067
|
/** timestamp when the TLS certificate was created, RFC 3339 format */
|
|
1823
|
-
createdAt:
|
|
2068
|
+
createdAt: Date;
|
|
1824
2069
|
/** human-readable description of this TLS certificate. optional, max 255 bytes. */
|
|
1825
|
-
description
|
|
2070
|
+
description?: string;
|
|
1826
2071
|
/** arbitrary user-defined machine-readable data of this TLS certificate. optional, max 4096 bytes. */
|
|
1827
|
-
metadata
|
|
1828
|
-
/** chain of PEM-encoded certificates, leaf first. See [Certificate Bundles](https://ngrok.com/docs/
|
|
2072
|
+
metadata?: string;
|
|
2073
|
+
/** chain of PEM-encoded certificates, leaf first. See [Certificate Bundles](https://ngrok.com/docs/cloud-edge/endpoints#certificate-chains). */
|
|
1829
2074
|
certificatePem: string;
|
|
1830
2075
|
/** subject common name from the leaf of this TLS certificate */
|
|
1831
2076
|
subjectCommonName: string;
|
|
1832
2077
|
/** subject alternative names (SANs) from the leaf of this TLS certificate */
|
|
1833
2078
|
subjectAlternativeNames: TLSCertificateSANs;
|
|
1834
2079
|
/** timestamp (in RFC 3339 format) when this TLS certificate was issued automatically, or null if this certificate was user-uploaded */
|
|
1835
|
-
issuedAt?:
|
|
2080
|
+
issuedAt?: Date;
|
|
1836
2081
|
/** timestamp when this TLS certificate becomes valid, RFC 3339 format */
|
|
1837
|
-
notBefore:
|
|
2082
|
+
notBefore: Date;
|
|
1838
2083
|
/** timestamp when this TLS certificate becomes invalid, RFC 3339 format */
|
|
1839
|
-
notAfter:
|
|
2084
|
+
notAfter: Date;
|
|
1840
2085
|
/** set of actions the private key of this TLS certificate can be used for */
|
|
1841
2086
|
keyUsages: Array<string>;
|
|
1842
2087
|
/** extended set of actions the private key of this TLS certificate can be used for */
|
|
@@ -1875,53 +2120,17 @@ export interface TLSCertificateSANs {
|
|
|
1875
2120
|
ips: Array<string>;
|
|
1876
2121
|
}
|
|
1877
2122
|
|
|
1878
|
-
export interface TunnelSession {
|
|
1879
|
-
/** version of the ngrok agent that started this ngrok tunnel session */
|
|
1880
|
-
agentVersion: string;
|
|
1881
|
-
/** reference to the tunnel credential or ssh credential used by the ngrok agent to start this tunnel session */
|
|
1882
|
-
credential: Ref;
|
|
1883
|
-
/** unique tunnel session resource identifier */
|
|
1884
|
-
id: string;
|
|
1885
|
-
/** source ip address of the tunnel session */
|
|
1886
|
-
ip: string;
|
|
1887
|
-
/** arbitrary user-defined data specified in the metadata property in the ngrok configuration file. See the metadata configuration option */
|
|
1888
|
-
metadata: string;
|
|
1889
|
-
/** operating system of the host the ngrok agent is running on */
|
|
1890
|
-
os: string;
|
|
1891
|
-
/** the ngrok region identifier in which this tunnel session was started */
|
|
1892
|
-
region: string;
|
|
1893
|
-
/** time when the tunnel session first connected to the ngrok servers */
|
|
1894
|
-
startedAt: string;
|
|
1895
|
-
/** the transport protocol used to start the tunnel session. Either `ngrok/v2` or `ssh` */
|
|
1896
|
-
transport: string;
|
|
1897
|
-
/** URI to the API resource of the tunnel session */
|
|
1898
|
-
uri: string;
|
|
1899
|
-
}
|
|
1900
|
-
|
|
1901
|
-
export interface TunnelSessionList {
|
|
1902
|
-
/** list of all tunnel sessions on this account */
|
|
1903
|
-
tunnelSessions: Array<TunnelSession>;
|
|
1904
|
-
/** URI to the API resource of the tunnel session list */
|
|
1905
|
-
uri: string;
|
|
1906
|
-
/** URI of the next page, or null if there is no next page */
|
|
1907
|
-
nextPageUri?: string;
|
|
1908
|
-
}
|
|
1909
|
-
|
|
1910
|
-
export interface TunnelSessionsUpdate {
|
|
1911
|
-
id: string;
|
|
1912
|
-
}
|
|
1913
|
-
|
|
1914
2123
|
export interface Tunnel {
|
|
1915
2124
|
/** unique tunnel resource identifier */
|
|
1916
2125
|
id: string;
|
|
1917
2126
|
/** URL of the ephemeral tunnel's public endpoint */
|
|
1918
|
-
publicUrl
|
|
2127
|
+
publicUrl?: string;
|
|
1919
2128
|
/** timestamp when the tunnel was initiated in RFC 3339 format */
|
|
1920
|
-
startedAt:
|
|
1921
|
-
/** user-supplied metadata for the tunnel defined in the ngrok configuration file. See the tunnel [metadata configuration option](https://ngrok.com/docs#tunnel-
|
|
1922
|
-
metadata
|
|
2129
|
+
startedAt: Date;
|
|
2130
|
+
/** user-supplied metadata for the tunnel defined in the ngrok configuration file. See the tunnel [metadata configuration option](https://ngrok.com/docs/secure-tunnels/ngrok-agent/reference/config#common-tunnel-configuration-properties) In API version 0, this value was instead pulled from the top-level [metadata configuration option](https://ngrok.com/docs/secure-tunnels/ngrok-agent/reference/config#metadata). */
|
|
2131
|
+
metadata?: string;
|
|
1923
2132
|
/** tunnel protocol for ephemeral tunnels. one of `http`, `https`, `tcp` or `tls` */
|
|
1924
|
-
proto
|
|
2133
|
+
proto?: string;
|
|
1925
2134
|
/** identifier of tune region where the tunnel is running */
|
|
1926
2135
|
region: string;
|
|
1927
2136
|
/** reference object pointing to the tunnel session on which this tunnel was started */
|
|
@@ -1929,7 +2138,7 @@ export interface Tunnel {
|
|
|
1929
2138
|
/** the ephemeral endpoint this tunnel is associated with, if this is an agent-initiated tunnel */
|
|
1930
2139
|
endpoint?: Ref;
|
|
1931
2140
|
/** the labels the tunnel group backends will match against, if this is a backend tunnel */
|
|
1932
|
-
labels
|
|
2141
|
+
labels?: Map<string, string>;
|
|
1933
2142
|
/** tunnel group backends served by this backend tunnel */
|
|
1934
2143
|
backends?: Array<Ref>;
|
|
1935
2144
|
/** upstream address the ngrok agent forwards traffic over this tunnel to. this may be expressed as a URL or a network address. */
|