Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# 1.1.0
* Added new endpoint:
* ``/view/SpeakerEmails`` (undocumented)

# 1.0.1
* Shrunk generated code a bit
* Updated openapi generator
Expand Down
16 changes: 12 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,18 @@ Java client for the [Sessionize API](https://sessionize.com/playbook/api)

This client [is generated](./sessionize-java-client/pom.xml) from an [``openapi.yml``](./openapi/openapi.yml) using [OpenAPI Generator](https://openapi-generator.tech/).

Currently this client supports the following endpoints of the Sessionize API ``v2``:
* ``/view/All``
* ``/view/Speakers``
* ``/view/Sessions``
#### API Support Status

<details><summary>Supported endpoints</summary>

Sessionize API ``v2``:
* ``view``
* All ✔️
* Speakers ✔️
* SpeakerEmails ✔️ (undocumented endpoint)
* Sessions ✔️

</details>

## Installation
[Installation guide for the latest release](https://github.com/xdev-software/sessionize-java-client/releases/latest#Installation)
Expand Down
97 changes: 72 additions & 25 deletions openapi/openapi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,35 @@ paths:
items:
$ref: '#/components/schemas/Speaker'
deprecated: false
/api/v2/{endpointId}/view/SpeakersEmails:
get:
tags:
- "speakers"
operationId: getAllSpeakersEmails
description: 'Undocumented endpoint for retrieving the speakers with emails'
parameters:
- name: endpointId
in: path
required: true
schema:
type: string
example: jl4ktls0
- name: s
in: query
required: true
schema:
type: string
description: 'Special key that is only available/retrievable for unlocked admins (Contacting Sessionize-Support is required)'
responses:
'200':
description: Returned if the request is successful
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/SpeakerWithEmail'
deprecated: false
/api/v2/{endpointId}/view/Sessions:
get:
tags:
Expand Down Expand Up @@ -341,7 +370,7 @@ components:
required:
- id
- name
BaseSpeaker:
BaseSpeakerEssential:
type: object
readOnly: true
properties:
Expand All @@ -352,34 +381,41 @@ components:
type: string
lastName:
type: string
bio:
type: string
nullable: true
tagLine:
type: string
nullable: true
profilePicture:
type: string
format: uri
nullable: true
isTopSpeaker:
type: boolean
links:
type: array
items:
$ref: '#/components/schemas/Link'
fullName:
type: string
# categoryItems - Always empty; ignored
# questionAnswers - Always empty; ignored
required:
- firstName
- fullName
- id
- isTopSpeaker
- lastName
- links
- tagLine
BaseSpeaker:
allOf:
- $ref: '#/components/schemas/BaseSpeakerEssential'
- type: object
readOnly: true
properties:
bio:
type: string
nullable: true
tagLine:
type: string
nullable: true
profilePicture:
type: string
format: uri
nullable: true
isTopSpeaker:
type: boolean
links:
type: array
items:
$ref: '#/components/schemas/Link'
fullName:
type: string
# categoryItems - Always empty; ignored
# questionAnswers - Always empty; ignored
required:
- fullName
- isTopSpeaker
- links
- tagLine
Speaker:
allOf:
- $ref: '#/components/schemas/BaseSpeaker'
Expand All @@ -404,6 +440,17 @@ components:
type: integer # All Endpoint
required:
- sessions
SpeakerWithEmail:
allOf:
- $ref: '#/components/schemas/BaseSpeakerEssential'
- type: object
readOnly: true
properties:
email:
type: string
format: email
required:
- email
SpeakerMinimal:
type: object
readOnly: true
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.xdev-software</groupId>
<artifactId>sessionize-java-client-root</artifactId>
<version>1.0.2-SNAPSHOT</version>
<version>1.1.0-SNAPSHOT</version>
<packaging>pom</packaging>

<organization>
Expand Down
2 changes: 1 addition & 1 deletion sessionize-java-client-demo/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.xdev-software</groupId>
<artifactId>sessionize-java-client-demo</artifactId>
<version>1.0.2-SNAPSHOT</version>
<version>1.1.0-SNAPSHOT</version>
<packaging>jar</packaging>

<inceptionYear>2023</inceptionYear>
Expand Down
2 changes: 1 addition & 1 deletion sessionize-java-client/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.xdev-software</groupId>
<artifactId>sessionize-java-client</artifactId>
<version>1.0.2-SNAPSHOT</version>
<version>1.1.0-SNAPSHOT</version>
<packaging>jar</packaging>

<name>sessionize-java-client</name>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
import software.xdev.sessionize.client.Pair;

import software.xdev.sessionize.model.Speaker;
import software.xdev.sessionize.model.SpeakerWithEmail;


import java.util.ArrayList;
Expand Down Expand Up @@ -126,4 +127,87 @@ public List<Speaker> getAllSpeakers(String endpointId, Map<String, String> addit
);
}

/**
*
* Undocumented endpoint for retrieving the speakers with emails
* @param endpointId (required)
* @param s Special key that is only available/retrievable for unlocked admins (Contacting Sessionize-Support is required) (required)
* @return List&lt;SpeakerWithEmail&gt;
* @throws ApiException if fails to make API call
*/
public List<SpeakerWithEmail> getAllSpeakersEmails(String endpointId, String s) throws ApiException {
return this.getAllSpeakersEmails(endpointId, s, Collections.emptyMap());
}


/**
*
* Undocumented endpoint for retrieving the speakers with emails
* @param endpointId (required)
* @param s Special key that is only available/retrievable for unlocked admins (Contacting Sessionize-Support is required) (required)
* @param additionalHeaders additionalHeaders for this call
* @return List&lt;SpeakerWithEmail&gt;
* @throws ApiException if fails to make API call
*/
public List<SpeakerWithEmail> getAllSpeakersEmails(String endpointId, String s, Map<String, String> additionalHeaders) throws ApiException {
Object localVarPostBody = null;

// verify the required parameter 'endpointId' is set
if (endpointId == null) {
throw new ApiException(400, "Missing the required parameter 'endpointId' when calling getAllSpeakersEmails");
}

// verify the required parameter 's' is set
if (s == null) {
throw new ApiException(400, "Missing the required parameter 's' when calling getAllSpeakersEmails");
}

// create path and map variables
String localVarPath = "/api/v2/{endpointId}/view/SpeakersEmails"
.replaceAll("\\{" + "endpointId" + "\\}", apiClient.escapeString(endpointId.toString()));

StringJoiner localVarQueryStringJoiner = new StringJoiner("&");
String localVarQueryParameterBaseName;
List<Pair> localVarQueryParams = new ArrayList<Pair>();
List<Pair> localVarCollectionQueryParams = new ArrayList<Pair>();
Map<String, String> localVarHeaderParams = new HashMap<String, String>();
Map<String, String> localVarCookieParams = new HashMap<String, String>();
Map<String, Object> localVarFormParams = new HashMap<String, Object>();

localVarQueryParams.addAll(apiClient.parameterToPair("s", s));

localVarHeaderParams.putAll(additionalHeaders);



final String[] localVarAccepts = {
"application/json"
};
final String localVarAccept = apiClient.selectHeaderAccept(localVarAccepts);

final String[] localVarContentTypes = {

};
final String localVarContentType = apiClient.selectHeaderContentType(localVarContentTypes);

String[] localVarAuthNames = new String[] { };

TypeReference<List<SpeakerWithEmail>> localVarReturnType = new TypeReference<List<SpeakerWithEmail>>() {};
return apiClient.invokeAPI(
localVarPath,
"GET",
localVarQueryParams,
localVarCollectionQueryParams,
localVarQueryStringJoiner.toString(),
localVarPostBody,
localVarHeaderParams,
localVarCookieParams,
localVarFormParams,
localVarAccept,
localVarContentType,
localVarAuthNames,
localVarReturnType
);
}

}
Loading