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

# Create single contact

> Create single contact



## OpenAPI

````yaml post /contacts
openapi: 3.0.0
info:
  version: 1.0.0
  title: splose public API
  description: "\nWelcome to the splose API documentation. splose serves as a comprehensive Allied Health & NDIS practice management software designed to streamline administrative tasks and foster the growth of your practice.\n\n# Introduction\nThe splose API follows a REST architectural style, offering JSON-encoded responses, standard HTTP response codes, easily understandable resource-oriented URLs, and robust authentication mechanisms.\n\n# Authentication\n### API Key Authentication\nThe splose API employs API keys for request authentication. Workspace owners can apply for and manage API keys through the splose dashboard. It's crucial to safeguard the API key, as it grants the same permissions as the associated user.\n\n### Bearer Authentication\nAuthentication for API access is achieved via Bearer Authentication. Include the API key in the request header using the format: `Authorization: Bearer your_api_key`.\n\n### Secure Communication\nAll API requests must be conducted over HTTPS. Requests made over plain HTTP will not succeed. Additionally, unauthenticated API requests will result in failure.\n\n# Rate limit\nThere are limits to the number of API calls that your application can make with one API key.\n\n+ Minute Limit: 60 calls per minute\n\n# Error\nsplose uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the 2xx range indicate success. \nCodes in the 4xx range indicate an error that failed given the information provided. Codes in the 5xx range indicate an error with splose's servers.\n\nError types:\n+ 400 - Bad request: the request failed due to missing or invalid parameters.\n+ 401 - Unauthorized: No valid API key provided.\n+ 404 - Not Found: \tThe requested resource doesn't exist.\n+ 429 - Too Many Requests: Too many requests hit the API too quickly.\n+ 500 - Internal Server Error : Something went wrong on splose's end.\n\n# Datetime\nAll datetime values provided in request parameters and responses are in Coordinated Universal Time (UTC). The accepted datetime formats are outlined below:\n+ 2023-07-01\n+ 2023-07-01T00:00:00Z\n+ 2023-07-01T00:00:00.000Z\n\n# Pagination\n\n### Pagination for Multiple Objects\nFor endpoints returning multiple objects, pagination is in place to manage response sizes. Each response is limited to a certain number of objects. \nAdditionally, the response includes a `links` field that provides URLs for fetching the next and/or previous pages, if applicable.\n\n### Manual Positioning\nYou have the option to manually specify the `id_gt` or `id_lt` value as a request parameter. This allows you to retrieve objects starting from a specific position. If neither of these values is provided, the initial page of objects will be returned by default.\n+ `id_gt`: Request for next page of objects with id greater than the specified value. \n+ `id_lt`: Request for previous page of objects with id less than the specified value. \n\n# Realtime feed\nCertain users may require real-time data retrieval. Given the substantial data volume, retrieving the complete dataset may not be efficient. To address this, we offer the option to retrieve data based on its update timestamp. This approach necessitates fetching the entire dataset only during the initial request. Subsequent retrievals involve fetching solely the modified data to replace outdated information.\n+ `update_gt`: Request for objects updated after the specified datetime. \n+ `update_lt`: Request for objects updated before the specified datetime. \n\n# Change log\n+ 2024-04-10: add payment method and payment endpoints\n+ 2024-02-28: add availability endpoint\n"
  contact:
    email: support@splose.com
servers:
  - url: https://api.splose.com/v1
security: []
externalDocs:
  description: Find out more about splose
  url: https://splose.com
