Class FormSubmissionValueResource
- Namespace
- Crews.PlanningCenter.Api.People.V2019_01_14
- Assembly
- Crews.PlanningCenter.Api.dll
A single answer to a single field within a form submission.
When creating a FormSubmission, supply one FormSubmissionValue per answered field as a JSON:API included resource. Each must reference a form_field_id belonging to the parent form; values referencing fields on other forms are silently discarded. Blank values are also discarded.value is write-only. It is accepted when creating a submission but is never returned when reading one. Read answers back through display_value and, for file fields, attachments.
### Uploading files
File answers reference files that have already been uploaded to the Planning Center upload service. Upload each file first with a multipart POST to https://upload.planningcenteronline.com/v2/files, one file per request. The request authenticates like any other Planning Center API request: a personal access token as HTTP Basic, or an OAuth access token as a Bearer token. It does not have to be the same credential that later creates the submission.<code><br />curl -X POST https://upload.planningcenteronline.com/v2/files -u <application id>:<secret> -F "file=@waiver.pdf"<br /></code>`<code><br /><br />The response lists the uploaded file under </code>data<code>. Use </code>data[0].id<code> as </code>fileID<code> and </code>data[0].attributes.name<code> as </code>fileName<code>. </code>fileID<code> must be sent exactly as returned, including its datacenter prefix (such as </code>us4-<code>).<br /><br />Uploads are temporary. </code>data[0].attributes.expires_at<code> is 60 minutes after the upload, so create the submission soon after uploading. People copies the file into its own storage when the submission is created, and that copy is unaffected by the upload expiring.<br /><br />A file answer that is malformed, lacks the prefix, or points at an expired or unknown upload fails the request with a </code>422<code> validation error on </code>value<code> that says which.<br /><br /></code>`<code><br />{<br /> "data": { "attributes": { "person_id": "1" } },<br /> "included": [<br /> {<br /> "type": "FormSubmissionValue",<br /> "attributes": {<br /> "form_field_id": "42",<br /> "value": [{ "fileID": "us4-2b1f6c0e-5d3a-4f7e-9c21-8a6d0e4b7f10", "fileName": "waiver.pdf" }]<br /> }<br /> }<br /> ]<br />}<br /></code>
public record FormSubmissionValueResource : JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>, IEquatable<JsonApiResourceIdentifier>, IEquatable<JsonApiResource>, IEquatable<JsonApiResource<FormSubmissionValue>>, IEquatable<JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>>, IEquatable<FormSubmissionValueResource>
- Inheritance
-
JsonApiResourceIdentifierJsonApiResourceJsonApiResource<FormSubmissionValue>FormSubmissionValueResource
- Implements
-
IEquatable<JsonApiResourceIdentifier>IEquatable<JsonApiResource>
- Inherited Members
-
JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.ToString()JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.GetHashCode()JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.Equals(JsonApiResource<FormSubmissionValue>)JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.Equals(JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>)JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.<Clone>$()JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.EqualityContractJsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>.RelationshipsJsonApiResource<FormSubmissionValue>.Equals(JsonApiResource)JsonApiResource<FormSubmissionValue>.Equals(JsonApiResource<FormSubmissionValue>)JsonApiResource<FormSubmissionValue>.AttributesJsonApiResource.Equals(JsonApiResourceIdentifier)JsonApiResource.RelationshipsJsonApiResource.LinksJsonApiResource.MetaJsonApiResourceIdentifier.IdJsonApiResourceIdentifier.LIdJsonApiResourceIdentifier.Type
Constructors
FormSubmissionValueResource()
public FormSubmissionValueResource()
FormSubmissionValueResource(FormSubmissionValueResource)
protected FormSubmissionValueResource(FormSubmissionValueResource original)
Parameters
originalFormSubmissionValueResource
Properties
EqualityContract
protected override Type EqualityContract { get; }
Property Value
Methods
Equals(FormSubmissionValueResource?)
public virtual bool Equals(FormSubmissionValueResource? other)
Parameters
Returns
Equals(JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>?)
public override sealed bool Equals(JsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>? other)
Parameters
otherJsonApiResource<FormSubmissionValue, FormSubmissionValueRelationships>
Returns
Equals(object?)
public override bool Equals(object? obj)
Parameters
objobject
Returns
GetHashCode()
public override int GetHashCode()
Returns
PrintMembers(StringBuilder)
protected override bool PrintMembers(StringBuilder builder)
Parameters
builderStringBuilder
Returns
ToString()
public override string ToString()
Returns
Operators
operator ==(FormSubmissionValueResource?, FormSubmissionValueResource?)
public static bool operator ==(FormSubmissionValueResource? left, FormSubmissionValueResource? right)
Parameters
Returns
operator !=(FormSubmissionValueResource?, FormSubmissionValueResource?)
public static bool operator !=(FormSubmissionValueResource? left, FormSubmissionValueResource? right)