> ## Documentation Index
> Fetch the complete documentation index at: https://redbark.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Create a checklist template

> Makes a reusable checklist, such as "New client onboarding", with its items in order. Each item is a document to upload, a set of questions, or a connect_banks step. Send it to a client with send_checklist.



## OpenAPI

````yaml /openapi/advisor.json post /checklist_templates
openapi: 3.1.0
info:
  title: Redbark Advisor API
  version: 2.0.0
  description: >-
    Read and write access to one advice firm in Redbark Advisor: clients,
    checklists, documents, money, messages, reports, team and webhooks. Send an
    API key or a connected app’s access token as a bearer token. A credential
    carries scopes, one read and one write per area, and each call says the
    scope it needs. A write scope brings its read scope. Each key may make 120
    requests a minute.
servers:
  - url: https://advisor.redbark.com/api/v1
security:
  - bearerAuth: []
tags:
  - name: Firm
    description: The firm, its name and its branding.
  - name: Team
    description: Team members and their roles.
  - name: Clients
    description: Clients, their people and portal invites.
  - name: Checklists
    description: Checklist templates, the checklists sent to clients and their answers.
  - name: Documents
    description: Documents clients upload and the details read from them.
  - name: Money
    description: Bank connections, accounts, balances and transactions.
  - name: Document types
    description: Document types, their fields and the client facts they fill.
  - name: Messages
    description: Messages between the firm and clients.
  - name: Reports
    description: Reports exported for clients.
  - name: Webhooks
    description: Webhook endpoints and their deliveries.
  - name: Webhook events
    description: Events sent to your webhook endpoints.
paths:
  /checklist_templates:
    post:
      tags:
        - Checklists
      summary: Create a checklist template
      description: >-
        Makes a reusable checklist, such as "New client onboarding", with its
        items in order. Each item is a document to upload, a set of questions,
        or a connect_banks step. Send it to a client with send_checklist.
      operationId: create_checklist_template
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  maxLength: 120
                description:
                  anyOf:
                    - anyOf:
                        - type: string
                          maxLength: 300
                        - type: 'null'
                    - type: 'null'
                items:
                  anyOf:
                    - type: array
                      items:
                        type: object
                        properties:
                          kind:
                            type: string
                            enum:
                              - document
                              - questions
                              - connect_banks
                            description: >-
                              document asks for a file upload; questions is a
                              short form; connect_banks asks the client to
                              connect their banks through open banking and
                              finishes by itself when they do.
                          title:
                            type: string
                            maxLength: 200
                          help:
                            anyOf:
                              - anyOf:
                                  - type: string
                                    maxLength: 300
                                  - type: 'null'
                                description: One line shown under the title.
                              - type: 'null'
                          required:
                            anyOf:
                              - type: boolean
                                description: Default true.
                              - type: 'null'
                          questions:
                            anyOf:
                              - type: array
                                items:
                                  type: object
                                  properties:
                                    key:
                                      anyOf:
                                        - type: string
                                          description: >-
                                            A stable key for the answer. Made from
                                            the label when left out.
                                        - type: 'null'
                                    label:
                                      type: string
                                      maxLength: 200
                                    type:
                                      type: string
                                      enum:
                                        - short
                                        - long
                                        - date
                                        - yes_no
                                        - choice
                                        - address
                                      description: >-
                                        short and long are text, date is
                                        YYYY-MM-DD, yes_no is a boolean, choice
                                        is one of options, address is one line.
                                    options:
                                      anyOf:
                                        - type: array
                                          items:
                                            type: string
                                            maxLength: 100
                                          description: The choices, for a choice question.
                                        - type: 'null'
                                    fact_key:
                                      anyOf:
                                        - anyOf:
                                            - type: string
                                              maxLength: 64
                                            - type: 'null'
                                          description: >-
                                            The client fact that can fill this
                                            answer: a key from
                                            list_fact_definitions, such as salary or
                                            a firm fact like firm_salary_sacrifice.
                                            Worked out from the label when left out.
                                        - type: 'null'
                                  required:
                                    - label
                                    - type
                                  additionalProperties: true
                                description: 'For a questions item: 1 to 30.'
                              - type: 'null'
                          prefill_from_facts:
                            anyOf:
                              - type: boolean
                                description: >-
                                  For a questions item: fill answers from the
                                  client’s accepted document facts when there
                                  are any. The client can change them.
                              - type: 'null'
                        required:
                          - kind
                          - title
                        additionalProperties: true
                    - type: 'null'
              required:
                - name
      responses:
        '201':
          description: Created.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ChecklistTemplate'
        '400':
          description: The request is not valid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: The API key or access token is missing, wrong, expired or revoked.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '402':
          description: >-
            subscription_required: the firm has no active subscription, so it
            cannot add or invite clients or send checklists.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '403':
          description: >-
            The credential lacks the scope this call needs, the call is for
            admins only, or the member it acts as has left the firm.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: No such resource in this firm.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: >-
            The resource is in a state that does not allow this, such as an
            archived client, or client_limit_reached: the plan’s 20 active
            clients are in use.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '413':
          description: The request body is too large.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Too many requests. See the Retry-After header.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '500':
          description: Something went wrong on our side. Try again.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - bearerAuth:
            - checklists:write
