@vality/swag-organizations 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/README.md +24 -0
  2. package/esm2022/lib/api/api.mjs +10 -0
  3. package/esm2022/lib/api/invitations.service.mjs +361 -0
  4. package/esm2022/lib/api/members.service.mjs +406 -0
  5. package/esm2022/lib/api/orgs.service.mjs +637 -0
  6. package/esm2022/lib/api/roles.service.mjs +212 -0
  7. package/esm2022/lib/api.module.mjs +40 -0
  8. package/esm2022/lib/configuration.mjs +99 -0
  9. package/esm2022/lib/encoder.mjs +19 -0
  10. package/esm2022/lib/index.mjs +7 -0
  11. package/esm2022/lib/model/assignMemberRole422Response.mjs +18 -0
  12. package/esm2022/lib/model/invitation.mjs +2 -0
  13. package/esm2022/lib/model/invitationAccepted.mjs +2 -0
  14. package/esm2022/lib/model/invitationAcceptedAllOfMember.mjs +13 -0
  15. package/esm2022/lib/model/invitationExpired.mjs +2 -0
  16. package/esm2022/lib/model/invitationListResult.mjs +2 -0
  17. package/esm2022/lib/model/invitationPending.mjs +2 -0
  18. package/esm2022/lib/model/invitationRequest.mjs +2 -0
  19. package/esm2022/lib/model/invitationRevoked.mjs +2 -0
  20. package/esm2022/lib/model/invitationStatusName.mjs +18 -0
  21. package/esm2022/lib/model/invitee.mjs +2 -0
  22. package/esm2022/lib/model/inviteeContact.mjs +18 -0
  23. package/esm2022/lib/model/joinOrg422Response.mjs +18 -0
  24. package/esm2022/lib/model/listOrgMembership400Response.mjs +18 -0
  25. package/esm2022/lib/model/member.mjs +2 -0
  26. package/esm2022/lib/model/memberContext.mjs +13 -0
  27. package/esm2022/lib/model/memberOrgListResult.mjs +2 -0
  28. package/esm2022/lib/model/memberRole.mjs +2 -0
  29. package/esm2022/lib/model/memberRoleScope.mjs +2 -0
  30. package/esm2022/lib/model/models.mjs +33 -0
  31. package/esm2022/lib/model/organization.mjs +13 -0
  32. package/esm2022/lib/model/organizationJoinRequest.mjs +13 -0
  33. package/esm2022/lib/model/organizationMembership.mjs +2 -0
  34. package/esm2022/lib/model/organizationSearchResult.mjs +2 -0
  35. package/esm2022/lib/model/organizationSwitchRequest.mjs +13 -0
  36. package/esm2022/lib/model/patchOrgRequest.mjs +13 -0
  37. package/esm2022/lib/model/removeMemberRole422Response.mjs +18 -0
  38. package/esm2022/lib/model/resourceScopeId.mjs +15 -0
  39. package/esm2022/lib/model/revokeInvitation422Response.mjs +18 -0
  40. package/esm2022/lib/model/revokeInvitationRequest.mjs +18 -0
  41. package/esm2022/lib/model/role.mjs +2 -0
  42. package/esm2022/lib/model/roleAvailableListResult.mjs +2 -0
  43. package/esm2022/lib/model/roleId.mjs +18 -0
  44. package/esm2022/lib/param.mjs +2 -0
  45. package/esm2022/lib/variables.mjs +9 -0
  46. package/esm2022/public-api.mjs +2 -0
  47. package/esm2022/vality-swag-organizations.mjs +5 -0
  48. package/fesm2022/vality-swag-organizations.mjs +2004 -0
  49. package/fesm2022/vality-swag-organizations.mjs.map +1 -0
  50. package/index.d.ts +5 -0
  51. package/lib/api/api.d.ts +9 -0
  52. package/lib/api/invitations.service.d.ts +128 -0
  53. package/lib/api/members.service.d.ts +150 -0
  54. package/lib/api/orgs.service.d.ts +238 -0
  55. package/lib/api/roles.service.d.ts +69 -0
  56. package/lib/api.module.d.ts +11 -0
  57. package/lib/configuration.d.ts +104 -0
  58. package/lib/encoder.d.ts +11 -0
  59. package/lib/index.d.ts +6 -0
  60. package/lib/model/assignMemberRole422Response.d.ts +24 -0
  61. package/lib/model/invitation.d.ts +39 -0
  62. package/lib/model/invitationAccepted.d.ts +11 -0
  63. package/lib/model/invitationAcceptedAllOfMember.d.ts +20 -0
  64. package/lib/model/invitationExpired.d.ts +5 -0
  65. package/lib/model/invitationListResult.d.ts +15 -0
  66. package/lib/model/invitationPending.d.ts +5 -0
  67. package/lib/model/invitationRequest.d.ts +22 -0
  68. package/lib/model/invitationRevoked.d.ts +13 -0
  69. package/lib/model/invitationStatusName.d.ts +18 -0
  70. package/lib/model/invitee.d.ts +23 -0
  71. package/lib/model/inviteeContact.d.ts +27 -0
  72. package/lib/model/joinOrg422Response.d.ts +24 -0
  73. package/lib/model/listOrgMembership400Response.d.ts +24 -0
  74. package/lib/model/member.d.ts +29 -0
  75. package/lib/model/memberContext.d.ts +17 -0
  76. package/lib/model/memberOrgListResult.d.ts +15 -0
  77. package/lib/model/memberRole.d.ts +26 -0
  78. package/lib/model/memberRoleScope.d.ts +24 -0
  79. package/lib/model/models.d.ts +32 -0
  80. package/lib/model/organization.d.ts +37 -0
  81. package/lib/model/organizationJoinRequest.d.ts +17 -0
  82. package/lib/model/organizationMembership.d.ts +17 -0
  83. package/lib/model/organizationSearchResult.d.ts +19 -0
  84. package/lib/model/organizationSwitchRequest.d.ts +17 -0
  85. package/lib/model/patchOrgRequest.d.ts +17 -0
  86. package/lib/model/removeMemberRole422Response.d.ts +24 -0
  87. package/lib/model/resourceScopeId.d.ts +18 -0
  88. package/lib/model/revokeInvitation422Response.d.ts +24 -0
  89. package/lib/model/revokeInvitationRequest.d.ts +24 -0
  90. package/lib/model/role.d.ts +29 -0
  91. package/lib/model/roleAvailableListResult.d.ts +15 -0
  92. package/lib/model/roleId.d.ts +21 -0
  93. package/lib/param.d.ts +37 -0
  94. package/lib/variables.d.ts +8 -0
  95. package/package.json +30 -0
  96. package/public-api.d.ts +1 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vality-swag-organizations.mjs","sources":["../../../../projects/vality/swag-organizations/src/lib/encoder.ts","../../../../projects/vality/swag-organizations/src/lib/variables.ts","../../../../projects/vality/swag-organizations/src/lib/configuration.ts","../../../../projects/vality/swag-organizations/src/lib/api/invitations.service.ts","../../../../projects/vality/swag-organizations/src/lib/api/members.service.ts","../../../../projects/vality/swag-organizations/src/lib/api/orgs.service.ts","../../../../projects/vality/swag-organizations/src/lib/api/roles.service.ts","../../../../projects/vality/swag-organizations/src/lib/api/api.ts","../../../../projects/vality/swag-organizations/src/lib/model/assignMemberRole422Response.ts","../../../../projects/vality/swag-organizations/src/lib/model/invitationAcceptedAllOfMember.ts","../../../../projects/vality/swag-organizations/src/lib/model/invitationStatusName.ts","../../../../projects/vality/swag-organizations/src/lib/model/inviteeContact.ts","../../../../projects/vality/swag-organizations/src/lib/model/joinOrg422Response.ts","../../../../projects/vality/swag-organizations/src/lib/model/listOrgMembership400Response.ts","../../../../projects/vality/swag-organizations/src/lib/model/memberContext.ts","../../../../projects/vality/swag-organizations/src/lib/model/organization.ts","../../../../projects/vality/swag-organizations/src/lib/model/organizationJoinRequest.ts","../../../../projects/vality/swag-organizations/src/lib/model/organizationSwitchRequest.ts","../../../../projects/vality/swag-organizations/src/lib/model/patchOrgRequest.ts","../../../../projects/vality/swag-organizations/src/lib/model/removeMemberRole422Response.ts","../../../../projects/vality/swag-organizations/src/lib/model/resourceScopeId.ts","../../../../projects/vality/swag-organizations/src/lib/model/revokeInvitation422Response.ts","../../../../projects/vality/swag-organizations/src/lib/model/revokeInvitationRequest.ts","../../../../projects/vality/swag-organizations/src/lib/model/roleId.ts","../../../../projects/vality/swag-organizations/src/lib/api.module.ts","../../../../projects/vality/swag-organizations/src/vality-swag-organizations.ts"],"sourcesContent":["import { HttpParameterCodec } from '@angular/common/http';\n\n/**\n * Custom HttpParameterCodec\n * Workaround for https://github.com/angular/angular/issues/18261\n */\nexport class CustomHttpParameterCodec implements HttpParameterCodec {\n encodeKey(k: string): string {\n return encodeURIComponent(k);\n }\n encodeValue(v: string): string {\n return encodeURIComponent(v);\n }\n decodeKey(k: string): string {\n return decodeURIComponent(k);\n }\n decodeValue(v: string): string {\n return decodeURIComponent(v);\n }\n}\n","import { InjectionToken } from '@angular/core';\n\nexport const BASE_PATH = new InjectionToken<string>('basePath');\nexport const COLLECTION_FORMATS = {\n 'csv': ',',\n 'tsv': ' ',\n 'ssv': ' ',\n 'pipes': '|'\n}\n","import { HttpParameterCodec } from '@angular/common/http';\nimport { Param } from './param';\n\nexport interface ConfigurationParameters {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Override the default method for encoding path parameters in various\n * <a href=\"https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#style-values\">styles</a>.\n * <p>\n * See {@link README.md} for more details\n * </p>\n */\n encodeParam?: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials?: {[ key: string ]: string | (() => string | undefined)};\n}\n\nexport class Configuration {\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n apiKeys?: {[ key: string ]: string};\n username?: string;\n password?: string;\n /**\n * @deprecated Since 5.0. Use credentials instead\n */\n accessToken?: string | (() => string);\n basePath?: string;\n withCredentials?: boolean;\n /**\n * Takes care of encoding query- and form-parameters.\n */\n encoder?: HttpParameterCodec;\n /**\n * Encoding of various path parameter\n * <a href=\"https://github.com/OAI/OpenAPI-Specification/blob/main/versions/3.1.0.md#style-values\">styles</a>.\n * <p>\n * See {@link README.md} for more details\n * </p>\n */\n encodeParam: (param: Param) => string;\n /**\n * The keys are the names in the securitySchemes section of the OpenAPI\n * document. They should map to the value used for authentication\n * minus any standard prefixes such as 'Basic' or 'Bearer'.\n */\n credentials: {[ key: string ]: string | (() => string | undefined)};\n\n constructor(configurationParameters: ConfigurationParameters = {}) {\n this.apiKeys = configurationParameters.apiKeys;\n this.username = configurationParameters.username;\n this.password = configurationParameters.password;\n this.accessToken = configurationParameters.accessToken;\n this.basePath = configurationParameters.basePath;\n this.withCredentials = configurationParameters.withCredentials;\n this.encoder = configurationParameters.encoder;\n if (configurationParameters.encodeParam) {\n this.encodeParam = configurationParameters.encodeParam;\n }\n else {\n this.encodeParam = param => this.defaultEncodeParam(param);\n }\n if (configurationParameters.credentials) {\n this.credentials = configurationParameters.credentials;\n }\n else {\n this.credentials = {};\n }\n\n // init default bearer credential\n if (!this.credentials['bearer']) {\n this.credentials['bearer'] = () => {\n return typeof this.accessToken === 'function'\n ? this.accessToken()\n : this.accessToken;\n };\n }\n }\n\n /**\n * Select the correct content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param contentTypes - the array of content types that are available for selection\n * @returns the selected content-type or <code>undefined</code> if no selection could be made.\n */\n public selectHeaderContentType (contentTypes: string[]): string | undefined {\n if (contentTypes.length === 0) {\n return undefined;\n }\n\n const type = contentTypes.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return contentTypes[0];\n }\n return type;\n }\n\n /**\n * Select the correct accept content-type to use for a request.\n * Uses {@link Configuration#isJsonMime} to determine the correct accept content-type.\n * If no content type is found return the first found type if the contentTypes is not empty\n * @param accepts - the array of content types that are available for selection.\n * @returns the selected content-type or <code>undefined</code> if no selection could be made.\n */\n public selectHeaderAccept(accepts: string[]): string | undefined {\n if (accepts.length === 0) {\n return undefined;\n }\n\n const type = accepts.find((x: string) => this.isJsonMime(x));\n if (type === undefined) {\n return accepts[0];\n }\n return type;\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n public isJsonMime(mime: string): boolean {\n const jsonMime: RegExp = new RegExp('^(application\\/json|[^;/ \\t]+\\/[^;/ \\t]+[+]json)[ \\t]*(;.*)?$', 'i');\n return mime !== null && (jsonMime.test(mime) || mime.toLowerCase() === 'application/json-patch+json');\n }\n\n public lookupCredential(key: string): string | undefined {\n const value = this.credentials[key];\n return typeof value === 'function'\n ? value()\n : value;\n }\n\n private defaultEncodeParam(param: Param): string {\n // This implementation exists as fallback for missing configuration\n // and for backwards compatibility to older typescript-angular generator versions.\n // It only works for the 'simple' parameter style.\n // Date-handling only works for the 'date-time' format.\n // All other styles and Date-formats are probably handled incorrectly.\n //\n // But: if that's all you need (i.e.: the most common use-case): no need for customization!\n\n const value = param.dataFormat === 'date-time' && param.value instanceof Date\n ? (param.value as Date).toISOString()\n : param.value;\n\n return encodeURIComponent(String(value));\n }\n}\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AssignMemberRole422Response } from '../model/assignMemberRole422Response';\n// @ts-ignore\nimport { Invitation } from '../model/invitation';\n// @ts-ignore\nimport { InvitationListResult } from '../model/invitationListResult';\n// @ts-ignore\nimport { InvitationRequest } from '../model/invitationRequest';\n// @ts-ignore\nimport { InvitationStatusName } from '../model/invitationStatusName';\n// @ts-ignore\nimport { ListOrgMembership400Response } from '../model/listOrgMembership400Response';\n// @ts-ignore\nimport { RevokeInvitation422Response } from '../model/revokeInvitation422Response';\n// @ts-ignore\nimport { RevokeInvitationRequest } from '../model/revokeInvitationRequest';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\nexport interface CreateInvitationRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Данные нового приглашения */\n invitationRequest: InvitationRequest;\n /** Уникальный ключ для обеспечения единоразовой (идемпотентной) обработки операции. */\n xIdempotencyKey?: string;\n}\n\nexport interface GetInvitationRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор приглашения */\n invitationId: string;\n}\n\nexport interface ListInvitationsRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Фильтр по статусу приглашения */\n status?: InvitationStatusName;\n}\n\nexport interface RevokeInvitationRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор приглашения */\n invitationId: string;\n revokeInvitationRequest?: RevokeInvitationRequest;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class InvitationsService {\n\n protected basePath = 'https://api.rbk.money/org/v1';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substring(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * Сформировать приглашение\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public createInvitation(requestParameters: CreateInvitationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Invitation>;\n public createInvitation(requestParameters: CreateInvitationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Invitation>>;\n public createInvitation(requestParameters: CreateInvitationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Invitation>>;\n public createInvitation(requestParameters: CreateInvitationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling createInvitation.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling createInvitation.');\n }\n const invitationRequest = requestParameters.invitationRequest;\n if (invitationRequest === null || invitationRequest === undefined) {\n throw new Error('Required parameter invitationRequest was null or undefined when calling createInvitation.');\n }\n const xIdempotencyKey = requestParameters.xIdempotencyKey;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n if (xIdempotencyKey !== undefined && xIdempotencyKey !== null) {\n localVarHeaders = localVarHeaders.set('X-Idempotency-Key', String(xIdempotencyKey));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/invitations`;\n return this.httpClient.request<Invitation>('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: invitationRequest,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Получить данные приглашения\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public getInvitation(requestParameters: GetInvitationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Invitation>;\n public getInvitation(requestParameters: GetInvitationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Invitation>>;\n public getInvitation(requestParameters: GetInvitationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Invitation>>;\n public getInvitation(requestParameters: GetInvitationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling getInvitation.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling getInvitation.');\n }\n const invitationId = requestParameters.invitationId;\n if (invitationId === null || invitationId === undefined) {\n throw new Error('Required parameter invitationId was null or undefined when calling getInvitation.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/invitations/${this.configuration.encodeParam({name: \"invitationId\", value: invitationId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<Invitation>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Перечислить приглашения\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public listInvitations(requestParameters: ListInvitationsRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<InvitationListResult>;\n public listInvitations(requestParameters: ListInvitationsRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<InvitationListResult>>;\n public listInvitations(requestParameters: ListInvitationsRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<InvitationListResult>>;\n public listInvitations(requestParameters: ListInvitationsRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling listInvitations.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling listInvitations.');\n }\n const status = requestParameters.status;\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (status !== undefined && status !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>status, 'status');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/invitations`;\n return this.httpClient.request<InvitationListResult>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Отозвать приглашение\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public revokeInvitation(requestParameters: RevokeInvitationRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any>;\n public revokeInvitation(requestParameters: RevokeInvitationRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<any>>;\n public revokeInvitation(requestParameters: RevokeInvitationRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<any>>;\n public revokeInvitation(requestParameters: RevokeInvitationRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling revokeInvitation.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling revokeInvitation.');\n }\n const invitationId = requestParameters.invitationId;\n if (invitationId === null || invitationId === undefined) {\n throw new Error('Required parameter invitationId was null or undefined when calling revokeInvitation.');\n }\n const revokeInvitationRequest = requestParameters.revokeInvitationRequest;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/invitations/${this.configuration.encodeParam({name: \"invitationId\", value: invitationId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<any>('patch', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: revokeInvitationRequest,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { AssignMemberRole422Response } from '../model/assignMemberRole422Response';\n// @ts-ignore\nimport { ListOrgMembership400Response } from '../model/listOrgMembership400Response';\n// @ts-ignore\nimport { Member } from '../model/member';\n// @ts-ignore\nimport { MemberOrgListResult } from '../model/memberOrgListResult';\n// @ts-ignore\nimport { MemberRole } from '../model/memberRole';\n// @ts-ignore\nimport { RemoveMemberRole422Response } from '../model/removeMemberRole422Response';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\nexport interface AssignMemberRoleRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор пользователя */\n userId: string;\n memberRole?: MemberRole;\n}\n\nexport interface ExpelOrgMemberRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор пользователя */\n userId: string;\n}\n\nexport interface GetOrgMemberRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор пользователя */\n userId: string;\n}\n\nexport interface ListOrgMembersRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n}\n\nexport interface RemoveMemberRoleRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор пользователя */\n userId: string;\n /** Идентификатор роли пользователя в организации */\n memberRoleId: string;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class MembersService {\n\n protected basePath = 'https://api.rbk.money/org/v1';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substring(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * Назначить сотруднику роль\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public assignMemberRole(requestParameters: AssignMemberRoleRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<MemberRole>;\n public assignMemberRole(requestParameters: AssignMemberRoleRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<MemberRole>>;\n public assignMemberRole(requestParameters: AssignMemberRoleRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<MemberRole>>;\n public assignMemberRole(requestParameters: AssignMemberRoleRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling assignMemberRole.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling assignMemberRole.');\n }\n const userId = requestParameters.userId;\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling assignMemberRole.');\n }\n const memberRole = requestParameters.memberRole;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/members/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/roles`;\n return this.httpClient.request<MemberRole>('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: memberRole,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Исключить сотрудника из организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public expelOrgMember(requestParameters: ExpelOrgMemberRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any>;\n public expelOrgMember(requestParameters: ExpelOrgMemberRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<any>>;\n public expelOrgMember(requestParameters: ExpelOrgMemberRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<any>>;\n public expelOrgMember(requestParameters: ExpelOrgMemberRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling expelOrgMember.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling expelOrgMember.');\n }\n const userId = requestParameters.userId;\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling expelOrgMember.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/members/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<any>('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Получить данные сотрудника\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public getOrgMember(requestParameters: GetOrgMemberRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Member>;\n public getOrgMember(requestParameters: GetOrgMemberRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Member>>;\n public getOrgMember(requestParameters: GetOrgMemberRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Member>>;\n public getOrgMember(requestParameters: GetOrgMemberRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling getOrgMember.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling getOrgMember.');\n }\n const userId = requestParameters.userId;\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling getOrgMember.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/members/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<Member>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Перечислить сотрудников организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public listOrgMembers(requestParameters: ListOrgMembersRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<MemberOrgListResult>;\n public listOrgMembers(requestParameters: ListOrgMembersRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<MemberOrgListResult>>;\n public listOrgMembers(requestParameters: ListOrgMembersRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<MemberOrgListResult>>;\n public listOrgMembers(requestParameters: ListOrgMembersRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling listOrgMembers.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling listOrgMembers.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/members`;\n return this.httpClient.request<MemberOrgListResult>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Снять роль с сотрудника\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public removeMemberRole(requestParameters: RemoveMemberRoleRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any>;\n public removeMemberRole(requestParameters: RemoveMemberRoleRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<any>>;\n public removeMemberRole(requestParameters: RemoveMemberRoleRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<any>>;\n public removeMemberRole(requestParameters: RemoveMemberRoleRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling removeMemberRole.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling removeMemberRole.');\n }\n const userId = requestParameters.userId;\n if (userId === null || userId === undefined) {\n throw new Error('Required parameter userId was null or undefined when calling removeMemberRole.');\n }\n const memberRoleId = requestParameters.memberRoleId;\n if (memberRoleId === null || memberRoleId === undefined) {\n throw new Error('Required parameter memberRoleId was null or undefined when calling removeMemberRole.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/members/${this.configuration.encodeParam({name: \"userId\", value: userId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/roles/${this.configuration.encodeParam({name: \"memberRoleId\", value: memberRoleId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<any>('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { JoinOrg422Response } from '../model/joinOrg422Response';\n// @ts-ignore\nimport { ListOrgMembership400Response } from '../model/listOrgMembership400Response';\n// @ts-ignore\nimport { MemberContext } from '../model/memberContext';\n// @ts-ignore\nimport { Organization } from '../model/organization';\n// @ts-ignore\nimport { OrganizationJoinRequest } from '../model/organizationJoinRequest';\n// @ts-ignore\nimport { OrganizationMembership } from '../model/organizationMembership';\n// @ts-ignore\nimport { OrganizationSearchResult } from '../model/organizationSearchResult';\n// @ts-ignore\nimport { OrganizationSwitchRequest } from '../model/organizationSwitchRequest';\n// @ts-ignore\nimport { PatchOrgRequest } from '../model/patchOrgRequest';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\nexport interface CancelOrgMembershipRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n}\n\nexport interface CreateOrgRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Данные организации */\n organization: Organization;\n /** Уникальный ключ для обеспечения единоразовой (идемпотентной) обработки операции. */\n xIdempotencyKey?: string;\n}\n\nexport interface GetContextRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n}\n\nexport interface GetOrgRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n}\n\nexport interface InquireOrgMembershipRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n}\n\nexport interface JoinOrgRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n organizationJoinRequest?: OrganizationJoinRequest;\n}\n\nexport interface ListOrgMembershipRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n limit?: number;\n continuationToken?: string;\n}\n\nexport interface PatchOrgRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n patchOrgRequest?: PatchOrgRequest;\n}\n\nexport interface SwitchContextRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n organizationSwitchRequest?: OrganizationSwitchRequest;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class OrgsService {\n\n protected basePath = 'https://api.rbk.money/org/v1';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substring(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * Отменить своё членство в организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public cancelOrgMembership(requestParameters: CancelOrgMembershipRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any>;\n public cancelOrgMembership(requestParameters: CancelOrgMembershipRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<any>>;\n public cancelOrgMembership(requestParameters: CancelOrgMembershipRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<any>>;\n public cancelOrgMembership(requestParameters: CancelOrgMembershipRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling cancelOrgMembership.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling cancelOrgMembership.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/user/membership/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<any>('delete', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Создать новую организацию\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public createOrg(requestParameters: CreateOrgRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Organization>;\n public createOrg(requestParameters: CreateOrgRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Organization>>;\n public createOrg(requestParameters: CreateOrgRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Organization>>;\n public createOrg(requestParameters: CreateOrgRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling createOrg.');\n }\n const organization = requestParameters.organization;\n if (organization === null || organization === undefined) {\n throw new Error('Required parameter organization was null or undefined when calling createOrg.');\n }\n const xIdempotencyKey = requestParameters.xIdempotencyKey;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n if (xIdempotencyKey !== undefined && xIdempotencyKey !== null) {\n localVarHeaders = localVarHeaders.set('X-Idempotency-Key', String(xIdempotencyKey));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs`;\n return this.httpClient.request<Organization>('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organization,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Получить активную организацию\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public getContext(requestParameters: GetContextRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<MemberContext>;\n public getContext(requestParameters: GetContextRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<MemberContext>>;\n public getContext(requestParameters: GetContextRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<MemberContext>>;\n public getContext(requestParameters: GetContextRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling getContext.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/user/context`;\n return this.httpClient.request<MemberContext>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Получить данные организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public getOrg(requestParameters: GetOrgRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Organization>;\n public getOrg(requestParameters: GetOrgRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Organization>>;\n public getOrg(requestParameters: GetOrgRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Organization>>;\n public getOrg(requestParameters: GetOrgRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling getOrg.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling getOrg.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<Organization>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Посмотреть своё членство в организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public inquireOrgMembership(requestParameters: InquireOrgMembershipRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<OrganizationMembership>;\n public inquireOrgMembership(requestParameters: InquireOrgMembershipRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<OrganizationMembership>>;\n public inquireOrgMembership(requestParameters: InquireOrgMembershipRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<OrganizationMembership>>;\n public inquireOrgMembership(requestParameters: InquireOrgMembershipRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling inquireOrgMembership.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling inquireOrgMembership.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/user/membership/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<OrganizationMembership>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Вступить в организацию по приглашению\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public joinOrg(requestParameters: JoinOrgRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<OrganizationMembership>;\n public joinOrg(requestParameters: JoinOrgRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<OrganizationMembership>>;\n public joinOrg(requestParameters: JoinOrgRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<OrganizationMembership>>;\n public joinOrg(requestParameters: JoinOrgRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling joinOrg.');\n }\n const organizationJoinRequest = requestParameters.organizationJoinRequest;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/user/membership`;\n return this.httpClient.request<OrganizationMembership>('post', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationJoinRequest,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Перечислить доступные организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public listOrgMembership(requestParameters: ListOrgMembershipRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<OrganizationSearchResult>;\n public listOrgMembership(requestParameters: ListOrgMembershipRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<OrganizationSearchResult>>;\n public listOrgMembership(requestParameters: ListOrgMembershipRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<OrganizationSearchResult>>;\n public listOrgMembership(requestParameters: ListOrgMembershipRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling listOrgMembership.');\n }\n const limit = requestParameters.limit;\n const continuationToken = requestParameters.continuationToken;\n\n let localVarQueryParameters = new HttpParams({encoder: this.encoder});\n if (limit !== undefined && limit !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>limit, 'limit');\n }\n if (continuationToken !== undefined && continuationToken !== null) {\n localVarQueryParameters = this.addToHttpParams(localVarQueryParameters,\n <any>continuationToken, 'continuationToken');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/user/membership`;\n return this.httpClient.request<OrganizationSearchResult>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n params: localVarQueryParameters,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Обновление значений организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public patchOrg(requestParameters: PatchOrgRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Organization>;\n public patchOrg(requestParameters: PatchOrgRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Organization>>;\n public patchOrg(requestParameters: PatchOrgRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Organization>>;\n public patchOrg(requestParameters: PatchOrgRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling patchOrg.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling patchOrg.');\n }\n const patchOrgRequest = requestParameters.patchOrgRequest;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}`;\n return this.httpClient.request<Organization>('patch', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: patchOrgRequest,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Переключить активную организацию\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public switchContext(requestParameters: SwitchContextRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any>;\n public switchContext(requestParameters: SwitchContextRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<any>>;\n public switchContext(requestParameters: SwitchContextRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<any>>;\n public switchContext(requestParameters: SwitchContextRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling switchContext.');\n }\n const organizationSwitchRequest = requestParameters.organizationSwitchRequest;\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n // to determine the Content-Type header\n const consumes: string[] = [\n 'application/json'\n ];\n const httpContentTypeSelected: string | undefined = this.configuration.selectHeaderContentType(consumes);\n if (httpContentTypeSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Content-Type', httpContentTypeSelected);\n }\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/user/context`;\n return this.httpClient.request<any>('put', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n body: organizationSwitchRequest,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n/* tslint:disable:no-unused-variable member-ordering */\n\nimport { Inject, Injectable, Optional } from '@angular/core';\nimport { HttpClient, HttpHeaders, HttpParams,\n HttpResponse, HttpEvent, HttpParameterCodec, HttpContext \n } from '@angular/common/http';\nimport { CustomHttpParameterCodec } from '../encoder';\nimport { Observable } from 'rxjs';\n\n// @ts-ignore\nimport { ListOrgMembership400Response } from '../model/listOrgMembership400Response';\n// @ts-ignore\nimport { Role } from '../model/role';\n// @ts-ignore\nimport { RoleAvailableListResult } from '../model/roleAvailableListResult';\n// @ts-ignore\nimport { RoleId } from '../model/roleId';\n\n// @ts-ignore\nimport { BASE_PATH, COLLECTION_FORMATS } from '../variables';\nimport { Configuration } from '../configuration';\n\n\nexport interface GetOrgRoleRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n /** Идентификатор роли */\n roleId: RoleId;\n}\n\nexport interface ListOrgRolesRequestParams {\n /** Уникальный идентификатор запроса к системе */\n xRequestID: string;\n /** Идентификатор организации */\n orgId: string;\n}\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class RolesService {\n\n protected basePath = 'https://api.rbk.money/org/v1';\n public defaultHeaders = new HttpHeaders();\n public configuration = new Configuration();\n public encoder: HttpParameterCodec;\n\n constructor(protected httpClient: HttpClient, @Optional()@Inject(BASE_PATH) basePath: string|string[], @Optional() configuration: Configuration) {\n if (configuration) {\n this.configuration = configuration;\n }\n if (typeof this.configuration.basePath !== 'string') {\n if (Array.isArray(basePath) && basePath.length > 0) {\n basePath = basePath[0];\n }\n\n if (typeof basePath !== 'string') {\n basePath = this.basePath;\n }\n this.configuration.basePath = basePath;\n }\n this.encoder = this.configuration.encoder || new CustomHttpParameterCodec();\n }\n\n\n // @ts-ignore\n private addToHttpParams(httpParams: HttpParams, value: any, key?: string): HttpParams {\n if (typeof value === \"object\" && value instanceof Date === false) {\n httpParams = this.addToHttpParamsRecursive(httpParams, value);\n } else {\n httpParams = this.addToHttpParamsRecursive(httpParams, value, key);\n }\n return httpParams;\n }\n\n private addToHttpParamsRecursive(httpParams: HttpParams, value?: any, key?: string): HttpParams {\n if (value == null) {\n return httpParams;\n }\n\n if (typeof value === \"object\") {\n if (Array.isArray(value)) {\n (value as any[]).forEach( elem => httpParams = this.addToHttpParamsRecursive(httpParams, elem, key));\n } else if (value instanceof Date) {\n if (key != null) {\n httpParams = httpParams.append(key, (value as Date).toISOString().substring(0, 10));\n } else {\n throw Error(\"key may not be null if value is Date\");\n }\n } else {\n Object.keys(value).forEach( k => httpParams = this.addToHttpParamsRecursive(\n httpParams, value[k], key != null ? `${key}.${k}` : k));\n }\n } else if (key != null) {\n httpParams = httpParams.append(key, value);\n } else {\n throw Error(\"key may not be null if value is not object or array\");\n }\n return httpParams;\n }\n\n /**\n * Получить данные о роли\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public getOrgRole(requestParameters: GetOrgRoleRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<Role>;\n public getOrgRole(requestParameters: GetOrgRoleRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<Role>>;\n public getOrgRole(requestParameters: GetOrgRoleRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<Role>>;\n public getOrgRole(requestParameters: GetOrgRoleRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling getOrgRole.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling getOrgRole.');\n }\n const roleId = requestParameters.roleId;\n if (roleId === null || roleId === undefined) {\n throw new Error('Required parameter roleId was null or undefined when calling getOrgRole.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/roles/${this.configuration.encodeParam({name: \"roleId\", value: roleId, in: \"path\", style: \"simple\", explode: false, dataType: \"RoleId\", dataFormat: undefined})}`;\n return this.httpClient.request<Role>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n /**\n * Перечислить доступные роли в организации\n * @param requestParameters\n * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.\n * @param reportProgress flag to report request and response progress.\n */\n public listOrgRoles(requestParameters: ListOrgRolesRequestParams, observe?: 'body', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<RoleAvailableListResult>;\n public listOrgRoles(requestParameters: ListOrgRolesRequestParams, observe?: 'response', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpResponse<RoleAvailableListResult>>;\n public listOrgRoles(requestParameters: ListOrgRolesRequestParams, observe?: 'events', reportProgress?: boolean, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<HttpEvent<RoleAvailableListResult>>;\n public listOrgRoles(requestParameters: ListOrgRolesRequestParams, observe: any = 'body', reportProgress: boolean = false, options?: {httpHeaderAccept?: 'application/json', context?: HttpContext}): Observable<any> {\n const xRequestID = requestParameters.xRequestID;\n if (xRequestID === null || xRequestID === undefined) {\n throw new Error('Required parameter xRequestID was null or undefined when calling listOrgRoles.');\n }\n const orgId = requestParameters.orgId;\n if (orgId === null || orgId === undefined) {\n throw new Error('Required parameter orgId was null or undefined when calling listOrgRoles.');\n }\n\n let localVarHeaders = this.defaultHeaders;\n if (xRequestID !== undefined && xRequestID !== null) {\n localVarHeaders = localVarHeaders.set('X-Request-ID', String(xRequestID));\n }\n\n let localVarCredential: string | undefined;\n // authentication (bearer) required\n localVarCredential = this.configuration.lookupCredential('bearer');\n if (localVarCredential) {\n localVarHeaders = localVarHeaders.set('Authorization', 'Bearer ' + localVarCredential);\n }\n\n let localVarHttpHeaderAcceptSelected: string | undefined = options && options.httpHeaderAccept;\n if (localVarHttpHeaderAcceptSelected === undefined) {\n // to determine the Accept header\n const httpHeaderAccepts: string[] = [\n 'application/json'\n ];\n localVarHttpHeaderAcceptSelected = this.configuration.selectHeaderAccept(httpHeaderAccepts);\n }\n if (localVarHttpHeaderAcceptSelected !== undefined) {\n localVarHeaders = localVarHeaders.set('Accept', localVarHttpHeaderAcceptSelected);\n }\n\n let localVarHttpContext: HttpContext | undefined = options && options.context;\n if (localVarHttpContext === undefined) {\n localVarHttpContext = new HttpContext();\n }\n\n\n let responseType_: 'text' | 'json' | 'blob' = 'json';\n if (localVarHttpHeaderAcceptSelected) {\n if (localVarHttpHeaderAcceptSelected.startsWith('text')) {\n responseType_ = 'text';\n } else if (this.configuration.isJsonMime(localVarHttpHeaderAcceptSelected)) {\n responseType_ = 'json';\n } else {\n responseType_ = 'blob';\n }\n }\n\n let localVarPath = `/orgs/${this.configuration.encodeParam({name: \"orgId\", value: orgId, in: \"path\", style: \"simple\", explode: false, dataType: \"string\", dataFormat: undefined})}/roles`;\n return this.httpClient.request<RoleAvailableListResult>('get', `${this.configuration.basePath}${localVarPath}`,\n {\n context: localVarHttpContext,\n responseType: <any>responseType_,\n withCredentials: this.configuration.withCredentials,\n headers: localVarHeaders,\n observe: observe,\n reportProgress: reportProgress\n }\n );\n }\n\n}\n","export * from './invitations.service';\nimport { InvitationsService } from './invitations.service';\nexport * from './members.service';\nimport { MembersService } from './members.service';\nexport * from './orgs.service';\nimport { OrgsService } from './orgs.service';\nexport * from './roles.service';\nimport { RolesService } from './roles.service';\nexport const APIS = [InvitationsService, MembersService, OrgsService, RolesService];\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface AssignMemberRole422Response { \n code?: AssignMemberRole422Response.CodeEnum;\n /**\n * Человекочитаемое описание ошибки\n */\n message?: string;\n}\nexport namespace AssignMemberRole422Response {\n export type CodeEnum = 'invalidRole';\n export const CodeEnum = {\n InvalidRole: 'invalidRole' as CodeEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\n/**\n * Сотрудник организации, принявший приглашение\n */\nexport interface InvitationAcceptedAllOfMember { \n /**\n * Идентификатор пользователя\n */\n readonly id: string;\n}\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport type InvitationStatusName = 'Pending' | 'Accepted' | 'Expired' | 'Revoked';\n\nexport const InvitationStatusName = {\n Pending: 'Pending' as InvitationStatusName,\n Accepted: 'Accepted' as InvitationStatusName,\n Expired: 'Expired' as InvitationStatusName,\n Revoked: 'Revoked' as InvitationStatusName\n};\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\n/**\n * Контактные данные для отправки приглашения\n */\nexport interface InviteeContact { \n type: InviteeContact.TypeEnum;\n /**\n * Адрес электронной почты пользователя в организации\n */\n email: string;\n}\nexport namespace InviteeContact {\n export type TypeEnum = 'EMail';\n export const TypeEnum = {\n EMail: 'EMail' as TypeEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface JoinOrg422Response { \n code?: JoinOrg422Response.CodeEnum;\n /**\n * Человекочитаемое описание ошибки\n */\n message?: string;\n}\nexport namespace JoinOrg422Response {\n export type CodeEnum = 'invitationExpired';\n export const CodeEnum = {\n InvitationExpired: 'invitationExpired' as CodeEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\n/**\n * Ошибка в переданных данных\n */\nexport interface ListOrgMembership400Response { \n code: ListOrgMembership400Response.CodeEnum;\n message?: string;\n}\nexport namespace ListOrgMembership400Response {\n export type CodeEnum = 'invalidRequest';\n export const CodeEnum = {\n InvalidRequest: 'invalidRequest' as CodeEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface MemberContext { \n /**\n * Идентификатор организации\n */\n readonly organizationId: string;\n}\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\n/**\n * Модель организации\n */\nexport interface Organization { \n /**\n * Идентификатор организации\n */\n readonly id: string;\n /**\n * Дата и время создания организации\n */\n readonly createdAt: string;\n /**\n * Название организации в человекочитаемом виде\n */\n name: string;\n owner: string;\n /**\n * Идентификатор [участника](https://developer.rbk.money/api/#tag/Parties), которым заведует данная организация \n */\n readonly party?: string;\n /**\n * Произвольный, специфичный для клиента API и непрозрачный для системы набор данных, ассоциированных с данной организацией \n */\n metadata?: object;\n}\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationJoinRequest { \n /**\n * Токен для принятия приглашения пользователем\n */\n invitation: string;\n}\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface OrganizationSwitchRequest { \n /**\n * Идентификатор организации\n */\n organizationId: string;\n}\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface PatchOrgRequest { \n /**\n * Название организации\n */\n name?: string;\n}\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RemoveMemberRole422Response { \n code?: RemoveMemberRole422Response.CodeEnum;\n /**\n * Человекочитаемое описание ошибки\n */\n message?: string;\n}\nexport namespace RemoveMemberRole422Response {\n export type CodeEnum = 'onlyRoleLeft';\n export const CodeEnum = {\n OnlyRoleLeft: 'onlyRoleLeft' as CodeEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\n/**\n * Идентификатор ограничения для роли\n */\nexport type ResourceScopeId = 'Shop';\n\nexport const ResourceScopeId = {\n Shop: 'Shop' as ResourceScopeId\n};\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RevokeInvitation422Response { \n code?: RevokeInvitation422Response.CodeEnum;\n /**\n * Человекочитаемое описание ошибки\n */\n message?: string;\n}\nexport namespace RevokeInvitation422Response {\n export type CodeEnum = 'invalidStatus';\n export const CodeEnum = {\n InvalidStatus: 'invalidStatus' as CodeEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\nexport interface RevokeInvitationRequest { \n status: RevokeInvitationRequest.StatusEnum;\n /**\n * Причина отзыва приглашения\n */\n reason?: string;\n}\nexport namespace RevokeInvitationRequest {\n export type StatusEnum = 'Revoked';\n export const StatusEnum = {\n Revoked: 'Revoked' as StatusEnum\n };\n}\n\n\n","/**\n * RBKmoney Organizations API\n * RBKmoney Organizations API является интерфейсом для управления различными аспектами вашей организации. Все изменения состояния организации, будь то приглашение новых сотрудников, добавление ролей уже существующим сотрудникам или настройка области их ответственности осуществляются с помощью вызовов соответствующих методов API. Любые сторонние приложения, включая ваш личный кабинет, являются внешними приложениями-клиентами. Мы предоставляем REST API поверх HTTP-протокола, схема которого описывается в соответствии со стандартом [OpenAPI 3][OAS3]. Коды возврата описываются соответствующими HTTP-статусами. Платформа принимает и возвращает значения JSON в теле запросов и ответов. [OAS3]: https://swagger.io/specification/ ## Формат содержимого Любой запрос к API должен выполняться в кодировке UTF-8 и с указанием содержимого в формате JSON. ``` Content-Type: application/json; charset=utf-8 ``` ## Запросы Любой вызов методов API обязан предваряться предоставлением уникального для клиента платформы идентификатора запроса. Данный ID передается в соответствующем заголовке каждого HTTP-запроса: ``` X-Request-ID: RQID-Z08G3EFE5DZ429VVO755BM19D51 ``` Мы требуем его, чтобы иметь возможность отследить жизненный цикл любого отдельного запроса в системе, когда того требуют задачи аудита или обращения в техническую поддержку. ### Идемпотентность При совершении некоторых запросов вы можете указать _ключ идемпотентности_ – уникальный набор символов для обеспечения идемпотентной обработки запросов. ``` X-Idempotency-Key: 881D:08BA ``` Даже если платформа получит множество запросов на совершение определённой операции с одним и тем же значением ключа идемпотентности, эта операция будет выполнена _не более чем один_ раз. Таким образом, в случае кратковременных проблем с сетевой доступностью вы можете отправлять запросы повторно и быть уверенными в том, что, например, приглашение новому сотруднику в итоге будет отправлено только один раз. \n *\n * The version of the OpenAPI document: 1.0.0\n * Contact: support@rbk.money\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n\n/**\n * Идентификатор роли\n */\nexport type RoleId = 'Administrator' | 'Accountant' | 'Integrator' | 'Manager';\n\nexport const RoleId = {\n Administrator: 'Administrator' as RoleId,\n Accountant: 'Accountant' as RoleId,\n Integrator: 'Integrator' as RoleId,\n Manager: 'Manager' as RoleId\n};\n\n","import { NgModule, ModuleWithProviders, SkipSelf, Optional } from '@angular/core';\nimport { Configuration } from './configuration';\nimport { HttpClient } from '@angular/common/http';\n\n\n@NgModule({\n imports: [],\n declarations: [],\n exports: [],\n providers: []\n})\nexport class ApiModule {\n public static forRoot(configurationFactory: () => Configuration): ModuleWithProviders<ApiModule> {\n return {\n ngModule: ApiModule,\n providers: [ { provide: Configuration, useFactory: configurationFactory } ]\n };\n }\n\n constructor( @Optional() @SkipSelf() parentModule: ApiModule,\n @Optional() http: HttpClient) {\n if (parentModule) {\n throw new Error('ApiModule is already loaded. Import in your base AppModule only.');\n }\n if (!http) {\n throw new Error('You need to import the HttpClientModule in your AppModule! \\n' +\n 'See also https://github.com/angular/angular/issues/20575');\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2.Configuration"],"mappings":"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"}