paths:
  /contacts:
    post:
      tags:
        - contact
      summary: Create single contact
      description: Create single contact
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: Contact type
                  example: Standard
                name:
                  type: string
                  description: Contact name
                  example: Plan Manager
                title:
                  type: string
                  nullable: true
                  description: Contact title
                  example: Mr.
                firstName:
                  type: string
                  nullable: true
                  description: Contact first name
                  example: Harry
                lastName:
                  type: string
                  nullable: true
                  description: Contact last name
                  example: Potter
                preferredName:
                  type: string
                  nullable: true
                  description: Contact preferred name
                  example: Harry
                occupation:
                  type: string
                  nullable: true
                  description: Contact occupation
                  example: Contractor
                companyName:
                  type: string
                  nullable: true
                  description: Contact company name
                  example: splose
                providerNumber:
                  type: string
                  nullable: true
                  description: Contact provider number
                  example: '12345678'
                doctorType:
                  type: string
                  nullable: true
                  enum:
                    - GP
                    - Specialist
                  description: Contact doctor type
                  example: GP
                email:
                  type: string
                  format: email
                  description: Contact email
                  example: harry@hogwarts.edu
                addressL1:
                  type: string
                  nullable: true
                  description: Contact address line 1
                  example: 123 King William Street
                addressL2:
                  type: string
                  nullable: true
                  description: Contact address line 2
                  example: ''
                addressL3:
                  type: string
                  nullable: true
                  description: Contact address line 3
                  example: ''
                suburb:
                  type: string
                  nullable: true
                  description: Contact city
                  example: Adelaide
                state:
                  type: string
                  nullable: true
                  description: Contact state
                  example: SA
                postalCode:
                  type: string
                  nullable: true
                  description: Contact post code
                  example: '5000'
                country:
                  type: string
                  nullable: true
                  default: Australia
                  description: Contact country
                  example: Australia
                phoneNumbers:
                  type: array
                  items:
                    type: object
                    properties:
                      type:
                        type: string
                        nullable: true
                        enum:
                          - Mobile
                          - Home
                          - Work
                          - Fax
                          - Other
                        description: Phone number type
                        example: Mobile
                      code:
                        type: string
                        nullable: true
                        description: Phone country code
                        example: '+61'
                      phoneNumber:
                        type: string
                        description: Phone number
                        example: '401234567'
                    required:
                      - phoneNumber
              required:
                - type
                - name
                - email
              additionalProperties: false
      responses:
        '200':
          description: Successfully created contact
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: integer
                    minimum: 0
                    exclusiveMinimum: true
                    description: Contact id
                    example: 1
                  type:
                    type: string
                    nullable: true
                    description: Contact type
                    example: Standard
                  name:
                    type: string
                    nullable: true
                    description: Contact name
                    example: Plan Manager
                  title:
                    type: string
                    nullable: true
                    description: Contact title
                    example: Mr.
                  firstName:
                    type: string
                    nullable: true
                    description: Contact first name
                    example: Harry
                  lastName:
                    type: string
                    nullable: true
                    description: Contact last name
                    example: Potter
                  preferredName:
                    type: string
                    nullable: true
                    description: Contact preferred name
                    example: Harry
                  occupation:
                    type: string
                    nullable: true
                    description: Contact occupation
                    example: Contractor
                  companyName:
                    type: string
                    nullable: true
                    description: Contact company name
                    example: splose
                  providerNumber:
                    type: string
                    nullable: true
                    description: Contact provider number
                    example: '12345678'
                  doctorType:
                    type: string
                    nullable: true
                    description: Contact doctor type
                    example: GP
                  associatedPatientIds:
                    type: array
                    nullable: true
                    items:
                      type: number
                    description: The associated patients' id in this contact
                  associatedInvoiceIds:
                    type: array
                    nullable: true
                    items:
                      type: number
                    description: The associated invoices' id in this contact
                  associatedCaseIds:
                    type: array
                    nullable: true
                    items:
                      type: number
                    description: The associated invoices' id in this contact
                  email:
                    type: string
                    nullable: true
                    description: Contact email
                    example: harry@hogwarts.edu
                  addressL1:
                    type: string
                    nullable: true
                    description: Contact address line 1
                    example: 123 King William Street
                  addressL2:
                    type: string
                    nullable: true
                    description: Contact address line 2
                    example: ''
                  addressL3:
                    type: string
                    nullable: true
                    description: Contact address line 3
                    example: ''
                  suburb:
                    type: string
                    nullable: true
                    description: Contact city
                    example: Adelaide
                  state:
                    type: string
                    nullable: true
                    description: Contact state
                    example: SA
                  postalCode:
                    type: string
                    nullable: true
                    description: Contact post code
                    example: '5000'
                  country:
                    type: string
                    nullable: true
                    description: Contact country
                    example: Australia
                  phoneNumbers:
                    type: array
                    items:
                      type: object
                      properties:
                        type:
                          type: string
                          nullable: true
                          enum:
                            - Mobile
                            - Home
                            - Work
                            - Fax
                            - Other
                          description: Phone number type
                          example: Mobile
                        code:
                          type: string
                          nullable: true
                          description: Phone country code
                          example: '+61'
                        phoneNumber:
                          type: string
                          description: Phone number
                          example: '401234567'
                      required:
                        - phoneNumber
                  archived:
                    type: boolean
                    nullable: true
                    default: false
                    description: Whether the contact has been archived
                  createdAt:
                    anyOf:
                      - type: string
                      - type: string
                    description: Object creation date time
                    example: '2023-07-30T09:00:00.000Z'
                  updatedAt:
                    anyOf:
                      - type: string
                      - type: string
                    description: Object update date time
                    example: '2023-07-30T09:00:00.000Z'
                required:
                  - id
                  - type
                  - name
                  - title
                  - firstName
                  - lastName
                  - preferredName
                  - occupation
                  - companyName
                  - providerNumber
                  - doctorType
                  - associatedPatientIds
                  - associatedInvoiceIds
                  - associatedCaseIds
                  - email
                  - addressL1
                  - addressL2
                  - addressL3
                  - suburb
                  - state
                  - postalCode
                  - country
        '500':
          description: Error creating contact
      security:
        - bearerAuth: []
components:
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````