Rainbow Agency API

The Agency API from Rainbow — 6 operation(s) for agency.

Operations 6

POST /sub-agency Create Sub Agency #
GET /sub-agency/id/{SubAgencyID} Query Sub Agency by SubAgency ID #
POST /sub-agency/id/{SubAgencyID}/agent Create Agent by SubAgency ID #
GET /sub-agency/id/{SubAgencyID}/agent/id/{AgentID} Get Sub Agency Agent By ID #
GET /sub-agency/id/{SubAgencyID}/agents Get All Agents Under The Sub Agency #
GET /sub-agency/npn/{NPN} Query Sub Agency by NPN #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/userainbow-com:userainbow-com-agency-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

userainbow-com-agency-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  description: Rainbow Open API is currently in preview for selected insurance partners.
  title: Rainbow Agency API
  contact:
    name: API Support
    email: support@userainbow.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: '1.0'
servers:
- url: //api.demo.userainbow.com/partner/api/v1
tags:
- name: Agency
paths:
  /sub-agency:
    post:
      security:
      - ApiKeyAuthV1: []
      description: Use the endpoint to register a new sub-agency.
      tags:
      - Agency
      summary: Create Sub Agency
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/model.AgencyCreateRequest'
        description: Agency Create Request
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.AgencyResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
      operationId: postSubAgency
      x-operation-id-source: derived
  /sub-agency/id/{SubAgencyID}:
    get:
      security:
      - ApiKeyAuthV1: []
      description: The endpoint fetches a sub-agency's information based on its unique ID.
      tags:
      - Agency
      summary: Query Sub Agency by SubAgency ID
      parameters:
      - description: The UUID of the Sub-Agency.
        name: SubAgencyID
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.AgencyResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
      operationId: getSubAgencyIdBySubAgencyID
      x-operation-id-source: derived
  /sub-agency/id/{SubAgencyID}/agent:
    post:
      security:
      - ApiKeyAuthV1: []
      description: The endpoint creates agents for the given sub agency.
      tags:
      - Agency
      summary: Create Agent by SubAgency ID
      parameters:
      - description: The UUID of the Sub-Agency.
        name: SubAgencyID
        in: path
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/model.CreateSubAgencyAgentRequest'
        description: Sub Agency Agent Create Request
        required: true
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.SubAgencyAgentResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
      operationId: postSubAgencyIdBySubAgencyIDAgent
      x-operation-id-source: derived
  /sub-agency/id/{SubAgencyID}/agent/id/{AgentID}:
    get:
      security:
      - ApiKeyAuthV1: []
      description: The endpoint return agent info for the given sub agency id and agent id.
      tags:
      - Agency
      summary: Get Sub Agency Agent By ID
      parameters:
      - description: The UUID of the Sub-Agency.
        name: SubAgencyID
        in: path
        required: true
        schema:
          type: string
      - description: The UUID of the Agent.
        name: AgentID
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.SubAgencyAgentResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
      operationId: getSubAgencyIdBySubAgencyIDAgentIdByAgentID
      x-operation-id-source: derived
  /sub-agency/id/{SubAgencyID}/agents:
    get:
      security:
      - ApiKeyAuthV1: []
      description: The endpoint return all agent info for the given sub agency id.
      tags:
      - Agency
      summary: Get All Agents Under The Sub Agency
      parameters:
      - description: The UUID of the Sub-Agency.
        name: SubAgencyID
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.SubAgencyAgentsResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
      operationId: getSubAgencyIdBySubAgencyIDAgents
      x-operation-id-source: derived
  /sub-agency/npn/{NPN}:
    get:
      security:
      - ApiKeyAuthV1: []
      description: Use the endpoint to fetch details about a sub-agency via its unique National Producer Number (NPN).
      tags:
      - Agency
      summary: Query Sub Agency by NPN
      parameters:
      - description: The sub-agency's National Producer Number.
        name: NPN
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.AgencyResponse'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
        '500':
          description: Internal Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/model.Response'
      operationId: getSubAgencyNpnByNPN
      x-operation-id-source: derived