components:
  schemas:
    ChecklistTemplate:
      type: object
      properties:
        object:
          type: string
          enum:
            - checklist_template
        id:
          type: string
        name:
          type: string
        description:
          anyOf:
            - type: string
            - type: 'null'
        clients:
          type: number
          description: Clients that were sent a copy.
        created_at:
          type: string
          description: An ISO 8601 time in UTC.
        updated_at:
          type: string
          description: An ISO 8601 time in UTC.
        items:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistTemplateItem'
      required:
        - object
        - id
        - name
        - description
        - clients
        - created_at
        - updated_at
        - items
      additionalProperties: true
    Error:
      type: object
      properties:
        error:
          type: object
          properties:
            type:
              type: string
              enum:
                - invalid_request_error
                - authentication_error
                - permission_error
                - rate_limit_error
                - api_error
            code:
              type: string
            message:
              type: string
            param:
              anyOf:
                - type: string
                - type: 'null'
            request_id:
              type: string
          required:
            - type
            - code
            - message
            - param
            - request_id
          additionalProperties: true
      required:
        - error
      additionalProperties: true
    ChecklistTemplateItem:
      type: object
      properties:
        object:
          type: string
          enum:
            - checklist_template_item
        id:
          type: string
        position:
          type: number
        kind:
          type: string
          enum:
            - document
            - questions
            - connect_banks
          description: >-
            document asks for a file upload; questions is a short form;
            connect_banks asks the client to connect their banks through open
            banking and finishes by itself when they do.
        title:
          type: string
        help:
          anyOf:
            - type: string
            - type: 'null'
        required:
          type: boolean
        questions:
          type: array
          items:
            $ref: '#/components/schemas/ChecklistQuestion'
        prefill_from_facts:
          type: boolean
      required:
        - object
        - id
        - position
        - kind
        - title
        - help
        - required
        - questions
        - prefill_from_facts
      additionalProperties: true
    ChecklistQuestion:
      type: object
      properties:
        key:
          type: string
        label:
          type: string
        type:
          type: string
          enum:
            - short
            - long
            - date
            - yes_no
            - choice
            - address
          description: >-
            short and long are text, date is YYYY-MM-DD, yes_no is a boolean,
            choice is one of options, address is one line.
        options:
          anyOf:
            - type: array
              items:
                type: string
            - type: 'null'
        fact_key:
          anyOf:
            - type: string
            - type: 'null'
      required:
        - key
        - label
        - type
        - options
        - fact_key
      additionalProperties: true
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: >-
        A firm API key, shown once when it is made, or a connected app’s OAuth
        access token. Each operation lists the scope it needs, such as
        clients:write.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.