{"components":{"schemas":{"AdditionalContactFields":{"additionalProperties":true,"properties":{"cell_phone":{"description":"phone number of insured main contact","example":"+1 123-456-7890","maximum":255,"minimum":1,"type":"string"},"contact_roles":{"description":"roles to be applied to additional contacts","example":["security_alerts","policy_notices"],"items":{"description":"role type that is applied to additional contact","enum":["security_alerts","policy_notices"],"type":"string"},"maxItems":2,"minItems":1,"type":"array","uniqueItems":true},"email":{"description":"email address for the insured main contact","example":"example@gmail.com","maximum":255,"minimum":1,"type":"string"},"first_name":{"description":"first name","example":"John","maximum":255,"minimum":1,"type":"string"},"last_name":{"description":"last name","example":"Atbay","maximum":255,"minimum":1,"type":"string"}},"required":["email","contact_roles"],"type":"object"},"AddressFields":{"properties":{"city":{"description":"City","example":"Mountain View","maximum":50,"minimum":1,"type":"string"},"state":{"description":"State name or abbreviation. Must be a valid US state. Can be either full name or 2-letter abbreviation. Use \u201cDC\u201d for \u201cWashington D.C.\u201d","example":"California","maximum":50,"minimum":1,"type":"string"},"street":{"description":"street address for the applicant","example":"Castro Street 196","maximum":255,"minimum":1,"type":"string"},"street2":{"description":"Secondary Address information, if applicable","example":"Suite 8200","maximum":255,"type":"string"},"zip":{"description":"US postal/zip code","example":"94101","maximum":50,"type":"string"}},"required":["street","city","zip"],"type":"object"},"BadRequest":{"properties":{"message":{"default":"badrequest","type":"string"}},"type":"object"},"BindFields":{"properties":{"app_attestation":{"description":"At the time of bind, the user completing the bind process can attest that they have uploaded/sent an At-Bay application that confirms the following:\n 1. Is the application that was used to obtain the Quote and / or Conditional binder\n 2. Includes the insured\u2019s signature and any other required fields\n 3. Makes no changes to the application used to obtain the Quote / and or Conditional Binder.\n\n If all the statements are true, At-Bay will trigger immediate policy issuance and not require underwriter review.\n Please reach out for our standard legal language or to confirm your platform\u2019s existing disclaimer language.\n\n Note: the app_attestation field only applies files uploaded to support the signature-related contingency.\n At-Bay applications signed via electronic signature methods (Docusign, Hellosign) qualify to use this feature.","example":true,"type":"boolean"},"client":{"properties":{"additional_contacts":{"items":{"$ref":"#/components/schemas/AdditionalContactFields"},"type":"array"},"insured_main_contact":{"$ref":"#/components/schemas/InsuredMainContactFields"}},"required":["insured_main_contact"],"type":"object"},"dates":{"$ref":"#/components/schemas/PolicyDates"},"quote_identifier":{"description":"unique identifier of the quote. received after POST call, to be used in GET request. quote_id values you generated using API v0.1 are valid inputs for the quote_identifier field.","example":"9916c08c-b00f-43ec-b6fb-5d6f5b17851d","type":"string"}},"required":["quote_identifier","dates"],"type":"object"},"ClientFields":{"properties":{"additional_contacts":{"items":{"$ref":"#/components/schemas/AdditionalContactFields"},"type":"array"},"address":{"$ref":"#/components/schemas/AddressFields"},"broker_email":{"description":"The broker's email, used to uniquely identify the broker of record for the applicant. Has to be an email of a broker known to the system (pre-configure with At-Bay)","example":"caitlin@at-bay.com","minimum":1,"type":"string"},"company_id":{"description":"Unique company ID provided by At-Bay for the requested submission. client_partner_id values you generated using API v0.1 are valid inputs for the company_id field.","example":43987,"oneOf":[{"type":"string"},{"type":"integer"}]},"dba":{"description":"DBA of the Applicant organization.","minimum":1,"nullable":true,"type":"string"},"domains":{"description":"Applicant list of domains. All domains should be valid","example":["at-bay.com","cyberjack.io"],"items":{"maximum":255,"type":"string"},"maxItems":75,"minItems":0,"type":"array"},"industry":{"description":"Applicant\u2019s industry code. We require 6-digit NAICS codes (https://www.naics.com/search/)","example":524210,"maximum":6,"minimum":6,"type":"string"},"insured_main_contact":{"$ref":"#/components/schemas/InsuredMainContactFields"},"name":{"description":"Name of the Applicant organization. This is also known as the \u201cNamed Insured\u201d in the policy","example":"At-Bay","maximum":400,"type":"string"},"revenue":{"description":"Applicant\u2019s last 12 months revenue in USD","example":45750000,"maximum":5000000000,"minimum":1,"type":"integer"},"secondary_broker_email":{"description":"TBD","example":"caitlin@at-bay.com","nullable":true,"type":"string"}},"required":["name","revenue","broker_email","address"],"type":"object"},"ContingencyFields":{"properties":{"contingency_id":{"type":"string"},"status":{"enum":["open","closed"],"example":"closed","type":"string"},"text":{"type":"string"},"type":{"enum":["pre_bind","post_bind"],"example":"pre_bind","type":"string"}},"type":"object"},"CoverageFields":{"properties":{"coverage_name":{"type":"string"},"limit":{"type":"integer"},"parameter":{"type":"integer"},"parameter_name":{"type":"string"},"retention":{"type":"integer"}},"type":"object"},"CreateQuoteFields":{"properties":{"client":{"$ref":"#/components/schemas/ClientFields"},"policy":{"$ref":"#/components/schemas/PolicyFields"},"questions":{"items":{"$ref":"#/components/schemas/QuestionFields"},"type":"array"}},"required":["client","questions","policy"],"type":"object"},"CreateQuoteResponse":{"properties":{"aggregate_limit":{"description":"DEPRECATED - The aggregate limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); limits greater than 3000000 can be submitted but will not be quoted automatically.","example":250000,"type":"integer"},"aggregate_retention":{"description":"DEPRECATED - The desired retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000).","example":5000,"type":"integer"},"per_claim_limit":{"description":"DEPRECATED - The per-claim limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); in the absence of a submitted value, this value will match the aggregate limit by default. This value should not exceed the aggregate limit of the policy.","example":1000000,"type":"integer"},"per_claim_retention":{"description":"The requested aggregate retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000). Belong only to MPL products.","example":5000,"type":"integer"},"quote_identifier":{"example":"9916c08c-b00f-43ec-b6fb-5d6f5b17851d","type":"string"},"requested_aggregate_limit":{"description":"The requested aggregate limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); limits greater than 3000000 can be submitted but will not be quoted automatically.","example":250000,"type":"integer"},"requested_aggregate_retention":{"description":"The requested aggregate retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000).","example":5000,"type":"integer"},"requested_per_claim_limit":{"description":"The requested per-claim limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); in the absence of a submitted value, this value will match the aggregate limit by default. This value should not exceed the aggregate limit of the policy.","example":1000000,"type":"integer"},"requested_per_claim_retention":{"description":"The requested aggregate retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000). Only applicable to MPL submissions.","example":5000,"type":"integer"}},"required":["requested_aggregate_limit","quote_identifier"],"type":"object"},"CreateQuotesResponse":{"properties":{"company_id":{"description":"Unique company ID provided by At-Bay for the requested submission. client_partner_id values you generated using API v0.1 are valid inputs for the company_id field.","type":"string"},"quotes":{"items":{"$ref":"#/components/schemas/CreateQuoteResponse"},"type":"array"}},"type":"object"},"FileUploadFields":{"properties":{"contingency":{"type":"string"},"file":{"format":"binary","type":"string"},"name":{"type":"string"},"quote_identifier":{"type":"string"}},"required":["quote_identifier","file"],"type":"object"},"GetQuoteResponse":{"properties":{"aggregate_limit":{"description":"The aggregate limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); limits greater than 3000000 can be submitted but will not be quoted automatically","example":250000,"type":"integer"},"aggregate_retention":{"description":"The desired retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000)","example":5000,"type":"integer"},"client":{"$ref":"#/components/schemas/ClientFields"},"company_id":{"description":"Unique company ID provided by At-Bay for the requested submission. client_partner_id values you generated using API v0.1 are valid inputs for the company_id field.","type":"string"},"contingencies":{"items":{"$ref":"#/components/schemas/ContingencyFields"},"type":"array"},"coverages":{"items":{"$ref":"#/components/schemas/CoverageFields"},"type":"array"},"dates":{"$ref":"#/components/schemas/PolicyDates"},"error_occurred":{"description":"Status of the question \u201cdid an error occur?\u201d","type":"boolean"},"filing_effective_from":{"description":"Starting filing date for the policy. Must be a valid date in yyyy-mm-dd format.","example":"2020-09-15","format":"date","type":"string"},"filing_effective_until":{"description":"Ending filing date for the policy. Must be a valid date in yyyy-mm-dd format.","example":"2020-09-15","format":"date","type":"string"},"insurance_product":{"default":"CYB","description":"The abbreviated name of the insurance product type for the requested quote. If the attribute is missing, we use CYB by default.","enum":["CYB","TEO","MPL"],"example":"CYB","type":"string"},"per_claim_limit":{"description":"The per-claim limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); in the absence of a submitted value, this value will match the aggregate limit by default. This value should not exceed the aggregate limit of the policy.","example":1000000,"type":"integer"},"per_claim_retention":{"description":"The desired retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000). Applies to MPL products.","example":5000,"type":"integer"},"policy_number":{"description":"Unique and official identifier of an At-Bay policy. Indicates coverage is active. Policy numbers are available after a successful bind request and can be released along with conditional binders, non-conditional binders, and policies.","example":688888,"type":"string"},"premium":{"description":"Premium for the returned quote in USD. Value is rounded to the nearest dollar.","example":8200,"type":"integer"},"quote_expiration_date":{"description":"The expiration date for this quote in YYYY-MM-DD format","example":"2023-01-01","type":"string"},"quote_identifier":{"description":"unique identifier of the quote received after POST call, to be used in GET request. quote_id values you generated using API v0.1 are valid inputs for the quote_identifier field.","example":"9916c08c-b00f-43ec-b6fb-5d6f5b17851d","type":"string"},"quote_status":{"description":"- quote_referred: quote request is pending and in our underwriting queue\n - quote_open: quote is valid and bindable\n - quote_declined: quote was declined by At-Bay\n - quote_expired: quote expiration date is in the past\n - quote_revoked: quote was once 'quote_open' but was revoked by At-Bay. This is usually either due to changes in the information about the insured or the result of underwriter discretion.\n - quote_bind_requested: bind request for this quote option is pending and in our underwriting queue\n - quote_not_bound: quote option is for an insured that had a bind request for a different quote option\n - policy_active: the policy is active and in force\n - policy_cancelled: the policy was cancelled\n - policy_expired: the policy expiration date is in the past.","enum":["created","aq_created","calculating","calc_completed","broker_conflict_referral","collection_issue","red_flags_found","calc_failed","authority_failed","eligible","quick_scan_error","missing_quick_scan","aq_not_approved","offer_email","stale","quote_referred","published","quote_declined","quote_expired","quote_revoked","quote_bind_requested","quote_not_bound","policy_active","policy_canceled","policy_expired"],"example":"quote_open","type":"string"},"red_flags_exist":{"description":"Status of the question: did the quick scan find any \u2018red flags?\u2019. Red Flags are severe vulnerabilities that cause referrals to our underwriting team.","type":"boolean"},"surcharges":{"items":{"$ref":"#/components/schemas/SurchargesFields"},"type":"array"},"surcharges_effective_from":{"description":"Starting surcharges date for the policy. Must be a valid date in yyyy-mm-dd format.","example":"2020-09-15","format":"date","type":"string"},"surcharges_effective_until":{"description":"Ending surcharges date for the policy. Must be a valid date in yyyy-mm-dd format.","example":"2020-09-15","format":"date","type":"string"}},"required":["quote_identifier"],"type":"object"},"InsuredMainContactFields":{"additionalProperties":false,"properties":{"cell_phone":{"description":"phone number of insured main contact","example":"+1 123-456-7890","maxLength":255,"minLength":1,"type":"string"},"email":{"description":"email address for the insured main contact","example":"example@gmail.com","maxLength":255,"minLength":1,"type":"string"},"first_name":{"description":"first name","example":"John","maxLength":255,"minLength":1,"type":"string"},"last_name":{"description":"last name","example":"Atbay","maxLength":255,"minLength":1,"type":"string"}},"required":["email"],"type":"object"},"PacketDocumentsMetaData":{"properties":{"edition_date":{"description":"The document's last edition creation date","format":"date","title":"Edition Date","type":"string"},"form_number":{"description":"The document's number ","title":"Form Number","type":"string"},"title":{"description":"The document's title","title":"Title","type":"string"}},"required":["form_number","title","edition_date"],"title":"PacketDocumentsMetaData","type":"object"},"PacketDocumentsResponse":{"properties":{"documents":{"default":[],"items":{"$ref":"#/components/schemas/PacketDocumentsMetaData"},"title":"Documents","type":"array"}},"title":"PacketDocumentsResponse","type":"object"},"PacketTemplateType":{"enum":["quote","binder","policy"],"title":"PacketTemplateType","type":"string"},"PauseAutoRenewalResponse":{"properties":{"message":{"title":"Message","type":"string"}},"required":["message"],"title":"PauseAutoRenewalResponse","type":"object"},"PolicyDates":{"properties":{"effective":{"description":"Desired effective date for the policy. Must be a valid date in yyyy-mm-dd format.","example":"2020-09-15","format":"date","type":"string"},"expiration":{"description":"Desired expiration date for the policy. Must be a valid date in yyyy-mm-dd format. In the absence of a submitted value, this value will be 12 months after the effective date by default. The difference between the effective and expiration dates must be greater than or equal to 6 months, and less than or equal to 18 months.","example":"2021-09-15","format":"date","type":"string"},"mpl_retroactive_date":{"description":"Desired retroactive date for the policy. Must be a valid date in yyyy-mm-dd or a case insensitive string of 'full_prior_acts'.","example":"2021-09-15","type":"string"}},"required":["effective"],"type":"object"},"PolicyFields":{"properties":{"dates":{"$ref":"#/components/schemas/PolicyDates"},"insurance_product":{"default":"CYB","description":"The abbreviated name of the insurance product type for the requested quote. If the attribute is missing, we use CYB by default","enum":["CYB","TEO","MPL"],"example":"CYB","type":"string"},"program_code":{"default":"","description":"Valid code of program","example":"PROWRITERS_STD","nullable":true,"type":"string"},"quotes":{"items":{"$ref":"#/components/schemas/QuoteFields"},"maxItems":15,"type":"array"}},"type":"object"},"QuestionFields":{"properties":{"id":{"description":"The question id or datapoint id of the question that the submitted value answers","example":2139,"type":"string"},"value":{"description":"answer to the corresponding question","example":true,"oneOf":[{"type":"string"},{"type":"integer"},{"type":"array"},{"type":"boolean"}]}},"type":"object"},"QuoteFields":{"properties":{"aggregate_limit":{"description":"The aggregate limit for the requested quote. Can be one of (100000, 250000, 300000, 500000, 750000, 900000, 1000000, 1500000, 2000000, 2500000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); limits greater than 3000000 can be submitted but will not be quoted automatically.","enum":[100000,250000,300000,500000,750000,900000,1000000,1500000,2000000,2500000,3000000,4000000,5000000,6000000,7000000,8000000,9000000,10000000],"example":250000,"type":"integer"},"aggregate_retention":{"description":"The desired retention on all sub limits for the requested quote. Can be one of (2500, 5000, 10000, 15000, 25000, 50000, 75000, 100000, 150000, 250000, 500000).","enum":[2500,5000,10000,15000,25000,50000,75000,100000,150000,250000,500000],"example":5000,"type":"integer"},"per_claim_limit":{"description":"The per-claim limit for the requested quote. Can be one of (100000, 250000, 500000, 750000, 1000000, 2000000, 3000000, 4000000, 5000000, 6000000, 7000000, 8000000, 9000000, 10000000); in the absence of a submitted value, this value will match the aggregate limit by default. This value should not exceed the aggregate limit of the policy.","example":1000000,"type":"integer"},"per_claim_retention":{"description":"The desired retention on all sub limits for the requested quote. Can be one of (500, 1000, 1500, 2500, 5000, 7500, 10000, 15000, 20000, 25000, 35000, 50000, 75000, 100000, 150000, 250000, 500000). Currently applies for MPL products.","enum":[500,1000,1500,2500,5000,7500,10000,15000,20000,25000,35000,50000,75000,100000,150000,250000,500000],"example":5000,"type":"integer"}},"required":["aggregate_limit"],"type":"object"},"QuoteNotReadyResponse":{"properties":{"error":{"type":"string"}},"type":"object"},"SurchargesFields":{"properties":{"percentage":{"format":"float","type":"number"},"price":{"format":"float","type":"number"},"title":{"example":"sur","type":"string"}},"type":"object"},"Test":{"properties":{"id":{"description":"Unique identifier","readOnly":true,"type":"integer","x-autoincrement":true,"x-primary-key":true}},"type":"object","x-tablename":"test"},"WebhookRegisterFields":{"description":"webhook register fields.","properties":{"endpoint":{"description":"The webhook endpoint.","example":"https://www.my-domain-here.com/an_endpoint","minimum":8,"type":"string"},"policy_level":{"description":"Subscribe your webhook for policy level events.","type":"boolean"},"quote_level":{"description":"Subscribe your webhook for quote level events.","type":"boolean"}},"required":["endpoint","quote_level","policy_level"],"type":"object"}},"securitySchemes":{"bearerAuth":{"bearerFormat":"JWT","scheme":"bearer","type":"http","x-bearerInfoFunc":"partner_api.app.auth.decode_token"}}},"info":{"title":"At-Bay - Partner API","version":"2.13.0"},"openapi":"3.0.0","paths":{"/binds":{"post":{"operationId":"bind_quote","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BindFields"}}},"description":"Bind Fields","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateQuotesResponse"}}},"description":"success"},"202":{"description":"quote not ready"},"400":{"description":"request does not exist"},"404":{"description":"quote not found"}},"security":[{"bearerAuth":[]}],"summary":"bind a quote","x-openapi-router-controller":"partner_api.app.controllers.v2.binds"}},"/documents":{"post":{"operationId":"upload_documents","requestBody":{"content":{"multipart/form-data":{"schema":{"$ref":"#/components/schemas/FileUploadFields"}}},"required":true},"responses":{"200":{"description":"success"}},"security":[{"bearerAuth":[]}],"summary":"upload documents","x-openapi-router-controller":"partner_api.app.controllers.v2.documents"}},"/health_check":{"get":{"operationId":"health_check","responses":{"200":{"content":{"application/json":{"schema":{"properties":{"healthy":{"type":"boolean"}},"type":"object"}}},"description":"success response"}},"summary":"check if service is healthy","x-openapi-router-controller":"partner_api.app.api"}},"/quotes":{"post":{"operationId":"create_quotes","requestBody":{"content":{"application/json":{"schema":{"properties":{"client":{"$ref":"#/components/schemas/ClientFields"},"policy":{"$ref":"#/components/schemas/PolicyFields"},"questions":{"items":{"$ref":"#/components/schemas/QuestionFields"},"type":"array"}},"required":["client","questions","policy"],"type":"object"}}},"description":"datapoints","required":true},"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateQuotesResponse"}}},"description":"success"},"400":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/BadRequest"}}},"description":"validation error"}},"security":[{"bearerAuth":[]}],"summary":"Create new quotes","x-openapi-router-controller":"partner_api.app.controllers.v2.quotes"}},"/quotes/{document_type}/{identifier}":{"get":{"operationId":"get_quote_documents","parameters":[{"description":"The type of the document to download (quote_letter, policy_specimen, binder, policy, application, recommendations, binder_tria, billing_statement, security_letter, security_report)","in":"path","name":"document_type","required":true,"schema":{"minimum":1,"type":"string"}},{"description":"The quote identifier","in":"path","name":"identifier","required":true,"schema":{"minimum":1,"type":"string"}}],"responses":{"200":{"description":"get a document associated"},"202":{"description":"quote not ready"},"400":{"description":"request does not exist"},"404":{"description":"quote not found"}},"security":[{"bearerAuth":[]}],"summary":"get documents for a quote","x-openapi-router-controller":"partner_api.app.controllers.v2.quotes"}},"/quotes/{external_identifier}/documents/{packet_template_type}/metadata":{"get":{"operationId":"get_quote_documents_meta_data","parameters":[{"in":"path","name":"external_identifier","required":true,"schema":{"title":"External Identifier","type":"string"}},{"description":"The packet type for which documents are being requested.","in":"path","name":"packet_template_type","required":true,"schema":{"$ref":"#/components/schemas/PacketTemplateType"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PacketDocumentsResponse"}}},"description":"Successful Response"},"400":{"description":"request does not exist"},"404":{"description":"quote not found"}},"summary":"Get Quote Documents Meta Data","x-openapi-router-controller":"partner_api.app.controllers.v2.quotes"}},"/quotes/{external_identifier}/pause_renewal":{"post":{"description":"Pause the auto-renewal of a policy.\nChange the allowed renewal type of the given policy to manual so no auto renewal will be created.\nIf a renewal policy already created, it will also be changed to manual renewal type to disable auto-bind.","operationId":"pause_auto_renewal","parameters":[{"in":"path","name":"external_identifier","required":true,"schema":{"title":"External Identifier","type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PauseAutoRenewalResponse"}}},"description":"Successful Response"},"422":{"description":"Validation Error"}},"summary":"Pause Auto Renewal","tags":["quotes","policy"],"x-openapi-router-controller":"partner_api.app.controllers.v2.quotes"}},"/quotes/{identifier}":{"get":{"operationId":"find_quote","parameters":[{"description":"Quote identifier","in":"path","name":"identifier","required":true,"schema":{"minimum":1,"type":"string"}}],"responses":{"200":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetQuoteResponse"}}},"description":"quote successfully found"},"202":{"description":"quote not ready"},"400":{"description":"request does not exist"},"404":{"description":"quote not found"}},"security":[{"bearerAuth":[]}],"summary":"Find a quote","x-openapi-router-controller":"partner_api.app.controllers.v2.quotes"}},"/settings/webhook_secret":{"post":{"operationId":"create_webhook_secret","responses":{"200":{"description":"success"},"400":{"description":"failure"},"500":{"description":"error"}},"security":[{"bearerAuth":[]}],"summary":"set webhook secret in settings","x-openapi-router-controller":"partner_api.app.controllers.v2.settings"}},"/webhooks":{"get":{"operationId":"get","responses":{"200":{"description":"success"},"400":{"description":"failure"},"500":{"description":"error"}},"security":[{"bearerAuth":[]}],"summary":"Get webhooks information","x-openapi-router-controller":"partner_api.app.controllers.v2.webhooks"},"post":{"operationId":"register","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WebhookRegisterFields"}}},"description":"New registration webhook","required":true},"responses":{"200":{"description":"success"},"400":{"description":"failure"},"500":{"description":"error"}},"security":[{"bearerAuth":[]}],"summary":"register a webhook","x-openapi-router-controller":"partner_api.app.controllers.v2.webhooks"}},"/webhooks/{identifier}":{"delete":{"operationId":"unregister","parameters":[{"description":"Webhook identifier","in":"path","name":"identifier","required":true,"schema":{"minimum":1,"type":"string"}}],"responses":{"200":{"description":"success"},"400":{"description":"failure"},"500":{"description":"error"}},"security":[{"bearerAuth":[]}],"summary":"Unregister webhook","x-openapi-router-controller":"partner_api.app.controllers.v2.webhooks"}}},"servers":[{"url":"/v2"}]}
