From 8946b98302de5f7f115763cad5258bdd92fe204d Mon Sep 17 00:00:00 2001 From: kong-apiops <122612077+kong-apiops@users.noreply.github.com> Date: Tue, 8 Aug 2023 19:04:14 +0100 Subject: [PATCH] Automated OAS Update (#36) --- openapi.yaml | 2097 +++++++++++++++++++++++++++++++++----------------- src/api.ts | 894 +++++++++++++++++---- 2 files changed, 2153 insertions(+), 838 deletions(-) diff --git a/openapi.yaml b/openapi.yaml index 1b8e640..9ee7ccc 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -6,6 +6,41 @@ info: contact: name: Kong url: https://cloud.konghq.com +tags: + - name: Application Analytics + description: >- + The API for querying Application Analytics. Application Analytics is only + available for private portals. + - name: applications + description: >- + The API for Konnect Portal developer applications within a private portal + (i.e. requires registration/authentication). When a portal is in `public` + mode, all of the described endpoints will return a 404 error. A public + portal means that applications and registrations are not available/needed. + In this API's context, "you" and "your" refers to the developer consuming + the API. + - name: credentials + description: >- + The API for Konnect Portal developer credentials within a private portal + (i.e. requires registration/authentication). + - name: developer + description: API for managing a Konnect Portal Developer. + - name: portal + description: The API for retrieving details about a single Konnect Portal. + - name: products + description: The API for Konnect Portal Products. + - name: versions + description: The API for Konnect Portal Product Versions. + - name: documentation + description: The API for Konnect Portal Product Documentation. + - name: registrations + description: > + The API for Konnect Portal application registrations. If the portal is + public + + all of the described endpoints will return a 404 error + - name: search + description: The API for Konnect Portal Search. paths: /api/v2/applications: get: @@ -48,8 +83,6 @@ paths: $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' - '500': - $ref: '#/components/responses/Internal' tags: - applications security: @@ -121,8 +154,6 @@ paths: $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' - '500': - $ref: '#/components/responses/Internal' tags: - applications security: @@ -145,8 +176,6 @@ paths: $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' - '500': - $ref: '#/components/responses/Internal' tags: - credentials security: @@ -168,8 +197,6 @@ paths: $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' - '500': - $ref: '#/components/responses/Internal' tags: - credentials security: @@ -195,8 +222,6 @@ paths: $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' - '500': - $ref: '#/components/responses/Internal' tags: - credentials security: @@ -219,8 +244,6 @@ paths: $ref: '#/components/responses/NotFound' '409': $ref: '#/components/responses/Conflict' - '500': - $ref: '#/components/responses/Internal' tags: - credentials security: @@ -241,8 +264,6 @@ paths: $ref: '#/components/responses/Unauthorized' '404': $ref: '#/components/responses/NotFound' - '500': - $ref: '#/components/responses/Internal' tags: - credentials security: @@ -349,8 +370,6 @@ paths: description: the developer has been properly registered. '400': $ref: '#/components/responses/BadRequest' - '500': - $ref: '#/components/responses/Internal' tags: - developer security: @@ -446,8 +465,6 @@ paths: $ref: '#/components/responses/MeResponse' '401': $ref: '#/components/responses/Unauthorized' - '500': - $ref: '#/components/responses/Internal' operationId: get-developer-me description: Returns info about the current developer. security: @@ -809,511 +826,492 @@ paths: security: - portalAccessToken: [] - {} + /api/v2/stats: + post: + description: Query + operationId: query-application-analytics + summary: Query Application Analytics + requestBody: + description: Object describing the query sent to analytics API. + content: + application/json: + schema: + $ref: '#/components/schemas/QueryApplicationAnalytics' + examples: + Query with a single metric: + $ref: '#/components/examples/QueryExampleWithMetric' + Query with a metric and dimension: + $ref: '#/components/examples/QueryExampleWithMetricAndDimension' + Query with a metric and two dimensions: + $ref: >- + #/components/examples/QueryExampleWithMetricAndMultipleDimensions + Query with time dimension: + $ref: '#/components/examples/QueryExampleWithTimeDimension' + responses: + '200': + $ref: '#/components/responses/QueryResponse' + '400': + description: Bad Request + content: + application/problem+json: + examples: + BadRequestExample: + $ref: '#/components/examples/BadRequestExample' + '401': + description: Unauthorized + content: + application/problem+json: + examples: + UnauthorizedExample: + $ref: '#/components/examples/UnauthorizedExample' + '403': + $ref: '#/components/responses/Forbidden' + tags: + - Application Analytics + security: + - portalAccessToken: [] components: - securitySchemes: - portalAccessToken: - type: apiKey - in: cookie - name: portalaccesstoken - description: > - The Developer portal cookie is meant to be used by the Developer API to - authenticate with. - parameters: - CredentialId: - name: credentialId - in: path - required: true - description: Id of the targeted credential - schema: - type: string - format: uuid - PageSize: - name: page[size] - description: Determines the size of the page to retrieve. - required: false - in: query - allowEmptyValue: true - schema: - type: integer - example: 10 - PageNumber: - name: page[number] - description: Determines which page of the entities to retrieve. - required: false - in: query - allowEmptyValue: true - schema: - type: integer - example: 1 - FilterByNameEquality: - name: filter[name][eq] - description: >- - Filter by direct equality comparison of the name property with a - supplied value. - in: query - required: false - schema: - type: string - example: good service - FilterByNameEqualityShort: - name: filter[name] - description: >- - Filter by direct equality comparison (short-hand) of the name property - with a supplied value. - in: query - required: false - schema: - type: string - example: good service - FilterByNameContains: - name: filter[name][contains] - description: >- - Filter by contains comparison of the name property with a supplied - substring - in: query - required: false - schema: - type: string - example: good service - ApplicationId: - name: applicationId - in: path - required: true - description: Id of the targeted application - schema: - type: string - format: uuid - ProductId: - name: productId - in: path - required: true - description: Contains a unique identifier used by the Portal API for this resource. - schema: - type: string - format: uuid - ProductVersionId: - name: versionId - in: path - required: true - description: Contains a unique identifier used by the Portal API for this resource. - schema: - type: string - format: uuid - DocumentId: - name: documentId - in: path - required: true - description: Contains a unique identifier used by the Portal API for this resource. - schema: - type: string - format: uuid - FilterByDescriptionEquality: - name: filter[description][eq] - description: >- - Filter by direct equality comparison of the description property with a - supplied value. - in: query - required: false - schema: - type: string - example: portal - FilterByDescriptionEqualityShort: - name: filter[description] - description: >- - Filter by direct equality comparison (short-hand) of the description - property with a supplied value. - in: query - required: false - schema: - type: string - example: portal - FilterByDescriptionContains: - name: filter[description][contains] - description: >- - Filter by contains comparison of the description property with a - supplied substring - in: query - required: false - schema: - type: string - example: portal - FilterByIdEquality: - name: filter[id][eq] - description: >- - Filter by direct equality comparison of the id property with a supplied - value. - in: query - required: false - schema: - type: string - example: 5be86298-147b-45ab-bfaf-a1bff97dce39 - FilterByIdEqualityShort: - name: filter[id] - description: >- - Filter by direct equality comparison (short-hand) of the id property - with a supplied value. - in: query - required: false - schema: - type: string - example: 5be86298-147b-45ab-bfaf-a1bff97dce39 - RegistrationId: - name: registrationId - in: path - required: true - description: Contains a unique identifier used by the Portal API for this resource. - schema: - type: string - format: uuid - FilterByStatusEquality: - name: filter[status][eq] - description: >- - Filter by direct equality comparison of the status property with a - supplied value. - in: query - required: false - schema: - type: string - enum: - - approved - - pending - - rejected - - revoked - example: approved - FilterByStatusEqualityShort: - name: filter[status] + schemas: + QueryApplicationAnalytics: + type: object + additionalProperties: false + properties: + start_ms: + type: integer + description: >- + Unix timestamp in milliseconds specifying the lower bound to return + data for the query, inclusive. + end_ms: + type: integer + description: >- + Unix timestamp in milliseconds specifying upper bound to return data + for the query, inclusive. + metrics: + type: array + minItems: 1 + maxItems: 1 + items: + type: string + enum: + - REQUEST_COUNT + - REQUEST_PER_MINUTE + - RESPONSE_LATENCY_P99 + - RESPONSE_LATENCY_P95 + - RESPONSE_LATENCY_P50 + - RESPONSE_SIZE_P99 + - RESPONSE_SIZE_P95 + - RESPONSE_SIZE_P50 + - REQUEST_SIZE_P99 + - REQUEST_SIZE_P95 + - REQUEST_SIZE_P50 + description: > + A property of your API (such as request count or latency) that you + wish to query on. + + Your chosen metric is aggregated within the specified dimensions, + meaning that if you query 'request count by application', you'll + receive the total number of requests each application received + within the given time frame. Some metrics, such as latency and + response size, have more complicated aggregations: selecting P99 + will result in the 99th percentile of the chosen metric. + dimensions: + type: array + minItems: 0 + maxItems: 2 + items: + type: string + enum: + - API_PRODUCT_VERSION + - APPLICATION + - STATUS_CODE + - STATUS_CODE_GROUPED + - TIME + description: > + The dimensions for the query. A query may have up to 2 dimensions, + including time. + + If no dimensions are provided, the report will simply return the + provided metric aggregated across + + all available data. + default: [] + granularity_ms: + type: integer + default: 86400000 + description: > + `granularity_ms` is only valid for queries that include a time + dimension, and it specifies the time buckets in for the returned + data. + meta: + type: object + additionalProperties: false + description: Meta information about the query. + properties: + query_id: + type: string + description: Optional ID used to look up the query. + filter: + type: array + items: + discriminator: + propertyName: dimension + mapping: + API_PRODUCT_VERSION: '#/components/schemas/ApiProductVersionFilter' + APPLICATION: '#/components/schemas/ApplicationFilter' + STATUS_CODE: '#/components/schemas/StatusCodeFilter' + STATUS_CODE_GROUPED: '#/components/schemas/StatusCodeGroupedFilter' + oneOf: + - $ref: '#/components/schemas/ApiProductVersionFilter' + - $ref: '#/components/schemas/ApplicationFilter' + - $ref: '#/components/schemas/StatusCodeFilter' + - $ref: '#/components/schemas/StatusCodeGroupedFilter' + default: [] + required: + - start_ms + - end_ms + - metrics + FilterType: + type: string description: >- - Filter by direct equality comparison (short-hand) of the status property - with a supplied value. - in: query - required: false - schema: - type: string - enum: - - approved - - pending - - rejected - - revoked - example: approved - SearchQuery: - name: q - description: Determines how to filter search results - required: false - in: query - schema: - $ref: '#/components/schemas/SearchQueryParameters' - SearchJoin: - name: join - description: Determines which sub-entities to include in search results - required: false - in: query - schema: - $ref: '#/components/schemas/SearchJoinParameters' - SearchIndices: - name: indices - description: Determines which entity sets to search - required: true - in: path - schema: - $ref: '#/components/schemas/SearchIndicesParameters' - requestBodies: - CreateApplication: - description: Create an application - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/CreateApplicationPayload' - UpdateApplication: - description: Update an application - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateApplicationPayload' - CreateCredential: - description: Create a credential - required: false - content: - application/json: - schema: - $ref: '#/components/schemas/CreateCredentialPayload' - UpdateCredential: - description: Update a credential - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/UpdateCredentialPayload' - AuthenticateRequest: - description: The request schema for the authenticate endpoint. - content: - application/json: - schema: - $ref: '#/components/schemas/AuthenticateRequest' - examples: - Authenticate-Request: - $ref: '#/components/examples/Authenticate-Request' - ResetPasswordRequest: - description: The request schema for the reset password endpoint. - content: - application/json: - schema: - $ref: '#/components/schemas/ResetPasswordRequest' - examples: - ResetPasswordRequest: - $ref: '#/components/examples/Reset-Password-Request' - VerifyEmailRequest: - description: The request schema for the verify email endpoint. - content: - application/json: - schema: - $ref: '#/components/schemas/VerifyEmailRequest' - examples: - VerifyEmailRequest: - $ref: '#/components/examples/Verify-Email-Request' - CreateRegistration: - description: Create an application registration. - required: true - content: - application/json: - schema: - $ref: '#/components/schemas/CreateRegistrationPayload' - responses: - ListApplications: - description: Get applications response - content: - application/json: - schema: - $ref: '#/components/schemas/ListApplicationsResponse' - GetApplication: - description: Get application response - content: - application/json: - schema: - $ref: '#/components/schemas/GetApplicationResponse' - RefreshToken: - description: Refresh token response - content: - application/json: - schema: - $ref: '#/components/schemas/RefreshTokenResponse' - ListCredentials: - description: List credentials response - content: - application/json: - schema: - $ref: '#/components/schemas/ListCredentialsResponse' - CredentialCreation: - description: Credential Creation success - content: - application/json: - schema: - $ref: '#/components/schemas/CredentialCreationResponse' - ApplicationCreation: - description: Application Creation success - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationCreationResponse' - ApplicationUpdate: - description: Application Update success - content: - application/json: - schema: - $ref: '#/components/schemas/ApplicationUpdateResponse' - BadRequest: - description: Bad Request - content: - application/problem+json: - schema: - $ref: '#/components/schemas/BadRequestError' - examples: - 400-Invalid-Token: - $ref: '#/components/examples/400-Invalid-Token' - 400-Login-Failed: - $ref: '#/components/examples/400-Login-Failed' - Unauthorized: - description: Unauthorized - content: - application/problem+json: - schema: - $ref: '#/components/schemas/UnauthorizedError' - examples: - 401-Unauthorized: - $ref: '#/components/examples/401-Unauthorized' - 401-Account-Not-Approved: - $ref: '#/components/examples/401-Account-Not-Approved' - Forbidden: - description: Forbidden - content: - application/problem+json: - schema: - $ref: '#/components/schemas/ForbiddenError' - NotFound: - description: Not Found - content: - application/problem+json: - schema: - $ref: '#/components/schemas/NotFoundError' - examples: - 404-Token-Not-Found: - $ref: '#/components/examples/404-Token-Not-Found' - Conflict: - description: Conflict - content: - application/problem+json: - schema: - $ref: '#/components/schemas/ConflictError' - Internal: - description: Internal - content: - application/problem+json: - schema: - $ref: '#/components/schemas/InternalError' - TooManyRequests: - description: Too Many Requests - content: - application/problem+json: - schema: - $ref: '#/components/schemas/TooManyRequestsError' - Gone: - description: Gone - content: - application/problem+json: - schema: - $ref: '#/components/schemas/GoneError' - examples: - 410-Expired-Token: - $ref: '#/components/examples/410-Expired-Token' - VerifyEmailResponse: - description: The response schema for the verify email endpoint. - content: - application/json: - schema: - $ref: '#/components/schemas/VerifyEmailResponse' - examples: - VerifyEmailResponse: - $ref: '#/components/examples/Verify-Email-Response' - responses-Unauthorized: - description: Unauthorized - content: - application/problem+json: - schema: - $ref: '#/components/schemas/UnauthorizedError' - MeResponse: - description: Response from me endpoint - content: - application/json: - schema: - $ref: '#/components/schemas/Developer' - GetPortalLogoResponse: - description: Logo of the portal. Can be either png or jpg - content: - image/png: - schema: - type: string - format: binary - image/jpg: - schema: - type: string - format: binary - GetPortalCoverResponse: - description: Cover of the portal. Can be either png or jpg - content: - image/png: - schema: + The type of filter to apply. `IN` filters will limit results to only + the specified values, while `NOT_IN` filters will exclude the specified + values. + enum: + - IN + - NOT_IN + ApiProductVersionFilter: + type: object + additionalProperties: false + properties: + dimension: + description: The dimension to filter. + type: string + enum: + - API_PRODUCT_VERSION + type: + $ref: '#/components/schemas/FilterType' + values: + description: | + The UUIDs of the API product versions to include in the results. + type: array + items: type: string - format: binary - image/jpg: - schema: + pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ + required: + - dimension + - type + - values + ApplicationFilter: + type: object + additionalProperties: false + properties: + dimension: + description: >- + The dimension to filter. If no application filter is provided the + API will implicitly filter on the applications owned by the + developer making the query request. + type: string + enum: + - APPLICATION + type: + $ref: '#/components/schemas/FilterType' + values: + description: | + The UUIDs of the dev portal applications to include in the results. + type: array + items: type: string - format: binary - GetPortalAppearanceResponse: - description: portal appearance - content: - application/json: - schema: - $ref: '#/components/schemas/PortalAppearance' - GetPortalContextResponse: - description: portal context - content: - application/json: - schema: - $ref: '#/components/schemas/PortalContext' - ProductGet: - description: Response for a single product's details. - content: - application/json: - schema: - $ref: '#/components/schemas/Product' - ProductList: - description: Response for a list of products. - content: - application/json: - schema: - $ref: '#/components/schemas/ProductListPage' - ProductListVersions: - description: Paginated list of versions of an API Product. - content: - application/json: - schema: - $ref: '#/components/schemas/ProductVersionListPage' - ProductVersionGet: - description: Product version details. - content: - application/json: - schema: - $ref: '#/components/schemas/ProductVersion' - ProductVersionSpecGet: - description: Product version spec document. - content: - application/json: - schema: - $ref: '#/components/schemas/ProductVersionSpec' - ProductVersionSpecOperationsGet: - description: Product version spec operations. - content: - application/json: - schema: - $ref: '#/components/schemas/ProductVersionSpecOperations' - ProductDocumentGet: - description: Details for a single document for a given product. - content: - application/json: - schema: - $ref: '#/components/schemas/ProductDocumentRaw' - application/vnd.konnect.document-nodes+json: - schema: - $ref: '#/components/schemas/ProductDocument' - CreateRegistration: - description: Registration creation response. - content: - application/json: - schema: - $ref: '#/components/schemas/GetRegistrationResponse' - GetRegistration: - description: Get registration response. - content: - application/json: - schema: - $ref: '#/components/schemas/GetRegistrationResponse' - ListRegistrations: - description: Get registrations response. - content: - application/json: - schema: - $ref: '#/components/schemas/ListRegistrationsResponse' - SearchResponse: - description: Search Results - content: - application/json: - schema: - $ref: '#/components/schemas/SearchResults' - examples: - Search Response Example: - $ref: '#/components/examples/SearchResponseExample' - schemas: + pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$ + required: + - dimension + - type + - values + StatusCodeFilter: + type: object + additionalProperties: false + properties: + dimension: + description: The dimension to filter. + type: string + enum: + - STATUS_CODE + type: + $ref: '#/components/schemas/FilterType' + values: + description: | + Only include requests with specific status codes in the results. + type: array + items: + type: integer + minimum: 100 + maximum: 999 + required: + - dimension + - type + - values + StatusCodeGroupedFilter: + type: object + additionalProperties: false + properties: + dimension: + description: The dimension to filter. + type: string + enum: + - STATUS_CODE_GROUPED + type: + $ref: '#/components/schemas/FilterType' + values: + description: | + Only include the given groups of status codes in the results. + type: array + items: + type: string + pattern: ^\d[X][X]$ + required: + - dimension + - type + - values + QueryResponseMeta: + type: object + additionalProperties: false + description: Query response metadata. + properties: + dimensions: + type: object + additionalProperties: false + description: The dimension name and values returned in the response. + properties: + API_PRODUCT_VERSION: + type: array + items: + type: string + APPLICATION: + type: array + items: + type: string + STATUS_CODE: + type: array + items: + type: string + STATUS_CODE_GROUPED: + type: array + items: + type: string + metric_names: + type: array + description: The metric requested in query. + minItems: 1 + maxItems: 1 + items: + type: string + enum: + - REQUEST_COUNT + - REQUEST_PER_MINUTE + - RESPONSE_LATENCY_P99 + - RESPONSE_LATENCY_P95 + - RESPONSE_LATENCY_P50 + - RESPONSE_SIZE_P99 + - RESPONSE_SIZE_P95 + - RESPONSE_SIZE_P50 + - REQUEST_SIZE_P99 + - REQUEST_SIZE_P95 + - REQUEST_SIZE_P50 + metric_units: + type: object + description: The unit of metric. + properties: + REQUEST_COUNT: + type: string + default: count + REQUEST_PER_MINUTE: + type: string + default: count/minute + RESPONSE_LATENCY_P99: + type: string + default: ms + RESPONSE_LATENCY_P95: + type: string + default: ms + RESPONSE_LATENCY_P50: + type: string + default: ms + RESPONSE_SIZE_P99: + type: string + default: bytes + RESPONSE_SIZE_P95: + type: string + default: bytes + RESPONSE_SIZE_P50: + type: string + default: bytes + REQUEST_SIZE_P99: + type: string + default: bytes + REQUEST_SIZE_P95: + type: string + default: bytes + REQUEST_SIZE_P50: + type: string + default: bytes + start_ms: + type: integer + description: >- + Unix timestamp in milliseconds specifying the lower bound to return + data for the query. Provided from the query parameters. + end_ms: + type: integer + description: >- + Unix timestamp in milliseconds specifying the upper bound to return + data for the query. Provided from the query parameters. + truncated: + type: boolean + description: >- + True if the limit of dimension values was reached and results were + truncated. Limit value is 50. + granularity: + type: integer + description: >- + The resulting time bucket for the returned data. If `TIME` was not + specified as a dimension, granularity is the duration of the query. + query_id: + type: string + description: Optional ID used to look up the query. + QueryResponseRecord: + type: object + additionalProperties: false + description: A response record. + properties: + event: + type: object + additionalProperties: false + description: >- + Event within the response. Mapping from the requested metrics and + dimensions to the values. + properties: + REQUEST_COUNT: + type: integer + description: The number or requests metric. + REQUEST_PER_MINUTE: + type: number + description: The number of requests per minute metric. + RESPONSE_LATENCY_P99: + type: number + description: 99th percentile response latency metric in milliseconds. + RESPONSE_LATENCY_P95: + type: number + description: 95th percentile response latency metric in milliseconds. + RESPONSE_LATENCY_P50: + type: number + description: 50th percentile response latency metric in milliseconds. + RESPONSE_SIZE_P99: + type: number + description: 99th percentile response size metric in bytes. + RESPONSE_SIZE_P95: + type: number + description: 95th percentile response size metric in bytes. + RESPONSE_SIZE_P50: + type: number + description: 50th percentile response size metric in bytes. + REQUEST_SIZE_P99: + type: number + description: 99th percentile request size metric in bytes. + REQUEST_SIZE_P95: + type: number + description: 95th percentile request size metric in bytes. + REQUEST_SIZE_P50: + type: number + description: 50th percentile request size metric in bytes. + API_PRODUCT_VERSION: + type: string + description: Dimension value for `API_PRODUCT_VERSION` name. + APPLICATION: + type: string + description: Dimension value for `APPLICATION` name. + STATUS_CODE: + type: string + description: Dimension value for `STATUS_CODE`. + STATUS_CODE_GROUPED: + type: string + description: Dimension value for `STATUS_CODE_GROUPED`. + timestamp: + type: string + format: date-time + description: >- + An ISO-8601 timestamp. If `TIME` was requested as a dimension this + will be the start of the time bucket. If not specified this is the + start time of the query. + example: '2023-08-03T15:00:00.000Z' + QueryResponseRecords: + type: array + description: Query response data. + items: + $ref: '#/components/schemas/QueryResponseRecord' + BaseError: + type: object + title: Error + description: standard error + required: + - status + - title + - instance + - detail + properties: + status: + type: integer + description: > + The HTTP status code of the error. Useful when passing the response + + body to child properties in a frontend UI. Must be returned as an + integer. + readOnly: true + title: + type: string + description: | + A short, human-readable summary of the problem. It should not + change between occurences of a problem, except for localization. + Should be provided as "Sentence case" for direct use in the UI. + readOnly: true + type: + type: string + description: The error type. + readOnly: true + instance: + type: string + description: | + Used to return the correlation ID back to the user, in the format + kong:trace:. This helps us find the relevant logs + when a customer reports an issue. + readOnly: true + detail: + type: string + description: > + A human readable explanation specific to this occurence of the + problem. + + This field may contain request/entity data to help the user + understand + + what went wrong. Enclose variable values in square brackets. Should + be + + provided as "Sentence case" for direct use in the UI. + readOnly: true + ForbiddenError: + type: object + properties: + status: + example: 403 + title: + example: Forbidden + type: + example: https://httpstatuses.com/403 + instance: + example: kong:trace:1234567890 + detail: + example: Forbidden + allOf: + - $ref: '#/components/schemas/BaseError' + - $ref: '#/components/schemas/BaseError' CreateCredentialPayload: additionalProperties: false type: object @@ -1586,56 +1584,6 @@ components: example: '2022-11-04T20:10:06.927Z' description: An ISO-8601 timestamp representation of entity update date. readOnly: true - BaseError: - type: object - title: Error - description: standard error - required: - - status - - title - - instance - - detail - properties: - status: - type: integer - description: > - The HTTP status code of the error. Useful when passing the response - - body to child properties in a frontend UI. Must be returned as an - integer. - readOnly: true - title: - type: string - description: | - A short, human-readable summary of the problem. It should not - change between occurences of a problem, except for localization. - Should be provided as "Sentence case" for direct use in the UI. - readOnly: true - type: - type: string - description: The error type. - readOnly: true - instance: - type: string - description: | - Used to return the correlation ID back to the user, in the format - kong:trace:. This helps us find the relevant logs - when a customer reports an issue. - readOnly: true - detail: - type: string - description: > - A human readable explanation specific to this occurence of the - problem. - - This field may contain request/entity data to help the user - understand - - what went wrong. Enclose variable values in square brackets. Should - be - - provided as "Sentence case" for direct use in the UI. - readOnly: true InvalidRules: description: invalid parameters rules type: string @@ -1651,6 +1599,7 @@ components: - min_uppercase - min_symbols - is_array + - is_base64 - is_boolean - is_date_time - is_integer @@ -1662,7 +1611,7 @@ components: - unknown_property - is_label - matches_regex - InvalidParameterItem: + InvalidParameterChoiceItem: type: object properties: field: @@ -1684,6 +1633,35 @@ components: required: - field - reason + InvalidParameterDependentItem: + type: object + properties: + field: + type: string + example: name + readOnly: true + rule: + description: invalid parameters rules + type: string + readOnly: true + nullable: true + enum: + - dependent_fields + reason: + type: string + example: is a required field + readOnly: true + dependents: + type: array + uniqueItems: true + nullable: true + items: {} + readOnly: true + required: + - field + - rule + - reason + - dependents InvalidParameters: type: array nullable: false @@ -1691,7 +1669,19 @@ components: minItems: 1 description: invalid parameters items: - $ref: '#/components/schemas/InvalidParameterItem' + oneOf: + - $ref: '#/components/schemas/InvalidParameterChoiceItem' + - $ref: '#/components/schemas/InvalidParameterDependentItem' + - $ref: '#/components/schemas/InvalidParameterChoiceItem' + - $ref: '#/components/schemas/InvalidParameterDependentItem' + - $ref: '#/components/schemas/InvalidParameterChoiceItem' + - $ref: '#/components/schemas/InvalidParameterDependentItem' + - $ref: '#/components/schemas/InvalidParameterChoiceItem' + - $ref: '#/components/schemas/InvalidParameterDependentItem' + - $ref: '#/components/schemas/InvalidParameterChoiceItem' + - $ref: '#/components/schemas/InvalidParameterDependentItem' + - $ref: '#/components/schemas/InvalidParameterChoiceItem' + - $ref: '#/components/schemas/InvalidParameterDependentItem' BadRequestError: type: object required: @@ -1736,21 +1726,6 @@ components: - $ref: '#/components/schemas/BaseError' - $ref: '#/components/schemas/BaseError' - $ref: '#/components/schemas/BaseError' - ForbiddenError: - type: object - properties: - status: - example: 403 - title: - example: Forbidden - type: - example: https://httpstatuses.com/403 - instance: - example: kong:trace:1234567890 - detail: - example: Forbidden - allOf: - - $ref: '#/components/schemas/BaseError' NotFoundError: type: object properties: @@ -1785,10 +1760,6 @@ components: allOf: - $ref: '#/components/schemas/BaseError' - $ref: '#/components/schemas/BaseError' - InternalError: - allOf: - - $ref: '#/components/schemas/BaseError' - - $ref: '#/components/schemas/BaseError' TooManyRequestsError: type: object properties: @@ -1928,7 +1899,7 @@ components: Payload required to be sent to register a developer to the portal. type: object - additionalProperties: false + additionalProperties: true properties: email: type: string @@ -2006,8 +1977,10 @@ components: properties: portal_id: type: string + format: uuid org_id: type: string + format: uuid featureset_id: type: string feature_set: @@ -2075,6 +2048,7 @@ components: description: Name of product. description: type: string + nullable: true example: API for billing functions document_count: type: integer @@ -2151,6 +2125,10 @@ components: ProductVersionListPage: title: ProductVersionListPage type: object + additionalProperties: false + required: + - meta + - data properties: meta: $ref: '#/components/schemas/PaginatedMeta' @@ -2158,9 +2136,9 @@ components: type: array items: $ref: '#/components/schemas/ProductVersion' - ProductVersionSpec: + ProductVersionSpecDocument: type: object - title: Product Version Spec Document + title: ProductVersionSpecDocument description: API specification document for a product version. properties: api_type: @@ -2172,7 +2150,7 @@ components: - content ProductVersionSpecOperations: type: object - title: Operations in product version spec document + title: ProductVersionSpecOperations description: List of every operation detailed in a product version spec document. required: - api_type @@ -2228,7 +2206,7 @@ components: - openapi ProductDocument: type: object - title: Document + title: ProductDocument description: >- A document for a product. This is a document that is not a part of the API specification. @@ -2244,6 +2222,7 @@ components: - description: >- Contains a unique identifier used by the DocumentHub service for this resource. + type: string parent_document_id: type: string format: uuid @@ -2268,7 +2247,7 @@ components: example: Hello World ProductDocumentRaw: type: object - title: Document + title: ProductDocumentRaw description: >- A document for a product. This is a document that is not a part of the API specification. @@ -2284,6 +2263,7 @@ components: - description: >- Contains a unique identifier used by the DocumentHub service for this resource. + type: string parent_document_id: type: string format: uuid @@ -2320,6 +2300,7 @@ components: DocumentItem: type: object title: Document item + additionalProperties: false required: - id - parent_document_id @@ -2347,6 +2328,7 @@ components: example: Getting Started ListDocuments: type: object + additionalProperties: false required: - meta - data @@ -2734,6 +2716,7 @@ components: SearchResults: title: SearchResults type: object + additionalProperties: false required: - data - meta @@ -2779,6 +2762,7 @@ components: type: string example: A nice product for customers to read about and consume description: a description of the product + nullable: true readOnly: true created_at: $ref: '#/components/schemas/CreatedAt' @@ -2797,6 +2781,7 @@ components: latest_version: type: object description: Last created version. + nullable: true required: - name - id @@ -2823,112 +2808,814 @@ components: Accepted values are `versions` and `versions.documents`. Use commas to separate multiple values. example: versions,versions.documents - examples: - Authenticate-Request: - value: - username: developer@example.com - password: - Reset-Password-Request: - value: - password: - token: c8efd006-d8e1-4743-b91b-f163b9eae06a - Verify-Email-Request: - value: - token: c8efd006-d8e1-4743-b91b-f163b9eae06a - Verify-Email-Response: - value: - email: developer@example.com - token: c8efd006-d8e1-4743-b91b-f163b9eae06a - 400-Invalid-Token: - value: - status: 400 - title: Bad Request - instance: konnect:trace:8988732526256293040 - detail: The provided token is invalid - invalid_parameters: - - field: token - reason: invalid ID format - 400-Login-Failed: - value: - status: 400 - title: Bad Request - instance: konnect:trace:8988732526256293040 - detail: Required fields are missing - invalid_parameters: - - field: password - reason: is required - 401-Unauthorized: - value: - status: 401 - title: Invalid Credentials - instance: konnect:trace:7283332526256293094 - detail: You have entered an invalid email or password. - 401-Account-Not-Approved: - value: - status: 401 - title: Approval Required - instance: konnect:trace:7283332526256293094 - detail: Your account is pending approval for access. - 404-Token-Not-Found: - value: - status: 400 - title: Not Found - instance: konnect:trace:8988732526256293040 - detail: The provided token was not found - 410-Expired-Token: - value: - status: 410 - title: Gone - instance: konnect:trace:8988732526256293040 - detail: The token has expired - SearchResponseExample: - value: - data: - - index: product-catalog - source: - created_at: '2023-01-19T17:41:55.896Z' - updated_at: '2023-01-20T17:41:55.896Z' - id: e35b0beb-c3f7-4f8f-95f7-cd8ff0ee478e - name: Great Product - description: Great products are built with great care - document_count: 5 - version_count: 5 - latest_version: - name: v5 - id: 455b0beb-c3f7-4f8f-95f7-cd8ff0ee478e - meta: - page: - number: 1 - size: 10 - total: 4 -tags: - - name: applications - description: >- - The API for Konnect Portal developer applications within a private portal - (i.e. requires registration/authentication). When a portal is in `public` - mode, all of the described endpoints will return a 404 error. A public - portal means that applications and registrations are not available/needed. - In this API's context, "you" and "your" refers to the developer consuming - the API. - - name: credentials - description: >- - The API for Konnect Portal developer credentials within a private portal - (i.e. requires registration/authentication). - - name: developer - description: API for managing a Konnect Portal Developer. - - name: portal - description: The API for retrieving details about a single Konnect Portal. - - name: products - description: The API for Konnect Portal Products. - - name: versions - description: The API for Konnect Portal Product Versions. - - name: documentation - description: The API for Konnect Portal Product Documentation. - - name: registrations - description: > - The API for Konnect Portal application registrations. If the portal is - public - - all of the described endpoints will return a 404 error - - name: search - description: The API for Konnect Portal Search. + responses: + QueryResponse: + description: A response from an Application Analytics query. + content: + application/json: + schema: + type: object + additionalProperties: false + properties: + meta: + $ref: '#/components/schemas/QueryResponseMeta' + records: + $ref: '#/components/schemas/QueryResponseRecords' + examples: + Response with a single metric: + $ref: '#/components/examples/ResponseExampleWithMetric' + Response with metric and dimension: + $ref: '#/components/examples/ResponseExampleWithMetricAndDimension' + Response with metric and two dimensions: + $ref: >- + #/components/examples/ResponseExampleWithMetricAndMultipleDimensions + Response with time dimension: + $ref: '#/components/examples/ResponseExampleWithTimeDimension' + Forbidden: + description: Forbidden + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ForbiddenError' + examples: + UnauthorizedExample: + $ref: '#/components/examples/ForbiddenExample' + ListApplications: + description: Get applications response + content: + application/json: + schema: + $ref: '#/components/schemas/ListApplicationsResponse' + GetApplication: + description: Get application response + content: + application/json: + schema: + $ref: '#/components/schemas/GetApplicationResponse' + RefreshToken: + description: Refresh token response + content: + application/json: + schema: + $ref: '#/components/schemas/RefreshTokenResponse' + ListCredentials: + description: List credentials response + content: + application/json: + schema: + $ref: '#/components/schemas/ListCredentialsResponse' + CredentialCreation: + description: Credential Creation success + content: + application/json: + schema: + $ref: '#/components/schemas/CredentialCreationResponse' + ApplicationCreation: + description: Application Creation success + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationCreationResponse' + ApplicationUpdate: + description: Application Update success + content: + application/json: + schema: + $ref: '#/components/schemas/ApplicationUpdateResponse' + BadRequest: + description: Bad Request + content: + application/problem+json: + schema: + $ref: '#/components/schemas/BadRequestError' + examples: + 400-Invalid-Token: + $ref: '#/components/examples/400-Invalid-Token' + 400-Login-Failed: + $ref: '#/components/examples/400-Login-Failed' + Unauthorized: + description: Unauthorized + content: + application/problem+json: + schema: + $ref: '#/components/schemas/UnauthorizedError' + examples: + UnauthorizedExample: + $ref: '#/components/examples/UnauthorizedExample' + 401-Unauthorized: + $ref: '#/components/examples/401-Unauthorized' + 401-Account-Not-Approved: + $ref: '#/components/examples/401-Account-Not-Approved' + NotFound: + description: Not Found + content: + application/problem+json: + schema: + $ref: '#/components/schemas/NotFoundError' + examples: + NotFoundExample: + $ref: '#/components/examples/NotFoundExample' + 404-Token-Not-Found: + $ref: '#/components/examples/404-Token-Not-Found' + Conflict: + description: Conflict + content: + application/problem+json: + schema: + $ref: '#/components/schemas/ConflictError' + TooManyRequests: + description: Too Many Requests + content: + application/problem+json: + schema: + $ref: '#/components/schemas/TooManyRequestsError' + Gone: + description: Gone + content: + application/problem+json: + schema: + $ref: '#/components/schemas/GoneError' + examples: + 410-Expired-Token: + $ref: '#/components/examples/410-Expired-Token' + VerifyEmailResponse: + description: The response schema for the verify email endpoint. + content: + application/json: + schema: + $ref: '#/components/schemas/VerifyEmailResponse' + examples: + VerifyEmailResponse: + $ref: '#/components/examples/Verify-Email-Response' + responses-Unauthorized: + description: Unauthorized + content: + application/problem+json: + schema: + $ref: '#/components/schemas/UnauthorizedError' + examples: + UnauthorizedExample: + $ref: '#/components/examples/UnauthorizedExample' + MeResponse: + description: Response from me endpoint + content: + application/json: + schema: + $ref: '#/components/schemas/Developer' + GetPortalLogoResponse: + description: Logo of the portal. Can be either png or jpg + content: + image/png: + schema: + type: string + format: binary + image/jpg: + schema: + type: string + format: binary + GetPortalCoverResponse: + description: Cover of the portal. Can be either png or jpg + content: + image/png: + schema: + type: string + format: binary + image/jpg: + schema: + type: string + format: binary + GetPortalAppearanceResponse: + description: portal appearance + content: + application/json: + schema: + $ref: '#/components/schemas/PortalAppearance' + GetPortalContextResponse: + description: portal context + content: + application/json: + schema: + $ref: '#/components/schemas/PortalContext' + ProductGet: + description: Response for a single product's details. + content: + application/json: + schema: + $ref: '#/components/schemas/Product' + ProductList: + description: Response for a list of products. + content: + application/json: + schema: + $ref: '#/components/schemas/ProductListPage' + ProductListVersions: + description: Paginated list of versions of an API Product. + content: + application/json: + schema: + $ref: '#/components/schemas/ProductVersionListPage' + ProductVersionGet: + description: Product version details. + content: + application/json: + schema: + $ref: '#/components/schemas/ProductVersion' + ProductVersionSpecGet: + description: Product version spec document. + content: + application/json: + schema: + $ref: '#/components/schemas/ProductVersionSpecDocument' + ProductVersionSpecOperationsGet: + description: Product version spec operations. + content: + application/json: + schema: + $ref: '#/components/schemas/ProductVersionSpecOperations' + ProductDocumentGet: + description: Details for a single document for a given product. + content: + application/json: + schema: + $ref: '#/components/schemas/ProductDocumentRaw' + application/vnd.konnect.document-nodes+json: + schema: + $ref: '#/components/schemas/ProductDocument' + CreateRegistration: + description: Registration creation response. + content: + application/json: + schema: + $ref: '#/components/schemas/GetRegistrationResponse' + GetRegistration: + description: Get registration response. + content: + application/json: + schema: + $ref: '#/components/schemas/GetRegistrationResponse' + ListRegistrations: + description: Get registrations response. + content: + application/json: + schema: + $ref: '#/components/schemas/ListRegistrationsResponse' + SearchResponse: + description: Search Results + content: + application/json: + schema: + $ref: '#/components/schemas/SearchResults' + examples: + Search Response Example: + $ref: '#/components/examples/SearchResponseExample' + examples: + ResponseExampleWithMetricAndDimension: + value: + meta: + dimensions: + APPLICATION: + - Application 1 + - Application 2 + metric_names: + - RESPONSE_LATENCY_P99 + metric_units: + RESPONSE_LATENCY_P99: ms + start_ms: 1691074800000 + end_ms: 1691161200000 + granularity: 86400000 + truncated: false + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + records: + - event: + APPLICATION: Application 1 + RESPONSE_LATENCY_P99: 250 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + APPLICATION: Application 2 + RESPONSE_LATENCY_P99: 740 + timestamp: '2023-08-03T15:00:00.000Z' + ResponseExampleWithMetric: + value: + meta: + dimensions: {} + metric_names: + - REQUEST_PER_MINUTE + metric_units: + REQUEST_PER_MINUTE: count/minute + start_ms: 1691158080000 + end_ms: 1691158980000 + granularity: 900000 + truncated: false + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + records: + - event: + REQUEST_PER_MINUTE: 1340.8666666666666 + timestamp: '2023-08-04T14:08:00.000Z' + ResponseExampleWithMetricAndMultipleDimensions: + value: + meta: + start_ms: 1691074800000 + end_ms: 1691082000000 + granularity: 7200000 + query_id: portal-api-4fad296e-da5e-41ed-af86-191440fe448e + metric_names: + - REQUEST_COUNT + metric_units: + REQUEST_COUNT: count + dimensions: + APPLICATION: + - GetMeAKongApplication926 + STATUS_CODE_GROUPED: + - 2XX + - 3XX + truncated: false + records: + - event: + APPLICATION: Application 1 + STATUS_CODE_GROUPED: 2XX + REQUEST_COUNT: 81447 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + APPLICATION: Application 1 + STATUS_CODE_GROUPED: 5XX + REQUEST_COUNT: 28468 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + APPLICATION: Application 2 + STATUS_CODE_GROUPED: 2XX + REQUEST_COUNT: 45819 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + APPLICATION: Application 2 + STATUS_CODE_GROUPED: 5XX + REQUEST_COUNT: 25041 + timestamp: '2023-08-03T15:00:00.000Z' + ResponseExampleWithTimeDimension: + value: + meta: + start_ms: 1691074800000 + end_ms: 1691082000000 + granularity: 3600000 + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + metric_names: + - RESPONSE_SIZE_P99 + metric_units: + RESPONSE_SIZE_P99: bytes + dimensions: + STATUS_CODE_GROUPED: + - 2XX + - 3XX + - 4XX + - 5XX + truncated: false + records: + - event: + STATUS_CODE_GROUPED: 2XX + RESPONSE_SIZE_P99: 590 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 3XX + RESPONSE_SIZE_P99: 584 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 4XX + RESPONSE_SIZE_P99: 629 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 5XX + RESPONSE_SIZE_P99: 603 + timestamp: '2023-08-03T15:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 2XX + RESPONSE_SIZE_P99: 590 + timestamp: '2023-08-03T16:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 3XX + RESPONSE_SIZE_P99: 584 + timestamp: '2023-08-03T16:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 4XX + RESPONSE_SIZE_P99: 628 + timestamp: '2023-08-03T16:00:00.000Z' + - event: + STATUS_CODE_GROUPED: 5XX + RESPONSE_SIZE_P99: 603 + timestamp: '2023-08-03T16:00:00.000Z' + QueryExampleWithMetric: + value: + start_ms: 1691158080000 + end_ms: 1691158980000 + metrics: + - REQUEST_PER_MINUTE + meta: + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + filter: + - dimension: API_PRODUCT_VERSION + type: IN + values: + - 417e47e8-ae7b-48a1-9b34-3f6835161de1 + QueryExampleWithMetricAndDimension: + value: + start_ms: 1691074800000 + end_ms: 1691161200000 + metrics: + - RESPONSE_LATENCY_P99 + dimensions: + - APPLICATION + meta: + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + QueryExampleWithMetricAndMultipleDimensions: + value: + start_ms: 1691074800000 + end_ms: 1691082000000 + metrics: + - REQUEST_COUNT + dimensions: + - APPLICATION + - STATUS_CODE_GROUPED + meta: + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + filter: + - dimension: STATUS_CODE_GROUPED + type: IN + values: + - 2XX + - 5XX + QueryExampleWithTimeDimension: + value: + start_ms: 1691074800000 + end_ms: 1691082000000 + granularity_ms: 3600000 + metrics: + - RESPONSE_SIZE_P99 + dimensions: + - TIME + - STATUS_CODE_GROUPED + meta: + query_id: portal-api-3c0abb98-90bd-4e80-a495-ac268acc493e + BadRequestExample: + value: + status: 400 + title: Bad Request + instance: kong:trace:9039922446017540182 + detail: 'Malformed Query: dimension API_PRODUCT is not allowed' + invalid_parameters: [] + UnauthorizedExample: + value: + status: 401 + title: Unauthorized + instance: kong:trace:8347343766220159418 + detail: Unauthorized + invalid_parameters: [] + ForbiddenExample: + value: + status: 403 + title: Forbidden + instance: kong:trace:2723154947768991354 + detail: You do not have permission to perform this action + NotFoundExample: + value: + status: 404 + title: Not Found + instance: kong:trace:6816496025408232265 + detail: Not Found + Authenticate-Request: + value: + username: developer@example.com + password: + Reset-Password-Request: + value: + password: + token: c8efd006-d8e1-4743-b91b-f163b9eae06a + Verify-Email-Request: + value: + token: c8efd006-d8e1-4743-b91b-f163b9eae06a + Verify-Email-Response: + value: + email: developer@example.com + token: c8efd006-d8e1-4743-b91b-f163b9eae06a + 400-Invalid-Token: + value: + status: 400 + title: Bad Request + instance: konnect:trace:8988732526256293040 + detail: The provided token is invalid + invalid_parameters: + - field: token + reason: invalid ID format + 400-Login-Failed: + value: + status: 400 + title: Bad Request + instance: konnect:trace:8988732526256293040 + detail: Required fields are missing + invalid_parameters: + - field: password + reason: is required + 401-Unauthorized: + value: + status: 401 + title: Invalid Credentials + instance: konnect:trace:7283332526256293094 + detail: You have entered an invalid email or password. + 401-Account-Not-Approved: + value: + status: 401 + title: Approval Required + instance: konnect:trace:7283332526256293094 + detail: Your account is pending approval for access. + 404-Token-Not-Found: + value: + status: 400 + title: Not Found + instance: konnect:trace:8988732526256293040 + detail: The provided token was not found + 410-Expired-Token: + value: + status: 410 + title: Gone + instance: konnect:trace:8988732526256293040 + detail: The token has expired + SearchResponseExample: + value: + data: + - index: product-catalog + source: + created_at: '2023-01-19T17:41:55.896Z' + updated_at: '2023-01-20T17:41:55.896Z' + id: e35b0beb-c3f7-4f8f-95f7-cd8ff0ee478e + name: Great Product + description: Great products are built with great care + document_count: 5 + version_count: 5 + latest_version: + name: v5 + id: 455b0beb-c3f7-4f8f-95f7-cd8ff0ee478e + meta: + page: + number: 1 + size: 10 + total: 4 + parameters: + CredentialId: + name: credentialId + in: path + required: true + description: Id of the targeted credential + schema: + type: string + format: uuid + PageSize: + name: page[size] + description: >- + The maximum number of items to include per page. The last page of a + collection may include fewer items. + required: false + in: query + allowEmptyValue: true + schema: + type: integer + example: 10 + PageNumber: + name: page[number] + description: Determines which page of the entities to retrieve. + required: false + in: query + allowEmptyValue: true + schema: + type: integer + example: 1 + FilterByNameEquality: + name: filter[name][eq] + description: >- + Filter by direct equality comparison of the name property with a + supplied value. + in: query + required: false + schema: + type: string + example: good service + FilterByNameEqualityShort: + name: filter[name] + description: >- + Filter by direct equality comparison (short-hand) of the name property + with a supplied value. + in: query + required: false + schema: + type: string + example: good service + FilterByNameContains: + name: filter[name][contains] + description: >- + Filter by contains comparison of the name property with a supplied + substring + in: query + required: false + schema: + type: string + example: good service + ApplicationId: + name: applicationId + in: path + required: true + description: Id of the targeted application + schema: + type: string + format: uuid + ProductId: + name: productId + in: path + required: true + description: Contains a unique identifier used by the Portal API for this resource. + schema: + type: string + format: uuid + ProductVersionId: + name: versionId + in: path + required: true + description: Contains a unique identifier used by the Portal API for this resource. + schema: + type: string + format: uuid + DocumentId: + name: documentId + in: path + required: true + description: Contains a unique identifier used by the Portal API for this resource. + schema: + type: string + format: uuid + FilterByDescriptionEquality: + name: filter[description][eq] + description: >- + Filter by direct equality comparison of the description property with a + supplied value. + in: query + required: false + schema: + type: string + example: portal + FilterByDescriptionEqualityShort: + name: filter[description] + description: >- + Filter by direct equality comparison (short-hand) of the description + property with a supplied value. + in: query + required: false + schema: + type: string + example: portal + FilterByDescriptionContains: + name: filter[description][contains] + description: >- + Filter by contains comparison of the description property with a + supplied substring + in: query + required: false + schema: + type: string + example: portal + FilterByIdEquality: + name: filter[id][eq] + description: >- + Filter by direct equality comparison of the id property with a supplied + value. + in: query + required: false + schema: + type: string + example: 5be86298-147b-45ab-bfaf-a1bff97dce39 + FilterByIdEqualityShort: + name: filter[id] + description: >- + Filter by direct equality comparison (short-hand) of the id property + with a supplied value. + in: query + required: false + schema: + type: string + example: 5be86298-147b-45ab-bfaf-a1bff97dce39 + RegistrationId: + name: registrationId + in: path + required: true + description: Contains a unique identifier used by the Portal API for this resource. + schema: + type: string + format: uuid + FilterByStatusEquality: + name: filter[status][eq] + description: >- + Filter by direct equality comparison of the status property with a + supplied value. + in: query + required: false + schema: + type: string + enum: + - approved + - pending + - rejected + - revoked + example: approved + FilterByStatusEqualityShort: + name: filter[status] + description: >- + Filter by direct equality comparison (short-hand) of the status property + with a supplied value. + in: query + required: false + schema: + type: string + enum: + - approved + - pending + - rejected + - revoked + example: approved + SearchQuery: + name: q + description: Determines how to filter search results + required: false + in: query + schema: + $ref: '#/components/schemas/SearchQueryParameters' + SearchJoin: + name: join + description: Determines which sub-entities to include in search results + required: false + in: query + schema: + $ref: '#/components/schemas/SearchJoinParameters' + SearchIndices: + name: indices + description: Determines which entity sets to search + required: true + in: path + schema: + $ref: '#/components/schemas/SearchIndicesParameters' + requestBodies: + CreateApplication: + description: Create an application + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/CreateApplicationPayload' + UpdateApplication: + description: Update an application + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateApplicationPayload' + CreateCredential: + description: Create a credential + required: false + content: + application/json: + schema: + $ref: '#/components/schemas/CreateCredentialPayload' + UpdateCredential: + description: Update a credential + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/UpdateCredentialPayload' + AuthenticateRequest: + description: The request schema for the authenticate endpoint. + content: + application/json: + schema: + $ref: '#/components/schemas/AuthenticateRequest' + examples: + Authenticate-Request: + $ref: '#/components/examples/Authenticate-Request' + ResetPasswordRequest: + description: The request schema for the reset password endpoint. + content: + application/json: + schema: + $ref: '#/components/schemas/ResetPasswordRequest' + examples: + ResetPasswordRequest: + $ref: '#/components/examples/Reset-Password-Request' + VerifyEmailRequest: + description: The request schema for the verify email endpoint. + content: + application/json: + schema: + $ref: '#/components/schemas/VerifyEmailRequest' + examples: + VerifyEmailRequest: + $ref: '#/components/examples/Verify-Email-Request' + CreateRegistration: + description: Create an application registration. + required: true + content: + application/json: + schema: + $ref: '#/components/schemas/CreateRegistrationPayload' diff --git a/src/api.ts b/src/api.ts index 4e53fa4..e3b097c 100644 --- a/src/api.ts +++ b/src/api.ts @@ -43,6 +43,38 @@ export type AlignmentKind = typeof AlignmentKind[keyof typeof AlignmentKind]; */ export type AnyNode = { type: 'blockquote' } & BlockQuoteBlock | { type: 'break' } & BreakBlock | { type: 'code' } & Code | { type: 'code_block' } & CodeBlock | { type: 'document' } & DocumentBlock | { type: 'emphasis' } & Emphasis | { type: 'heading' } & HeadingBlock | { type: 'image' } & Image | { type: 'link' } & Link | { type: 'list' } & ListBlock | { type: 'list_item' } & ListItemBlock | { type: 'paragraph' } & ParagraphBlock | { type: 'strikethrough' } & StrikeThrough | { type: 'table' } & TableBlock | { type: 'table_cell' } & TableCellBlock | { type: 'table_header' } & TableHeaderBlock | { type: 'table_row' } & TableRowBlock | { type: 'task_checkbox' } & TaskCheckbox | { type: 'text' } & Text | { type: 'text_block' } & TextBlock; +/** + * + * @export + * @interface ApiProductVersionFilter + */ +export interface ApiProductVersionFilter { + /** + * The dimension to filter. + * @type {string} + * @memberof ApiProductVersionFilter + */ + 'dimension': ApiProductVersionFilterDimensionEnum; + /** + * + * @type {FilterType} + * @memberof ApiProductVersionFilter + */ + 'type': FilterType; + /** + * The UUIDs of the API product versions to include in the results. + * @type {Array} + * @memberof ApiProductVersionFilter + */ + 'values': Array; +} + +export const ApiProductVersionFilterDimensionEnum = { + ApiProductVersion: 'API_PRODUCT_VERSION' +} as const; + +export type ApiProductVersionFilterDimensionEnum = typeof ApiProductVersionFilterDimensionEnum[keyof typeof ApiProductVersionFilterDimensionEnum]; + /** * * @export @@ -130,6 +162,38 @@ export interface ApplicationCreationResponseCredentials { */ 'client_secret': string; } +/** + * + * @export + * @interface ApplicationFilter + */ +export interface ApplicationFilter { + /** + * The dimension to filter. If no application filter is provided the API will implicitly filter on the applications owned by the developer making the query request. + * @type {string} + * @memberof ApplicationFilter + */ + 'dimension': ApplicationFilterDimensionEnum; + /** + * + * @type {FilterType} + * @memberof ApplicationFilter + */ + 'type': FilterType; + /** + * The UUIDs of the dev portal applications to include in the results. + * @type {Array} + * @memberof ApplicationFilter + */ + 'values': Array; +} + +export const ApplicationFilterDimensionEnum = { + Application: 'APPLICATION' +} as const; + +export type ApplicationFilterDimensionEnum = typeof ApplicationFilterDimensionEnum[keyof typeof ApplicationFilterDimensionEnum]; + /** * Application update response payload * @export @@ -236,10 +300,10 @@ export interface BadRequestError { 'detail'?: any; /** * invalid parameters - * @type {Set} + * @type {Set} * @memberof BadRequestError */ - 'invalid_parameters': Set; + 'invalid_parameters': Set; } /** * standard error @@ -752,6 +816,20 @@ export interface EmphasisAllOf { */ 'level'?: number; } +/** + * The type of filter to apply. `IN` filters will limit results to only the specified values, while `NOT_IN` filters will exclude the specified values. + * @export + * @enum {string} + */ + +export const FilterType = { + In: 'IN', + NotIn: 'NOT_IN' +} as const; + +export type FilterType = typeof FilterType[keyof typeof FilterType]; + + /** * * @export @@ -1043,71 +1121,78 @@ export interface ImageAllOf { /** * * @export - * @interface InternalError + * @interface InvalidParameterChoiceItem */ -export interface InternalError { +export interface InvalidParameterChoiceItem { /** - * The HTTP status code of the error. Useful when passing the response body to child properties in a frontend UI. Must be returned as an integer. - * @type {number} - * @memberof InternalError - */ - 'status': number; - /** - * A short, human-readable summary of the problem. It should not change between occurences of a problem, except for localization. Should be provided as \"Sentence case\" for direct use in the UI. + * * @type {string} - * @memberof InternalError + * @memberof InvalidParameterChoiceItem */ - 'title': string; + 'field': string; /** - * The error type. - * @type {string} - * @memberof InternalError + * + * @type {InvalidRules} + * @memberof InvalidParameterChoiceItem */ - 'type'?: string; + 'rule'?: InvalidRules | null; /** - * Used to return the correlation ID back to the user, in the format kong:trace:. This helps us find the relevant logs when a customer reports an issue. + * * @type {string} - * @memberof InternalError + * @memberof InvalidParameterChoiceItem */ - 'instance': string; + 'reason': string; /** - * A human readable explanation specific to this occurence of the problem. This field may contain request/entity data to help the user understand what went wrong. Enclose variable values in square brackets. Should be provided as \"Sentence case\" for direct use in the UI. - * @type {string} - * @memberof InternalError + * + * @type {Set} + * @memberof InvalidParameterChoiceItem */ - 'detail': string; + 'choices'?: Set | null; } /** * * @export - * @interface InvalidParameterItem + * @interface InvalidParameterDependentItem */ -export interface InvalidParameterItem { +export interface InvalidParameterDependentItem { /** * * @type {string} - * @memberof InvalidParameterItem + * @memberof InvalidParameterDependentItem */ 'field': string; /** - * - * @type {InvalidRules} - * @memberof InvalidParameterItem + * invalid parameters rules + * @type {string} + * @memberof InvalidParameterDependentItem */ - 'rule'?: InvalidRules | null; + 'rule': InvalidParameterDependentItemRuleEnum; /** * * @type {string} - * @memberof InvalidParameterItem + * @memberof InvalidParameterDependentItem */ 'reason': string; /** * * @type {Set} - * @memberof InvalidParameterItem + * @memberof InvalidParameterDependentItem */ - 'choices'?: Set | null; + 'dependents': Set | null; } + +export const InvalidParameterDependentItemRuleEnum = { + DependentFields: 'dependent_fields' +} as const; + +export type InvalidParameterDependentItemRuleEnum = typeof InvalidParameterDependentItemRuleEnum[keyof typeof InvalidParameterDependentItemRuleEnum]; + +/** + * @type InvalidParametersInner + * @export + */ +export type InvalidParametersInner = InvalidParameterChoiceItem | InvalidParameterDependentItem; + /** * invalid parameters rules * @export @@ -1124,6 +1209,7 @@ export const InvalidRules = { MinUppercase: 'min_uppercase', MinSymbols: 'min_symbols', IsArray: 'is_array', + IsBase64: 'is_base64', IsBoolean: 'is_boolean', IsDateTime: 'is_date_time', IsInteger: 'is_integer', @@ -1698,7 +1784,7 @@ export interface Product { * @type {string} * @memberof Product */ - 'description'?: string; + 'description'?: string | null; /** * Number of linked documents in documentation. * @type {number} @@ -1741,7 +1827,7 @@ export interface ProductCatalogIndexSource { * @type {string} * @memberof ProductCatalogIndexSource */ - 'description'?: string; + 'description'?: string | null; /** * An ISO-8601 timestamp representation of entity creation date. * @type {string} @@ -1771,7 +1857,7 @@ export interface ProductCatalogIndexSource { * @type {ProductCatalogIndexSourceLatestVersion} * @memberof ProductCatalogIndexSource */ - 'latest_version': ProductCatalogIndexSourceLatestVersion; + 'latest_version': ProductCatalogIndexSourceLatestVersion | null; } /** * Last created version. @@ -1939,13 +2025,13 @@ export interface ProductVersionListPage { * @type {PaginatedMeta} * @memberof ProductVersionListPage */ - 'meta'?: PaginatedMeta; + 'meta': PaginatedMeta; /** * * @type {Array} * @memberof ProductVersionListPage */ - 'data'?: Array; + 'data': Array; } /** * @@ -1971,19 +2057,19 @@ export type ProductVersionRegistrationConfigsInnerNameEnum = typeof ProductVersi /** * API specification document for a product version. * @export - * @interface ProductVersionSpec + * @interface ProductVersionSpecDocument */ -export interface ProductVersionSpec { +export interface ProductVersionSpecDocument { /** * * @type {ApiTypeEnum} - * @memberof ProductVersionSpec + * @memberof ProductVersionSpecDocument */ 'api_type': ApiTypeEnum; /** * * @type {string} - * @memberof ProductVersionSpec + * @memberof ProductVersionSpecDocument */ 'content': string; } @@ -2063,6 +2149,411 @@ export const ProductVersionSpecOperationsOperationsInnerMethodEnum = { export type ProductVersionSpecOperationsOperationsInnerMethodEnum = typeof ProductVersionSpecOperationsOperationsInnerMethodEnum[keyof typeof ProductVersionSpecOperationsOperationsInnerMethodEnum]; +/** + * + * @export + * @interface QueryApplicationAnalytics + */ +export interface QueryApplicationAnalytics { + /** + * Unix timestamp in milliseconds specifying the lower bound to return data for the query, inclusive. + * @type {number} + * @memberof QueryApplicationAnalytics + */ + 'start_ms': number; + /** + * Unix timestamp in milliseconds specifying upper bound to return data for the query, inclusive. + * @type {number} + * @memberof QueryApplicationAnalytics + */ + 'end_ms': number; + /** + * A property of your API (such as request count or latency) that you wish to query on. Your chosen metric is aggregated within the specified dimensions, meaning that if you query \'request count by application\', you\'ll receive the total number of requests each application received within the given time frame. Some metrics, such as latency and response size, have more complicated aggregations: selecting P99 will result in the 99th percentile of the chosen metric. + * @type {Array} + * @memberof QueryApplicationAnalytics + */ + 'metrics': Array; + /** + * The dimensions for the query. A query may have up to 2 dimensions, including time. If no dimensions are provided, the report will simply return the provided metric aggregated across all available data. + * @type {Array} + * @memberof QueryApplicationAnalytics + */ + 'dimensions'?: Array; + /** + * `granularity_ms` is only valid for queries that include a time dimension, and it specifies the time buckets in for the returned data. + * @type {number} + * @memberof QueryApplicationAnalytics + */ + 'granularity_ms'?: number; + /** + * + * @type {QueryApplicationAnalyticsMeta} + * @memberof QueryApplicationAnalytics + */ + 'meta'?: QueryApplicationAnalyticsMeta; + /** + * + * @type {Array} + * @memberof QueryApplicationAnalytics + */ + 'filter'?: Array; +} + +export const QueryApplicationAnalyticsMetricsEnum = { + RequestCount: 'REQUEST_COUNT', + RequestPerMinute: 'REQUEST_PER_MINUTE', + ResponseLatencyP99: 'RESPONSE_LATENCY_P99', + ResponseLatencyP95: 'RESPONSE_LATENCY_P95', + ResponseLatencyP50: 'RESPONSE_LATENCY_P50', + ResponseSizeP99: 'RESPONSE_SIZE_P99', + ResponseSizeP95: 'RESPONSE_SIZE_P95', + ResponseSizeP50: 'RESPONSE_SIZE_P50', + RequestSizeP99: 'REQUEST_SIZE_P99', + RequestSizeP95: 'REQUEST_SIZE_P95', + RequestSizeP50: 'REQUEST_SIZE_P50' +} as const; + +export type QueryApplicationAnalyticsMetricsEnum = typeof QueryApplicationAnalyticsMetricsEnum[keyof typeof QueryApplicationAnalyticsMetricsEnum]; +export const QueryApplicationAnalyticsDimensionsEnum = { + ApiProductVersion: 'API_PRODUCT_VERSION', + Application: 'APPLICATION', + StatusCode: 'STATUS_CODE', + StatusCodeGrouped: 'STATUS_CODE_GROUPED', + Time: 'TIME' +} as const; + +export type QueryApplicationAnalyticsDimensionsEnum = typeof QueryApplicationAnalyticsDimensionsEnum[keyof typeof QueryApplicationAnalyticsDimensionsEnum]; + +/** + * + * @export + * @interface QueryApplicationAnalytics200Response + */ +export interface QueryApplicationAnalytics200Response { + /** + * + * @type {QueryResponseMeta} + * @memberof QueryApplicationAnalytics200Response + */ + 'meta'?: QueryResponseMeta; + /** + * Query response data. + * @type {Array} + * @memberof QueryApplicationAnalytics200Response + */ + 'records'?: Array; +} +/** + * @type QueryApplicationAnalyticsFilterInner + * @export + */ +export type QueryApplicationAnalyticsFilterInner = { dimension: 'API_PRODUCT_VERSION' } & ApiProductVersionFilter | { dimension: 'APPLICATION' } & ApplicationFilter | { dimension: 'STATUS_CODE' } & StatusCodeFilter | { dimension: 'STATUS_CODE_GROUPED' } & StatusCodeGroupedFilter; + +/** + * Meta information about the query. + * @export + * @interface QueryApplicationAnalyticsMeta + */ +export interface QueryApplicationAnalyticsMeta { + /** + * Optional ID used to look up the query. + * @type {string} + * @memberof QueryApplicationAnalyticsMeta + */ + 'query_id'?: string; +} +/** + * Query response metadata. + * @export + * @interface QueryResponseMeta + */ +export interface QueryResponseMeta { + /** + * + * @type {QueryResponseMetaDimensions} + * @memberof QueryResponseMeta + */ + 'dimensions'?: QueryResponseMetaDimensions; + /** + * The metric requested in query. + * @type {Array} + * @memberof QueryResponseMeta + */ + 'metric_names'?: Array; + /** + * + * @type {QueryResponseMetaMetricUnits} + * @memberof QueryResponseMeta + */ + 'metric_units'?: QueryResponseMetaMetricUnits; + /** + * Unix timestamp in milliseconds specifying the lower bound to return data for the query. Provided from the query parameters. + * @type {number} + * @memberof QueryResponseMeta + */ + 'start_ms'?: number; + /** + * Unix timestamp in milliseconds specifying the upper bound to return data for the query. Provided from the query parameters. + * @type {number} + * @memberof QueryResponseMeta + */ + 'end_ms'?: number; + /** + * True if the limit of dimension values was reached and results were truncated. Limit value is 50. + * @type {boolean} + * @memberof QueryResponseMeta + */ + 'truncated'?: boolean; + /** + * The resulting time bucket for the returned data. If `TIME` was not specified as a dimension, granularity is the duration of the query. + * @type {number} + * @memberof QueryResponseMeta + */ + 'granularity'?: number; + /** + * Optional ID used to look up the query. + * @type {string} + * @memberof QueryResponseMeta + */ + 'query_id'?: string; +} + +export const QueryResponseMetaMetricNamesEnum = { + RequestCount: 'REQUEST_COUNT', + RequestPerMinute: 'REQUEST_PER_MINUTE', + ResponseLatencyP99: 'RESPONSE_LATENCY_P99', + ResponseLatencyP95: 'RESPONSE_LATENCY_P95', + ResponseLatencyP50: 'RESPONSE_LATENCY_P50', + ResponseSizeP99: 'RESPONSE_SIZE_P99', + ResponseSizeP95: 'RESPONSE_SIZE_P95', + ResponseSizeP50: 'RESPONSE_SIZE_P50', + RequestSizeP99: 'REQUEST_SIZE_P99', + RequestSizeP95: 'REQUEST_SIZE_P95', + RequestSizeP50: 'REQUEST_SIZE_P50' +} as const; + +export type QueryResponseMetaMetricNamesEnum = typeof QueryResponseMetaMetricNamesEnum[keyof typeof QueryResponseMetaMetricNamesEnum]; + +/** + * The dimension name and values returned in the response. + * @export + * @interface QueryResponseMetaDimensions + */ +export interface QueryResponseMetaDimensions { + /** + * + * @type {Array} + * @memberof QueryResponseMetaDimensions + */ + 'API_PRODUCT_VERSION'?: Array; + /** + * + * @type {Array} + * @memberof QueryResponseMetaDimensions + */ + 'APPLICATION'?: Array; + /** + * + * @type {Array} + * @memberof QueryResponseMetaDimensions + */ + 'STATUS_CODE'?: Array; + /** + * + * @type {Array} + * @memberof QueryResponseMetaDimensions + */ + 'STATUS_CODE_GROUPED'?: Array; +} +/** + * The unit of metric. + * @export + * @interface QueryResponseMetaMetricUnits + */ +export interface QueryResponseMetaMetricUnits { + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'REQUEST_COUNT'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'REQUEST_PER_MINUTE'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'RESPONSE_LATENCY_P99'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'RESPONSE_LATENCY_P95'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'RESPONSE_LATENCY_P50'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'RESPONSE_SIZE_P99'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'RESPONSE_SIZE_P95'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'RESPONSE_SIZE_P50'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'REQUEST_SIZE_P99'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'REQUEST_SIZE_P95'?: string; + /** + * + * @type {string} + * @memberof QueryResponseMetaMetricUnits + */ + 'REQUEST_SIZE_P50'?: string; +} +/** + * A response record. + * @export + * @interface QueryResponseRecord + */ +export interface QueryResponseRecord { + /** + * + * @type {QueryResponseRecordEvent} + * @memberof QueryResponseRecord + */ + 'event'?: QueryResponseRecordEvent; + /** + * An ISO-8601 timestamp. If `TIME` was requested as a dimension this will be the start of the time bucket. If not specified this is the start time of the query. + * @type {string} + * @memberof QueryResponseRecord + */ + 'timestamp'?: string; +} +/** + * Event within the response. Mapping from the requested metrics and dimensions to the values. + * @export + * @interface QueryResponseRecordEvent + */ +export interface QueryResponseRecordEvent { + /** + * The number or requests metric. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'REQUEST_COUNT'?: number; + /** + * The number of requests per minute metric. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'REQUEST_PER_MINUTE'?: number; + /** + * 99th percentile response latency metric in milliseconds. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'RESPONSE_LATENCY_P99'?: number; + /** + * 95th percentile response latency metric in milliseconds. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'RESPONSE_LATENCY_P95'?: number; + /** + * 50th percentile response latency metric in milliseconds. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'RESPONSE_LATENCY_P50'?: number; + /** + * 99th percentile response size metric in bytes. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'RESPONSE_SIZE_P99'?: number; + /** + * 95th percentile response size metric in bytes. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'RESPONSE_SIZE_P95'?: number; + /** + * 50th percentile response size metric in bytes. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'RESPONSE_SIZE_P50'?: number; + /** + * 99th percentile request size metric in bytes. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'REQUEST_SIZE_P99'?: number; + /** + * 95th percentile request size metric in bytes. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'REQUEST_SIZE_P95'?: number; + /** + * 50th percentile request size metric in bytes. + * @type {number} + * @memberof QueryResponseRecordEvent + */ + 'REQUEST_SIZE_P50'?: number; + /** + * Dimension value for `API_PRODUCT_VERSION` name. + * @type {string} + * @memberof QueryResponseRecordEvent + */ + 'API_PRODUCT_VERSION'?: string; + /** + * Dimension value for `APPLICATION` name. + * @type {string} + * @memberof QueryResponseRecordEvent + */ + 'APPLICATION'?: string; + /** + * Dimension value for `STATUS_CODE`. + * @type {string} + * @memberof QueryResponseRecordEvent + */ + 'STATUS_CODE'?: string; + /** + * Dimension value for `STATUS_CODE_GROUPED`. + * @type {string} + * @memberof QueryResponseRecordEvent + */ + 'STATUS_CODE_GROUPED'?: string; +} /** * Refresh token response * @export @@ -2088,6 +2579,8 @@ export interface RefreshTokenResponse { * @interface RegisterPayload */ export interface RegisterPayload { + [key: string]: any; + /** * * @type {string} @@ -2184,6 +2677,70 @@ export interface SearchResultsDataInner { */ 'source': ProductCatalogIndexSource; } +/** + * + * @export + * @interface StatusCodeFilter + */ +export interface StatusCodeFilter { + /** + * The dimension to filter. + * @type {string} + * @memberof StatusCodeFilter + */ + 'dimension': StatusCodeFilterDimensionEnum; + /** + * + * @type {FilterType} + * @memberof StatusCodeFilter + */ + 'type': FilterType; + /** + * Only include requests with specific status codes in the results. + * @type {Array} + * @memberof StatusCodeFilter + */ + 'values': Array; +} + +export const StatusCodeFilterDimensionEnum = { + StatusCode: 'STATUS_CODE' +} as const; + +export type StatusCodeFilterDimensionEnum = typeof StatusCodeFilterDimensionEnum[keyof typeof StatusCodeFilterDimensionEnum]; + +/** + * + * @export + * @interface StatusCodeGroupedFilter + */ +export interface StatusCodeGroupedFilter { + /** + * The dimension to filter. + * @type {string} + * @memberof StatusCodeGroupedFilter + */ + 'dimension': StatusCodeGroupedFilterDimensionEnum; + /** + * + * @type {FilterType} + * @memberof StatusCodeGroupedFilter + */ + 'type': FilterType; + /** + * Only include the given groups of status codes in the results. + * @type {Array} + * @memberof StatusCodeGroupedFilter + */ + 'values': Array; +} + +export const StatusCodeGroupedFilterDimensionEnum = { + StatusCodeGrouped: 'STATUS_CODE_GROUPED' +} as const; + +export type StatusCodeGroupedFilterDimensionEnum = typeof StatusCodeGroupedFilterDimensionEnum[keyof typeof StatusCodeGroupedFilterDimensionEnum]; + /** * * @export @@ -2587,6 +3144,125 @@ export interface VerifyEmailResponse { 'token'?: string; } +/** + * ApplicationAnalyticsApi - axios parameter creator + * @export + */ +export const ApplicationAnalyticsApiAxiosParamCreator = function (configuration?: Configuration) { + return { + /** + * Query + * @summary Query Application Analytics + * @param {QueryApplicationAnalytics} [queryApplicationAnalytics] Object describing the query sent to analytics API. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + queryApplicationAnalytics: async (queryApplicationAnalytics?: QueryApplicationAnalytics, options: AxiosRequestConfig = {}): Promise => { + const localVarPath = `/api/v2/stats`; + // use dummy base URL string because the URL constructor only accepts absolute URLs. + const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); + let baseOptions; + if (configuration) { + baseOptions = configuration.baseOptions; + } + + const localVarRequestOptions = { method: 'POST', ...baseOptions, ...options}; + const localVarHeaderParameter = {} as any; + const localVarQueryParameter = {} as any; + + + + localVarHeaderParameter['Content-Type'] = 'application/json'; + + setSearchParams(localVarUrlObj, localVarQueryParameter); + let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; + localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; + localVarRequestOptions.data = serializeDataIfNeeded(queryApplicationAnalytics, localVarRequestOptions, configuration) + + return { + url: toPathString(localVarUrlObj), + options: localVarRequestOptions, + }; + }, + } +}; + +/** + * ApplicationAnalyticsApi - functional programming interface + * @export + */ +export const ApplicationAnalyticsApiFp = function(configuration?: Configuration) { + const localVarAxiosParamCreator = ApplicationAnalyticsApiAxiosParamCreator(configuration) + return { + /** + * Query + * @summary Query Application Analytics + * @param {QueryApplicationAnalytics} [queryApplicationAnalytics] Object describing the query sent to analytics API. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + async queryApplicationAnalytics(queryApplicationAnalytics?: QueryApplicationAnalytics, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.queryApplicationAnalytics(queryApplicationAnalytics, options); + return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); + }, + } +}; + +/** + * ApplicationAnalyticsApi - factory interface + * @export + */ +export const ApplicationAnalyticsApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { + const localVarFp = ApplicationAnalyticsApiFp(configuration) + return { + /** + * Query + * @summary Query Application Analytics + * @param {QueryApplicationAnalytics} [queryApplicationAnalytics] Object describing the query sent to analytics API. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + */ + queryApplicationAnalytics(queryApplicationAnalytics?: QueryApplicationAnalytics, options?: any): AxiosPromise { + return localVarFp.queryApplicationAnalytics(queryApplicationAnalytics, options).then((request) => request(axios, basePath)); + }, + }; +}; + +/** + * Request parameters for queryApplicationAnalytics operation in ApplicationAnalyticsApi. + * @export + * @interface ApplicationAnalyticsApiQueryApplicationAnalyticsRequest + */ +export interface ApplicationAnalyticsApiQueryApplicationAnalyticsRequest { + /** + * Object describing the query sent to analytics API. + * @type {QueryApplicationAnalytics} + * @memberof ApplicationAnalyticsApiQueryApplicationAnalytics + */ + readonly queryApplicationAnalytics?: QueryApplicationAnalytics +} + +/** + * ApplicationAnalyticsApi - object-oriented interface + * @export + * @class ApplicationAnalyticsApi + * @extends {BaseAPI} + */ +export class ApplicationAnalyticsApi extends BaseAPI { + /** + * Query + * @summary Query Application Analytics + * @param {ApplicationAnalyticsApiQueryApplicationAnalyticsRequest} requestParameters Request parameters. + * @param {*} [options] Override http request option. + * @throws {RequiredError} + * @memberof ApplicationAnalyticsApi + */ + public queryApplicationAnalytics(requestParameters: ApplicationAnalyticsApiQueryApplicationAnalyticsRequest = {}, options?: AxiosRequestConfig) { + return ApplicationAnalyticsApiFp(this.configuration).queryApplicationAnalytics(requestParameters.queryApplicationAnalytics, options).then((request) => request(this.axios, this.basePath)); + } +} + + /** * ApplicationsApi - axios parameter creator * @export @@ -2615,8 +3291,6 @@ export const ApplicationsApiAxiosParamCreator = function (configuration?: Config const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - localVarHeaderParameter['Content-Type'] = 'application/json'; @@ -2654,8 +3328,6 @@ export const ApplicationsApiAxiosParamCreator = function (configuration?: Config const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -2690,8 +3362,6 @@ export const ApplicationsApiAxiosParamCreator = function (configuration?: Config const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -2706,7 +3376,7 @@ export const ApplicationsApiAxiosParamCreator = function (configuration?: Config /** * List applications owned by the developer currently logged in. * @summary List Applications - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -2727,8 +3397,6 @@ export const ApplicationsApiAxiosParamCreator = function (configuration?: Config const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (pageSize !== undefined) { localVarQueryParameter['page[size]'] = pageSize; } @@ -2786,8 +3454,6 @@ export const ApplicationsApiAxiosParamCreator = function (configuration?: Config const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - localVarHeaderParameter['Content-Type'] = 'application/json'; @@ -2848,7 +3514,7 @@ export const ApplicationsApiFp = function(configuration?: Configuration) { /** * List applications owned by the developer currently logged in. * @summary List Applications - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -2915,7 +3581,7 @@ export const ApplicationsApiFactory = function (configuration?: Configuration, b /** * List applications owned by the developer currently logged in. * @summary List Applications - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -2989,7 +3655,7 @@ export interface ApplicationsApiGetApplicationRequest { */ export interface ApplicationsApiListApplicationsRequest { /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof ApplicationsApiListApplications */ @@ -3144,8 +3810,6 @@ export const CredentialsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - localVarHeaderParameter['Content-Type'] = 'application/json'; @@ -3187,8 +3851,6 @@ export const CredentialsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -3204,7 +3866,7 @@ export const CredentialsApiAxiosParamCreator = function (configuration?: Configu * Lists the credentials for an application they own. * @summary List credentials * @param {string} applicationId Id of the targeted application - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3225,8 +3887,6 @@ export const CredentialsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (pageSize !== undefined) { localVarQueryParameter['page[size]'] = pageSize; } @@ -3269,8 +3929,6 @@ export const CredentialsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -3312,8 +3970,6 @@ export const CredentialsApiAxiosParamCreator = function (configuration?: Configu const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - localVarHeaderParameter['Content-Type'] = 'application/json'; @@ -3366,7 +4022,7 @@ export const CredentialsApiFp = function(configuration?: Configuration) { * Lists the credentials for an application they own. * @summary List credentials * @param {string} applicationId Id of the targeted application - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3435,7 +4091,7 @@ export const CredentialsApiFactory = function (configuration?: Configuration, ba * Lists the credentials for an application they own. * @summary List credentials * @param {string} applicationId Id of the targeted application - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -3524,7 +4180,7 @@ export interface CredentialsApiListCredentialsRequest { readonly applicationId: string /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof CredentialsApiListCredentials */ @@ -3772,8 +4428,6 @@ export const DeveloperApiAxiosParamCreator = function (configuration?: Configura const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -3848,11 +4502,11 @@ export const DeveloperApiAxiosParamCreator = function (configuration?: Configura /** * Register to the developer portal. * @summary Register - * @param {RegisterPayload} [registerPayload] Developer registration + * @param {{ [key: string]: any; }} [requestBody] Developer registration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - register: async (registerPayload?: RegisterPayload, options: AxiosRequestConfig = {}): Promise => { + register: async (requestBody?: { [key: string]: any; }, options: AxiosRequestConfig = {}): Promise => { const localVarPath = `/api/v2/developer`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); @@ -3872,7 +4526,7 @@ export const DeveloperApiAxiosParamCreator = function (configuration?: Configura setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...options.headers}; - localVarRequestOptions.data = serializeDataIfNeeded(registerPayload, localVarRequestOptions, configuration) + localVarRequestOptions.data = serializeDataIfNeeded(requestBody, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), @@ -4022,12 +4676,12 @@ export const DeveloperApiFp = function(configuration?: Configuration) { /** * Register to the developer portal. * @summary Register - * @param {RegisterPayload} [registerPayload] Developer registration + * @param {{ [key: string]: any; }} [requestBody] Developer registration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async register(registerPayload?: RegisterPayload, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { - const localVarAxiosArgs = await localVarAxiosParamCreator.register(registerPayload, options); + async register(requestBody?: { [key: string]: any; }, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + const localVarAxiosArgs = await localVarAxiosParamCreator.register(requestBody, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, /** @@ -4121,12 +4775,12 @@ export const DeveloperApiFactory = function (configuration?: Configuration, base /** * Register to the developer portal. * @summary Register - * @param {RegisterPayload} [registerPayload] Developer registration + * @param {{ [key: string]: any; }} [requestBody] Developer registration * @param {*} [options] Override http request option. * @throws {RequiredError} */ - register(registerPayload?: RegisterPayload, options?: any): AxiosPromise { - return localVarFp.register(registerPayload, options).then((request) => request(axios, basePath)); + register(requestBody?: { [key: string]: any; }, options?: any): AxiosPromise { + return localVarFp.register(requestBody, options).then((request) => request(axios, basePath)); }, /** * This endpoint allows a developer to reset their password, using a reset token. @@ -4187,10 +4841,10 @@ export interface DeveloperApiForgotPasswordRequest { export interface DeveloperApiRegisterRequest { /** * Developer registration - * @type {RegisterPayload} + * @type {{ [key: string]: any; }} * @memberof DeveloperApiRegister */ - readonly registerPayload?: RegisterPayload + readonly requestBody?: { [key: string]: any; } } /** @@ -4305,7 +4959,7 @@ export class DeveloperApi extends BaseAPI { * @memberof DeveloperApi */ public register(requestParameters: DeveloperApiRegisterRequest = {}, options?: AxiosRequestConfig) { - return DeveloperApiFp(this.configuration).register(requestParameters.registerPayload, options).then((request) => request(this.axios, this.basePath)); + return DeveloperApiFp(this.configuration).register(requestParameters.requestBody, options).then((request) => request(this.axios, this.basePath)); } /** @@ -4368,8 +5022,6 @@ export const DocumentationApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (accept != null) { localVarHeaderParameter['Accept'] = typeof accept === 'string' ? accept @@ -4392,7 +5044,7 @@ export const DocumentationApiAxiosParamCreator = function (configuration?: Confi * @summary List product documents * @param {string} productId Contains a unique identifier used by the Portal API for this resource. * @param {DocumentContentTypeEnum} [accept] - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -4413,8 +5065,6 @@ export const DocumentationApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (pageSize !== undefined) { localVarQueryParameter['page[size]'] = pageSize; } @@ -4468,7 +5118,7 @@ export const DocumentationApiFp = function(configuration?: Configuration) { * @summary List product documents * @param {string} productId Contains a unique identifier used by the Portal API for this resource. * @param {DocumentContentTypeEnum} [accept] - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -4504,7 +5154,7 @@ export const DocumentationApiFactory = function (configuration?: Configuration, * @summary List product documents * @param {string} productId Contains a unique identifier used by the Portal API for this resource. * @param {DocumentContentTypeEnum} [accept] - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -4564,7 +5214,7 @@ export interface DocumentationApiListProductDocumentsRequest { readonly accept?: DocumentContentTypeEnum /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof DocumentationApiListProductDocuments */ @@ -4918,8 +5568,6 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -4934,7 +5582,7 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat /** * Returns a paginated list of published API Products. * @summary List Products - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -4960,8 +5608,6 @@ export const ProductsApiAxiosParamCreator = function (configuration?: Configurat const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (pageSize !== undefined) { localVarQueryParameter['page[size]'] = pageSize; } @@ -5037,7 +5683,7 @@ export const ProductsApiFp = function(configuration?: Configuration) { /** * Returns a paginated list of published API Products. * @summary List Products - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -5077,7 +5723,7 @@ export const ProductsApiFactory = function (configuration?: Configuration, baseP /** * Returns a paginated list of published API Products. * @summary List Products - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -5117,7 +5763,7 @@ export interface ProductsApiGetProductRequest { */ export interface ProductsApiListProductsRequest { /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof ProductsApiListProducts */ @@ -5252,8 +5898,6 @@ export const RegistrationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - localVarHeaderParameter['Content-Type'] = 'application/json'; @@ -5295,8 +5939,6 @@ export const RegistrationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -5335,8 +5977,6 @@ export const RegistrationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -5352,7 +5992,7 @@ export const RegistrationsApiAxiosParamCreator = function (configuration?: Confi * Lists product registrations for an application. * @summary Get application registrations * @param {string} applicationId Id of the targeted application - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterIdEq] Filter by direct equality comparison of the id property with a supplied value. * @param {string} [filterId] Filter by direct equality comparison (short-hand) of the id property with a supplied value. @@ -5377,8 +6017,6 @@ export const RegistrationsApiAxiosParamCreator = function (configuration?: Confi const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (pageSize !== undefined) { localVarQueryParameter['page[size]'] = pageSize; } @@ -5464,7 +6102,7 @@ export const RegistrationsApiFp = function(configuration?: Configuration) { * Lists product registrations for an application. * @summary Get application registrations * @param {string} applicationId Id of the targeted application - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterIdEq] Filter by direct equality comparison of the id property with a supplied value. * @param {string} [filterId] Filter by direct equality comparison (short-hand) of the id property with a supplied value. @@ -5524,7 +6162,7 @@ export const RegistrationsApiFactory = function (configuration?: Configuration, * Lists product registrations for an application. * @summary Get application registrations * @param {string} applicationId Id of the targeted application - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterIdEq] Filter by direct equality comparison of the id property with a supplied value. * @param {string} [filterId] Filter by direct equality comparison (short-hand) of the id property with a supplied value. @@ -5616,7 +6254,7 @@ export interface RegistrationsApiListApplicationRegistrationsRequest { readonly applicationId: string /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof RegistrationsApiListApplicationRegistrations */ @@ -5727,7 +6365,7 @@ export const SearchApiAxiosParamCreator = function (configuration?: Configuratio * @param {SearchIndicesParameters} indices Determines which entity sets to search * @param {string} [q] Determines how to filter search results * @param {string} [join] Determines which sub-entities to include in search results - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -5748,8 +6386,6 @@ export const SearchApiAxiosParamCreator = function (configuration?: Configuratio const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (q !== undefined) { localVarQueryParameter['q'] = q; } @@ -5793,7 +6429,7 @@ export const SearchApiFp = function(configuration?: Configuration) { * @param {SearchIndicesParameters} indices Determines which entity sets to search * @param {string} [q] Determines how to filter search results * @param {string} [join] Determines which sub-entities to include in search results - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -5818,7 +6454,7 @@ export const SearchApiFactory = function (configuration?: Configuration, basePat * @param {SearchIndicesParameters} indices Determines which entity sets to search * @param {string} [q] Determines how to filter search results * @param {string} [join] Determines which sub-entities to include in search results - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {*} [options] Override http request option. * @throws {RequiredError} @@ -5857,7 +6493,7 @@ export interface SearchApiSearchPortalEntitiesRequest { readonly join?: string /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof SearchApiSearchPortalEntities */ @@ -5925,8 +6561,6 @@ export const VersionsApiAxiosParamCreator = function (configuration?: Configurat const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -5965,8 +6599,6 @@ export const VersionsApiAxiosParamCreator = function (configuration?: Configurat const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -6005,8 +6637,6 @@ export const VersionsApiAxiosParamCreator = function (configuration?: Configurat const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - setSearchParams(localVarUrlObj, localVarQueryParameter); @@ -6022,7 +6652,7 @@ export const VersionsApiAxiosParamCreator = function (configuration?: Configurat * Returns paginated list of versions of a given product. * @summary Get page of product versions * @param {string} productId Contains a unique identifier used by the Portal API for this resource. - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -6046,8 +6676,6 @@ export const VersionsApiAxiosParamCreator = function (configuration?: Configurat const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; - // authentication portalAccessToken required - if (pageSize !== undefined) { localVarQueryParameter['page[size]'] = pageSize; } @@ -6109,7 +6737,7 @@ export const VersionsApiFp = function(configuration?: Configuration) { * @param {*} [options] Override http request option. * @throws {RequiredError} */ - async getProductVersionSpec(productId: string, versionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { + async getProductVersionSpec(productId: string, versionId: string, options?: AxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getProductVersionSpec(productId, versionId, options); return createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration); }, @@ -6129,7 +6757,7 @@ export const VersionsApiFp = function(configuration?: Configuration) { * Returns paginated list of versions of a given product. * @summary Get page of product versions * @param {string} productId Contains a unique identifier used by the Portal API for this resource. - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -6170,7 +6798,7 @@ export const VersionsApiFactory = function (configuration?: Configuration, baseP * @param {*} [options] Override http request option. * @throws {RequiredError} */ - getProductVersionSpec(productId: string, versionId: string, options?: any): AxiosPromise { + getProductVersionSpec(productId: string, versionId: string, options?: any): AxiosPromise { return localVarFp.getProductVersionSpec(productId, versionId, options).then((request) => request(axios, basePath)); }, /** @@ -6188,7 +6816,7 @@ export const VersionsApiFactory = function (configuration?: Configuration, baseP * Returns paginated list of versions of a given product. * @summary Get page of product versions * @param {string} productId Contains a unique identifier used by the Portal API for this resource. - * @param {number} [pageSize] Determines the size of the page to retrieve. + * @param {number} [pageSize] The maximum number of items to include per page. The last page of a collection may include fewer items. * @param {number} [pageNumber] Determines which page of the entities to retrieve. * @param {string} [filterNameEq] Filter by direct equality comparison of the name property with a supplied value. * @param {string} [filterName] Filter by direct equality comparison (short-hand) of the name property with a supplied value. @@ -6279,7 +6907,7 @@ export interface VersionsApiListProductVersionsRequest { readonly productId: string /** - * Determines the size of the page to retrieve. + * The maximum number of items to include per page. The last page of a collection may include fewer items. * @type {number} * @memberof VersionsApiListProductVersions */