[Chapter-delegates] isoc-ams API released (for developing, geekish, and bugged out ISOC AMS Admins only!)

Klaus Birkenbihl Klaus.Birkenbihl at isoc.de
Thu Jul 17 01:15:16 PDT 2025


[adding Chapter Delegates <chapter-delegates at elists.isoc.org> since assumed to be of general interest]

Thanks Christian,

Christian de Larrinaga wrote on 16.07.25 18:32:
> Well done klaus.. looks like you did this despite zero help from the AMS
> team. It will take a bit of work I guess to implement into a chapter
> admin database and then as a web scraper any change to the AMS which
> can happen pretty arbitrarily might be breaking.

After looking at the code (HTML & Co) the risk of AMS changes seems smaller than it first appeared. If there are any they most likely will not be dramatic. But as I mentioned in the readme: the risk exists. So wait and see ...

Members Administration in this context is a dead simple thing. AMS takes a lot of effort to make it komplex.

isoc-ams makes it simple again. Nearly everything in members admin - that can be done with online AMS - can be done with a simple isoc-ams workflow - no programming skills required at all.

2 Steps:

 1. Get lists of AMS Chapter members and pending applications:

    	python -m isoc_ams

    Delivers a list of AMS Chapter members and a list of pending applications.

 2. Decide what operations are due (deny or approve applicants, delete entries from members list).
    Then call isoc-ams like this:

    	python -m isoc_ams -i <commands.txt

    the file commands.txt file holds the required operations like this

    	deny isocid1, isocid2 ...
    	approve isocid10, isocid11 ...
    	delete isocid20, isocid21 ...
    	...

    to deny, approve pending applications or delete entries from the AMS Chapter members list.

And you are done. No need to wade clicking (and maybe typing) through lot of pages.


For a fully automated process using the API (as we do it at ISOC.DE) it is also straight forward and simple to implement. (If I ever decide to build a next release the interface will provide the option to do this in any programming language you like - not only Python).

It also can be grouped in 2 steps:

 1. Apply your local rules how to treat pending applications e.g.
     1. deny old ones that didn't make it to your local members list
     2. approve those who made it to your local members list
     3. leave the others as they are (maybe send an invitations to join)
 2. Compare your local members list (assumed to be the up-to-date one) with the AMS Chapter list:
     1. delete those from the AMS Chapter list who are no longer on your local list
     2. send a mail to ams-help at isoc.org asking to add those who are not on the AMS list (since you are not authorized to add them).

That's it. I admit I was surprised how simple it turned out to be - once you manage to hide the AMS Web interface.

(Why is it a fairy tale by Danish Hans Christian Andersen: „Kejserens nye Klæder“ comes int my mind? 🙂)

> Hope this isn't going to be a rod to your back - so to speak. But maybe
> this will spur that strong sense of not invented here phobia at ISOC?
Frankly, I'm rather curious if there will be any reaction at all 😉. I think that the AMS folks over the last ten+ years never understood how an API should look like. So they silently denied any effort to provide it.
> Having said all that kudos and respect.

Thank you.

Klaus

> Klaus Birkenbihl via Chapter-delegates<chapter-delegates at elists.isoc.org>  writes:
>
>> Dear AMS Chapter Admin,
>>
>> by today the isoc-ams API is released. Don't ask AMS-help for it.
>>
>> Just checkhttps://github.com/birkenbihl/isoc-ams/  for details.
>>
>> Best regards
>> Klaus

-- 
Klaus Birkenbihl
Internet Society German Chapter (ISOC.DE) e.V.
c/o ict-Media GmbH
https://www.isoc.de
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://elists.isoc.org/pipermail/chapter-delegates/attachments/20250717/aa50ff57/attachment.htm>


More information about the Chapter-delegates mailing list