GoToWebinar Co-Organizers API

Manage co-organizers on a webinar.

Operations 4

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

GET /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers List a webinar's co-organizers · Get co-organizers #
Ask an LLM
“Who are the co-organizers on my GoTo Webinar event?”
“Are co-organizers without their own account included when I list a webinar's co-hosts?”
Tell an agent
List the co-organizers of webinar {webinarKey} for organizer {organizerKey}.
Show who is co-organizing webinar {webinarKey}.
POST /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers Add co-organizers to a webinar · Create co-organizers #
Ask an LLM
“How do I add a co-organizer to a webinar I'm running?”
“Can I add someone as a co-organizer if they don't have a webinar account?”
Tell an agent
Add co-organizers to webinar {webinarKey} owned by organizer {organizerKey}.
Invite an external co-organizer to help run webinar {webinarKey}.
DELETE /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers/{coorganizerKey} Remove a co-organizer from a webinar · Delete co-organizer #
Ask an LLM
“How do I take someone off the co-organizer list for a webinar?”
“Does removing an external co-organizer work differently from removing an internal one?”
Tell an agent destructive · confirm first
Remove co-organizer {coorganizerKey} from webinar {webinarKey} for organizer {organizerKey}.
Delete co-organizer {coorganizerKey} from webinar {webinarKey}, flagging them as external: {external}.
POST /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers/{coorganizerKey}/resendInvitation Resend a co-organizer's invitation email · Resend invitation #
Ask an LLM
“A co-organizer never got their invite email, can I send it again?”
“How do I re-send the co-organizer invitation for a webinar?”
Tell an agent
Resend the invitation email to co-organizer {coorganizerKey} for webinar {webinarKey} of organizer {organizerKey}.
Send co-organizer {coorganizerKey} their webinar invitation again.

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/gotowebinar:gotowebinar-co-organizers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

gotowebinar-co-organizers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Gotowebinar Co Organizers API
  version: '1.0'
  description: 'Operations tagged Co-organizers across 2 of this provider''s published API definitions: gotowebinar-openapi.yml, gotowebinar-rest-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.getgo.com/G2W/rest/v2
tags:
- name: Co-organizers
  description: Operations available for co-organizers of a given webinar.
