All time pledges

I tried using the API v1 to get a list of all the pledges in python:

all_pledges = []
cursor = None 
while True:
    pledges_response = api_client.fetch_page_of_pledges(
        campaign_id, 25,
        cursor = cursor,
    )
    cursor = api_client.extract_cursor(pledges_response)
    all_pledges.append(pledges_response.data())
    if not cursor:
        break

I’m looking for a list of my all-time pledges. Right now I am returned with a list of about 1900 pledges with 300 declined since (which I assume are people who are no longer a member), which matches my 1600 pledges total, but there should be a lot more people who have ‘declined since’, as I already have about 2500 exit surveys.

The dates for the declined since are spread over the three years. I’m confused. Why aren’t all 2500 exited members in the pledge list?

I’m not using the API for an app, so just using my creator access token. I don’t understand how to use the v2 just yet.

Using api v1 may be unreliable. Try pulling your members via api v2.

I was afraid that this were to be the case. I want to use this method:

Looking to dive in to the API? You can use your Creator’s Access Token you get when registering a Client in place of the token you’d get back from the OAuth flow to start exploring the different endpoints or building a single creator application or tool.

Can someone direct me to how to pass the creator access token in python so that I don’t get a 401 response if I put this in:

from flask import Flask
import patreon
import requests
import time
import pandas as pd
import numpy
import json

access_token = "<access_token>"
api_client = patreon.API(access_token)
campaign_id = campaign_response.data()[0].id()

url = "https://www.patreon.com/api/oauth2/v2/campaigns/{campaign_id}/members<etc,etc>"

#what arguments (and how) do I need to pass to the requests.get() if I just put in the url I get 401.
requests.get(url)

I also tried to use the method on the github without the @app.route function because frankly I don’t understand what that is.

#This returns  'API' object has no attribute 'get_identity'
user_response = api_client.get_identity()

#else I would just use this right?  Or is this also v1?
user = user_response.data()
memberships = user.relationship('memberships')

Just use creator access token in place of access_token. They are both access tokens.