/** * Agilicus API * Agilicus is API-first. Modern software is controlled by other software, is open, is available for you to use the way you want, securely, simply. The OpenAPI Specification in YAML format is available on [www](https://www.agilicus.com/www/api/agilicus-openapi.yaml) for importing to other tools. A rendered, online viewable and usable version of this specification is available at [api](https://www.agilicus.com/api). You may try the API inline directly in the web page. To do so, first obtain an Authentication Token (the simplest way is to install the Python SDK, and then run `agilicus-cli --issuer https://MYISSUER get-token`). You will need an org-id for most calls (and can obtain from `agilicus-cli --issuer https://MYISSUER list-orgs`). The `MYISSUER` will typically be `auth.MYDOMAIN`, and you will see it as you sign-in to the administrative UI. This API releases on Bearer-Token authentication. To obtain a valid bearer token you will need to Authenticate to an Issuer with OpenID Connect (a superset of OAUTH2). Your \"issuer\" will look like https://auth.MYDOMAIN. For example, when you signed-up, if you said \"use my own domain name\" and assigned a CNAME of cloud.example.com, then your issuer would be https://auth.cloud.example.com. If you selected \"use an Agilicus supplied domain name\", your issuer would look like https://auth.myorg.agilicus.cloud. For test purposes you can use our [Python SDK](https://pypi.org/project/agilicus/) and run `agilicus-cli --issuer https://auth.MYDOMAIN get-token`. This API may be used in any language runtime that supports OpenAPI 3.0, or, you may use our [Python SDK](https://pypi.org/project/agilicus/), our [Typescript SDK](https://www.npmjs.com/package/@agilicus/angular), or our [Golang SDK](https://git.agilicus.com/pub/sdk-go). 100% of the activities in our system our API-driven, from our web-admin, through our progressive web applications, to all internals: there is nothing that is not accessible. For more information, see [developer resources](https://www.agilicus.com/developer). * * The version of the OpenAPI document: 2025.12.16 * Contact: dev@agilicus.com * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { HttpHeaders } from '@angular/common/http'; import { Observable } from 'rxjs'; import { BillingAccount } from '../model/models'; import { BillingCheckoutSession } from '../model/models'; import { BillingPortalLink } from '../model/models'; import { BillingSubscriptionCancelDetail } from '../model/models'; import { CreateBillingCheckoutSession } from '../model/models'; import { ListDomainsResponse } from '../model/models'; import { ListFeaturesResponse } from '../model/models'; import { ListGuidMetadataResponse } from '../model/models'; import { ListOrgsResponse } from '../model/models'; import { OrgFixup } from '../model/models'; import { Organisation } from '../model/models'; import { OrganisationAdmin } from '../model/models'; import { OrganisationCapabilities } from '../model/models'; import { OrganisationStatus } from '../model/models'; import { OrganisationSystemOptions } from '../model/models'; import { ReconcileOrgDefaultPolicyRequest } from '../model/models'; import { ReconcileOrgDefaultPolicyResponse } from '../model/models'; import { ReconcileSubOrgIssuerRequest } from '../model/models'; import { UsageMetrics } from '../model/models'; import { Configuration } from '../configuration'; export interface CancelSubscriptionRequestParams { org_id: string; BillingSubscriptionCancelDetail?: BillingSubscriptionCancelDetail; } export interface CreateBillingPortalLinkRequestParams { org_id: string; BillingPortalLink: BillingPortalLink; } export interface CreateCheckoutSessionRequestParams { org_id: string; CreateBillingCheckoutSession?: CreateBillingCheckoutSession; } export interface CreateOrgRequestParams { OrganisationAdmin: OrganisationAdmin; } export interface CreateReconcileOrgDefaultPolicyRequestParams { ReconcileOrgDefaultPolicyRequest: ReconcileOrgDefaultPolicyRequest; } export interface CreateSubOrgRequestParams { org_id: string; Organisation: Organisation; } export interface DeleteSubOrgRequestParams { org_id: string; sub_org_id: string; } export interface GetInherentCapabilitiesRequestParams { org_id: string; } export interface GetOrgRequestParams { org_id: string; get_system_options?: boolean; } export interface GetOrgBillingAccountRequestParams { org_id: string; get_subscription_data?: boolean; get_customer_data?: boolean; } export interface GetOrgFeaturesRequestParams { org_id: string; } export interface GetOrgStatusRequestParams { org_id: string; } export interface GetSystemOptionsRequestParams { org_id: string; } export interface GetUsageMetricsRequestParams { org_id: string; } export interface ListEmailDomainsRequestParams { org_id: string; } export interface ListOrgGuidMappingRequestParams { org_id?: string; limit?: number; previous_guid?: string; updated_since?: Date; } export interface ListOrgsRequestParams { limit?: number; org_id?: string; organisation?: string; issuer?: string; list_children?: boolean; updated_since?: Date; suborg_updated?: boolean; enabled?: boolean; billing_account_id?: string | null; shard?: string; cluster?: string; subdomain?: string; page_at_id?: string; get_system_options?: boolean; point_of_presence_name_list?: Array; region_name_list?: Array; } export interface ListSubOrgsRequestParams { org_id: string; limit?: number; updated_since?: Date; } export interface OrgFixupRequestParams { org_id: string; OrgFixup: OrgFixup; } export interface ReconcileSubOrgIssuerRequestParams { org_id: string; sub_org_id: string; ReconcileSubOrgIssuerRequest: ReconcileSubOrgIssuerRequest; } export interface ReplaceOrgRequestParams { org_id: string; Organisation?: Organisation; } export interface ReplaceSystemOptionsRequestParams { org_id: string; OrganisationSystemOptions: OrganisationSystemOptions; } export interface SetInherentCapabilitiesRequestParams { org_id: string; OrganisationCapabilities?: OrganisationCapabilities; } export interface ValidateNewOrgRequestParams { OrganisationAdmin: OrganisationAdmin; } export interface OrganisationsServiceInterface { defaultHeaders: HttpHeaders; configuration: Configuration; /** * Cancel the billing subscription for this organisation * Cancel the billing subscription for this organisation * @param requestParameters */ cancelSubscription(requestParameters: CancelSubscriptionRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Create a link to the billing portal * Creates a temporary, one-time-use link to the billing system\'s self-serve portal. * @param requestParameters */ createBillingPortalLink(requestParameters: CreateBillingPortalLinkRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * utility to upgrade organisations * utility to upgrade organisations */ createBlockingUpgradeOrgsTask(observe?: any, extraHeaders?: HttpHeaders): Observable<{}>; /** * Create a session checkout * Create a session checkout * @param requestParameters */ createCheckoutSession(requestParameters: CreateCheckoutSessionRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Create an organisation * Create an organisation * @param requestParameters */ createOrg(requestParameters: CreateOrgRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Reconciles one or more org\'s default policies * Ensures that the requested organisations have the proper defaults for their policies. * @param requestParameters */ createReconcileOrgDefaultPolicy(requestParameters: CreateReconcileOrgDefaultPolicyRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Create a sub organisation * Create a sub organisation * @param requestParameters */ createSubOrg(requestParameters: CreateSubOrgRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Delete a sub organisation * Delete a sub organisation * @param requestParameters */ deleteSubOrg(requestParameters: DeleteSubOrgRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable<{}>; /** * Get the inherent capabilities for an org * Gets the inherent capabilities for an organisation. Inherent capabilities are what an organisation can do. They cannot be changed by the organisation. Instead, they serve to limit the configurable capabilities of the organisation. An organisation\'s capabilities are the intersection of its inherent_capabilities and its configured_capabilities. If an organisation has not configured capabilities, they will be inherited from the parent. Similarly, if an organisation has no enabled inherent_capabilities they will be inherited from the parent. * @param requestParameters */ getInherentCapabilities(requestParameters: GetInherentCapabilitiesRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get a single organisation * Get a single organisation * @param requestParameters */ getOrg(requestParameters: GetOrgRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get the billing account associated with the organisation * Get the billing account associated with the organisation * @param requestParameters */ getOrgBillingAccount(requestParameters: GetOrgBillingAccountRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * all features associated with organisation * all features associated with organisation * @param requestParameters */ getOrgFeatures(requestParameters: GetOrgFeaturesRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get the status of an organisation * Get the status of an organisation * @param requestParameters */ getOrgStatus(requestParameters: GetOrgStatusRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get organisation system options * Get organisation system options * @param requestParameters */ getSystemOptions(requestParameters: GetSystemOptionsRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get all usage metrics for an organisation * Get all usage metrics for an organisation * @param requestParameters */ getUsageMetrics(requestParameters: GetUsageMetricsRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * List all unique email domains for users that are inside an organisation * List all unique email domains for users that are inside an organisation * @param requestParameters */ listEmailDomains(requestParameters: ListEmailDomainsRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get all org guids and a unique name mapping * Get all org guids and a unique name mapping * @param requestParameters */ listOrgGuidMapping(requestParameters: ListOrgGuidMappingRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get all organisations * Get all organisations * @param requestParameters */ listOrgs(requestParameters: ListOrgsRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Get all sub organisations * Get all sub organisations * @param requestParameters */ listSubOrgs(requestParameters: ListSubOrgsRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Fixup an org, if required * Fixup an org, if required * @param requestParameters */ orgFixup(requestParameters: OrgFixupRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Creates an issuer for the sub org * Allocates or removes an issuer for the suborg. Allocating an issuer allows the suborg to have its own issuer configuration. Note that at most one issuer may be created this way. If an issuer already exists it will be reclaimed and updated. * @param requestParameters */ reconcileSubOrgIssuer(requestParameters: ReconcileSubOrgIssuerRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Create or update an organisation * Create or update an organisation * @param requestParameters */ replaceOrg(requestParameters: ReplaceOrgRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable<{}>; /** * Update organisation system options * Update organisation system options * @param requestParameters */ replaceSystemOptions(requestParameters: ReplaceSystemOptionsRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Set the inherent capabilities for an org * Sets the inherent capabilities for an organisation. * @param requestParameters */ setInherentCapabilities(requestParameters: SetInherentCapabilitiesRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable; /** * Validate that the requested org is available * Validate that the requested org is available * @param requestParameters */ validateNewOrg(requestParameters: ValidateNewOrgRequestParams, observe?: any, extraHeaders?: HttpHeaders): Observable<{}>; }