paths:
  /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers:
    get:
      tags:
      - Co-organizers
      operationId: getCoorganizers
      summary: Get co-organizers
      description: Returns the co-organizers for the specified webinar. The original organizer who created the webinar is filtered out of the list. If the webinar has no co-organizers, an empty array is returned. Co-organizers that do not have a GoTo Webinar account are returned as external co-organizers. For those organizers no surname is returned.
      parameters:
      - $ref: '#/components/parameters/organizerKey'
      - $ref: '#/components/parameters/webinarKey'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Coorganizer'
        '400':
          description: Bad Request
        '403':
          description: Forbidden
        '404':
          description: Not Found
      x-codeSamples:
      - lang: Node + Axios
        source: "var axios = require(\"axios\").default;\n\nvar options = {\n  method: 'GET',\n  url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers',\n  headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'}\n};\n\naxios.request(options).then(function (response) {\n  console.log(response.data);\n}).catch(function (error) {\n  console.error(error);\n});"
      - lang: Shell + Curl
        source: "curl --request GET \\\n  --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"
      - lang: Python + Python3
        source: 'import http.client


          conn = http.client.HTTPSConnection("api.getgo.com")


          headers = { ''Authorization'': "Bearer REPLACE_BEARER_TOKEN" }


          conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers", headers=headers)


          res = conn.getresponse()

          data = res.read()


          print(data.decode("utf-8"))'
      - lang: Php + Http2
        source: "<?php\n\n$client = new http\\Client;\n$request = new http\\Client\\Request;\n\n$request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers');\n$request->setRequestMethod('GET');\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$client->enqueue($request)->send();\n$response = $client->getResponse();\n\necho $response->getBody();"
      - lang: Ruby + Native
        source: 'require ''uri''

          require ''net/http''

          require ''openssl''


          url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers")


          http = Net::HTTP.new(url.host, url.port)

          http.use_ssl = true

          http.verify_mode = OpenSSL::SSL::VERIFY_NONE


          request = Net::HTTP::Get.new(url)

          request["Authorization"] = ''Bearer REPLACE_BEARER_TOKEN''


          response = http.request(request)

          puts response.read_body'
      security:
      - OAuth2: []
    post:
      tags:
      - Co-organizers
      operationId: createCoorganizers
      summary: Create co-organizers
      description: Creates co-organizers for the specified webinar. For co-organizers that have a GoTo Webinar account you have to set the parameter 'external' to 'false'. In this case you have to pass the parameter 'organizerKey' only. For co-organizers that have no GoTo Webinar account you have to set the parameter 'external' to 'true'. In this case you have to pass the parameters 'givenName' and 'email'. Since there is no parameter for 'surname' you should pass first and last name to the parameter 'givenName'.
      parameters:
      - $ref: '#/components/parameters/organizerKey'
      - $ref: '#/components/parameters/webinarKey'
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/CoorganizerReqCreate'
        description: The co-organizer details
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Coorganizer'
        '400':
          description: Bad Request
        '403':
          description: Forbidden
        '404':
          description: Not Found
      x-codeSamples:
      - lang: Node + Axios
        source: "var axios = require(\"axios\").default;\n\nvar options = {\n  method: 'POST',\n  url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers',\n  headers: {\n    Authorization: 'Bearer REPLACE_BEARER_TOKEN',\n  },\n  data: [{external: true, organizerKey: 'string', givenName: 'string', email: 'string'}]\n};\n\naxios.request(options).then(function (response) {\n  console.log(response.data);\n}).catch(function (error) {\n  console.error(error);\n});"
      - lang: Shell + Curl
        source: "curl --request POST \\\n  --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \\\n  --header 'content-type: application/json' \\\n  --data '[{\"external\":true,\"organizerKey\":\"string\",\"givenName\":\"string\",\"email\":\"string\"}]'"
      - lang: Python + Python3
        source: "import http.client\n\nconn = http.client.HTTPSConnection(\"api.getgo.com\")\n\npayload = \"[{\\\"external\\\":true,\\\"organizerKey\\\":\\\"string\\\",\\\"givenName\\\":\\\"string\\\",\\\"email\\\":\\\"string\\\"}]\"\n\nheaders = {\n    'Authorization': \"Bearer REPLACE_BEARER_TOKEN\",\n    'content-type': \"application/json\"\n    }\n\nconn.request(\"POST\", \"/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers\", payload, headers)\n\nres = conn.getresponse()\ndata = res.read()\n\nprint(data.decode(\"utf-8\"))"
      - lang: Php + Http2
        source: "<?php\n\n$client = new http\\Client;\n$request = new http\\Client\\Request;\n\n$body = new http\\Message\\Body;\n$body->append('[{\"external\":true,\"organizerKey\":\"string\",\"givenName\":\"string\",\"email\":\"string\"}]');\n\n$request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers');\n$request->setRequestMethod('POST');\n$request->setBody($body);\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN',\n  'content-type' => 'application/json'\n]);\n\n$client->enqueue($request)->send();\n$response = $client->getResponse();\n\necho $response->getBody();"
      - lang: Ruby + Native
        source: 'require ''uri''

          require ''net/http''

          require ''openssl''


          url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers")


          http = Net::HTTP.new(url.host, url.port)

          http.use_ssl = true

          http.verify_mode = OpenSSL::SSL::VERIFY_NONE


          request = Net::HTTP::Post.new(url)

          request["Authorization"] = ''Bearer REPLACE_BEARER_TOKEN''

          request["content-type"] = ''application/json''

          request.body = "[{\"external\":true,\"organizerKey\":\"string\",\"givenName\":\"string\",\"email\":\"string\"}]"


          response = http.request(request)

          puts response.read_body'
      security:
      - OAuth2: []
    servers:
    - url: https://api.getgo.com/G2W/rest/v2
  /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers/{coorganizerKey}:
    delete:
      tags:
      - Co-organizers
      operationId: deleteCoorganizer
      summary: Delete co-organizer
      description: Deletes an internal co-organizer specified by the coorganizerKey (memberKey).
      parameters:
      - $ref: '#/components/parameters/organizerKey'
      - $ref: '#/components/parameters/webinarKey'
      - $ref: '#/components/parameters/coorganizerKey'
      - name: external
        in: query
        description: 'By default only internal co-organizers (with a GoTo Webinar account) can be deleted. If you want to use this call for external co-organizers you have to set this parameter to ''true''.

          '
        required: false
        schema:
          type: boolean
      responses:
        '204':
          description: No Content (Co-organizer was deleted)
        '400':
          description: Bad Request
        '403':
          description: Forbidden
        '404':
          description: Not Found
      x-codeSamples:
      - lang: Node + Axios
        source: "var axios = require(\"axios\").default;\n\nvar options = {\n  method: 'DELETE',\n  url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D',\n  params: {external: 'SOME_BOOLEAN_VALUE'},\n  headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'}\n};\n\naxios.request(options).then(function (response) {\n  console.log(response.data);\n}).catch(function (error) {\n  console.error(error);\n});"
      - lang: Shell + Curl
        source: "curl --request DELETE \\\n  --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D?external=SOME_BOOLEAN_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"
      - lang: Python + Python3
        source: 'import http.client


          conn = http.client.HTTPSConnection("api.getgo.com")


          headers = { ''Authorization'': "Bearer REPLACE_BEARER_TOKEN" }


          conn.request("DELETE", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D?external=SOME_BOOLEAN_VALUE", headers=headers)


          res = conn.getresponse()

          data = res.read()


          print(data.decode("utf-8"))'
      - lang: Php + Http2
        source: "<?php\n\n$client = new http\\Client;\n$request = new http\\Client\\Request;\n\n$request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D');\n$request->setRequestMethod('DELETE');\n$request->setQuery(new http\\QueryString([\n  'external' => 'SOME_BOOLEAN_VALUE'\n]));\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$client->enqueue($request)->send();\n$response = $client->getResponse();\n\necho $response->getBody();"
      - lang: Ruby + Native
        source: 'require ''uri''

          require ''net/http''

          require ''openssl''


          url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D?external=SOME_BOOLEAN_VALUE")


          http = Net::HTTP.new(url.host, url.port)

          http.use_ssl = true

          http.verify_mode = OpenSSL::SSL::VERIFY_NONE


          request = Net::HTTP::Delete.new(url)

          request["Authorization"] = ''Bearer REPLACE_BEARER_TOKEN''


          response = http.request(request)

          puts response.read_body'
      security:
      - OAuth2: []
    servers:
    - url: https://api.getgo.com/G2W/rest/v2
  /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers/{coorganizerKey}/resendInvitation:
    post:
      tags:
      - Co-organizers
      operationId: resendCoorganizerInvitation
      summary: Resend invitation
      description: Resends an invitation email to the specified co-organizer
      parameters:
      - $ref: '#/components/parameters/organizerKey'
      - $ref: '#/components/parameters/webinarKey'
      - $ref: '#/components/parameters/coorganizerKey'
      - name: external
        in: query
        description: 'By default only internal co-organizers (with a GoTo Webinar account) will retrieve the resent invitation email. If you want to use this call for external co-organizers you have to set this parameter to ''true''.

          '
        required: false
        schema:
          type: boolean
      responses:
        '204':
          description: No Content (Invitation email was sent)
        '400':
          description: Bad Request
        '403':
          description: Forbidden
        '404':
          description: Not Found
      x-codeSamples:
      - lang: Node + Axios
        source: "var axios = require(\"axios\").default;\n\nvar options = {\n  method: 'POST',\n  url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation',\n  params: {external: 'SOME_BOOLEAN_VALUE'},\n  headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'}\n};\n\naxios.request(options).then(function (response) {\n  console.log(response.data);\n}).catch(function (error) {\n  console.error(error);\n});"
      - lang: Shell + Curl
        source: "curl --request POST \\\n  --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation?external=SOME_BOOLEAN_VALUE' \\\n  --header 'Authorization: Bearer REPLACE_BEARER_TOKEN'"
      - lang: Python + Python3
        source: 'import http.client


          conn = http.client.HTTPSConnection("api.getgo.com")


          headers = { ''Authorization'': "Bearer REPLACE_BEARER_TOKEN" }


          conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation?external=SOME_BOOLEAN_VALUE", headers=headers)


          res = conn.getresponse()

          data = res.read()


          print(data.decode("utf-8"))'
      - lang: Php + Http2
        source: "<?php\n\n$client = new http\\Client;\n$request = new http\\Client\\Request;\n\n$request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation');\n$request->setRequestMethod('POST');\n$request->setQuery(new http\\QueryString([\n  'external' => 'SOME_BOOLEAN_VALUE'\n]));\n\n$request->setHeaders([\n  'Authorization' => 'Bearer REPLACE_BEARER_TOKEN'\n]);\n\n$client->enqueue($request)->send();\n$response = $client->getResponse();\n\necho $response->getBody();"
      - lang: Ruby + Native
        source: 'require ''uri''

          require ''net/http''

          require ''openssl''


          url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation?external=SOME_BOOLEAN_VALUE")


          http = Net::HTTP.new(url.host, url.port)

          http.use_ssl = true

          http.verify_mode = OpenSSL::SSL::VERIFY_NONE


          request = Net::HTTP::Post.new(url)

          request["Authorization"] = ''Bearer REPLACE_BEARER_TOKEN''


          response = http.request(request)

          puts response.read_body'
      security:
      - OAuth2: []
    servers:
    - url: https://api.getgo.com/G2W/rest/v2
components:
  parameters:
    webinarKey:
      name: webinarKey
      in: path
      description: The key of the webinar
      required: true
      schema:
        type: integer
        format: int64
    organizerKey:
      name: organizerKey
      in: path
      description: The key of the organizer
      required: true
      schema:
        type: integer
        format: int64
    coorganizerKey:
      name: coorganizerKey
      in: path
      description: The key of the internal or external co-organizer (memberKey)
      required: true
      schema:
        type: integer
        format: int64
    WebinarKey:
      name: webinarKey
      in: path
      required: true
      schema:
        type: string
      description: Unique key identifying a webinar.
    OrganizerKey:
      name: organizerKey
      in: path
      required: true
      schema:
        type: string
      description: Authenticated organizer's key.
  schemas:
    CoorganizerReqCreate:
      description: 'Details used for creating a co-organizer for a webinar. '
      required:
      - external
      properties:
        external:
          type: boolean
          description: If the co-organizer has no GoTo Webinar account, this value has to be set to 'true'
        organizerKey:
          type: string
          description: The co-organizer's organizer key. This parameter has to be passed only, if 'external' is set to 'false'
        givenName:
          type: string
          description: The co-organizer's given name. This parameter has to be passed only, if 'external' is set to 'true'
        email:
          type: string
          description: The co-organizer's email address. This parameter has to be passed only, if 'external' is set to 'true'
    Coorganizer:
      description: Describes a webinar co-organizer. A co-organizer without a GoToWebinar account is marked as external and is returned without a surname
      required:
      - joinLink
      - email
      - memberKey
      - external
      - surname
      - givenName
      properties:
        joinLink:
          type: string
          description: The co-organizer's join link
        email:
          type: string
          description: The co-organizer's email address
        memberKey:
          type: string
          description: The co-organizer's organizer key. A new member key is created for external co-organizers
        external:
          type: boolean
          description: If the co-organizer has no GoTo Webinar account, this value is set to 'true'
        surname:
          type: string
          description: The co-organizer's surname. For external co-organizers this parameter is not returned
        givenName:
          type: string
          description: The co-organizer's given name
    Coorganizer_2:
      type: object
      required:
      - email
      - givenName
      - surname
      properties:
        email:
          type: string
          format: email
        givenName:
          type: string
        surname:
          type: string
        external:
          type: boolean
  securitySchemes:
    OAuth2:
      type: oauth2
      description: 'To use this API, you _must_ provide an OAuth Token that has been requested from LogMeIn OAuth Authorization Server. See https://goto-developer.logmeininc.com/how-get-access-token-and-organizer-key for documentation about how to use LogMeIn’s OAuth.

        '
      in: header
      name: Authorization
      scheme: Bearer
      flows:
        password:
          tokenUrl: https://authentication.logmeininc.com/oauth/token
          refreshUrl: https://authentication.logmeininc.com/oauth/token
        authorizationCode:
          authorizationUrl: https://authentication.logmeininc.com/oauth/authorize
          tokenUrl: https://authentication.logmeininc.com/oauth/token
          refreshUrl: https://authentication.logmeininc.com/oauth/token
    oauth2:
      type: oauth2
      description: OAuth 2.0 via the GoTo authentication service.
      flows:
        authorizationCode:
          authorizationUrl: https://authentication.logmeininc.com/oauth/authorize
          tokenUrl: https://authentication.logmeininc.com/oauth/token
          refreshUrl: https://authentication.logmeininc.com/oauth/token
          scopes:
            collab: Collaboration / GoToWebinar scope.
            identity:scim.me: Read the authenticated user's identity (SCIM /me).
x-refined-from:
- gotowebinar-openapi.yml
- gotowebinar-rest-openapi.yml