<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div style="" class="markdown-here-wrapper"
      data-md-url="Thunderbird">
      <p style="margin: 1.2em 0px ! important;">If I’m understanding
        your situation correctly, you want to see a list of measurements
        that include probes from a particular AS as their source. At
        present, there’s no easy way to make a single API call to get
        that, but you could synthesise that information by comparing two
        reasonably small bodies of data.</p>
      <p style="margin: 1.2em 0px ! important;">There are two bulk data
        downloads that you can use for this: <a
          href="http://ftp.ripe.net/ripe/atlas/measurements/">measurement
          metadata</a> (already mentioned, updated weekly) and the <a
          href="http://ftp.ripe.net/ripe/atlas/probes/archive/2015/10/">probe
          data</a> (daily).</p>
      <p style="margin: 1.2em 0px ! important;">Basically, you need to
        do three things:</p>
      <ul style="margin: 1.2em 0px;padding-left: 2em;">
        <li style="margin: 0.5em 0px;"><strong>Compile a list of probe
            ids that represent probes within the AS you want</strong>.
          You can do this by looping over the probes in the daily dump
          and capturing the id for any probe that has <code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">asn_v4</code>
          or <code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">asn_v6</code>
          equal to the AS in question.</li>
        <li style="margin: 0.5em 0px;"><strong>Compile a list of
            measurements using these probes</strong>. You can do this by
          looping over the list of measurements, capturing the ids of
          measurements that have the aforementioned probe ids in the <code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">probes</code>
          list.</li>
        <li style="margin: 0.5em 0px;">
          <p style="margin: 1.2em 0px ! important;margin: 0.5em 0px !
            important;">Fetch the probe-specific data from the API using
            both ids:</p>
          <pre style="font-family: Consolas,Inconsolata,Courier,monospace;font-size: 1em; line-height: 1.2em;margin: 1.2em 0px;"><code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;white-space: pre; overflow: auto; border-radius: 3px; border: 1px solid rgb(204, 204, 204); padding: 0.5em 0.7em; display: block ! important;">  <a class="moz-txt-link-freetext" href="https://atlas.ripe.net/api/v1/measurement/**measurement_id**/result/?prb_id=**probe_id**,**probe_id**&format=txt">https://atlas.ripe.net/api/v1/measurement/**measurement_id**/result/?prb_id=**probe_id**,**probe_id**&format=txt</a>
</code></pre>
        </li>
      </ul>
      <p style="margin: 1.2em 0px ! important;">The above call will
        return all of the results for measurement <code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">#${measurement_id}</code>,
        but only for probes with one of those two ids. That last bit, <code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">format=txt</code>
        will ensure that the returning data is in bite-sized chunks so
        you don’t gobble up 30gb of memory just to parse what comes out.</p>
      <p style="margin: 1.2em 0px ! important;">Write that in a loop <em>with
          a reasonable wait time between each request or we’ll get mad
          at you</em> and you’ve got a decent body of data to work with.</p>
      <p style="margin: 1.2em 0px ! important;">Note that there’s no
        reason to fetch the entire history of a measurement either. You
        can always pass <code style="font-family: Consolas,Inconsolata,Courier,monospace;margin: 0px 0.15em; padding: 0px 0.3em; white-space: pre-wrap; border: 1px solid rgb(234, 234, 234); background-color: rgb(248, 248, 248); border-radius: 3px; display: inline;">start=<timestamp></code>
        to the above URL and it’ll only give you results returned since
        that date.</p>
      <div
