---
title: "PUT /servicesubscription/{id}"
method: PUT
path: "/servicesubscription/{id}"
tags: ["ServiceSubscription"]
---

# PUT /servicesubscription/{id}

`PUT /servicesubscription/{id}`

## Request

- Base URL: `https://api.c1st.com/api`
- URL: `https://api.c1st.com/api/servicesubscription/{id}`
- Auth: HTTP bearer

## Path parameters

- `id` integer, required

## Request body

- ServiceSubscriptionRequest
  - `content` ServiceSubscription
    - `id` integer, nullable: A unique service id
    - `customerarticleid` integer: Which customer article that has been assigned to this subcription
    - `serviceplanid` integer, nullable: The id of the serviceplan it is attached to.
    - `serviceplan` ServicePlan
      - `id` integer, nullable: A unique service id
      - `title` string: title for service
      - `handle` string, nullable: Unique handle for service. Will be set automatically if not set
      - `servicecallgroupid` integer, nullable: Which servicegroup should automatically be selected, if the service is on a customerarticle
      - `servicecallgroupids` integer[], nullable: An array of which servicegroup should automatically be selected, if the service is on a customerarticle
      - `servicecallgroup` ServiceNotificationTemplateGroup: A group of service notification templates
        - `id` integer: Id of the group
        - `title` string, required: Title of the group
        - `enabled` boolean, required: Boolean determening whether the group will be selected by default
        - `producttags` ProductTag[], nullable: Product tags assoicated with the group
          - `title` string: The title of the tag
          - `id` integer, nullable: The ID of the tag
          - `accountno` integer, nullable: The accountno used for book keeping
          - `promotionfilter` PromotionTagFilter, nullable
            - `amount` integer, nullable: minimum amount of products in order to apply promotion
            - `date` object, nullable: date of when the promotion should be applied
              - …
          - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
          - `position` number, nullable: Number used to determine order of product tags.
          - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
          - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
        - `vatmode` string, nullable: VAT associated with the group
        - `templates` ServiceNotificationTemplate[], nullable: Array of templates associated with this group
          - `id` integer: Id of the template
          - `title` string, nullable: The title of the template
          - `enabled` boolean: Boolean determening whether the call should be selected by default in the modal
          - `days` integer: If the template is absolute, this is how many days has to pass from "NOW()" till when the sms is sent out
          - `template` string, nullable: The template of which the sms text will be generated from
          - `absolute` boolean: Boolean that determines if the template is absolute, meaning the date of when the call is sent out is determind in "days" instead of a specific month, day and year
          - `noticedate` string, nullable: The exact date and time of when the service call will be sent out, this is relative to when the service call template is requested
          - `day` integer, nullable: If absolute == false. Specific date of the month of when call is sent out
          - `month` string, nullable: If absolute == false. Specific month of when call is sent out
          - `year` integer, nullable: If absolute == false. Specify the number of year that must pass before the notification is sent
          - `includeinprint` boolean: Whether or not to include notices generated from this template in servicecard print
          - `task_service_group_id` integer: The id of the group of which this call template belongs to
          - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplate was deleted. Null if it is not deleted
        - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplateGroup was deleted. Null if it is not deleted
      - `servicecallgroups` ServiceNotificationTemplateGroup[], nullable
        - `id` integer: Id of the group
        - `title` string, required: Title of the group
        - `enabled` boolean, required: Boolean determening whether the group will be selected by default
        - `producttags` ProductTag[], nullable: Product tags assoicated with the group
          - `title` string: The title of the tag
          - `id` integer, nullable: The ID of the tag
          - `accountno` integer, nullable: The accountno used for book keeping
          - `promotionfilter` PromotionTagFilter, nullable
            - `amount` integer, nullable: minimum amount of products in order to apply promotion
            - `date` object, nullable: date of when the promotion should be applied
              - …
          - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
          - `position` number, nullable: Number used to determine order of product tags.
          - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
          - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
        - `vatmode` string, nullable: VAT associated with the group
        - `templates` ServiceNotificationTemplate[], nullable: Array of templates associated with this group
          - `id` integer: Id of the template
          - `title` string, nullable: The title of the template
          - `enabled` boolean: Boolean determening whether the call should be selected by default in the modal
          - `days` integer: If the template is absolute, this is how many days has to pass from "NOW()" till when the sms is sent out
          - `template` string, nullable: The template of which the sms text will be generated from
          - `absolute` boolean: Boolean that determines if the template is absolute, meaning the date of when the call is sent out is determind in "days" instead of a specific month, day and year
          - `noticedate` string, nullable: The exact date and time of when the service call will be sent out, this is relative to when the service call template is requested
          - `day` integer, nullable: If absolute == false. Specific date of the month of when call is sent out
          - `month` string, nullable: If absolute == false. Specific month of when call is sent out
          - `year` integer, nullable: If absolute == false. Specify the number of year that must pass before the notification is sent
          - `includeinprint` boolean: Whether or not to include notices generated from this template in servicecard print
          - `task_service_group_id` integer: The id of the group of which this call template belongs to
          - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplate was deleted. Null if it is not deleted
        - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplateGroup was deleted. Null if it is not deleted
      - `producttagidsrestriction` integer[], nullable: Array of producttag ids where this service can be applied to. If tagid 1 and 2 is set as restriction, the product have to at least one of them in order to be included in the search
      - `producttaghandlesrestriction` string[], nullable: Array of producttag handles where this service can be applied to. If handle bike and mountainbike is set as restriction, the product have to at least one of them in order to be included in the search.
      - `producttagsrestriction` ProductTag[], nullable: Array of producttags where this service can be applied to.
        - `title` string: The title of the tag
        - `id` integer, nullable: The ID of the tag
        - `accountno` integer, nullable: The accountno used for book keeping
        - `promotionfilter` PromotionTagFilter, nullable
          - `amount` integer, nullable: minimum amount of products in order to apply promotion
          - `date` object, nullable: date of when the promotion should be applied
            - `start` string, nullable
            - `end` string, nullable
        - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
        - `position` number, nullable: Number used to determine order of product tags.
        - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
        - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
      - `visibility` 'all' | 'secondhandvat' | 'normalvat': Determines what types of products this plan is visible for. All makes the plan visible for products with normalvat and secondhandvat
      - `price` number, nullable: If set, when adding a serviceplan to a serial product, it will create a material with the given price, and set the type of the material as "serivceplan"
      - `terms` integer, nullable: If set, when adding a serviceplan, an enddate is set to be x months from startdate for a subscription
      - `updated_at` string, date-time, nullable: When the service was last updated
      - `created_at` string, date-time, nullable: When the service was created
      - `deleted_at` string, date-time, nullable: When the service was soft deleted
      - `followproductno` string, nullable: When adding a service to a customerarticle, the product with the given followproductno will added as an additional material.
    - `draft` integer, nullable: Whether or not the subscription is in draft mode or not.
    - `updated_at` string, date-time, nullable: When the service was last updated
    - `created_at` string, date-time, nullable: When the service was created
    - `deleted_at` string, date-time, nullable: When the service was deleted
    - `startdate` string, nullable: When the service has started
    - `enddate` string, nullable: When the service is supposed to end. Set if the serviceplan has terms
    - `price` number, nullable: The price of the serviceplan when the service was activated
    - `permission` Permission
      - `read` boolean
      - `write` boolean
    - `active` boolean, nullable: Whether or not the subscription is active, by looking at start- and enddate compared to today

