Integraties

Lees hoe je gebruik kunt maken van diverse integraties

REST API

Via de API is het mogelijk om actiepagina's op te halen. Zonder API-token bevat de response enkel publieke informatie, dus geen persoonsgegevens. Met API-token bevat de response ook persoonsgegevens.

Authorisatie

Stuur een Authorization header mee met de request om toegang te krijgen tot niet-publieke gegevens.

Authorization: Bearer {token}

Neem contact op met info@supporta.com om een API-token aan te vragen.

Endpoints

Get campaigns

https://supporta.com/api/{charity}/campaigns

Parameters

{charity}  Vervang met de ID van de betreffende charity.

Optionele filters

/api/{charity}/campaigns?projects[]={project}

Vervang {project} met het gewenste project ID om op te filteren.

/api/{charity}/campaigns?tickets[]={ticket}

Vervang {ticket} met het gewenste ticket ID om op te filteren.

/api/{charity}/campaigns?include_individuals={boolean}

Vervang {boolean} met '1' of '0' om individuele acties wel of niet op te halen.

/api/{charity}/campaigns?include_teams={boolean}

Vervang {boolean} met '1' of '0' om teamacties wel of niet op te halen.

/api/{charity}/campaigns?search={search}

Vervang {search} met een zoekterm om op te zoeken.

/api/{charity}/campaigns?page={page}&per_page={perPage}

Vervang {page} met een paginanummer en {perPage} met het aantal resultaten per pagina om de data gepagineerd op te halen.

/api/{charity}/campaigns?updated_after={timestamp}

Vervang {timestamp} met een UTC timestamp om resultaten op te halen die sinds de gegeven timestamp zijn gewijzigd. Bijvoorbeeld: 2024-04-08T07:23:24

/api/{charity}/campaigns?created_after={timestamp}

Vervang {timestamp} met een UTC timestamp om resultaten op te halen die sinds de gegeven timestamp zijn gecreëerd. Bijvoorbeeld: 2024-04-08T07:23:24

Response

application/json

{
    data: {
        id: string;
        project: {
            id: string;
            title: string;
            description: string | null;
            logo_url: string | null;
            website: string | null;
            email: string | null;
            donation_message: string | null;
            mail_sender: string | null;
            mail_header_url: string | null;
            fields: ("fundraising_target" | "date" | "phone" | "address")[];
            terms_url: string | null;
            url: string;
            register_url: string;
            campaigns_count: integer;
            funds_raised: integer;
            event: {
                id: string;
                title: string;
                start_date: string;
                logo_url: string | null;
                website: string | null;
                organiser: string;
                fundraising_enabled: boolean;
                active: boolean;
                atleta_url: string;
            } | null;
            locale: "en" | "nl";
            payment_reference: string | null;
            open: boolean;
            allow_individuals: boolean;
            allow_teams: boolean;
            private: boolean;
            enabled: boolean;
            visible: boolean;
            created_at: string;
        };
        team: Campaign | null;
        type: "individual" | "team";
        title: string;
        image_url: string | null;
        thumbnail_url: string | null;
        start_date: string | null;
        end_date: string | null;
        funds_raised: integer;
        fundraising_target: integer | null;
        description: string | null;
        campaigner: string;
        first_name: string;
        last_name: string;
        last_name_prefix: string | null; // vereist een API-token
        last_name_without_prefix: string | null; // vereist een API-token
        company_name: string | null;
        donation_message: string | null;
        onboarding: boolean;
        locale: "en" | "nl";
        url: string;
        created_at: string;
        email_opt_in: boolean;
        marketing_email_opt_in: boolean;
        enabled: boolean;
        phone: string | null; // vereist een API-token
        street: string | null; // vereist een API-token
        house_number: string | null; // vereist een API-token
        extra_address_line: string | null; // vereist een API-token
        zip_code: string | null; // vereist een API-token
        city: string | null; // vereist een API-token
        country: string | null; // vereist een API-token
        user: { // vereist een API-token
            id: string; // vereist een API-token
            email: string; // vereist een API-token
            first_name: string; // vereist een API-token
            last_name: string; // vereist een API-token
            full_name: string; // vereist een API-token
        };
    }[];
    links: {
        first: string;
        last: string | null;
        prev: string | null;
        next: string | null;
    };
    meta: {
        current_page: integer;
        from: integer | null;
        path: string;
        per_page: integer;
        to: integer | null;
        has_more_pages: boolean;
    };
    charity: {
        id: string;
        title: string;
        description: string | null;
        website: string | null;
        email: string | null;
        phone: string | null;
        brand_color: string | null;
        locale: string;
        logo_url: string | null;
        privacy_statement: string | null;
        payment_reference: string | null;
        url: string;
    };
}


