Skip to content

Developers

Mostly about Wild Apricot API. Feel free to share examples of your code!

78 results found

  1. Pre-flight not handled for API V2

    I am trying to get data for my app using wild apricot.Im using hybrid app. Currently when I am trying to access
    events.

    https://api.wildapricot.org/v2/Accounts/209675/Events

    This is my url.
    Then I have to send authorization as header in the GET request.
    But whenever I send authorization as header in GET request. It comes as a pre-flight and first OPTIONS request is sent.

    But the server is not handling OPTIONS request. How do I get over this scenario.

    Request URL:https://api.wildapricot.org/v2/Accounts/209675/Events
    Request Method:OPTIONS
    Status Code:405 Method Not Allowed
    Remote Address:96.43.192.222:443
    Response Headers
    view source
    Cache-Control:no-cache
    Connection:close
    Content-Length:76
    Content-Type:application/json; charset=utf-8
    Date:Tue, 02 Aug…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Team Mobile responded

    That happens because your try to access API from web browser (possibly Ionic builder). The web app makes cross origin requests, which are not supported in API.

    There is no problem to access API from mobile app, our own mobile app for admins works exactly this way. However if you try to access API from ionic builder, then you will face CORS error. Here is a detailed explanation of reasons and possible workaround: blog.ionic.io/handling-cors-issues-in-ionic.

    Please let me know if the tutorial helps or not.

    Dmitry

  2. How to access each of the options and whole structure of custom field in event

    Hi,
    I am creating a client for wild apricot. So to facilitate event registration the form has to be created in mobile app. To do the same the custom event fields has to be shown in the mobile client. So when I try to access the event Registration or event eventdetails using API.

    {
    "FieldName": "Testing field",
    "Value": [
    {
    "Id": 8815648,
    "Label": "New Item 1"
    }
    ]
    }

    Currently I am using https://api.wildapricot.org/v2/Accounts/209675/EventRegistrations?eventId=2297435

    also tried with
    https://api.wildapricot.org/v2/Accounts/209675/EventRegistrations/16216925

    I get the Field and label for it. but there is a field tyepe and list of values assocaited with it. how…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Team Mobile responded

    If you need a list of field descriptions, you should get event by id. The data you need are located in Event.Details.EventRegistrationFields

  3. API cannot change email settings?

    I've been trying for a while now to get the fields in a contact called:

    Email delivery disabled
    Receiving emails disabled

    to change using the API update contact call. I can change other fields, these two just refuse to change. Is there a trick to this, or is this another one of those 'you can't do it' features?

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Team Mobile responded

    According to contact fields description both of these fields are read only.
    You can get contact fields metadata by calling https://api.wildapricot.org/v2/accounts/XXX/ContactFields/ The result is a collection of fields descriptions. Each record has a parameter “IsEditable”, so you can check if any specific field can be modified with API or not.

  4. Attempting to use mod_auth_openidc to authenticate with SSO, OAuth2 standards?

    I'm attempting to configure our third party website using Apache and modauthopenidc to invoke the SSO authentication endpoints on our WildApricot website.

    I've gotten as far as manually assembling a correct authentication request URL:

    https://discoamigos.wildapricot.org/sys/login/OAuthLogin?response_type=authorization_code&scope=contacts_me&client_id=...&state=...&redirect_uri=...&nonce=...&claimed_account_id=...

    That shows me a login dialog as expected... However, when trying to use mod-auth-openidc to generate the authorization URL, it doesn't allow the requesttype of "authorizationcode". It only lets me set the request type to "code", which seems to break the authentication page fetch on the WA end.

    This would seem to be an issue with Oauth2 'standards'. It would…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Team Mobile responded

    Issue fixed, oauth should work with mod_auth_openidc as expected.

  5. Renewing Membership with API

    We would like to offer our members the chance to renew their membership from our WordPress site. How do you recommend we use the API to accomplish this in a way that integrates well with the regular Wild Apricot renewal process?

    Ideally we would update the contact (change the membership level, if needed, and update the renewal due date), produce an invoice for the renewal, and record a payment for that invoice. Have I missed something?

    Since the API still does not allow the creation of new invoices directly (I can generate an invoice for an event, but not for…

    2 votes

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  6. Server error when I am trying to get a token using POSTMAN

    I am trying to follow the apikey authentication and i am using POSTMAN to test this. Below is my request but I am getting 500 server error.

    POST /auth/token HTTP/1.1
    Host: oauth.wildapricot.org
    Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Cache-Control: no-cache
    Postman-Token: b0e747fe-861b-954e-0f70-011fc0f94d88
    Content-Type: application/x-www-form-urlencoded

    also I tried with scope and grant type

    POST /auth/token?granttype=clientcredentials&scope=auto HTTP/1.1
    Host: oauth.wildapricot.org
    Authorization: Basic XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
    Cache-Control: no-cache
    Postman-Token: ee9d3021-4238-a403-e028-6d7ef4aba5ee
    Content-Type: application/x-www-form-urlencoded

    Response:
    {
    "Message": "An internal error has occured. Please contact Wild Apricot support.\r\n Request ID:0531c255bfc84e1484fefe00d34ab82a."
    }

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    Resolved  ·  1 comment  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  7. Retrieve event organizer details

    I would like to be able to retrieve the event organizer information (name and email) via the Event API calls.
    Our event organizers are also our featured speakers. We would like to be able to create a list of event titles, dates and times, and speakers.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  8. Customer and member creation from another system.

    We are planning to create Customer and member information from another system into WildApricot. Our Chapter membership uses WildApricot and we would like to automate chapter membership information from our system to WA database through web services call. Has anyone implemented similar work or recommendation.

    Thanks.

    Sundar

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  9. Single Sign On - second step Authenticating the user

    Any one please help me to complete this authenticating the user using the authentication code. i got the following error

    URL:
    https://oauth.wildapricot.org/auth/token

    granttype=authorizationcode&authorizationcode=5183ab5986ee53e6fb850a7f44c765d4&clientid=xxxx&redirecturi=http://localhost/wapi/&scope=contactsme&state=local

    Array
    (
    [0] => Authorization: Basic bXlpbDEzaWhtZzp2MGhqZnAyNW4xZmtteTJjaj2w=
    [1] => Content-Type: application/x-www-form-urlencoded
    )
    {"Message":"An internal error has occured. Please contact Wild Apricot support.\r\n Request ID:530451cb095c4c6895389a077ac9016d."}

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  10. Bug in example PHP application

    Hi,
    if you're using the provided example PHP application there's a small bug that can impact authentication.

    In function getAuthTokenByAdminCredentials

    CHANGE:

    $data = sprintf("grant_type=%s&username=%s&password=%s&scope=%s", 'password', $login, $password, $this->tokenScope);

    TO:

    $data = sprintf("grant_type=%s&username=%s&password=%s&scope=%s", 'password', urlencode($login), urlencode($password), urlencode($this->tokenScope));

    We had a user unable to login and found that a reserved character in the password meant the string was being incorrectly parsed. urlencode() escapes special characters so they are passed through correctly.

    Regards,
    Russell.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  11. I would like to be able to create a payment without creating an invoice: Just "this contact paid this amount on this date".

    I would like to be able to create a payment without creating an invoice or associating with an event: Just "this contact paid this amount on this date".

    I believe that can be done from the WA web site, but I have batch payments already made via an external (private) system, and I want to upload them into WildApricot.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  12. API2 Export Invoices to Excel through VBA

    I would like to export our invoices to Excel trough API, as I need country, TAX info, deleted invoices to do a proper administration.

    Can someone send me an example how to connect to WA through VBA using API v2?

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    Resolved  ·  4 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  13. PHP Code - Creating a New Payment for Specific Invoice (API V2)

    I want to create a new payment for specific invoice by using PHP client app.

    Anybody have done PHP client through Wild Apricot API v2. Please share if you have done any PHP code sample which shows Creating a New Payment for Specific Invoice, it will be great help.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  14. Cannot get access token after successful SSO

    I am able to obtain authorization_code from OAuthLogin, but cannot get access token from oauth.wildapricot.org with it.

    The failure occurs due to CORS although I believe I am making the request from the same origin (SSOfail_CORS.png).

    If I disable CORS, the failure behaves differently. A pop-up is shown asking for username+password (SSOfail_noCORS.png). This pop-up keeps repeating after entering valid credentials, and must eventually be canceled to continue.

    Here is the code that makes access token request:

      $.post(
        "https://oauth.wildapricot.org/auth/token",
        {
          authorization_code: code,
          client_id:          "xxxxxxx",
          client_secret:      "xxxxxxxxxxxxxxxxxxxxxxx",
          redirect_uri:       "https://rbc.wildapricot.org/Schedule",
          scope:              "auto"
        },
        function(data, status){
          alert("Data " + JSON.stringify(data) + "\nStatus: " +
    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    14 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Dmitry Smirnov responded

    The reason is that you pass client_id and client_secret as a form parameters, but they should be passed in Authorization header.

    API is expected to be used from server code or from standalone application. Currently JS applications are not supported. Nature of JS applications does not allow to keep secret, so any user can extract auth token from JS application. I would recommend to implement all interactions with public API using some server-side app. It can be PHP / python or even google script app.

  15. oAuth work with Discourse SSO

    I'm trying to understand if Wild Apricot's SSO implementation will work out of the box with Discourse's oAuth SSO implementation, or if I need to develop a plugin for Discourse to authenticate with WA.

    Discourse, a discussion platform, provides a built-in oAuth SSO client. There are screenshots of the configuration here - https://meta.discourse.org/t/official-single-sign-on-for-discourse/13045

    On Discourse, for the SSO URL, I have put in what I believe is the correct URL for the authorized application that I have made in our WA account:

    https://abea.bike/sys/login/OAuthLogin?client_id=<WA CLIENT ID>&redirecturi=http%3A%2F%2Fdiscourse.cyclingsavvy.bike%2F&scope=contactsme&responsetype=authorizationcode&claimedaccountid=<WA ACCOUNT ID>

    Where <WA CLIENT ID> is configured…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  16. Data returned in contacts/me

    Hi,
    using example PHP code and worked out that if we authenticate to the API as a user then we can retrieve the user's ID with the contacts/me call, but it returns limited data about the user. It does not return membership field values. Is there a way, when logged in as a user, to retrieve the users record including datafields?

    Just for context, I'm writing a joomla auth plugin. I want to first authenticate the user (hence using the user credentials) and once authenticated I would like to get some of the data to sync into the Joomla account…

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Dmitry Smirnov responded

    Current version of API provides only limited dataset in /contacts/me requests. If your application needs more information then it can access API using API key. Our Wordpress authentication plugin works exectly this way.

  17. POS

    http://www.revenuquebec.ca/en/entreprises/obligationsparticulieres/restauration/mev/default.aspx

    We have to install an automatic tax recorder for revenue quebec since we include alcohol sales at our events.

    Do you know if WildApricot would be able to submit taxes directly to the recorder, have you seen any successful pos (cash register) solutions implemented with wild apricot through the API?

    Thank You

    Carson

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Dmitry Smirnov responded

    WildApricot is not able to submit taxes information to the recorder. And I don’t know about POS solution, which uses Wild Apricot.

  18. Sample C# Code With New APIKEY

        private const string AllScopes = "general_info contacts finances events event_registrations account membership_levels settings";
    

    var authData = string.Format("granttype={0}&scope={1}", "clientcredentials",AllScopes);

            var response = System.Net.WebRequest.Create(Common.OAuthServiceUrl)
                .SetBasicAuth("APIKEY", "........YOUR API KEY HERE......")
                .SetData(authData)
                .GetResponse();
    

    Extension Methods:

        public static WebRequest SetData(this WebRequest request, string data, string contentType = MimeFormUrlEncoded, string method = "POST")
        {
            request.Method = method;
            request.ContentType = contentType;
            byte[] sentData = Encoding.UTF8.GetBytes(data);
    
            request.ContentLength = sentData.Length;
            Stream sendStream = request.GetRequestStream();
            sendStream.Write(sentData, 0, sentData.Length);
            sendStream.Close();
    
            return request;
        }
    
        public static WebRequest SetBasicAuth(this WebRequest request, string userName, string password)
        {
            var credentials = string.Format("{0}:{1}", userName, password);
            var encoded = System.Convert.ToBase64String(System.Text.Encoding.UTF8.GetBytes(credentials));
            request.Headers.Add("Authorization", "Basic " + encoded);
    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
  19. User Permissions

    I'm working with your API and I've noticed that individual members only have permission to make requests for their own contact information and the account information. I was wondering:

    Is there a way to return the users ID who has logged in rather than the ID of our WA account?

    How to we assign more permissions globally as we'd like our members to be able to view and register for events through an app we're building.

    Thanks so much.

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Dmitry Smirnov responded

    1. If you access API using contact’s credentials, then you can use /v2/accounts/XXX/contacts/me request to get current user’s information, including his ID.

    2. There is no way to give more permissions to contacts/members. However, if you are building web application, which runs in trusted environment, you can make some API requests using API key rather than contact credentials. When you access API with API key, then you have full permissions to events and event registrations.

  20. Please help with API version 1 to API version 2

    I am part of a voluntary organization and we received an e-mail about updating to API version 2 and same changes that needed to be made. We are all in way over our head and I just took over the website management this week. I would appreciate any and all help.

    We don't even know if we are using API. I will do anything I need to do but I really need help. Again, I am not paid this is for a completely voluntary organization.

    Thanks,

    Bradley Bearden

    1 vote

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  API  ·  Admin →
    How important is this to you?

    We're glad you're here

    Please sign in to leave feedback

    Signed in as (Sign out)
    Resolved  ·  Dmitry Smirnov responded

    If you know nothing about API, then most probably you don’t use it and can forget about that e-mail.

    However if you, or someone of your collegues developed custom software to automate your work, then you should ask a developer to update this software.

  • Don't see your idea?

Developers

Categories

Feedback and Knowledge Base