I’ve created a web API to DSSR and SNAP, and fiber models. The overall help message is available via http://api.x3dna.org. Individually, each program is accessed as below.
Help message on x3dna-dssr
(DSSR): http://api.x3dna.org/dssr/help
Usage with 'http' (HTTPie): http -f http://api.x3dna.org/dssr [options] url=|model@ http http://api.x3dna.org/dssr/help -- display this help message Options: json=true-or-FALSE(default) [e.g., json=true # JSON output] pair=true-or-FALSE(default) [e.g., pair=1 # base-pair only] hbond=true-or-FALSE(default) [e.g., hbond=t # H-bonding info] more=true-or-FALSE(default) [e.g., more=y # further details] Required parameter: url=URL-to-coordinate-file [e.g., url=https://files.rcsb.org/download/1ehz.pdb.gz] model@coordinate-file [e.g., model@1ehz.cif] # Only one must be specified. 'url' precedes 'model' when both are specified. # The coordinate file must be in PDB or PDBx/mmCIF format, optionally gzipped. Examples: http -f http://api.x3dna.org/dssr url=https://files.rcsb.org/download/1ehz.pdb.gz http -f http://api.x3dna.org/dssr model@1ehz.cif pair=1 # with 'curl' curl http://api.x3dna.org/dssr -F 'url=https://files.rcsb.org/download/1ehz.pdb.gz' curl http://api.x3dna.org/dssr -F 'model=@1msy.pdb' -F 'pair=1' Note: The web API has an upper limit on coordinate file size (gzipped): < 6 MB
Help message on x3dna-snap
(SNAP): http://api.x3dna.org/snap/help
Usage with 'http' (HTTPie): http -f http://api.x3dna.org/snap [options] url=|model@ http http://api.x3dna.org/snap/help -- display this help message Options: json=true-or-FALSE(default) [e.g., json=true # JSON output] hbond=true-or-FALSE(default) [e.g., hbond=t # H-bonding info] Required parameter: url=URL-to-coordinate-file [e.g., url=https://files.rcsb.org/download/1oct.pdb.gz] model@coordinate-file [e.g., model@1oct.cif] # Only one must be specified. 'url' precedes 'model' when both are specified. # The coordinate file must be in PDB or PDBx/mmCIF format, optionally gzipped. Examples: http -f http://api.x3dna.org/snap url=https://files.rcsb.org/download/1oct.pdb.gz http -f http://api.x3dna.org/snap model@1oct.cif json=1 # with 'curl' curl http://api.x3dna.org/snap -F 'url=https://files.rcsb.org/download/1oct.pdb.gz' curl http://api.x3dna.org/snap -F 'model=@1oct.cif' -F 'json=1' Note: The web API has an upper limit on coordinate file size (gzipped): < 6 MB
Help message on 56 fiber models: http://api.x3dna.org/fiber/help
Usage with 'http' (HTTPie): http http://api.x3dna.org/fiber/help # display this help message http http://api.x3dna.org/fiber/list # show a list of available fiber models (56 in total) http http://api.x3dna.org/fiber/str_id # build model 'str_id' in the range of [1, 56] http http://api.x3dna.org/fiber/name # generate a model with common names as shown below: A-DNA, B-dna, C_DNA, D-DNA, ZDNA, RNA, RNAduplex, PaulingTriplex, G4 Case does not matter, and the separator can be '-' or '_' or omitted. So a-dna, A-dNA, a_DNA, or ADNA is valid for building an A-DNA model. Options (via query strings, or form fields): seq=base-sequence # A, C, G, T, U for generic model repeat=number # number of repeats of the sequence cif=1 # output file in mmCIF format Examples with 'http' (HTTPie): http http://api.x3dna.org/fiber/1 # model no. 1 (i.e., calf thymus A-DNA model) http -f http://api.x3dna.org/fiber/1 seq=A3TTT repeat=2 # specific sequence, repeated twice http http://api.x3dna.org/fiber/rna # single-stranded RNA model http http://api.x3dna.org/fiber/rna-ds # double-stranded RNA model http http://api.x3dna.org/fiber/pauling # the triplex model of Pauling & Corey http http://api.x3dna.org/fiber/g4 # G-quadruplex model # with 'curl' curl http://api.x3dna.org/fiber/1 curl http://api.x3dna.org/fiber/1 -d 'seq=A3TTT' -d 'repeat=2' curl http://api.x3dna.org/fiber/rna curl http://api.x3dna.org/fiber/rna-ds curl http://api.x3dna.org/fiber/pauling curl http://api.x3dna.org/fiber/g4 Note: The web API has two upper limits: repeats < 1,000, and nucleotides < 10,000.