components:
  schemas:
    model.AgencyResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/model.AgencyResponseData'
        errors: {}
        message:
          type: string
        status:
          type: integer
        timestamp:
          type: string
    model.Response:
      type: object
      properties:
        data: {}
        errors: {}
        message:
          type: string
        status:
          type: integer
        timestamp:
          type: string
    model.SubAgencyAgentResponse:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/model.SubAgencyAgentResponseData'
        errors: {}
        message:
          type: string
        status:
          type: integer
        timestamp:
          type: string
    model.CreateSubAgencyAgentRequest:
      type: object
      required:
      - agent
      properties:
        agent:
          $ref: '#/components/schemas/model.IndicationAgent'
    model.AgencyResponseData:
      type: object
      properties:
        created_at:
          description: 'Timestamp marking the creation of the sub-agency.

            Required: true

            Example: "2023-08-28T01:42:08Z"'
          type: string
        name:
          description: 'The name of the sub-agency.

            Required: true

            Example: "Sub Agency 101"'
          type: string
        npn:
          description: 'The Sub-Agency’s National Producer Number.

            Required: true

            Example: "123456"'
          type: string
        sub_agency_id:
          description: 'The UUID of the queried sub-agency.

            Required: true

            Example: "018a056a-0eda-9157-6cb4-d10642b95796"'
          type: string
        use_sub_agency_appointment:
          description: 'Specifies if quotes created via API, associated with this sub-agency ID, will be assigned to the queried sub-agency.

            Required: true

            Example: false'
          type: boolean
    model.AgencyCreateRequest:
      type: object
      required:
      - name
      - npn
      properties:
        appointment_token:
          description: 'A unique token agent users of the sub-agency can retrieve from their Settings page within the Rainbow portal.

            An API user should request this from the sub-agency users IF they are acting as a technology vendor, and all

            commissions are to be paid directly to the sub-agency.

            Required: false

            Example: "018a056a-0eda-9157-6cb4-d10642b95796"'
          type: string
        mailing_address:
          description: 'Address Info of the Sub-Agency

            Required: false'
          allOf:
          - $ref: '#/components/schemas/model.AddressInfo'
        name:
          description: 'Identifying name of the Sub-Agency.

            Required: true

            Example: "Sub Agency 101"'
          type: string
        npn:
          description: 'National Producer Number unique to the Sub-Agency.

            Required: true

            Example: "123456"'
          type: string
    model.AddressInfo:
      type: object
      required:
      - address1
      - city
      - state
      - zip
      properties:
        address1:
          type: string
        address2:
          type: string
        city:
          type: string
        state:
          type: string
        zip:
          type: string
    model.SubAgencyAgentsResponse:
      type: object
      properties:
        data:
          type: array
          items:
            $ref: '#/components/schemas/model.SubAgencyAgentResponseData'
        errors: {}
        message:
          type: string
        status:
          type: integer
        timestamp:
          type: string
    model.SubAgencyAgentResponseData:
      type: object
      required:
      - email
      - first_name
      - last_name
      properties:
        email:
          type: string
        first_name:
          type: string
        id:
          type: string
        last_name:
          type: string
        phone_number:
          type: string
    model.IndicationAgent:
      type: object
      required:
      - email
      - first_name
      - last_name
      properties:
        email:
          type: string
        first_name:
          type: string
        last_name:
          type: string
        phone_number:
          type: string
  securitySchemes:
    ApiKeyAuthV1:
      type: apiKey
      name: Authorization
      in: header
x-provenance:
  method: searched
  source: https://apidocs.userainbow.com/reference
  harvested: '2026-10-25'
  tool: harvest-readme-openapi.py
  note: Assembled verbatim from the OpenAPI definition ReadMe embeds in each operation page of the provider's developer portal; paths and components merged by API title, nothing authored.
  assembled_from:
  - https://apidocs.userainbow.com/reference/get_appetite.md
  - https://apidocs.userainbow.com/reference/get_indication-id-indicationid.md
  - https://apidocs.userainbow.com/reference/get_sub-agency-id-subagencyid-agent-id-agentid.md
  - https://apidocs.userainbow.com/reference/get_sub-agency-id-subagencyid-agents.md
  - https://apidocs.userainbow.com/reference/get_sub-agency-id-subagencyid.md
  - https://apidocs.userainbow.com/reference/get_sub-agency-npn-npn.md
  - https://apidocs.userainbow.com/reference/post_indication.md
  - https://apidocs.userainbow.com/reference/post_sub-agency-id-subagencyid-agent.md
  - https://apidocs.userainbow.com/reference/post_sub-agency.md
  merge:
    pages: 9
    deduped: 37
    conflicts_kept_first: 0