openapi: 3.0.1 info: title: Coterie Commercial Insurance Applications API description: The Coterie Commercial Insurance API lets appointed agents and digital partners establish a commercial account, create applications describing an insured small business, generate rated bindable quotes for Business Owners Policy (BOP), General Liability (GL), Professional Liability (PL), and Workers' Compensation (WC), bind and issue policies, look up industry / NAICS classifications, retrieve policy documents, and manage webhooks. termsOfService: https://coterieinsurance.com/terms-of-use/ contact: name: Coterie Insurance Partner Support url: https://docs.coterieinsurance.com/ version: '1.0' servers: - url: https://api.coterieinsurance.com/v1 description: Production - url: https://api-sandbox.coterieinsurance.com/v1 description: Sandbox security: - bearerAuth: [] tags: - name: Applications description: Commercial applications describing the insured business. paths: /commercial/applications: post: operationId: createApplication tags: - Applications summary: Create a commercial application. description: Creates a commercial application describing the insured business. Applications have a 1:Many relationship with quotes and policies and remain stable while quotes change over time. requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Application' responses: '200': description: Application created. content: application/json: schema: $ref: '#/components/schemas/ApplicationResponse' /commercial/applications/{applicationId}: get: operationId: getApplication tags: - Applications summary: Retrieve a commercial application. parameters: - $ref: '#/components/parameters/ApplicationId' responses: '200': description: Application found. content: application/json: schema: $ref: '#/components/schemas/ApplicationResponse' put: operationId: updateApplication tags: - Applications summary: Update a commercial application. parameters: - $ref: '#/components/parameters/ApplicationId' requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Application' responses: '200': description: Application updated. content: application/json: schema: $ref: '#/components/schemas/ApplicationResponse' components: parameters: ApplicationId: name: applicationId in: path required: true schema: type: string schemas: ApplicationResponse: allOf: - $ref: '#/components/schemas/Application' - type: object properties: applicationId: type: string status: type: string Address: type: object properties: street: type: string city: type: string state: type: string zip: type: string country: type: string default: US Application: type: object properties: businessName: type: string contactEmail: type: string format: email contactPhone: type: string mailingAddress: $ref: '#/components/schemas/Address' industryId: type: integer description: Industry identifier provided by Coterie. akHash: type: string description: NAICS combined with the description MD5 hash. grossAnnualSales: type: number numEmployees: type: integer required: - businessName - industryId - akHash securitySchemes: bearerAuth: type: http scheme: bearer description: Pass your Coterie API key as a Bearer token in the Authorization header. Channel partners are issued a Publishable Key (client-side) and a Secret Key (server-side only); some operations require the Secret Key. Partners may also authenticate via OAuth2 client-credentials to obtain a Bearer access token. Producer attribution uses the token producer_{producerId} form. oauth2: type: oauth2 flows: clientCredentials: tokenUrl: https://api.coterieinsurance.com/v1/oauth/token scopes: {}