Subscriptions
This entity describes an Autotask Subscription. Subscriptions are used to create recurring billing items for Assets, when there is no need to track the cost of labor against subscription revenue, for example, when billing in installments (use a Recurring Services Contract when there is a need to track labor). Subscriptions can be set to bill monthly, quarterly, semi-annually, yearly, or one-time. When a subscription is created, all future billing items for the subscription are created at once (refer also to SubscriptionPeriods entity). When a subscription billing item becomes due, it appears in Approve & Post and is available for invoicing.
NOTE Although the Subscriptions entity includes the billing period "One-time", the recommended method for one-time product billing in Autotask is a ticket, contract, or project charge.
NOTE You can refer to the Online Help to find root and child access URLs of the entity you wish to query. Refer to Finding resource and child access URLs of REST API entities for more information.
Entity details
Entity Name: | Subscriptions |
Entity Path: |
/atservicesrest/v1.0/Subscriptions |
Can Update: | |
Can Query: | |
Can Delete: | |
Can Have UDFs: |
IMPORTANT Requests to this entity require special handling. Refer to the Entity URLs and relationships section of this article for details.
Conditions and requirements
General
- This entity will be read-only if the module with which it is associated is not active. However, the API will not disallow the creation or modification of subscription UDFs. For more information, refer to Activations.
- If this entity has a Parent relationship, you must perform all Create, Update, and Delete actions on the parent entity.
- If this entity is a child of a parent, you can leverage our Swagger instance to find the URLs you should use in your API calls. For more information, refer to Finding resource and child access URLs of REST API entities.
- To learn how to access Swagger, refer to Using Swagger UI to explore REST API requests.
Parent | None |
Children | SubscriptionPeriods |
URLs | Subscriptions/query (GET, POST) Subscriptions/{id} (GET, DELETE) Subscriptions/query/count (GET, POST) Subscriptions (PUT, POST, PATCH) Subscriptions/entityInformation (GET) Subscriptions/entityInformation/fields (GET) Subscriptions/entityInformation/userDefinedFields (GET) |
Fields that cannot be queried
The following fields from this entity will return an error when queried.
- periodCost
- periodPrice
Conditions and requirements
- This entity will be read-only if the module with which it is associated is not active. However, the API will not disallow the creation or modification of subscription UDFs. For more information, refer to Activations.
- periodType can be updated only if no period billing items have been posted.
- Expiration Date must be >= Effective Date.
- Multiple subscriptions can be associated with the same Asset but the subscription dates cannot overlap.
- When periodType is one year, the expiration date must equal one year from the Effective Date minus one day.
- When a Subscription is created, all associated SubscriptionPeriods (billing items) are also created. Refer to SubscriptionPeriods.
- If Subscription status is set to Canceled, all associated subscription periods that have not been billed will be deleted.
- If a Subscription is deleted, all associated subscription periods that have not been billed will be deleted.
- vendorID cannot be updated if the Subscription is associated with any posted billing items.
Field definitions
The following table describes the standard Autotask fields for this entity. Refer to the following articles for more information about working with these fields:
- The entityInformation REST API call
- Making basic query calls to the REST API
- Advanced query features of the REST API
To learn how to query picklist endpoints, refer to Understanding picklists.
Notes
- For string datatypes, the number in parentheses ( ) indicates the maximum number of characters allowed.
- LT indicates Local Term.
- If this entity has child collections, they will appear in a Child collection access URLs or an Entity URLs and relationships drop-down in the Entity details section of this article.
- You can call the /query/count/ endpoint of a resource to determine how many records a collection holds.
Field Name | Datatype | Read-Only | Is Required | Reference Name | Picklist |
---|---|---|---|---|---|
configurationItemID | integer | ConfigurationItems | |||
description | string (2000) | ||||
effectiveDate | datetime | ||||
expirationDate | datetime | ||||
id | long | ||||
impersonatorCreatorResourceID | integer | Resources |
|
||
materialCodeID | integer | ProjectCharges | |||
organizationalLevelAssociationID |
|
|
|
|
|
periodCost | Decimal | ||||
periodPrice | Decimal | ||||
periodType | integer | ||||
purchaseOrderNumber | string (50) | ||||
status | integer | ||||
subscriptionName | string (100) | ||||
totalCost | Decimal | ||||
totalPrice | Decimal | ||||
vendorID | integer | Companies |