title="MDH:SWYgSSdtIHVuZGVyc3RhbmRpbmcgeW91ciBzaXR1YXRpb24gY29ycmVjdGx5LCB5b3Ugd2FudCB0byBzZWUgYSBsaXN0IG9mIG1lYXN1cmVtZW50cyB0aGF0IGluY2x1ZGUgcHJvYmVzIGZyb20gYSBw
YXJ0aWN1bGFyIEFTIGFzIHRoZWlyIHNvdXJjZS7CoCBBdCBwcmVzZW50LCB0aGVyZSdzIG5vIGVh
c3kgd2F5IHRvIG1ha2UgYSBzaW5nbGUgQVBJIGNhbGwgdG8gZ2V0IHRoYXQsIGJ1dCB5b3UgY291
bGQgc3ludGhlc2lzZSB0aGF0IGluZm9ybWF0aW9uIGJ5IGNvbXBhcmluZyB0d28gcmVhc29uYWJs
eSBzbWFsbCBib2RpZXMgb2YgZGF0YS48YnI+PGJyPlRoZXJlIGFyZSB0d28gYnVsayBkYXRhIGRv
d25sb2FkcyB0aGF0IHlvdSBjYW4gdXNlIGZvciB0aGlzOiBbbWVhc3VyZW1lbnQgbWV0YWRhdGFd
KGh0dHA6Ly9mdHAucmlwZS5uZXQvcmlwZS9hdGxhcy9tZWFzdXJlbWVudHMvKSAoYWxyZWFkeSBt
ZW50aW9uZWQsIHVwZGF0ZWQgd2Vla2x5KSBhbmQgdGhlIFtwcm9iZSBkYXRhXShodHRwOi8vZnRw
LnJpcGUubmV0L3JpcGUvYXRsYXMvcHJvYmVzL2FyY2hpdmUvMjAxNS8xMC8pIChkYWlseSkuPGJy
Pjxicj5CYXNpY2FsbHksIHlvdSBuZWVkIHRvIGRvIHRocmVlIHRoaW5nczo8YnI+PGJyPiogKipD
b21waWxlIGEgbGlzdCBvZiBwcm9iZSBpZHMgdGhhdCByZXByZXNlbnQgcHJvYmVzIHdpdGhpbiB0
aGUgQVMgeW91IHdhbnQqKi7CoCBZb3UgY2FuIGRvIHRoaXMgYnkgbG9vcGluZyBvdmVyIHRoZSBw
cm9iZXMgaW4gdGhlIGRhaWx5IGR1bXAgYW5kIGNhcHR1cmluZyB0aGUgaWQgZm9yIGFueSBwcm9i
ZSB0aGF0IGhhcyBgYXNuX3Y0YCBvciBgYXNuX3Y2YCBlcXVhbCB0byB0aGUgQVMgaW4gcXVlc3Rp
b24uPGJyPiogKipDb21waWxlIGEgbGlzdCBvZiBtZWFzdXJlbWVudHMgdXNpbmcgdGhlc2UgcHJv
YmVzKiouwqAgWW91IGNhbiBkbyB0aGlzIGJ5IGxvb3Bpbmcgb3ZlciB0aGUgbGlzdCBvZiBtZWFz
dXJlbWVudHMsIGNhcHR1cmluZyB0aGUgaWRzIG9mIG1lYXN1cmVtZW50cyB0aGF0IGhhdmUgdGhl
IGFmb3JlbWVudGlvbmVkIHByb2JlIGlkcyBpbiB0aGUgYHByb2Jlc2AgbGlzdC48YnI+KiBGZXRj
aCB0aGUgcHJvYmUtc3BlY2lmaWMgZGF0YSBmcm9tIHRoZSBBUEkgdXNpbmcgYm90aCBpZHM6PGJy
Pjxicj7CoCDCoMKgIMKgwqAgaHR0cHM6Ly9hdGxhcy5yaXBlLm5ldC9hcGkvdjEvbWVhc3VyZW1l
bnQvKiptZWFzdXJlbWVudF9pZCoqL3Jlc3VsdC8/cHJiX2lkPSoqcHJvYmVfaWQqKiwqKnByb2Jl
X2lkKiomYW1wO2Zvcm1hdD10eHQ8YnI+PGJyPlRoZSBhYm92ZSBjYWxsIHdpbGwgcmV0dXJuIGFs
bCBvZiB0aGUgcmVzdWx0cyBmb3IgbWVhc3VyZW1lbnQgYCMke21lYXN1cmVtZW50X2lkfWAsIGJ1
dCBvbmx5IGZvciBwcm9iZXMgd2l0aCBvbmUgb2YgdGhvc2UgdHdvIGlkcy7CoCBUaGF0IGxhc3Qg
Yml0LCBgZm9ybWF0PXR4dGAgd2lsbCBlbnN1cmUgdGhhdCB0aGUgcmV0dXJuaW5nIGRhdGEgaXMg
aW4gYml0ZS1zaXplZCBjaHVua3Mgc28geW91IGRvbid0IGdvYmJsZSB1cCAzMGdiIG9mIG1lbW9y
eSBqdXN0IHRvIHBhcnNlIHdoYXQgY29tZXMgb3V0Ljxicj48YnI+V3JpdGUgdGhhdCBpbiBhIGxv
b3AgKndpdGggYSByZWFzb25hYmxlIHdhaXQgdGltZSBiZXR3ZWVuIGVhY2ggcmVxdWVzdCBvciB3
ZSdsbCBnZXQgbWFkIGF0IHlvdSogYW5kIHlvdSd2ZSBnb3QgYSBkZWNlbnQgYm9keSBvZiBkYXRh
IHRvIHdvcmsgd2l0aC48YnI+PGJyPk5vdGUgdGhhdCB0aGVyZSdzIG5vIHJlYXNvbiB0byBmZXRj
aCB0aGUgZW50aXJlIGhpc3Rvcnkgb2YgYSBtZWFzdXJlbWVudCBlaXRoZXIuwqAgWW91IGNhbiBh
bHdheXMgcGFzcyBgc3RhcnQ9Jmx0O3RpbWVzdGFtcCZndDtgIHRvIHRoZSBhYm92ZSBVUkwgYW5k
IGl0J2xsIG9ubHkgZ2l2ZSB5b3UgcmVzdWx0cyByZXR1cm5lZCBzaW5jZSB0aGF0IGRhdGUuPGJy
        Pg=="
style="height:0;width:0;max-height:0;max-width:0;overflow:hidden;font-size:0em;padding:0;margin:0;">​</div>
    </div>
  </body>
</html>