JoinServer method and API integration documentation

1] I’m looking for a little clarification on the currently-supported JoinServer integration method. It is my understanding that the LoRa App Server provides this function, but does not use the gRPC method. Can anyone confirm this and/or shed some light on it?

2] Regarding API integration between the LoRa Network Server and our own App Server, I understand how gRPC works and I’ve spent time reviewing the .proto files, but I’m hoping there is some “higher level” documentation that discusses the necessary transaction sequences to use or to expect as part of the integration (i.e. just knowing the list of functions from the .proto file doesn’t necessarily explain how to use them). Does any such documentation exist (other than the source code of the two servers)?

The join-server API is specified and documented by the LoRaWAN Backend Interfaces specification: https://www.lora-alliance.org/lorawan-for-developers

Actually, that URL appears to be dead (even after ignoring its invalid SSL cert). I did find some information on the “AS-JS” interface, but only mentions of it, rather than any details. Do you know where I might find that (from the perspective of implementing a join server)?

To confirm, does the AS implement this AS-JS interface? If so, how it is configured in the AS to know how to connect to the JS?

I’ve updated the url, please try again.

To confirm, does the AS implement this AS-JS interface? If so, how it is configured in the AS to know how to connect to the JS?

No. In this case LoRa App Server provides a (subset of the) JS interface to LoRa Server (NS). The communication is between the NS and JS. This flow is also documented in the LoRaWAN Backend Interface spec.

Hmmm. I’m not having much luck here with something that should be so simple. The updated URL takes me to the home page, but then clicking on the link for backend interfaces (https://www.lora-alliance.org/resource-hub/lorawantm-back-end-interfaces) results in a 404 error.

Yes, I (think) I understand that the AS provides a subset of the JS interface to the NS. But if I want to “split” this functionality between the existing AS and a “new” JS, how do I configure the NS to connect to the “new” JS?

I finally found this document after a little digging:

Is this the one you had in mind?