close

K7 Endpoint Security-Aktivierung

Die Installation benötigen Sie für das JSON-API-Add-on ein Support-Lizenz zu kaufen? Die Event-Espresso JSON API-Add-on installiert wie jede andere Wordpress-Plugin (). Einmal installiert, konfiguriert werden nur die Einstellungen, auf Ihre Bedürfnisse, im WP-Admin> Veranstaltung Espresso> API-Einstellungen Seite Ihrer Veranstaltung Espresso versorgt Wordpress-Website. Testen der JSON-API, um die JSON-API korrekt funktioniert auf Ihrer Webseite stellen Sie sicher, fügen Sie diese bis zum Ende Ihrer Veranstaltung Espresso versorgt Website URL: /espresso-api/v1/events/public.pretty_json Beispiel: yoursite.com/espresso -api / v1 / events / public.pretty_json Actual Beispiel aus unserer Testfahrt Website: JSON API Ausgabebeispiel API Codex Event Espresso JSON API gibt Entwicklern eine komplette API-Plattform für den direkten Zugriff auf: Wenn alles richtig konfiguriert ist, werden Sie etwas sehen Ereignisdaten und Teilnehmerdaten sicher und effizient von außerhalb des Web-Servers. Alles, was ein Entwickler braucht, zu wissen, über die API Endpoint-URL für Ihre Website. Beispiel: AuthentifizierungPrivate Information Für die meisten Anfragen an die API zu machen, müssen Sie mit jeder Anforderung in der URL einen Sitzungsschlüssel zu senden. ZB: mysite.com/espresso-api/v1/events/qwer1234 (wobei "qwer1234" ist der Sitzungsschlüssel). Um einen Sitzungsschlüssel zu erwerben, eine HTTP POST senden / GET {Wordpress-Website} / Espresso-api / v1 / authentifizieren mit GET oder POST-Parameter: (., Die ein Wordpress-Benutzer-Benutzernamen und Passwort) sind "Benutzername" und "Passwort" zum Beispiel: GET mysite.com/espresso-api/v1/authenticate?username=admin&password=3v3nt (Anmerkung: an diesem Endpunkt mit GET ist nicht für die Produktion empfohlen, da es weniger sicher ist als eine POST sendet) POST mysite.com/espresso -api / v1 / authentifizieren mit Körper: Benutzername: admin Kennwort: 3v3nt Bei Erfolg wird die Antwort aussehen: { "Status": "OK", "status_code": 200, "Körper": { "session_key": "fwseljoxy5"}} Bei einem Fehler wird die Antwort wie folgt aussehen: { "status": "Bad Benutzernamen und Passwort-Kombination.", "status_code": 401} Öffentliche Informationen Event Espresso Website-Administratoren können einige Informationen ermöglichen zu seinöffentlich zugänglich, damit keine Authentifizierung erforderlich ist, darauf zuzugreifen. Um diese Funktion zu aktivieren, müssen sie auswählen, um auf der Event-Espresso-API-Seite Einstellungen "Public API Zugriff erlauben". Zur Abfrage für die Information der Öffentlichkeit, gibt es keine Notwendigkeit, zu authentifizieren und einen Sitzungsschlüssel abrufen. Stattdessen verwenden Sie einfach die Zeichenfolge 'public' anstelle eines Sitzungsschlüssels in allen Anfragen. ZB mysite.com/espresso-api/v1/events/public. Bitte beachten Sie den Abschnitt mit dem Titel "Berechtigungen" für Informationen darüber, welche Informationen öffentlich zur Verfügung stehen, wenn diese Funktion aktiviert ist. Antwort / Anfrage Formate (XML, JSON, pretty_json) diese API unterstützt sowohl JSON (Standard) und XML-Formate. Um eine Antwort zurück in XML erhalten, fügen Sie einfach ".xml" zu einem der Sitzungsschlüssel (zB "mysite.com/espresso-api/v1/events/{session_key}.xml?id__lt=10" oder "mysite. com / Espresso-api / v1 / events / 14 / {session_key} .xml?). Wenn Sie Ihre JSON möchten in einem besser lesbaren, aber weniger effizient, Format zurückgegeben zu haben, einfach das Format zu "pretty_json 'gesetzt (zB"Mystei.com/espresso-api/v1/events/{session_key}.pretty_json?id__in=1,23,342) Anfragemethoden (GET, POST, PUT, DELETE) Nach RESTful Prinzipien, die HTTP-Request-Methode an einen Endpunkt Diktat gesendet Funktionalität in dieser API. Zum Beispiel: bei einer Anforderung von DELETE die Anfragemethode senden, wird von der API-Server als die gleiche Anforderung mit dem PUT-Request-Methode sehr unterschiedlich interpretiert werden. In der folgenden Dokumentation wird jeder Endpunkt der HTTP-Request-Verfahren voraus, dass die Funktionalität aufruft. (ZB der Titel "GET / Ereignisse", erklärt die Funktionalität, um eine Anfrage zu senden an "/ Ereignisse" mit der GET-Request-Methode). Wenn Sie nicht in der Lage sind Anfrage Methoden senden PUT oder DELETE, haben wir eine Abhilfe zur Verfügung gestellt: in den Körper Ihrer Anfrage, bieten einen Parameter namens 'REQUEST_METHOD' und dessen Wert auf die gewünschte Anforderungsmethode eingestellt. "PUT" (und den üblichen "Körper" Parameter: Wenn Sie zB eine PUT-Anforderung senden möchten, aber nicht in der Lage sind, eine POST-Anforderung mit der Anforderung Parameter 'REQUEST_METHOD' sendenmit dem json oder xml, um anzuzeigen, was Sie aktualisieren möchten). Oder wenn Sie eine DELETE-Anfrage / events / {id} senden möchten / {sessionId}, senden Sie die folgende GET-Request / events / {id} / {sessionid}? REQUEST_METHOD = DELETE. Erste Schritte mit Abfrage-Parameter Auf alle GET-Anforderungen (zB ein HTTP-GET-Anforderung an mysite.com/espresso-api/v1/events,) Sie GET Abfragezeichenfolgeflag Variablen hinzufügen können Ihre Ergebnisse zu filtern, zB mysite.com/espresso-api/v1 /events?Datetime.event_start2012-04-23%2000:00:00. Aber was, wenn Sie alle Ereignisse vor dem 23. April 2012? Sie möchten, dass mysite.com/espresso-api/v1/events?Datetime.event_start<2012-04-23%2000:00:00 zu verwenden, aber das ist ungültig HTTP Abfragezeichenfolgeflag Syntax. Wenn Sie eine Abfrage wie die einfach anhängen '__lt' an den Abfragezeichenfolgeflag Parameter zu ändern, und es wird als <(oder "kleiner als") interpretiert werden. dh mysitecom / Espresso-api / v1 / Ereignisse Datetime.event_start__lt = 2012-04-23% 2000: 00: 00. Folgende Operatoren stehen zur Verfügung: MySQL Operator String anhängen Parameter Beispiel zur Abfrage <__lt zB:mysite.com/espresso-api/v1/events?Datetime.event_start__lt=2012-04-23%2012:23:56 <= __lte zB: mysite.com/espresso-api/v1/events?Datetime.event_start__lte=2012- 04-23% 2012: 23: 56> __gt zB: mysite.com/espresso-api/v1/events?Datetime.event_start__gte=2012-04-23%2012:23:56> = __gte zB: mysite.com/espresso -api / v1 / Ereignisse Datetime.event_start__gt = 2012-04-23% 2012: 23: 56 LIKE __like zB: mystie.com/esresso-api/v1/attendees?fname__like=%25Tim%25 (beachten Sie, dass '%' urlencoded ist% 25) IN __in zB: mysite.com/espresso-api/v1/registrations__in=234,432,345 Sie auch Abfrage auf den meisten verwandten Modelle basieren, solange sie Teil der Antwort des Endpunkts sind Sie currenlty anfragende sind. Zum Beispiel ist Preis ein ähnliches Modell von Ereignis, und wird immer auf jede Abfrage zu Veranstaltungen enthalten. Also, wenn Sie alle Ereignisse mit einem Preis von 12,00 zu finden, könnten Sie eine Abfrage wie mysite.com/espresso-api/v1/events/{session_key}?Price.amount=12.00 tun. Weitere Beispiele: Beispiel Anfrage Beschreibung generierten SQL-WHERE-Anweisung fürBEKOMMEN mysite.com/espresso-api/v1/events/{session_key}?name__like=%25party%25&description__like=%25all%20fun%25 Holen Sie sich alle Veranstaltungen, bei denen der Name eine Teil "Partei" hat, und wo die Ereignisbeschreibung hat die Teil 'alle Spaß' WHERE EVENT_NAME LIKE '% Partei%' AND event_desc LIKE '% aller Spaß%' GET mysite.com/espresso-api/v1/events/{session_key}?/events/{session_key}?Datetime.event_start__lt=2012-02-06%2012:23:56 erhalten alle Ereignisse, die vor dem 6. Februar beginnen 2012 WHERE Datetime.event_start < '2012-02-06% 2012: 23: 56' GET mysite.com/espresso-api/v1/registrations/{session_key}?Event.id__lt=5 get alle Registrierungen, deren zugehörige Event.id weniger als 5 WHERE wp_events_detail <5 POSTen (erstellen) mit Temp Ids Wenn info eine neue (zB Buchung Anmeldung Info Espresso-api / v1 / Registrierungen / {sessionId zu schaffen, um eine Ressource POSTen }) Ihre bald-zu-sein erstellte Ressource wird noch nicht eine ID haben. Insetad, müssen Sie eine temporäre ID angeben. Temporäre IDs sind Strings mit "temp-" ab undfolgende von jeder eindeutige Zeichenfolge (beispielsweise "temp-my-new-reg", "temp-123", "temp-a", usw.). Warum Temporary Ids verwenden (statt nur das ID-Feld ignoriert wird)? Temporäre Ids sind praktisch, wenn mehrere verwandte Ressourcen zu schaffen, und damit können Sie den bald-zu-sein erstellte Ressourcen zu verweisen. Zum Beispiel, die Schaffung 2 Registrierungen auf einer einzigen neuen Transaktion. Jede Registrierung würde ihre eigenen einzigartigen Temp Id haben, (zB "temp-REG1" AND "temp-REG2" ") und jeder würde ihre verschachtelten Transaktion von id Satz zu einem einzigen Temp Id haben (zB" temp-Transaktion-for-both- regs "). Beispiel Anfrage: {    "Anmeldungen": [       {          "Id": "temp-REG1",          "Status": "not_approved",          "Date_of_registration": "2012.12.10 16.12.31",          "Final_price": 10,          "Code": "1-50c67a6f172e1",          "URL_LINK": null,          "Is_primary": true,          "Is_group_registration": true,          "Is_going": true,          "Is_checked_in": false,          "Transaktion":{"Id": "temp-Transaktion-für-beide-regs"          }       },       {          "Id": "temp-REG2",          "Status": "not_approved",          "Date_of_registration": "2012.12.10 16.12.31",          "Final_price": 10,          "Code": "1-50c67a6f172e1",          "URL_LINK": null,          "Is_primary": false,          "Is_group_registration": false,          "Is_going": true,          "Is_checked_in": false,          "Transaktion":{             "Id": "temp-Transaktion-für-beide-regs"          }       }    ] } Abfrage Limits Standardmäßig werden alle Abfragen maximal 50 primären Elemente ( "Primär Artikel 'kehrt das Element angefordert, nicht verwandte Elemente bedeutet. Also auf eine Anfrage, die an mysite.com/espresso-api/v1/events/public~~V würde sein "Ereignisse", nicht die damit verbundenen Datetimes, Veranstaltungsorte oder Kategorien, etc.). Wenn Sie diese Grenze zu ändern, stellen eine weitere Abfrage-Parameter namens 'Limit'. ZB mysite.com/espresso-api/v1/events/{sessionkey}?limit=75 odermysite.com/espresso-api/v1/attendees/{sessionkey}?id__gt=50&limit=50 (die die ersten 75 Artikel anfordern, wird der zweite die ersten 50 Elemente mit einer ID von mehr als 50, erhalten, die eine bequeme sein könnte Weg Paginierung tun). Die Abfragelimit Parameter auf den regulären Endpunkten für GETs unterscheidet sich von der Abfragelimit auf Ergebnisse aus dem Cache. Bitte beachten Sie den Abschnitt "Caching". Derzeit gibt es keine 'Offset' Parameter für die Suche nach Grenzen für regelmäßige Endpunkte (dh wird mysite.com/espresso-api/v1/events/{sessionkey}?limit=150,50 nicht funktionieren). Diese Funktion wird in zukünftigen Versionen der API geplant. Endpunkte Die API-Datenstruktur ist unabhängig von der Event-Espresso MySQL-Datenbankstruktur (dh die Daten unterschiedlich organisiert. ZB in der Event-Espresso 3.1 Datenbank gibt kein Konzept der "Registrierung" oder "Geschäft", das sind einfach ein Teil von Hier ein Teilnehmer Datensatz.) ist eine, die zeigt, wie die Daten organisiert ist und in der Regel, welche Ressourcen enthalten, welche Informationen. Veranstaltungen, Sie sind zur Zeitkönnen Events und filtern sie GET / Ereignisse erhält alle Ereignisse und ihre zugehörigen Datetimes, Preise, Promocodes, Kategorien und Veranstaltungsorten. Aus Gründen der Effizienz werden die entsprechenden Anmeldungen, die nicht an diesem Endpunkt zurückgegeben. siehe Für diejenigen, GET / events / {id} Registrierungen. Außerdem werden standardmäßig nur aktive Ereignisse zurückgegeben werden (dh mysite.com/espresso-api/v1/events/{session_key} wird exakt die gleichen Ergebnisse wie mysite.com/espresso-api/v1/events/{session_key zurück}? status_in = aktiv, Entwurf, sekundäre / Warteliste), aber Sie können dies natürlich überschreiben, indem Sie einen anderen Wert für den Parameter "Status" zu liefern. Im Folgenden werden alle Teil der Antwort sein und können in der Abfrage-ID verwendet werden: die Veranstaltungs-DB-ID, zB 12 Name: Name des Ereignisses, zB "mike party" Beschreibung: Beschreibung des Ereignisses, zB "alles, was Sie Pizza erleichtern können!" Datetime: Liste von Tupeln wie GET / Datetimes Veranstaltungsorte: Liste von Tupeln der Veranstaltungsorte, GET / Seminar Metadaten: Liste von Tupeln, zB "Metadaten": { "id": 23 "{meta_key}", "{meta_value}", "DATE_ADDED": "2012-03-2323.33.44 "} Status: string. einer der "aktiven", "inaktiv", "offen", "Entwurf", "sekundäre / Warteliste", "laufende", "verweigert", "gelöscht" Limit: integer group_registrations_allowed: boolean group_registrants_max: integer aktiv: boolean member_only: boolean Kategorien: lsit von Tupel wie / categories Promocodes: Liste von Tupeln wie / Promocodes virtual_url: string virtual_phone: string Telefon: string Beispiel Request (erhält alle vor 24. März 2012 durch den Benutzer vorgelegt Ereignisse mit der ID 1) mysite.com/espresso-api/v1/events/{session_key}?submitted__lte=2012-03-24%2012:23:56&user_id= 1 Beispiel Antwort {    "Status": "OK",    "Status_code": 200,    "Körper":{       "Veranstaltungen":[          {             "Id": "1",             "Name": "Jump Til You Drop",             "Description": ". <! - More -> Dies ist ein Test \ r \ n \ r \ n [ESPRESSO_VENUE]",             "Status": "aktiv",             "Grenze": "500",             "Group_registrations_allowed": true,             "Group_registrations_max": "10" ist,"Aktiv": true,             "Member_only": false,             "Virtual_url": "",             "Call_in_number": "",             "Telefon":"",             "Metadaten": {                "Default_payment_status": "",                "Venue_id": "0" ist,                "Additional_attendee_reg_info": "3",                "Add_attendee_question_groups": {                   "1": "1",                   "11": "11"                },                "Date_submitted": "18. Juni 2012",                "Event_hashtag": "",                "Event_format": "",                "Event_livestreamed": "",                "": ""             },             "Datetime": [                {                   "Id": "120",                   "Is_primary": true,                   "Event_start": "2012-10-31 08.00.00",                   "Event_end": "2012-10-31 17.00.00",                   "Registration_start": "2012-07-01 00.01.00",                   "Registration_end": "2012-10-31 23.59.00",                   "Grenze": "0" ist,"Tickets_left": "500"                }             ],             "Locations": [             ],             "Kategorien": [                {                   "Id": "1",                   "Name": "Test der Kategorie",                   "Kennung": "Test-Katze",                   "Description": "Meine Kategorie Inhalt",                   "User": "1"                }             ],             "Promocodes": [             ],             "Preise":[                {                   "Id": "155,0",                   "Name": "Der Eintritt T-Shirt",                   "Menge": "2,00",                   "Description": null,                   "Grenze": "500",                   "Restlichen": 999999,                   "Start_date": null,                   "End_date": null,                   "Ausgabe Kosten": {                      "Id": 1,                      "Name": "Grundpreis",                      "Is_member": false,                      "Is_discount": false,"Is_tax": false,                      "Is_percent": false,                      "Is_global": true,                      "Ordnung": 0                   }                },                {                   "Id": "155,2",                   "Name": "Die Mitglieder Eintritt",                   "Menge": "2,00",                   "Description": null,                   "Grenze": "500",                   "Restlichen": 99999,                   "Start_date": null,                   "End_date": null,                   "Ausgabe Kosten": {                      "Id": 4,                      "Name": "Preis für Mitglieder",                      "Is_member": true,                      "Is_discount": false,                      "Is_tax": false,                      "Is_percent": false,                      "Is_global": true,                      "Ordnung": 0                   }                },                {                   "Id": "154,0",                   "Name": "General Admission","Menge": "0,01",                   "Description": null,                   "Grenze": "500",                   "Restlichen": 999999,                   "Start_date": null,                   "End_date": null,                   "Ausgabe Kosten": {                      "Id": 1,                      "Name": "Grundpreis",                      "Is_member": false,                      "Is_discount": false,                      "Is_tax": false,                      "Is_percent": false,                      "Is_global": true,                      "Ordnung": 0                   }                },                {                   "Id": "154,2",                   "Name": "Die Mitglieder Eintritt",                   "Menge": "0,01",                   "Description": null,                   "Grenze": "500",                   "Restlichen": 99999,                   "Start_date": null,                   "End_date": null,                   "Ausgabe Kosten": {                      "Id": 4,"Name": "Preis für Mitglieder",                      "Is_member": true,                      "Is_discount": false,                      "Is_tax": false,                      "Is_percent": false,                      "Is_global": true,                      "Ordnung": 0                   }                }             ]          }       ]    } } GET / events / {id} ruft ein einzelnes Ereignis und die damit verbundenen, wo {id} die ID der Veranstaltung ist es, die abgerufen werden soll. Akzeptiert keine Abfragezeichenfolgeflag Variablen. Beispiel Anfrage: mysite.com/espresso-api/v1/events/123/{session_key} Beispiel Antwort: {    "Status": "OK",    "Status_code": 200,    "Körper":{       "Event":{          "Id": "1",          "Name": "Jump Til You Drop",          "Description": ". <! - More -> Dies ist ein Test \ r \ n \ r \ n [ESPRESSO_VENUE]",          "Status": "aktiv",          "Grenze": "500",          "Group_registrations_allowed": true,          "Group_registrations_max": "10" ist,          "Aktiv": true,          "Member_only": false,"Virtual_url": "",          "Call_in_number": "",          "Telefon":"",          "Metadaten": {             "Default_payment_status": "",             "Venue_id": "0" ist,             "Additional_attendee_reg_info": "3",             "Add_attendee_question_groups": {                "1": "1",                "11": "11"             },             "Date_submitted": "18. Juni 2012",             "Event_hashtag": "",             "Event_format": "",             "Event_livestreamed": "",             "": ""          },          "Datetime": [             {                "Id": "120",                "Is_primary": true,                "Event_start": "2012-10-31 08.00.00",                "Event_end": "2012-10-31 17.00.00",                "Registration_start": "2012-07-01 00.01.00",                "Registration_end": "2012-10-31 23.59.00",                "Grenze": "0" ist,                "Tickets_left": "500"             }          ],          "Locations": [          ],          "Kategorien": [{                "Id": "1",                "Name": "Test der Kategorie",                "Kennung": "Test-Katze",                "Description": "Meine Kategorie Inhalt",                "User": "1"             }          ],          "Promocodes": [          ],          "Preise":[             {                "Id": "155,0",                "Name": "Der Eintritt T-Shirt",                "Menge": "2,00",                "Description": null,                "Grenze": "500",                "Restlichen": 999999,                "Start_date": null,                "End_date": null,                "Ausgabe Kosten": {                   "Id": 1,                   "Name": "Grundpreis",                   "Is_member": false,                   "Is_discount": false,                   "Is_tax": false,                   "Is_percent": false,                   "Is_global": true,                   "Ordnung": 0                }             },             {                "Id": "155,2",                "Name": "Die MitgliederEintritt",                "Menge": "2,00",                "Description": null,                "Grenze": "500",                "Restlichen": 99999,                "Start_date": null,                "End_date": null,                "Ausgabe Kosten": {                   "Id": 4,                   "Name": "Preis für Mitglieder",                   "Is_member": true,                   "Is_discount": false,                   "Is_tax": false,                   "Is_percent": false,                   "Is_global": true,                   "Ordnung": 0                }             },             {                "Id": "154,0",                "Name": "General Admission",                "Menge": "0,01",                "Description": null,                "Grenze": "500",                "Restlichen": 999999,                "Start_date": null,                "End_date": null,                "Ausgabe Kosten": {                   "Id": 1,                   "Name": "Grundpreis",                   "Is_member": false,"Is_discount": false,                   "Is_tax": false,                   "Is_percent": false,                   "Is_global": true,                   "Ordnung": 0                }             },             {                "Id": "154,2",                "Name": "Die Mitglieder Eintritt",                "Menge": "0,01",                "Description": null,                "Grenze": "500",                "Restlichen": 99999,                "Start_date": null,                "End_date": null,                "Ausgabe Kosten": {                   "Id": 4,                   "Name": "Preis für Mitglieder",                   "Is_member": true,                   "Is_discount": false,                   "Is_tax": false,                   "Is_percent": false,                   "Is_global": true,                   "Ordnung": 0                }             }          ]       }    } } GET / events / {id} / Anmeldungen gibt für Event alle Anmeldungen mit {id}. Die Ausgabe ist identisch mit GET/registrations?Event.id={id} Anmeldungen GET / Anmeldungen alle Anmeldungen bekommt, und die entsprechenden Teilnehmer, Transaktion, Ereignis, Preis (und Ausgabe Kosten) und Datetime. ID ID des Eintrags (float NOT int) Veranstaltung: TUPLE wie topleve GET / event Teilnehmer: Tupel wie Toplevel GET / Teilnehmer Transaktion: TUPLE wie topleve Transaktion GET Datetime: Tupel wie Toplevel GET / Datetimes Preis: Tupel wie GET / Preise Status: "zugelassen", "annulliert", "not_approved", "offen" date_of_registration: Datumzeit wie '2012-03-23 ​​23.12.53 " final_price: string wie "20.34" Code: string URL_LINK: string is_primary: boolean is_group_registration: string wahr oder falsch is_going: boolean is_checked_in: boolean Beispiel Anfrage: mysite.com/espresso-api/v1/registrations/{session_key}?Attendee.firstname__like=%25Smith%25&is_checked_in=1 // Beachten Sie, dass "%" urlencoded ist% 25 Beispiel Antwort {    "Status": "OK",    "Status_code": 200,    "Körper":{       "Anmeldungen": [          {"Id": "9273",             "Status": "genehmigt",             "Date_of_registration": "2012.10.22 21.14.04",             "Final_price": "0,01",             "Code": "1-50860b7c7d415",             "URL_LINK": null,             "Is_primary": true,             "Is_group_registration": false,             "Is_going": true,             "Is_checked_in": false,             "Event":{                "Id": "1",                "Name": "Jump Til You Drop",                "Description": ". <! - More -> Dies ist ein Test \ r \ n \ r \ n [ESPRESSO_VENUE]",                "Status": "aktiv",                "Grenze": "500",                "Group_registrations_allowed": true,                "Group_registrations_max": "10" ist,                "Aktiv": true,                "Member_only": false,                "Virtual_url": "",                "Call_in_number": "",                "Telefon":"",                "Metadaten": {                   "Default_payment_status": "",                   "Venue_id": "0" ist,"Additional_attendee_reg_info": "3",                   "Add_attendee_question_groups": {                      "1": "1",                      "11": "11"                   },                   "Date_submitted": "18. Juni 2012",                   "Event_hashtag": "",                   "Event_format": "",                   "Event_livestreamed": "",                   "": ""                }             },             "Teilnehmer": {                "Id": "9273",                "Vorname": "aaa",                "Nachname": "aaa",                "Adresse":"",                "Adresse 2":"",                "Stadt":"",                "Bundesland":"",                "Land":"",                "Reißverschluss":"",                "Email":"",                "Telefon":""             },             "Transaktion":{                "Id": "9273",                "Zeitstempel": "2012.10.22 21.14.04",                "Total": "536,66",                "Bezahlt": "0.00",                "Status": "pending","Details": null,                "Tax_data": null,                "Session_data": null             },             "Terminzeit":{                "Id": "120",                "Is_primary": true,                "Event_start": "2012-10-31 08.00.00",                "Event_end": "2012-10-31 17.00.00",                "Registration_start": "2012-07-01 00.01.00",                "Registration_end": "2012-10-31 23.59.00",                "Grenze": "0" ist,                "Tickets_left": "500"             },             "Preis":{                "Id": "154,0",                "Name": "General Admission",                "Menge": "0,01",                "Description": null,                "Grenze": "500",                "Restlichen": 999999,                "Start_date": null,                "End_date": null,                "Ausgabe Kosten": {                   "Id": 1,                   "Name": "Grundpreis",                   "Is_member": false,                   "Is_discount": false,"Is_tax": false,                   "Is_percent": false,                   "Is_global": true,                   "Ordnung": 0                }             }          },          {             "Id": "9274",             "Status": "genehmigt",             "Date_of_registration": "2012.10.22 21.14.04",             "Final_price": "0,01",             "Code": "1-50860b7c7d415",             "URL_LINK": null,             "Is_primary": true,             "Is_group_registration": false,             "Is_going": true,             "Is_checked_in": false,             "Event":{                "Id": "1",                "Name": "Jump Til You Drop",                "Description": ". <! - More -> Dies ist ein Test \ r \ n \ r \ n [ESPRESSO_VENUE]",                "Status": "aktiv",                "Grenze": "500",                "Group_registrations_allowed": true,                "Group_registrations_max": "10" ist,                "Aktiv": true,                "Member_only": false,                "Virtual_url": "","Call_in_number": "",                "Telefon":"",                "Metadaten": {                   "Default_payment_status": "",                   "Venue_id": "0" ist,                   "Additional_attendee_reg_info": "3",                   "Add_attendee_question_groups": {                      "1": "1",                      "11": "11"                   },                   "Date_submitted": "18. Juni 2012",                   "Event_hashtag": "",                   "Event_format": "",                   "Event_livestreamed": "",                   "": ""                }             },             "Teilnehmer": {                "Id": "9274",                "Vorname": "aaa",                "Nachname": "aaa",                "Adresse":"",                "Adresse 2":"",                "Stadt":"",                "Bundesland":"",                "Land":"",                "Reißverschluss":"",                "Email":"",                "Telefon":""             },             "Transaktion":{"Id": "9274",                "Zeitstempel": "2012.10.22 21.14.04",                "Total": "536,66",                "Bezahlt": "0.00",                "Status": "pending",                "Details": null,                "Tax_data": null,                "Session_data": null,             },             "Terminzeit":{                "Id": "120",                "Is_primary": true,                "Event_start": "2012-10-31 08.00.00",                "Event_end": "2012-10-31 17.00.00",                "Registration_start": "2012-07-01 00.01.00",                "Registration_end": "2012-10-31 23.59.00",                "Grenze": "0" ist,                "Tickets_left": "500"             },             "Preis":{                "Id": "154,0",                "Name": "General Admission",                "Menge": "0,01",                "Description": null,                "Grenze": "500",                "Restlichen": 999999,                "Start_date": null,                "End_date": null,"Ausgabe Kosten": {                   "Id": 1,                   "Name": "Grundpreis",                   "Is_member": false,                   "Is_discount": false,                   "Is_tax": false,                   "Is_percent": false,                   "Is_global": true,                   "Ordnung": 0                }             }          }       ]    } } GET / Anmeldungen / {id} eine einzige Registrierung und die damit verbundenen Teilnehmer bekommt, Transaktion, Ereignis, Datum- und Preis (und Ausgabe Kosten), wobei {id} die registration_id ist. Dabei spielt es keine Query-String-Variablen Beispiel Anfrage mysite.com/espresso-api/v1/registrations/9273/{session_key} akzeptieren? Beispiel Antwort {    "Status": "OK",    "Status_code": 200,    "Körper":{       "Registrierung":{          "Id": 1.1          "Status": "genehmigt",          "Date_of_registration": "2012.12.10 16.12.31",          "Final_price": 10,          "Code": "1-50c67a6f172e1",          "URL_LINK": null,          "Is_primary": true,"Is_group_registration": true,          "Is_going": true,          "Is_checked_in": true,          "Event":{             "Id": 1,             "Code": "1-50c679c10fcf0",             "Name": "testevent1",             "Beschreibung":"",             "Status": "aktiv",             "Grenze": 999999,             "Group_registrations_allowed": true,             "Group_registrations_max": 3,             "Aktiv": true,             "Member_only": false,             "Virtual_url": "",             "Call_in_number": "",             "Telefon":"",             "Metadaten": {                "Default_payment_status": "",                "Venue_id": "",                "Additional_attendee_reg_info": 3,                "Add_attendee_question_groups": {                   "1": "1"                },                "Date_submitted": "11. Dezember 2012",                "Event_hashtag": "",                "Event_format": "",                "Event_livestreamed": "",                "": ""             }},          "Teilnehmer": {             "Id": 1,             "Vorname": "WEF",             "Nachname": "wenige",             "Adresse":"",             "Adresse 2":"",             "Stadt":"",             "Bundesland":"",             "Land":"",             "Reißverschluss":"",             "E-Mail": "michael@eventespresso.com",             "Telefon":""          },          "Transaktion":{             "Id": 1,             "Zeitstempel": "2012.12.10 16.12.31",             "Total": 10,             "Amount_paid": 0,             "Status": "pending",             "Details": null,             "Tax_data": null,             "Session_data": null,             "Payment_gateway": "Check"          },          "Terminzeit":{             "Id": 21,             "Is_primary": true,             "Event_start": "2012.12.11 09.00.00",             "Event_end": "2012.12.10 17.00.00",             "Registration_start": "2012.12.09 00.01.00",             "Registration_end": "2016.12.21 23.59.00",             "Grenze": 999999,"Tickets_left": 999.983          },          "Preis":{             "Id": 0,             "Name": "Unbekannt",             "Menge": 10,             "Description": null,             "Grenze": 9999999,             "Restlichen": 999999,             "Start_date": null,             "End_date": null,             "Ausgabe Kosten": {                "Id": 1,                "Name": "Grundpreis",                "Is_member": false,                "Is_discount": false,                "Is_tax": false,                "Is_percent": false,                "Is_global": true,                "Ordnung": 0             }          }       }    } } GET / POST / PUT / Anmeldungen / {id} / Marks die Registrierung mit {id} als aufgegebenes in checkin. Wenn diese Anmeldung bereits eingecheckt, prüft in einer anderen Anmeldung, die den gleichen Teilnehmer und Veranstaltung hat. Gibt die Liste der Anmeldungen, die überprüft wurden in Akzeptiert die folgenden Abfrage-String-Parameter. IgnorePayment: boolean Menge: (integer), eine Menge mitvon 3 entspricht dem gleichen checkin Anfrage 3-mal zu erteilen. Beispiel Anfrage GET / POST / PUT mysite.com/espresso-api/v1/registrations/9273/checkin{session_key} Beispiel Antwort gibt das aktualisierte Registrierungen wie GET / Anmeldungen (keine einzige Anmeldung aus Gründen wie oben erwähnt) Anmerkung: wenn die Zahlung wurde als eingecheckt, nicht überprüft, kann die Registrierung nicht markiert und die folgende Antwort gesendet werden: { "Status": "Checkin verweigert Zahlung nicht vollständig und 'ignorePayment' flag nicht gesetzt..", "status_code ": 500} GET / POST / PUT / Anmeldungen / {id} / Kasse Markiert die Registrierung mit {id} als ausgecheckt. Wenn das Registrierung bereits ausgecheckt ist, prüft eine weitere Registrierung aus, die den gleichen Teilnehmer und Veranstaltung hat. Gibt die Liste der Anmeldungen, die ausgecheckt wurden. Akzeptiert die folgenden Abfrage-String-Parameter: Menge: (integer), unter Verwendung einer Menge von 3 äquivalent ist, die gleiche Kasse Anfrage 3-mal zu erteilen. Beispiel Anfrage GET / POST / PUTmysite.com/espresso-api/v1/registrations/9273/checkout/{session_key} Beispiel Antwort Gibt eine Liste der aktualisierten Registrierungen wie GET / Anmeldungen (keine einzige Anmeldung, für oben genannten Gründen) POST / PUT / Registrierungen Erstellt oder aktualisiert die aufgeführten Anmeldungen. Der Antrag sollte in einem fast identischen Format gesendet werden, was von GET / Anmeldungen ist, wenn dieser Antrag die Vorlage der genannten Anmeldungen zu erstellen / aktualisieren, die derzeit alle Felder auf GET erhalten / Anmeldungen müssen ebenfalls eingereicht werden. (Es gibt Pläne, einige Felder zu haben, auf Standardwerte gesetzt, und nicht alle Felder auf Aktualisierungen erfordern, aber die sind noch nicht implementiert). Beispiel Anfrage POST / Registrierungen // Mit POST Formulardaten / post Parameter "Körper" enthält alle json / xml in der "Körper" Abschnitt der Antwort von GET / Anmeldungen (dh nicht enthalten "Status" oder "status_code ') Körper:{"Anmeldungen": [ { "Id": "temp-new-one", "Status": "not_approved", "Date_of_registration": "2012.12.10 16.12.31", "Final_price": 10, "Code": "1-50c67a6f172e1", "URL_LINK": null, "Is_primary": true, "Is_group_registration": false, "Is_going": true, "Is_checked_in": true, "Event":{ "Id": 1, "Code": "1-50c679c10fcf0", "Name": "testevent1", "Beschreibung":"", "Status": "aktiv", "Grenze": 999999, "Group_registrations_allowed": true, "Group_registrations_max": 3, "Aktiv": true, "Member_only": false, "Virtual_url": "", "Call_in_number": "", "Telefon": "", "Metadaten": { "Default_payment_status": "", "Venue_id": "", "Additional_attendee_reg_info": 3, "Add_attendee_question_groups": { "1": "1" }, "Date_submitted": "11. Dezember2012 ", "Event_hashtag": "", "Event_format": "", "Event_livestreamed": "", "": "" } }, "Teilnehmer": { "Id": "temp-new-one2", "Vorname": "fromapi", "Nachname": "fromapiman", "Adresse":"", "Adresse 2":"", "Stadt":"", "Bundesland":"", "Land": "", "Zip": "", "E-Mail": "michael@eventespresso.com", "Telefon": "" }, "Transaktion": { "Id": "temp-new-one3", "Zeitstempel": "2012.12.10 16.12.31", "Total": 10, "Amount_paid": 0, "Status": "pending", "Details": null, "Tax_data": null, "Session_data": null, "Payment_gateway": "Check" }, "Terminzeit":{ "Id": 20, "Is_primary": true, "Event_start": "2012.12.11 09.00.00", "Event_end": "2012.12.10 17.00.00", "Registration_start": "2012.12.09 00.01.00", "Registration_end": "2016.12.21 23.59.00", "Grenze": 999999, "Tickets_left": 999984 }, "Preis": { "Id": 12, "Name": "GeneralEintritt", "Menge": 10, "Description": null, "Grenze": 9999999, "Restlichen": 999999, "Start_date": null, "End_date": null, "Ausgabe Kosten": { "Id": 1, "Name": "Grundpreis", "Is_member": false, "Is_discount": false, "Is_tax": false, "Is_percent": false, "Is_global": true, "Ordnung": 0 } } } ] } Der obige Anfrage wird eine neue Registrierung, neue Teilnehmer und neue Transaktion erstellen. Es wird auch die neue Registrierung mit Preis mit ID 12, mit dem Ereignis mit der ID 1, verbinden und die für Datum und Uhrzeit mit der ID 20. Es wird auch jede dieser verwandten Modelle gleichzeitig aktualisiert werden: der Preis, Ereignis und für Datum und Uhrzeit (falls Sie würde eher nicht jene im Zusammenhang mit Modellen in teh Zukunft zu aktualisieren müssen Sie nur ihre IDs zur Verfügung zu stellen, aber nicht alle ihre Attribute). Beachten Sie, dass, um eine Anmeldung (oder einem anderen verwandten Modell) Sie einfach bieten eine "vorübergehende id 'Titel' temp- {was} ', (die obigen Anmeldung temporären ID ist" temp-new-one' zu schaffen, dieTeilnehmers ist "temp-new-one2 '. Bitte beachten Sie die oben im Abschnitt über "Report absenden temporäre IDs" für weitere Informationen). Wenn Sie stattdessen eine Registrierung mit ID {id} einfach aktualisieren möchten, würden Sie es als die ID angeben anstelle der oben temporären ID. Wenn die Anforderung abgeschlossen ist, werden die neu erstellten Anmeldungen (und ihre zugehörigen Teilnehmer, Transaktion, Ereignis, Preis und für Datum und Uhrzeit) werden als GET / Registrierungen in genau dem gleichen Format zurückgegeben werden. PUT / Anmeldungen / {id} Aktualisiert die Registrierung (und die damit verbundenen Teilnehmer, Transaktion, Ereignis, Datum- und Preis) mit der ID {id}. Der Körper der Antrag sollte als GET / Anmeldungen / {id} im gleichen Format (außer ohne den "Status" und "status_code '), und die aktualisierten Registrierungs (und verwandte Modelle) zurückgegeben. Beispiel Anfrage {    "Registrierung":{       "Id": 1.1       "Status": "not_approved",       "Date_of_registration": "2012.12.10 16.12.31",       "Final_price": 10,       "Code": "1-50c67a6f172e1",       "URL_LINK": null,"Is_primary": true,       "Is_group_registration": false,       "Is_going": true,       "Is_checked_in": true,       "Event":{          "Id": 1,          "Code": "1-50c679c10fcf0",          "Name": "testevent1",          "Beschreibung":"",          "Status": "aktiv",          "Grenze": 999999,          "Group_registrations_allowed": true,          "Group_registrations_max": 3,          "Aktiv": true,          "Member_only": false,          "Virtual_url": "",          "Call_in_number": "",          "Telefon":"",          "Metadaten": {             "Default_payment_status": "",             "Venue_id": "",             "Additional_attendee_reg_info": 3,             "Add_attendee_question_groups": {                "1": "1"             },             "Date_submitted": "11. Dezember 2012",             "Event_hashtag": "",             "Event_format": "",             "Event_livestreamed": "",             "": ""          }       },       "Teilnehmer": {          "Id": 1,"Vorname": "WEF",          "Nachname": "wenige",          "Adresse":"",          "Adresse 2":"",          "Stadt":"",          "Bundesland":"",          "Land":"",          "Reißverschluss":"",          "E-Mail": "michael@eventespresso.com",          "Telefon":""       },       "Transaktion":{          "Id": 1,          "Zeitstempel": "2012.12.10 16.12.31",          "Total": 10,          "Amount_paid": 0,          "Status": "pending",          "Details": null,          "Tax_data": null,          "Session_data": null,          "Payment_gateway": "Check"       },       "Terminzeit":{          "Id": 20,          "Is_primary": true,          "Event_start": "2012.12.11 09.00.00",          "Event_end": "2012.12.10 17.00.00",          "Registration_start": "2012.12.09 00.01.00",          "Registration_end": "2016.12.21 23.59.00",          "Grenze": 999999,          "Tickets_left": 999984       },       "Preis":{          "Id": 0,          "Name": "Unbekannt",          "Menge": 10,"Description": null,          "Grenze": 9999999,          "Restlichen": 999999,          "Start_date": null,          "End_date": null,          "Ausgabe Kosten": {             "Id": 1,             "Name": "Grundpreis",             "Is_member": false,             "Is_discount": false,             "Is_tax": false,             "Is_percent": false,             "Is_global": true,             "Ordnung": 0          }       }    } } Der obige Anfrage wird die Registrierung mit der ID 1.1, aktualisieren und alle ist es Felder für die gelieferten Werte zu aktualisieren. Hinweis: es wird auch aktualisiert die damit verbundene Teilnehmer, Transaktion, Ereignis, für Datum und Uhrzeit und Preis (in Zukunft werden Sie nur die ID zur Verfügung stellen müssen). Derzeit, wenn Sie nicht die entsprechenden Modelle aktualisieren möchten, bieten nicht an allen ihnen. Zum Beispiel aktualisiert die folgende Anfrage Registrierungsinformationen nur (und lassen verwandte Modelle unberührt). {    "Registrierung":{       "Id": 1.1       "Status": "not_approved",       "Date_of_registration": "2012.12.10 16.12.31","Final_price": 10,       "Code": "1-50c67a6f172e1",       "URL_LINK": null,       "Is_primary": true,       "Is_group_registration": false,       "Is_going": true,       "Is_checked_in": true    } } Teilnehmer GET / Teilnehmer alle Teilnehmer erhält und ihre zugehörigen Anmeldungen und id int Veranstaltungen Vorname: string Nachname: string Adresse: string address2: string Stadt: string Zustand: string Land: string zip: string E-Mail: string Telefon: string Kommentare: string (in der Ereignis Espresso 3.1, wird dies immer leer sein) Anmerkungen: string (in der Ereignis Espresso 3.1, wird dies immer leer sein) Anmeldungen: Liste von Tupeln, wie Toplevel Ergebnisse von GET / Registrierungen Veranstaltungen: Liste von Tupeln, wie Toplevel Ergebnisse von GET / Ereignisse Unfinished Endpunkte Dies sind Endpunkte, die noch nicht fertig sind. Möglicherweise möchten Sie jedoch auf ihre Antwortformat wissen, wann ein ähnliches Objekt abgefragt, ebenso wie sie eb Teil teh Antwort. Zum Beispiel, obwohl der Endpunkt Espresso-api / v1 / Preise / {session_key} ist nichtnoch zugänglich ist, werden die Preise bei jeder Anfrage zurückgegeben Espresso-api / v1 / events / {session_key}, und so würden Sie wahrscheinlich wissen, was in den Antworten zu erwarten Attribute und die für die Abfrage zur Verfügung stehen. Preise GET / Preise Alle Preise. id: float (nicht int!). Beispiel: 1.1, 1.2, 1.3, OR 1, 1234 usw. Veranstaltung: Veranstaltung wie GET / Veranstaltungen Kosten: Tupel wie GET / pricetypes Menge: string, zB: "10.2" Name: string Beschreibung: string Limit: int Rest: int start_date: Datum end_date: Datum Hinweis: wenn ein Preis als nahe stehendes Objekt des einen zurückgegeben wird Ihnen abgefragt (zB abgefragt Sie "Ereignisse", und bekam einen Zusammenhang mit "Preis"), dann vermeiden wir eine unendliche Rekursion durch nicht ein "Ereignis" Objekt zurückkehrt verschachtelt in der "Preis" Objekt. Preistypen / pricetypes In 3.1 gibt es 4 unveränderlichen Preisarten: "Basispreis", "Zuschlag Betrag", "Zuschlag Prozent" und "Preis für Mitglieder", die in dem Code gespeichert werden und nicht die Datenbankid: int Name: string is_member: boolean is_discount: boolean is_tax: boolean is_percent: boolean is_global: boolean Bestellung: boolean Kategorien GET / Kategorien bekommt alle Kategorien id: int Name: string Kennung: string Beschreibung: string Benutzer: int (Konzept) Promo-Codes GET / Promocodes erhält alle Promo (Rabatt) Codes id: int coupon_code: string Menge: string (wie "10.23") use_percentage: boolean Beschreibung: string apply_to_each_attendee: boolean quantity_available: int expiration_date: Datum Benutzer: int (Wordpress-ID des Erstellers) Datum Mal GET / Datetimes erhält alle Datum / Zeit. in 3.1, ist dies eine Kombination aus Zeiten in events_details und events_start_end Tabellen-ID: int Veranstaltung: Tupel wie GET / Veranstaltungen is_primary: boolean event_start: datetime event_end: datetime registration_start: datetime registration_end: datetime Limit: int tickets_left: int Veranstaltungsorte GET / Veranstaltungsorte Ruft alle Veranstaltungsorteid: int Name: string Kennung: string Adresse: string address2: string Stadt: string Zustand: string zip: string Land: string metas: Schlüsselwerte wie "metas": { "{meta_key}": {meta_value} ....} Benutzer: int Transaktionen GET / Transaktionen erhält alle Transaktionen (in 3.1, das eine Teilmenge von Spalten aus der / die Teilnehmer Tabelle) id: string (NOT int) Datenstand: datetime gesamt: dezimal wie 20.35 amount_paid: dezimal Status: einer der "vollständig", "offen", "pending" Details: Tupel wie { "{meta_key}": {Wert}} tax_data: Tupel wie { "{meta_key}": {Wert}} session_data: Tupel wie { "{meta_key}": {Wert}} Anmeldungen: Tupel wie GET / Registrierungen payment_gateway: string (die angibt, wie die Transaktion bezahlt wurde) Caching und Zählen Wenn Sie Ihren api Client optimieren möchten, können Sie Ereignis Espresso internen Caching auf jede Abfrage verwenden. Dies ist nützlich, ist, dass Sie benötigen eine große Abfrage (zB mysite.com/espresso-api/v1/registrations/{sessionkey}?limit=1000), die möglicherweise überlasten könnte laufender Server, möchten Sie eine Anzahl der Elemente zu erhalten, oder Sie wollen Paginierung zu implementieren. Um dies zu tun, geben Sie Ihre Abfrage mit einer zusätzlichen Abfrageparameter von 'cache_result' (zB: mysite.com/espresso-api/v1/events/{session_key}?id__gt=10&limit=500&cache_result=true). Sie erhalten eine Antwort mit einem Körper erhalten, welche die Anzahl der, wie viele Objekte eine ein cached_result_key wie die folgende zurückgegeben würde: "count": 16, "cached_result_key": "mafvjm903a59ms9schb2yglmysouw4sv72orjyao" Anstatt die gesamte Antwort zu senden, haben wir nur Sie sendete, eine Zählung, wie viele Objekte zurückgegeben werden würde, und intern das Ergebnis zwischengespeichert. Um diesen Cache zugreifen, senden Sie eine Anfrage an {wordpress_site} / Espresso-api / v1 / cachedresults / {cached_result_key} / {session_key} Dies wird eine Antwort zurückgeben genau wie Ihre ursprüngliche Abfrage, die Sie nicht die 'cache_result' Abfrageparameter hinzugefügt hätte . Auch, wenn der Cache-Abfragen können Sie eine spezielle 'Limit' Abfrageparameter hinzufügen zu begrenzen, wie viel von der Antwort gesendet wird. Z.B:{Wordpress_site} / Espresso-api / v1 / cachedresults / {cached_result_key} / {session_key}? Limit = 10, die nur die ersten 10 Objekte zurück. Genau wie die "Grenze" MYSQL-Klausel können Sie auch einen zweiten Wert zu "Limit" fügen Sie einen Offset und Begrenzung zu verwenden. ZB '? Limit = 30,15' 15 Objekte zurückgegeben werden am 30. begonnen wird. Berechtigungen Die folgenden Benutzer haben die Erlaubnis, die folgenden Ressourcen zugreifen zu können. Öffentliche Benutzer können nie alle Ressourcen zu aktualisieren oder zu schaffen, aber sie Berechtigungen haben bestimmte Ressourcen zu betrachten, wenn "Public API Access" aktiviert ist (Anmerkung: Einige dieser Rollen sind in den Event-Espresso Berechtigungen und Berechtigungs Pro Plugins) Version 2.1.x Berechtigungen Integration mit den Rollen und Permission-Plugins (basic und pro) wurde in dieser Version deutlich verbessert. Grundsätzlich sollten die Nutzer über die API-Zugriff auf exakt die gleichen Ressourcen haben, wie sie über die normale Web-Interface zu tun. Z. B., wenn ein Event Manager die Berechtigung hat nur Ereignisse zu bearbeiten sie erstellen von wp-admin und nur die Berechtigung zum Anzeigennur aktive Ereignisse auf dem Frontend-Event-Liste Seite der Website, dann in der JSON-API, wenn sie senden Sie eine Anfrage an mysite.com/espresso-api/v1/events/{session_key}?editable_only=true~~V dann sollten sie nur ihre Veranstaltungen zu sehen, und eine Anforderung an mysite.com/espresso-api/v1/events/{session_key}?editable_only=false~~V dann sollten sie alle aktiven Ereignisse zu sehen (siehe unten für eine Beschreibung der "editable_only" Abfrageparameter hinzugefügt in Version 2.1.0) . Auch gilt die Rollen und Berechtigungen "Mindestseitenberechtigungen" Einstellung auch die Rechte der Benutzer in der JSON-API. Zum Beispiel, wenn Sie die "Mindest Seite Permission" für "Ereignis / Attendee Anzeigen Seite" auf "Master Admin", dann Ereignis-Manager und Regional Manager setzen nicht in der Lage sein, entweder das Ereignis Espresso Seite der Veranstaltungsliste, oder den Zugang mysite zu sehen. com / Espresso-api / v1 / events / {session_key}. Ressource R & P assoziiert "Mindest Seite Permission" Public Event Manager Regional Manager Ereignis Master-Admins & WP Admins Ansicht Ansicht bearbeiten Ansicht bearbeiten Ansicht bearbeiten Ereignisse bearbeitenVeranstaltung / Teilnehmer Anzeigen Seite aktiv keiner nur alle aktiven oder im Besitz Besitz aller aktiven, im Besitz oder in der Region im Besitz oder in der Region alle alle Veranstaltungsorte Veranstaltungsort Manager Seite alle keine alle alle alle alle alle alle Kategorien Kategorien Seite alle keine alle alle alle alle alle alle Datetimes Veranstaltung / Teilnehmer Anzeigen Seite alle keine alle für ein Unternehmen Events alle für Veranstaltungen im Besitz & in der Region alle alle Preise Veranstaltung / Teilnehmer Anzeigen Seite alle Dritt Preise keine alle für Veranstaltungen aller Art für Veranstaltungen im Besitz Besitz & in der Region alle alle pricetypes Veranstaltung / Teilnehmer Anzeigen Seite alle Dritt Preise keine alle alle alle alle alle alle Registrierungen Veranstaltung / Teilnehmer Anzeigen Seite keine keine für Veranstaltungen für Veranstaltungen für Veranstaltungen im Besitz Eigentum im Besitz & in der Region für Veranstaltungen im Besitz & in der Region alle alle Teilnehmer Veranstaltung / Teilnehmer Anzeigen Seite keine keine für Anmeldungen für für Veranstaltungen Anmeldungen für Veranstaltungen für Anmeldungen im Besitz Besitz und in der Region im Besitz Veranstaltungen für Anmeldungen für Veranstaltungen im Besitz & in der Region alle alle Transaktionen Veranstaltung / Teilnehmer Anzeigen Seite keinekeine für Anmeldungen für für Veranstaltungen Anmeldungen für Veranstaltungen für Anmeldungen im Besitz Besitz Veranstaltungen im Besitz & in der Region für die Registrierung für Veranstaltungen im Besitz & in der Region alle alle Antworten Veranstaltung / Teilnehmer Anzeigen Seite keine keine für Anmeldungen für für Anmeldungen für Veranstaltungen im Besitz Veranstaltungen für Anmeldungen im Besitz für Veranstaltungen owned & in der Region für die Registrierung für Veranstaltungen im Besitz & in der Region alle alle Promocodes Rabatte Seite keine keine alle alle alle alle alle alle Wie der JSON-API-Plug-Version 2.1, die Abfrage-Parameter 'editable_only' verfügbar ist, zu akzeptieren entweder 'true' oder "false" als Werte. Es kann auf jede GET-Anforderung, um zu bearbeiten können nicht den aktuellen Benutzer alle Ergebnisse zu filtern aus hinzugefügt werden. wenn Sie zum Beispiel wollte die Ereignisse alle aktuellen Benutzers zu sehen bearbeiten können, können Sie eine Anfrage wie mysite.com/espresso-api/v1/events/{session_key}?editable_only=true senden. Außerdem gibt es eine Einstellung dem Titel "Show API Benutzer Daten können sie nicht bearbeiten" im JSON-API-Einstellungen Seite (wenn die Rollen und BerechtigungenAdd-on ist auch aktiv), die den Standard für diesen Abfrageparameter setzt. Version 2.0.x Berechtigungen (Diese Version nur unter der Voraussetzung begrenzte Unterstützung von Rollen eine Berechtigung. Zum Beispiel, Ereignis-Manager die API verwenden könnten Ereignisse anzeigen sie in der Regel nicht die Erlaubnis hatte, um zu sehen.) Ressourcen Public Event Manager Regional Manager Ereignis Master-Admins Admin Veranstaltungen ja nur aktive und öffentliche Veranstaltungen ja ja ja Locations ja ja ja ja ja Kategorien ja ja ja ja ja Datetimes ja ja ja ja ja Locations ja ja ja ja ja Preise ja ja ja ja ja pricetypes ja ja ja ja ja Anmeldungen nein ja ja ja ja Teilnehmer nein ja ja ja ja Transaktionen nein ja ja ja ja Antworten nein ja ja ja ja nein ja Promocodes ja ja ja Statuscodes Zusammen mit jeder Antwort gibt es sowohl einen "Status" und ein "status_code '. Diese Statuscodes sollten mehr oder weniger entsprechen normal. Sie sind wie folgt: Statuscode Statusdetails 200 OK Ihre Anfrage erfolgreich verarbeitet wurde. Wenn Sie ein Objekt angefordert, sollte eswurden in der "Körper" Attribut zurückgegeben. Wenn Sie einen PUT tat, POST oder DELETE, sollte es gelungen, und die aktualisierte / erstellt / gelöschte Objekt sollte in der "Körper" Parameter 400 {verschiedene Nachrichten} etwas über Ihre Anfrage war illegal zurückgegeben wurden. Sie haben wahrscheinlich eine GET mit einem ungültigen Abfrageparameter 403 Sie nicht zugreifen dürfen, die Ihre Sitzung Endpunkt wahrscheinlich abgelaufen ist und Sie müssen erneut authentifizieren / login. Es ist auch möglich, dass Sie einfach nicht über ausreichende Berechtigungen verfügen, um diesen bestimmten Endpunkt zugreifen. Zum Beispiel: Wenn Sie als Event-Manager angemeldet und nur Ereignis-ID 123, die Ihnen zugewiesen haben, dann können Sie nicht 987 aktualisieren Ereignis und wird diese gleiche Antwort erhalten. 404 Antrag ist in Ordnung, aber es gibt kein Objekt der angegebenen Typ mit ID: {id} Sie einen entsprechenden Antrag gestellt (wie GET, PUT oder DELETE) auf eine bestimmte Ressource (zB / events / 13), aber das Ressource didn ' t existieren. Ihre Anfrage funktioniert hätte, wenn die Ressource existiert 412 {verschiedene Nachrichten} Ihre Anfrage wurde syntaktischrichtig und alle, aber einige Vorbedingung nicht erfüllt, bevor Sie Ihre Anfrage vollständig bearbeitet werden konnte, wie man wollte. Beispiel: Sie haben versucht, einen Registranten zu einem Ereignis zu überprüfen, mit / Registrierungen / 13 / checkin, aber sie noch nicht bezahlt hatte. Capice? 500 {verschiedene Meldungen} Einige interner Fehler aufgetreten. Ihre Anfrage war gut, aber unsere Server-Software ist gerade gestorben aus irgendeinem Grund. Wenn die Antwort speziell "Endpoint noch nicht implementiert" ist, dann haben wir fertig einfach nicht an diesem Endpunkt zu arbeiten. Hassle Ereignis Espresso bekommen es umgesetzt. Hier sind Code-Beispiele einige Beispiele für Code, der die API verwendet. Zusammenfassung und Link Beschreibung PHP-Code, der alle anstehenden Ereignisse und zeigt sie abruft. Kann aus einer beliebigen Domäne ausgeführt werden. PHP und HTML-Code, der alle anstehenden Ereignisse und zeigt sie in einem Kalender abruft. Kann aus einer beliebigen Domäne ausgeführt werden. PHP-Code, der alle bisherigen Evens und zeigt sie abruft. Kann aus einer beliebigen Domäne ausgeführt werden. PHP-Code, der alle anstehenden Ereignisse holt, speichert sie und zeigt sie an. kann Caching beschleunigenIhre Anwendung, erfordert aber ein paar Zeilen Code. Kann aus einer beliebigen Domäne ausgeführt werden. PHP-Code, der alle vergangenen Ereignisse abruft, speichert sie und zeigt sie an. Mit Caching kann Ihre Anwendung beschleunigen, erfordert aber ein paar Zeilen Code. Kann aus einer beliebigen Domäne ausgeführt werden. Zukünftige Entwicklungen POST / Ereignisse (neu erstellen Ereignis) / events / {id} / Fragen POST / events / {id} / Teilnehmer GET / Fragen / {id} / Antwort ... etc Brauchen Sie noch einen Support-Lizenz für die JSON API Add- zum Kaufen auf?

Previous     Next


TAGS


CATEGORIES

.