For the complete documentation index, see [llms.txt](https://docs.archera.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.archera.ai/api-reference/partner-api/partners.md).

# Partners

partners api automation

## /cloudformation_template

> Generates CloudFormation template for AWS integration. Creates the necessary IAM role and policy template for setting up AWS access.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/aws/cloudformation_template":{"get":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CloudFormation"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}}},"tags":["partners"],"summary":"/cloudformation_template","description":"Generates CloudFormation template for AWS integration. Creates the necessary IAM role and policy template for setting up AWS access."}}},"components":{"schemas":{"CloudFormation":{"type":"object","properties":{"template":{"type":"object","additionalProperties":{}}},"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false}},"responses":{"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /launch-stack-url

> Generates AWS CloudFormation launch stack URL. Creates a pre-configured URL to deploy the CloudFormation stack in the AWS console.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/aws/launch-stack-url":{"get":{"parameters":[{"in":"query","name":"read_only","schema":{"type":"boolean","default":false},"required":false}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/LaunchStackUrls"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"422":{"$ref":"#/components/responses/UNPROCESSABLE_CONTENT"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"tags":["partners"],"summary":"/launch-stack-url","description":"Generates AWS CloudFormation launch stack URL. Creates a pre-configured URL to deploy the CloudFormation stack in the AWS console."}}},"components":{"schemas":{"LaunchStackUrls":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"],"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false}},"responses":{"UNPROCESSABLE_CONTENT":{"description":"Unprocessable Content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /verify

> Runs AWS onboarding verification process. Creates a new CUR or uses an existing CUR and verifies AWS integration setup and returns validation status for all required features.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/aws/verify":{"post":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Validation"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"422":{"$ref":"#/components/responses/UNPROCESSABLE_CONTENT"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VerificationArgs"}}}},"tags":["partners"],"summary":"/verify","description":"Runs AWS onboarding verification process. Creates a new CUR or uses an existing CUR and verifies AWS integration setup and returns validation status for all required features."}}},"components":{"schemas":{"Validation":{"type":"object","properties":{"feature":{"type":"string"},"status":{"type":"string","enum":["available","warning","missing","unknown"]}},"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false},"VerificationArgs":{"type":"object","properties":{"onboarding_id":{"type":"string","pattern":"[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}\Z"},"account_id":{"type":"string"},"read_only":{"type":"boolean","default":false},"existing_cur":{"$ref":"#/components/schemas/ExistingCUR"}},"additionalProperties":false}},"responses":{"UNPROCESSABLE_CONTENT":{"description":"Unprocessable Content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /auth-url

> Generates Azure authentication URL for onboarding. Creates or updates Azure onboarding record with tenant and subscription details, then returns the auth URL.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/azure/auth-url":{"get":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AzureAuthUrlResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"422":{"$ref":"#/components/responses/UNPROCESSABLE_CONTENT"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/AzureAuthUrlArgs"}}}},"tags":["partners"],"summary":"/auth-url","description":"Generates Azure authentication URL for onboarding. Creates or updates Azure onboarding record with tenant and subscription details, then returns the auth URL."}}},"components":{"schemas":{"AzureAuthUrlResponse":{"type":"object","properties":{"url":{"type":"string"}},"required":["url"],"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false},"AzureAuthUrlArgs":{"type":"object","properties":{"azure_tenant_id":{"type":"string"},"azure_subscription_id":{"type":"string"}},"required":["azure_subscription_id","azure_tenant_id"],"additionalProperties":false}},"responses":{"UNPROCESSABLE_CONTENT":{"description":"Unprocessable Content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /verify

> Runs Azure onboarding verification process. Executes the complete onboarding workflow and returns validation results for all features.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/azure/verify":{"post":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/Validation"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"tags":["partners"],"summary":"/verify","description":"Runs Azure onboarding verification process. Executes the complete onboarding workflow and returns validation results for all features."}}},"components":{"schemas":{"Validation":{"type":"object","properties":{"feature":{"type":"string"},"status":{"type":"string","enum":["available","warning","missing","unknown"]}},"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false}}}}}
```

## /register_child

> **Legacy** - use **POST [/partners/<uuid_str:partner_org_id>/orgs](#tag/Organizations/paths/~1v2~1partners~1{partner_org_id}~1orgs/post)** instead. This endpoint will be discontinued soon.\
> \
> Registers a new child organization under the channel partner. Creates the organization, sets up user memberships, and establishes the partnership relationship.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/register_child":{"post":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PartnerRegisterOrgResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"422":{"$ref":"#/components/responses/UNPROCESSABLE_CONTENT"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PartnerRegisterOrg"}}}},"tags":["partners"],"summary":"/register_child","description":"**Legacy** - use **POST [`/partners/<uuid_str:partner_org_id>/orgs`](#tag/Organizations/paths/~1v2~1partners~1{partner_org_id}~1orgs/post)** instead. This endpoint will be discontinued soon.\n\nRegisters a new child organization under the channel partner. Creates the organization, sets up user memberships, and establishes the partnership relationship.","deprecated":true}}},"components":{"schemas":{"PartnerRegisterOrgResponse":{"type":"object","properties":{"org_id":{"type":"string"}},"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false},"PartnerRegisterOrg":{"type":"object","properties":{"company":{"type":"string"},"labra_subscription_id":{"type":"string"},"email":{"type":["string","null"],"format":"email","default":null,"maxLength":255}},"required":["company"],"additionalProperties":false}},"responses":{"UNPROCESSABLE_CONTENT":{"description":"Unprocessable Content","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /start

> Starts the onboarding process for an organization. Creates or retrieves an onboarding record and sets the provider to AWS.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/start":{"post":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/StartOnboarding"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"tags":["partners"],"summary":"/start","description":"Starts the onboarding process for an organization. Creates or retrieves an onboarding record and sets the provider to AWS."}}},"components":{"schemas":{"StartOnboarding":{"type":"object","properties":{"onboarding_id":{"type":"string"}},"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false}},"responses":{"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /child-orgs

> Lists child organizations. This returns all orgs belongs to the channel partner identified by **org_id**.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/onboarding/child-orgs":{"get":{"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"array","items":{"$ref":"#/components/schemas/ListChildOrgsResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"tags":["partners"],"summary":"/child-orgs","description":"Lists child organizations. This returns all orgs belongs to the channel partner identified by **org_id**."}}},"components":{"schemas":{"ListChildOrgsResponse":{"type":"object","properties":{"created_at":{"type":"string","format":"date-time"},"org_id":{"type":"string"},"org_name":{"type":"string"},"org_checklist":{"type":"array","items":{"$ref":"#/components/schemas/Validation"}},"integration_checklist":{"type":"object","additionalProperties":{"type":"array","items":{"$ref":"#/components/schemas/Validation"}}}},"required":["created_at","integration_checklist","org_checklist","org_id","org_name"],"additionalProperties":false},"Validation":{"type":"object","properties":{"feature":{"type":"string"},"status":{"type":"string","enum":["available","warning","missing","unknown"]}},"additionalProperties":false},"ApiErrorResponse":{"type":"object","properties":{"message":{"type":"string"},"detail":{},"code":{"type":["string","null"]},"url":{"type":["string","null"]},"timestamp":{"type":"string"},"type":{"type":"string"}},"required":["message","timestamp","type"]},"Error":{"type":"object","properties":{"code":{"type":"integer","description":"Error code"},"status":{"type":"string","description":"Error name"},"message":{"type":"string","description":"Error message"},"errors":{"type":"object","description":"Errors","additionalProperties":{}}},"additionalProperties":false}},"responses":{"DEFAULT_ERROR":{"description":"Default error response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}}
```

## /recommended

> Gets recommended purchase plans for a specific provider. Returns the most suitable plan based on the organization and provider requirements.

```json
{"openapi":"3.1.0","info":{"title":"Archera.ai Channel Partner API","version":"v1.0.0"},"tags":[{"name":"partners","description":"partners api automation"}],"paths":{"/v2/org/{org_id}/partners/purchase-plans-v2/recommended":{"get":{"parameters":[{"in":"query","name":"provider","schema":{"enum":["aws","azure","gcp","unknown"],"type":"string"},"required":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/PurchasePlanV2CombinedSummary"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"401":{"description":"Unauthorized","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"404":{"description":"Not found","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"405":{"description":"Method not allowed","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"409":{"description":"Conflict","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"422":{"$ref":"#/components/responses/UNPROCESSABLE_CONTENT"},"500":{"description":"Internal server error","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiErrorResponse"}}}},"default":{"$ref":"#/components/responses/DEFAULT_ERROR"}},"tags":["partners"],"summary":"/recommended","description":"Gets recommended purchase plans for a specific provider. Returns the most suitable plan based on the organization and provider requirements."}}},"components":{"schemas":{"PurchasePlanV2CombinedSummary":{"type":"object","properties":{"start_date":{"type":["string","null"],"format":"date-time"},"end_date":{"type":["string","null"],"format":"date-time"},"id":{"type":"string","format":"uuid"},"data_source":{"type":"string","maxLength":20},"name":{"type":"string"},"description":{"type":["string","null"]},"segment_id":{"type":"string","maxLength":50},"meta_plan_id":{"type":["string","null"],"format":"uuid"},"org_id":{"type":"string","maxLength":50},"last_modified":{"type":["string","null"],"format":"date-time"},"plan_type":{"type":"string","enum":["purchase","renewal","infrastructure"]},"coverage_id":{"type":["string","null"],"format":"uuid"},"created_at":{"type":"string","format":"date-time"},"is_calculating":{"type":"boolean"},"is_saved":{"type":"boolean"},"is_locked":{"type":"boolean"},"max_upfront_cost":{"type":"number"},"minimum_upfront_interest_rate":{"type":"number"},"preferred_payment_option":{"enum":["No Upfront","Partial Upfront","All Upfront",null]},"included_contract_specs":{"type":"array","items":{"$ref":"#/components/schemas/PurchasePlanContractSpec"}},"included_contract_terms":{"type":"array","items":{"type":"string","enum":["one_year_gris","thirty_day_gris","two_month_gris","three_month_gris","four_month_gris","five_month_gris","six_month_gris","seven_month_gris","eight_month_gris","nine_month_gris","ten_month_gris","eleven_month_gris","twelve_month_gris","thirteen_month_gris","fourteen_month_gris","fifteen_month_gris","sixteen_month_gris","seventeen_month_gris","eighteen_month_gris","nineteen_month_gris","twenty_month_gris","twenty_one_month_gris","twenty_two_month_gris","twenty_three_month_gris","twenty_four_month_gris","twenty_five_month_gris","twenty_six_month_gris","twenty_seven_month_gris","twenty_eight_month_gris","twenty_nine_month_gris","thirty_month_gris","thirty_one_month_gris","thirty_two_month_gris","thirty_three_month_gris","thirty_four_month_gris","thirty_five_month_gris","one_year","two_year","three_year","five_year","zero_day","thirty_day","two_month","three_month","four_month","five_month","six_month","seven_month","eight_month","nine_month","ten_month","eleven_month","thirteen_month","fourteen_month","fifteen_month","sixteen_month","seventeen_month","eighteen_month","nineteen_month","twenty_month","twenty_one_month","twenty_two_month","twenty_three_month","twenty_five_month","twenty_six_month","twenty_seven_month","twenty_eight_month","twenty_nine_month","thirty_month","thirty_one_month","thirty_two_month","thirty_three_month","thirty_four_month","thirty_five_month"]}},"recommend_within_covered_accounts":{"type":["boolean","null"]},"status":{"type":"string","enum":["new","reviewed","scheduled","completed","draft","needs_review","in_progress"]},"is_recommended":{"type":"boolean"},"is_default":{"type":"boolean"},"is_renewal":{"type":"boolean"},"execution_policy":{"$ref":"#/components/schemas/ExecutePurchasePolicyDump_Exclude_Segment_TargetPlan"},"segment":{"$ref":"#/components/schemas/SegmentInfo"},"flagged_actions":{"type":"array","items":{"$ref":"#/components/schemas/FlaggedAction"}},"created_by":{"$ref":"#/components/schemas/UserInfo"},"resource_ids":{"type":"array","items":{"type":"string"}},"reservation_ids":{"type":"array","items":{"type":"string"}}},"required":["after_cost","all_terms","amortized_cost","before_cost","before_ondemand_cost","before_reserved_cost","breakeven_hours","commitment_coverage","coverage_id","covered_ondemand_cost","created_at","created_by","data_source","description","execution_policy","fee","flagged_actions","id","included_contract_specs","included_contract_terms","is_calculating","is_default","is_locked","is_recommended","is_renewal","is_saved","last_modified","max_term","max_upfront_cost","meta_plan_id","minimum_commitment_cost","minimum_upfront_interest_rate","monthly_after_cost","monthly_amortized_cost","monthly_before_cost","monthly_fee","monthly_savings","name","org_id","plan_type","preferred_payment_option","recommend_within_covered_accounts","recurring_cost","reservation_ids","resource_ids","savings","segment","segment_id","status","summaries","total_cost","total_monthly_before_cost","total_savings","upfront_cost"],"additionalProperties":false},"PurchasePlanContractSpec":{"type":"object","properties":{"commitment_type":{"type":"string"},"properties":{"type":"object","default":{},"additionalProperties":{}},"term":{"default":null,"type":["string","null"],"enum":["one_year_gris","thirty_day_gris","two_month_gris","three_month_gris","four_month_gris","five_month_gris","six_month_gris","seven_month_gris","eight_month_gris","nine_month_gris","ten_month_gris","eleven_month_gris","twelve_month_gris","thirteen_month_gris","fourteen_month_gris","fifteen_month_gris","sixteen_month_gris","seventeen_month_gris","eighteen_month_gris","nineteen_month_gris","twenty_month_gris","twenty_one_month_gris","twenty_two_month_gris","twenty_three_month_gris","twenty_four_month_gris","twenty_five_month_gris","twenty_six_month_gris","twenty_seven_month_gris","twenty_eight_month_gris","twenty_nine_month_gris","thirty_month_gris","thirty_one_month_gris","thirty_two_month_gris","thirty_three_month_gris","thirty_four_month_gris","thirty_five_month_gris","one_year","two_year","three_year","five_year","zero_day","thirty_day","two_month","three_month","four_month","five_month","six_month","seven_month","eight_month","nine_month","ten_month","eleven_month","thirteen_month","fourteen_month","fifteen_month","sixteen_month","seventeen_month","eighteen_month","nineteen_month","twenty_month","twenty_one_month","twenty_two_month","twenty_three_month","twenty_five_month","twenty_six_month","twenty_seven_month","twenty_eight_month","twenty_nine_month","thirty_month","thirty_one_month","thirty_two_month","thirty_three_month","thirty_four_month","thirty_five_month",null]},