## Response `200`

Ok

- ServiceSubscriptionResponse
  - `content` ServiceSubscription
    - `id` integer, nullable: A unique service id
    - `customerarticleid` integer: Which customer article that has been assigned to this subcription
    - `serviceplanid` integer, nullable: The id of the serviceplan it is attached to.
    - `serviceplan` ServicePlan
      - `id` integer, nullable: A unique service id
      - `title` string: title for service
      - `handle` string, nullable: Unique handle for service. Will be set automatically if not set
      - `servicecallgroupid` integer, nullable: Which servicegroup should automatically be selected, if the service is on a customerarticle
      - `servicecallgroupids` integer[], nullable: An array of which servicegroup should automatically be selected, if the service is on a customerarticle
      - `servicecallgroup` ServiceNotificationTemplateGroup: A group of service notification templates
        - `id` integer: Id of the group
        - `title` string, required: Title of the group
        - `enabled` boolean, required: Boolean determening whether the group will be selected by default
        - `producttags` ProductTag[], nullable: Product tags assoicated with the group
          - `title` string: The title of the tag
          - `id` integer, nullable: The ID of the tag
          - `accountno` integer, nullable: The accountno used for book keeping
          - `promotionfilter` PromotionTagFilter, nullable
            - `amount` integer, nullable: minimum amount of products in order to apply promotion
            - `date` object, nullable: date of when the promotion should be applied
              - …
          - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
          - `position` number, nullable: Number used to determine order of product tags.
          - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
          - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
        - `vatmode` string, nullable: VAT associated with the group
        - `templates` ServiceNotificationTemplate[], nullable: Array of templates associated with this group
          - `id` integer: Id of the template
          - `title` string, nullable: The title of the template
          - `enabled` boolean: Boolean determening whether the call should be selected by default in the modal
          - `days` integer: If the template is absolute, this is how many days has to pass from "NOW()" till when the sms is sent out
          - `template` string, nullable: The template of which the sms text will be generated from
          - `absolute` boolean: Boolean that determines if the template is absolute, meaning the date of when the call is sent out is determind in "days" instead of a specific month, day and year
          - `noticedate` string, nullable: The exact date and time of when the service call will be sent out, this is relative to when the service call template is requested
          - `day` integer, nullable: If absolute == false. Specific date of the month of when call is sent out
          - `month` string, nullable: If absolute == false. Specific month of when call is sent out
          - `year` integer, nullable: If absolute == false. Specify the number of year that must pass before the notification is sent
          - `includeinprint` boolean: Whether or not to include notices generated from this template in servicecard print
          - `task_service_group_id` integer: The id of the group of which this call template belongs to
          - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplate was deleted. Null if it is not deleted
        - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplateGroup was deleted. Null if it is not deleted
      - `servicecallgroups` ServiceNotificationTemplateGroup[], nullable
        - `id` integer: Id of the group
        - `title` string, required: Title of the group
        - `enabled` boolean, required: Boolean determening whether the group will be selected by default
        - `producttags` ProductTag[], nullable: Product tags assoicated with the group
          - `title` string: The title of the tag
          - `id` integer, nullable: The ID of the tag
          - `accountno` integer, nullable: The accountno used for book keeping
          - `promotionfilter` PromotionTagFilter, nullable
            - `amount` integer, nullable: minimum amount of products in order to apply promotion
            - `date` object, nullable: date of when the promotion should be applied
              - …
          - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
          - `position` number, nullable: Number used to determine order of product tags.
          - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
          - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
        - `vatmode` string, nullable: VAT associated with the group
        - `templates` ServiceNotificationTemplate[], nullable: Array of templates associated with this group
          - `id` integer: Id of the template
          - `title` string, nullable: The title of the template
          - `enabled` boolean: Boolean determening whether the call should be selected by default in the modal
          - `days` integer: If the template is absolute, this is how many days has to pass from "NOW()" till when the sms is sent out
          - `template` string, nullable: The template of which the sms text will be generated from
          - `absolute` boolean: Boolean that determines if the template is absolute, meaning the date of when the call is sent out is determind in "days" instead of a specific month, day and year
          - `noticedate` string, nullable: The exact date and time of when the service call will be sent out, this is relative to when the service call template is requested
          - `day` integer, nullable: If absolute == false. Specific date of the month of when call is sent out
          - `month` string, nullable: If absolute == false. Specific month of when call is sent out
          - `year` integer, nullable: If absolute == false. Specify the number of year that must pass before the notification is sent
          - `includeinprint` boolean: Whether or not to include notices generated from this template in servicecard print
          - `task_service_group_id` integer: The id of the group of which this call template belongs to
          - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplate was deleted. Null if it is not deleted
        - `deleted_at` string, nullable: The date and time this ServiceNotificationTemplateGroup was deleted. Null if it is not deleted
      - `producttagidsrestriction` integer[], nullable: Array of producttag ids where this service can be applied to. If tagid 1 and 2 is set as restriction, the product have to at least one of them in order to be included in the search
      - `producttaghandlesrestriction` string[], nullable: Array of producttag handles where this service can be applied to. If handle bike and mountainbike is set as restriction, the product have to at least one of them in order to be included in the search.
      - `producttagsrestriction` ProductTag[], nullable: Array of producttags where this service can be applied to.
        - `title` string: The title of the tag
        - `id` integer, nullable: The ID of the tag
        - `accountno` integer, nullable: The accountno used for book keeping
        - `promotionfilter` PromotionTagFilter, nullable
          - `amount` integer, nullable: minimum amount of products in order to apply promotion
          - `date` object, nullable: date of when the promotion should be applied
            - `start` string, nullable
            - `end` string, nullable
        - `handle` string, nullable: Unique handle for the produttag. Will be set automatically if not set. The handle is write once, and can not be changed after the tag is created.
        - `position` number, nullable: Number used to determine order of product tags.
        - `positionafterid` number, nullable: If this is set, the position of this product tag will be between positionafterid and the tag below if it exists.
        - `positionbeforeid` number, nullable: If this is set, the position of this product tag will be between positionbeforeid and the tag above if it exists.
      - `visibility` 'all' | 'secondhandvat' | 'normalvat': Determines what types of products this plan is visible for. All makes the plan visible for products with normalvat and secondhandvat
      - `price` number, nullable: If set, when adding a serviceplan to a serial product, it will create a material with the given price, and set the type of the material as "serivceplan"
      - `terms` integer, nullable: If set, when adding a serviceplan, an enddate is set to be x months from startdate for a subscription
      - `updated_at` string, date-time, nullable: When the service was last updated
      - `created_at` string, date-time, nullable: When the service was created
      - `deleted_at` string, date-time, nullable: When the service was soft deleted
      - `followproductno` string, nullable: When adding a service to a customerarticle, the product with the given followproductno will added as an additional material.
    - `draft` integer, nullable: Whether or not the subscription is in draft mode or not.
    - `updated_at` string, date-time, nullable: When the service was last updated
    - `created_at` string, date-time, nullable: When the service was created
    - `deleted_at` string, date-time, nullable: When the service was deleted
    - `startdate` string, nullable: When the service has started
    - `enddate` string, nullable: When the service is supposed to end. Set if the serviceplan has terms
    - `price` number, nullable: The price of the serviceplan when the service was activated
    - `permission` Permission
      - `read` boolean
      - `write` boolean
    - `active` boolean, nullable: Whether or not the subscription is active, by looking at start- and enddate compared to today

---

[API](https://skmtc.dev/c1st/apis/customers-1st-api.md) - [All operations](https://skmtc.dev/c1st/apis/customers-1st-api/llms.txt) - [OpenAPI document](https://skmtc.dev/c1st/apis/customers-1st-api/revisions/4250bb326f2a?raw)
