Skip to content

Instantly share code, notes, and snippets.

@redshiftzero
Last active December 6, 2018 00:12
Show Gist options
  • Save redshiftzero/934093c4f8e0f47c53e1add475345e34 to your computer and use it in GitHub Desktop.
Save redshiftzero/934093c4f8e0f47c53e1add475345e34 to your computer and use it in GitHub Desktop.
example of testing SD API

For 0.11 release changes

Get an API token

$ curl -X POST -H "Content-Type: application/json" --data '{"username":"myusername","passphrase":"mypassword","one_time_code":"123456"}' --proxy socks5h://127.0.0.1:9150 myonionaddress.onion/api/v1/token

The response body will contain a token.

Add a test source

Now make a test submission via the source interface so you have a source to reply to.

Get the source UUID

$ curl -X GET -H "Content-Type: application/json" -H "Authorization: Token mytokengoeshere" --proxy socks5h://127.0.0.1:9150 myonionaddress.onion/api/v1/sources
{"sources":[{"add_star_url":"/api/v1/sources/1d5de5c2-5d35-4b21-884a-1fcc74690f31/add_star","interaction_count":1,"is_flagged":false,"is_starred":false,"journalist_designation":"composed compound","key":{"public":"-----BEGIN PGP PUBLIC KEY BLOCK-----\n\nmQINBFwIZ5gBEADGcxnSXD/czpY1myhp6NF1mYJuoSGaL6gL2aRhIDMqdI8Ebqbv\nsmAoq7rkGQR5FLU/mb9hG2bYFPOqNVJe0sRuL1JN3noumuLNiG40PQ/ARPHWahfM\nICSKhDEmvcz8IV8SjzENtXIYvClziDlHjC5Ft4BW2FBF/v+Jt4G2FiIqvCb6Yivj\nsID9s+0PnF8ZG512YMAPbV6reBu5ayo+826QrSLkbcsbi4EVwbG2K+5BIcMNFrWU\nsu8e/FDP83NMdOCOntHrcjdXzcTGbSyAGuPL3Ec9WS8TW1AW6c4uFPYTubGtfVxt\nwJE2HHNS48VVgw3aG2TwcPe7pk0EvEdLMT2prG/4STOAeLkElqO/4lc7syxH9ql8\niePCsmqvx74geohd3A9Se8S/dWp4PMc4+w2nLMB4ipmpKExGvT0lUL940eJrbv71\ntlJpFXlyqw9nqIQBu0YdGK1u/D0cQdN0GZNl+rH74Pq+ELPzxkmP9V/d+SA3aDDI\nkID56lP9cfIilgtGs+hqj9G/vkDX+xgqNor+SxD7nhslTpCuG58EjERCeOSt1oL6\nxbVvaK8Q0XVxYhZluhCXO2v+2ZzyoBrcgHv5L5pEL7/b9dBrHOlpyX3+lIOq1Oi3\n6HxUkbnoG9sTiIxs6KC3e1IjNHA6BndyVHwt1egXyf8wCbC7tmOE+KW/9QARAQAB\ntHxBdXRvZ2VuZXJhdGVkIEtleSA8SU9ITkhMTVo2SjdZT0xNSjJXUEhBN1ZHVzRO\nTUxJSURPWjdSWVJTTzVUNDdRS0o3TTI0Q1NMV05KQlVQVEtDMjdSUDZBUUI0RlNN\nUkM0TjJOTVRIVFRaNkNMRE5CNDU1UjM2WENRST0+iQI/BBMBCgApBQJcCGeYAhsv\nBQkB4dsoBwsJCAcDAgEGFQgCCQoLBBYCAwECHgECF4AACgkQ2rpQhn1OGqYxig//\ncZ9gart+AT258p/DPcv2o+mtTJ6fgJ9/PtqIlly0pPtTT64k2vk7klVMODrUVTPZ\nnMuC6IYZGg23H/KHgJQr3L0lnCdAJ/mz4qlKXzuhe1isS3QZPG2AauU12WxRL3/T\neN9ouX5A/jrDgZjzFHLL9BurK7UvcFg33og70vHWvZCoou9Lto3orzXJnqG5ST9Z\nMajyDdIsHI0X1mM0nMlXRRJ+2uaRisTmf6B4UXeMnnKk0zOXgfA7TFLwPEt55oEd\nEXz7GItRnY6ZKYnejomkzkd+Z89imwgtXPTg0d49cKRfO4YffvhjWBKePC0QxAvS\nz97PSJNEFpoxCE4EhM9TUD/dyMGRtG4BZTg6VF6dsGYt0GfyM6MoQStMgGXu3VA1\nX5fvUuDVll27RYT6HZRBlTUv6YTr3g/VVUhNxlAM3bKnoXAjyLaGq4ILlJT+v2H1\nReDMb8YwdS1wLtPnVhDCf1HGu1tBPQTgJKUuNemclqzVsvAGsO3mIUAtRqNxWvbg\n7Bv5isDt8ousVFmyLClLsBSnhCBoQTzd4DP0BKRN6LOY/zizL/z5TyV4k4/X5yzB\nrsVExqOxStw4Tk79vnV1E8RZVJEnpDjnQcwBL80ZFIzucgwMFl7ofVAaoRMQcQ+9\nOHCl1uaxive22D9KxypN630Z/qDfXhhfnpcmiBTUDd8=\n=OWHB\n-----END PGP PUBLIC KEY BLOCK-----\n","type":"PGP"},"last_updated":"2018-12-06T00:04:43.708919Z","number_of_documents":0,"number_of_messages":1,"remove_star_url":"/api/v1/sources/1d5de5c2-5d35-4b21-884a-1fcc74690f31/remove_star","replies_url":"/api/v1/sources/1d5de5c2-5d35-4b21-884a-1fcc74690f31/replies","submissions_url":"/api/v1/sources/1d5de5c2-5d35-4b21-884a-1fcc74690f31/submissions","url":"/api/v1/sources/1d5de5c2-5d35-4b21-884a-1fcc74690f31","uuid":"1d5de5c2-5d35-4b21-884a-1fcc74690f31"}]}

Reply to the source

$ curl -X POST -H "Content-Type: application/json" -H "Authorization: Token mytokengoeshere" --data '{"reply":"-----BEGIN PGP MESSAGE-----[...]-----END PGP MESSAGE-----"}' --proxy socks5h://127.0.0.1:9150 myonionaddress.onion/api/v1/sources/1d5de5c2-5d35-4b21-884a-1fcc74690f31/replies
{"message":"Your reply has been stored","uuid":"d162d299-5d7e-4372-a461-a9dd673b0985"}

Note the UUID in the response

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment