Hi team,
I am working on the Transitions of Care B1 tab, Paragraph (i)(A). I am trying to send a CCDA document using the Edge Protocol – XDR.
I entered my direct address (met...@test.directproject.net) and selected the CCDA document type. For example, I selected a TOC (Transitions of Care) document.
When I run it, the status only shows as “Pending.”
Please explain:
Here is the link I am using: https://site.healthit.gov/direct/testbycriteria/B1
Hello ETT Support Team,
We are currently performing XDR submission testing against the ETT environment using mutual TLS authentication.
The TLS handshake and client certificate authentication complete successfully, confirming that connectivity and certificate validation are functioning correctly.
However, the XDR endpoint appears to be misconfigured and enters an infinite redirect loop.
Observed behavior:
Initial endpoint:
https://ett.healthit.gov/ett-ttp/xdr
Server response:
HTTP/1.1 301 Moved Permanently
Redirect target returned by the server:
https://ett.healthit.gov/ettett-ttp/xdr
Subsequent redirects continue appending additional "ett" prefixes repeatedly:
/ettettett-ttp/xdr
/ettettettett-ttp/xdr
Eventually the client terminates with:
curl: (47) Maximum (50) redirects followed
We also observed that some XDR requests return:
“Default Environment not configured - file null/environment/default not found.”
At this point, mutual TLS authentication is working successfully, but the endpoint routing/environment configuration appears to be incorrect.
Could you please confirm:
The correct active XDR endpoint for B1/XDR testing
Whether the current ETT environment is experiencing a routing or rewrite configuration issue
Whether there are any updated endpoint URLs or environment configuration requirements
Thank you for your assistance.
Regards,
Raj Kumar
* Closing connection
curl: (3) URL rejected: Malformed input to a URL function
* URL rejected: No host part in the URL
* Closing connection
curl: (3) URL rejected: No host part in the URL
* URL rejected: Malformed input to a URL function
* Closing connection
curl: (3) URL rejected: Malformed input to a URL function
elon@Mettler-MacBook-Pro ~ % curl -X POST https://ett.healthit.gov:11084/xdstools/sim/edge-ttp_1/rep/xdrpr \
--cert your_certificate.p12:your_password \
--cacert ett_certificate.pem \
-H "Content-Type: text/xml" \
--data-binary @xdr_request.xml
curl: Failed to open xdr_request.xml
curl: option --data-binary: error encountered when reading a file
curl: try 'curl --help' or 'curl --manual' for more information
elon@Mettler-MacBook-Pro ~ % openssl x509 -in /Users/elon/Downloads/keyAndCert/cert.pem -text -noout | head
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
68:a9:e5:0c:20:53:d8:4b:c6:2d:28:b4:9e:43:27:f6:bf:78:8c:6c
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=US, ST=test, L=test, O=test, OU=test, CN=test, emailAddress=test
Validity
Not Before: Nov 15 21:03:25 2024 GMT
Not After : Nov 13 21:03:25 2034 GMT
elon@Mettler-MacBook-Pro ~ % openssl rsa -in /Users/elon/Downloads/keyAndCert/key.pem -check
RSA key ok
writing RSA key
-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQD5pF1Ps4YEOP7Y
IxKYwEeJ3lRZWjeJ00cDwzIsec111n2n4PvyF+/ETPhhi9HcFHn/8yx8x5DRU0yb
+qJJkeXt+iLZZAKIeqaCYCWv1eL/fPBpvTBcP4mKD+VvsyCe8tYAW+jENlocw/mL
7LK1UllfySBoPLlYZPno3c4yFCvF0pOxDWoiT/+dH0ruK2j/ep4N6yTsjmtfIPbe
VYUXq7oZW2n32SoU9Bnm21KuJfaSHrC10WL/0MLpE+tE715h4l3oTJSCgQeTw3xO
s6tcy0vTB6Jnovu1IqDZ8O23DHUmsJJjrJiEQmKlAJ71lOLg+0SS0nSLCFP4CJlP
wAgfTX69AgMBAAECggEACnSKjum5IWikrbcsUnbtGBZWaIaZgF13oi305j10sCx7
R0JqMt2zRkCl/2nccG/wGxrbYF94TngDY5332YZxf4nEF2AzpfUjD59IvMhDsUkR
hZAtnBNyJnTbelXhdh67/ThcM4mGNSG1DBnt8x+fjB4vjAYNCilyeQD/H4ROQALo
TRf3m5wcWDXJWhQ2naj3GySw4JgpHeCwZuLu4eJ+yOJheBJpEso9/sH4EJ2cCRLH
DoakhUxPJx2NsoSIi5Jl8jiZslzuyp5OKmmD56VN41pYZ6edjN7kn28IqTuaqqsi
DWD/kHZ6aIcfor33BGtoOzqViZHWEu3i7h7IZy5pwQKBgQD7SeAjQ45Z3AykQqtV
63E78YzwERlGHSbCfKdNLRG0qOUFS4lxIl7O1VfTdLvt2H+0k2nCF/IiwpaMQDuN
mtse3lecPLcJW8E3rsTXwMDuX3k5iw1dCvInqWAHgi2yMSpXrVkBqfXx3OjvtzA8
tXq/kaP7kRlS0OqqI7ndi9X8/QKBgQD+UpYFvOcZZq7Y9FZXgLvr/7Tr3vmXUnUb
Ztlag0tbPBOWpXemvc9lgpsKZaF36G+pfjuZ6oU1Y0Ivp4dMC7/e2BmtxwZA8q17
v+48x1IzysmieoKe1E46EBILa1Z7TZbDlVPxvzkrUalJFIGJzbolTEe/N4C/R7fX
V1PhaO4UwQKBgQCfkXnS6sMqLKGabPt/w9JTzj9A8pqp+zjxp1ZVm5jyr40+n4jX
Xov1q2Pp0ubDUgdGE5XEuo/3orkWtnMaqIscPvRDMgrI1osLYN9+Ydghhl7kO3hw
7NJ4fQWNvwxlavMIWft7IwIaY71G+3yWEGex3jnTNYBvJlrdT3JnTLTFwQKBgQCe
poBF9hCoTOEYIFxYW8tfLnX7im5jEqJRRLikeTEiKfkCShi5IMFnTrFPLBUtSweV
UVT28FDG/DOGrNh+/Plll6N1P6nMDFdi0llY+vJxsrhULl6bnE9scyf+jag2ZTF+
swHZ1fNg7aFQIIWqpHbR26MKSyJ6sM+jeyutexrCQQKBgBdLSc6CkrQe7H6Avm4Q
KeBBhVhKYo7jy08N7kwA6LDK9OcPafZDMQnZy9f8w9DSaXiOiGezuun/WgFeoWBu
da+2c2hYgINqrrkGxoWnxJ2CxXRmNdhD1r6jqM7e4lzrDMOkHNG5UNG1XfSVrLtG
85kW5zPfHQkY0BN1x+lwytFG
-----END PRIVATE KEY-----
elon@Mettler-MacBook-Pro ~ % curl -v \
--cert "/Users/elon/Downloads/keyAndCert/cert.pem" \
--key "/Users/elon/Downloads/keyAndCert/key.pem" \
* Host ett.healthit.gov:443 was resolved.
* IPv6: (none)
* IPv4: 34.235.25.130
* Trying 34.235.25.130:443...
* Connected to ett.healthit.gov (34.235.25.130) port 443
* ALPN: curl offers h2,http/1.1
* (304) (OUT), TLS handshake, Client hello (1):
* CAfile: /etc/ssl/cert.pem
* CApath: none
* (304) (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-CHACHA20-POLY1305 / [blank] / UNDEF
* ALPN: server accepted http/1.1
* Server certificate:
* subject: CN=*.healthit.gov
* start date: Feb 19 15:43:46 2026 GMT
* expire date: Mar 23 15:43:46 2027 GMT
* subjectAltName: host "ett.healthit.gov" matched cert's "*.healthit.gov"
* issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certs.godaddy.com/repository/; CN=Go Daddy Secure Certificate Authority - G2
* SSL certificate verify ok.
* using HTTP/1.x
> GET / HTTP/1.1
> Host: ett.healthit.gov
> User-Agent: curl/8.7.1
> Accept: */*
>
* Request completely sent off
< HTTP/1.1 301 Moved Permanently
< Date: Thu, 07 May 2026 07:16:55 GMT
< Server: Apache/2.4.52 (Ubuntu)
< Location: https://ett.healthit.gov/ett
< Content-Length: 319
< Content-Type: text/html; charset=iso-8859-1
<
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://ett.healthit.gov/ett">here</a>.</p>
<hr>
<address>Apache/2.4.52 (Ubuntu) Server at ett.healthit.gov Port 443</address>
</body></html>
* Connection #0 to host ett.healthit.gov left intact
elon@Mettler-MacBook-Pro ~ % head -20 /Users/elon/Downloads/xdr-test/soap_test1.xml
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope"
xmlns:xdsb="urn:ihe:iti:xds-b:2007"
xmlns:lcm="urn:oasis:names:tc:ebxml-regrep:xsd:lcm:3.0"
xmlns:rim="urn:oasis:names:tc:ebxml-regrep:xsd:rim:3.0">
<soapenv:Header/>
<soapenv:Body>
<xdsb:ProvideAndRegisterDocumentSetRequest>
<lcm:SubmitObjectsRequest>
<rim:RegistryObjectList/>
</lcm:SubmitObjectsRequest>
<xdsb:Document id="Document01">
<![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<ClinicalDocument xmlns="urn:hl7-org:v3">
elon@Mettler-MacBook-Pro ~ % curl -v \
--cert "/Users/elon/Downloads/keyAndCert/cert.pem" \
--key "/Users/elon/Downloads/keyAndCert/key.pem" \
-H "Content-Type: application/soap+xml; charset=utf-8" \
-H "SOAPAction: urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b" \
--data @/Users/elon/Downloads/xdr-test/soap_test1.xml \
"https://ett.healthit.gov/ett-ttp/xdr"
* Host ett.healthit.gov:443 was resolved.
* IPv6: (none)
* IPv4: 34.235.25.130
* Trying 34.235.25.130:443...
* Connected to ett.healthit.gov (34.235.25.130) port 443
* ALPN: curl offers h2,http/1.1
* (304) (OUT), TLS handshake, Client hello (1):
* CAfile: /etc/ssl/cert.pem
* CApath: none
* (304) (IN), TLS handshake, Server hello (2):
* TLSv1.2 (IN), TLS handshake, Certificate (11):
* TLSv1.2 (IN), TLS handshake, Server key exchange (12):
* TLSv1.2 (IN), TLS handshake, Server finished (14):
* TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
* TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (OUT), TLS handshake, Finished (20):
* TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
* TLSv1.2 (IN), TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-CHACHA20-POLY1305 / [blank] / UNDEF
* ALPN: server accepted http/1.1
* Server certificate:
* subject: CN=*.healthit.gov
* start date: Feb 19 15:43:46 2026 GMT
* expire date: Mar 23 15:43:46 2027 GMT
* subjectAltName: host "ett.healthit.gov" matched cert's "*.healthit.gov"
* issuer: C=US; ST=Arizona; L=Scottsdale; O=GoDaddy.com, Inc.; OU=http://certs.godaddy.com/repository/; CN=Go Daddy Secure Certificate Authority - G2
* SSL certificate verify ok.
* using HTTP/1.x
> POST /ett-ttp/xdr HTTP/1.1
> Host: ett.healthit.gov
> User-Agent: curl/8.7.1
> Accept: */*
> Content-Type: application/soap+xml; charset=utf-8
> SOAPAction: urn:ihe:iti:2007:ProvideAndRegisterDocumentSet-b
> Content-Length: 1826
>
* upload completely sent off: 1826 bytes
< HTTP/1.1 301 Moved Permanently
< Date: Thu, 07 May 2026 07:17:58 GMT
< Server: Apache/2.4.52 (Ubuntu)
< Location: https://ett.healthit.gov/ettett-ttp/xdr
< Content-Length: 330
< Content-Type: text/html; charset=iso-8859-1
<
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>301 Moved Permanently</title>
</head><body>
<h1>Moved Permanently</h1>
<p>The document has moved <a href="https://ett.healthit.gov/ettett-ttp/xdr">here</a>.</p>
<hr>
<address>Apache/2.4.52 (Ubuntu) Server at ett.healthit.gov Port 443</address>
</body></html>
* Connection #0 to host ett.healthit.gov left intact