Get donations

https://supporta.com/api/{charity}/donations
Enkel toegankelijk met API-token.

Parameters

{charity}  Vervang met de ID van de betreffende charity.

Optionele filters

/api/{charity}/donations?projects[]={project}

Vervang {project} met het gewenste project ID om op te filteren.

/api/{charity}/donations?page={page}&per_page={perPage}

Vervang {page} met een paginanummer en {perPage} met het aantal resultaten per pagina om de data gepagineerd op te halen.

/api/{charity}/donations?updated_after={timestamp}

Vervang {timestamp} met een UTC timestamp om resultaten op te halen die sinds de gegeven timestamp zijn gewijzigd. Bijvoorbeeld: 2024-04-08T07:23:24

/api/{charity}/donations?created_after={timestamp}

Vervang {timestamp} met een UTC timestamp om resultaten op te halen die sinds de gegeven timestamp zijn gecreëerd. Bijvoorbeeld: 2024-04-08T07:23:24

Response

application/json

{
    data: {
        id: string;
        campaign: {
            id: string;
            project: {
                id: string;
                title: string;
                description: string | null;
                logo_url: string | null;
                website: string | null;
                email: string | null;
                donation_message: string | null;
                mail_sender: string | null;
                mail_header_url: string | null;
                fields: ("fundraising_target" | "date" | "phone" | "address")[];
                terms_url: string | null;
                url: string;
                register_url: string;
                campaigns_count: integer;
                funds_raised: integer;
                locale: "en" | "nl";
                payment_reference: string | null;
                open: boolean;
                allow_individuals: boolean;
                allow_teams: boolean;
                private: boolean;
                enabled: boolean;
                visible: boolean;
                created_at: string;
            };
            type: "individual" | "team";
            title: string;
            image_url: string | null;
            thumbnail_url: string | null;
            start_date: string | null;
            end_date: string | null;
            funds_raised: integer;
            fundraising_target: integer | null;
            description: string | null;
            campaigner: string;
            first_name: string;
            last_name: string;
            donation_message: string | null;
            onboarding: boolean;
            locale: "en" | "nl";
            url: string;
            created_at: string;
            email_opt_in: boolean;
            marketing_email_opt_in: boolean;
            enabled: boolean;
            phone: string | null;
            street: string | null;
            house_number: string | null;
            extra_address_line: string | null;
            zip_code: string | null;
            city: string | null;
            country: string | null;
            user: {
                id: string;
                email: string;
                first_name: string;
                last_name: string;
                full_name: string;
            };
        };
        amount: integer;
        name: string | null;
        first_name: string | null;
        last_name: string | null;
        last_name_prefix: string | null;
        last_name_without_prefix: string | null;
        company_name: string | null;
        message: string | null;
        active: boolean;
        payment_status: "pending" | "paid" | "canceled" | "expired" | "failed";     
        donation_invoice_id: string;
        created_at: string;
        payment_method: "applepay" | "bancontact" | "banktransfer" | "belfius" | "creditcard" | "directdebit" | "eps" | "giftcard" | "giropay" | "ideal" | "kbc" | "paypal" | "paysafecard" | "przelewy24" | "sofort" | "offline";
        mollie_payment_id: string;
        token: string;
        billing_url: string;
        billing_info: string;
        service_fee_amount: integer;
        service_fee_vat_amount: integer;
        donation_invoice_url: string;
        fee_invoice_url: string;
        status_url: string;
        email: string;
        email_opt_in: boolean;
    }[];
    links: {
        first: string;
        last: string | null;
        prev: string | null;
        next: string | null;
    };
    meta: {
        current_page: integer;
        from: integer | null;
        path: string;
        per_page: integer;
        to: integer | null;
        has_more_pages: boolean;
    };
    charity: {
        id: string;
        title: string;
        description: string | null;
        website: string | null;
        email: string | null;
        phone: string | null;
        brand_color: string | null;
        locale: string;
        logo_url: string | null;
        privacy_statement: string | null;
        payment_reference: string | null;
        url: string;
    };
}